@hinkal/common 0.2.21 → 0.2.22
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 +14 -14
- package/API/API.mjs +88 -87
- package/API/admin-calls.cjs +1 -1
- package/API/admin-calls.d.ts +1 -1
- package/API/admin-calls.mjs +4 -4
- package/API/ai-calls.cjs +1 -0
- package/API/ai-calls.d.ts +17 -0
- package/API/ai-calls.mjs +21 -0
- package/API/callLifiAPI.cjs +1 -1
- package/API/callLifiAPI.d.ts +1 -1
- package/API/callLifiAPI.mjs +5 -5
- package/API/callMonitor.cjs +1 -1
- package/API/callMonitor.d.ts +1 -1
- package/API/callMonitor.mjs +7 -7
- package/API/callOdosAPI.cjs +1 -1
- package/API/callOdosAPI.mjs +11 -11
- package/API/callOkxAPI.cjs +1 -1
- package/API/callOkxAPI.d.ts +1 -1
- package/API/callOkxAPI.mjs +5 -5
- package/API/callOneInchAPI.cjs +1 -1
- package/API/callOneInchAPI.mjs +11 -10
- package/API/callRelayer.cjs +1 -1
- package/API/callRelayer.d.ts +5 -6
- package/API/callRelayer.mjs +11 -11
- package/API/checkRisk.cjs +1 -1
- package/API/checkRisk.d.ts +1 -1
- package/API/checkRisk.mjs +4 -4
- package/API/deposit-and-withdraw-status-calls.cjs +1 -0
- package/API/deposit-and-withdraw-status-calls.d.ts +20 -0
- package/API/deposit-and-withdraw-status-calls.mjs +18 -0
- package/API/duneAPI.cjs +1 -0
- package/API/duneAPI.d.ts +11 -0
- package/API/duneAPI.mjs +25 -0
- package/API/enclaveCalls.cjs +1 -1
- package/API/enclaveCalls.mjs +4 -5
- package/API/fetchCommitmentsCache.cjs +1 -1
- package/API/fetchCommitmentsCache.mjs +9 -9
- package/API/get-token-data.cjs +1 -1
- package/API/get-token-data.d.ts +1 -1
- package/API/get-token-data.mjs +5 -5
- package/API/getBridgeProtocols.cjs +1 -0
- package/API/getBridgeProtocols.d.ts +7 -0
- package/API/getBridgeProtocols.mjs +8 -0
- package/API/getGasEstimates.cjs +1 -1
- package/API/getGasEstimates.mjs +9 -9
- package/API/getLifiStatus.cjs +1 -0
- package/API/getLifiStatus.d.ts +24 -0
- package/API/getLifiStatus.mjs +15 -0
- package/API/getRelayerURL.cjs +1 -0
- package/API/getRelayerURL.d.ts +1 -0
- package/API/getRelayerURL.mjs +10 -0
- package/API/getServerURL.cjs +1 -1
- package/API/getServerURL.d.ts +3 -3
- package/API/getServerURL.mjs +67 -51
- package/API/getTokenPrice.cjs +1 -1
- package/API/getTokenPrice.d.ts +0 -5
- package/API/getTokenPrice.mjs +7 -14
- package/API/index.d.ts +3 -1
- package/API/is-tx-stateless.cjs +1 -1
- package/API/is-tx-stateless.d.ts +1 -1
- package/API/is-tx-stateless.mjs +12 -10
- package/API/kycCalls.cjs +1 -1
- package/API/kycCalls.d.ts +8 -4
- package/API/kycCalls.mjs +26 -23
- package/API/passwordCalls.cjs +1 -0
- package/API/passwordCalls.d.ts +9 -0
- package/API/passwordCalls.mjs +13 -0
- package/API/proxyAccountsCalls.cjs +1 -1
- package/API/proxyAccountsCalls.d.ts +2 -7
- package/API/proxyAccountsCalls.mjs +21 -27
- package/API/relayCalls.cjs +1 -1
- package/API/relayCalls.mjs +4 -4
- package/API/restoreSnapshots.cjs +1 -0
- package/API/restoreSnapshots.d.ts +1 -0
- package/API/restoreSnapshots.mjs +10 -0
- package/API/scheduled-transactions-calls.cjs +1 -1
- package/API/scheduled-transactions-calls.d.ts +9 -1
- package/API/scheduled-transactions-calls.mjs +9 -5
- package/API/simulate-batch-tx.cjs +1 -1
- package/API/simulate-batch-tx.d.ts +2 -2
- package/API/simulate-batch-tx.mjs +6 -7
- package/API/solana-calls.cjs +1 -1
- package/API/solana-calls.d.ts +3 -6
- package/API/solana-calls.mjs +15 -15
- package/API/temporaryWalletCalls.cjs +1 -1
- package/API/temporaryWalletCalls.mjs +19 -13
- package/API/token-calls.cjs +1 -1
- package/API/token-calls.mjs +5 -6
- package/README.md +54 -42
- package/constants/chains.constants.cjs +1 -1
- package/constants/chains.constants.d.ts +6 -0
- package/constants/chains.constants.mjs +52 -58
- package/constants/coingecko.constants.cjs +1 -1
- package/constants/coingecko.constants.d.ts +0 -1
- package/constants/coingecko.constants.mjs +10 -11
- package/constants/deploy-data/deploy-data-solana.json.cjs +1 -1
- package/constants/deploy-data/deploy-data-solana.json.mjs +2 -28
- package/constants/function-signatures.constants.cjs +1 -1
- package/constants/function-signatures.constants.d.ts +1 -0
- package/constants/function-signatures.constants.mjs +4 -3
- package/constants/kyc.constants.cjs +1 -1
- package/constants/kyc.constants.mjs +40 -39
- package/constants/mediaUrls.constants.cjs +1 -1
- package/constants/mediaUrls.constants.d.ts +0 -1
- package/constants/mediaUrls.constants.mjs +1 -2
- package/constants/permit2.constants.cjs +1 -1
- package/constants/permit2.constants.d.ts +1 -0
- package/constants/permit2.constants.mjs +11 -10
- package/constants/server.constants.cjs +1 -1
- package/constants/server.constants.d.ts +123 -19
- package/constants/server.constants.mjs +142 -38
- package/constants/vite.constants.cjs +1 -1
- package/constants/vite.constants.mjs +13 -36
- package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.cjs +1 -1
- package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.mjs +71 -68
- package/data-structures/Hinkal/Hinkal.cjs +1 -1
- package/data-structures/Hinkal/Hinkal.d.ts +56 -45
- package/data-structures/Hinkal/Hinkal.mjs +348 -314
- package/data-structures/Hinkal/IHinkal.d.ts +54 -40
- package/data-structures/Hinkal/handleAutoDepositBack.cjs +1 -1
- package/data-structures/Hinkal/handleAutoDepositBack.d.ts +1 -1
- package/data-structures/Hinkal/handleAutoDepositBack.mjs +49 -48
- package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.cjs +1 -0
- package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.d.ts +7 -0
- package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.mjs +42 -0
- package/data-structures/Hinkal/hinkalActionReceive.cjs +1 -1
- package/data-structures/Hinkal/hinkalActionReceive.mjs +24 -29
- package/data-structures/Hinkal/hinkalApprove.cjs +1 -0
- package/data-structures/Hinkal/hinkalApprove.d.ts +3 -0
- package/data-structures/Hinkal/hinkalApprove.mjs +114 -0
- package/data-structures/Hinkal/hinkalCheckTokenRegistry.cjs +1 -1
- package/data-structures/Hinkal/hinkalCheckTokenRegistry.mjs +20 -20
- package/data-structures/Hinkal/hinkalDeposit.cjs +1 -1
- package/data-structures/Hinkal/hinkalDeposit.mjs +84 -88
- package/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -1
- package/data-structures/Hinkal/hinkalDepositAndWithdraw.d.ts +1 -1
- package/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +96 -77
- package/data-structures/Hinkal/hinkalDepositOnChainUtxos.cjs +1 -1
- package/data-structures/Hinkal/hinkalDepositOnChainUtxos.d.ts +4 -1
- package/data-structures/Hinkal/hinkalDepositOnChainUtxos.mjs +80 -75
- package/data-structures/Hinkal/hinkalDepostAndBridge.cjs +1 -1
- package/data-structures/Hinkal/hinkalDepostAndBridge.d.ts +1 -1
- package/data-structures/Hinkal/hinkalDepostAndBridge.mjs +150 -138
- package/data-structures/Hinkal/hinkalGetZkMeProvider.cjs +1 -1
- package/data-structures/Hinkal/hinkalGetZkMeProvider.mjs +5 -4
- package/data-structures/Hinkal/hinkalInsideTransact.cjs +1 -0
- package/data-structures/Hinkal/hinkalInsideTransact.d.ts +4 -0
- package/data-structures/Hinkal/hinkalInsideTransact.mjs +119 -0
- package/data-structures/Hinkal/hinkalPrivateWallet.cjs +1 -1
- package/data-structures/Hinkal/hinkalPrivateWallet.d.ts +2 -2
- package/data-structures/Hinkal/hinkalPrivateWallet.mjs +118 -114
- package/data-structures/Hinkal/hinkalProoflessDeposit.cjs +1 -1
- package/data-structures/Hinkal/hinkalProoflessDeposit.mjs +34 -36
- package/data-structures/Hinkal/hinkalProxySwap.cjs +1 -1
- package/data-structures/Hinkal/hinkalProxySwap.mjs +36 -40
- package/data-structures/Hinkal/hinkalProxyToPrivate.cjs +1 -1
- package/data-structures/Hinkal/hinkalProxyToPrivate.mjs +32 -37
- package/data-structures/Hinkal/hinkalSignSubAccount.cjs +1 -1
- package/data-structures/Hinkal/hinkalSignSubAccount.d.ts +2 -1
- package/data-structures/Hinkal/hinkalSignSubAccount.mjs +15 -17
- package/data-structures/Hinkal/hinkalSolanaDeposit.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaDeposit.d.ts +3 -4
- package/data-structures/Hinkal/hinkalSolanaDeposit.mjs +95 -84
- package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.d.ts +1 -2
- package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +182 -155
- package/data-structures/Hinkal/hinkalSolanaProxySend.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaProxySend.d.ts +3 -2
- package/data-structures/Hinkal/hinkalSolanaProxySend.mjs +40 -43
- package/data-structures/Hinkal/hinkalSolanaProxyShield.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaProxyShield.mjs +67 -71
- package/data-structures/Hinkal/hinkalSolanaProxySwap.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaProxySwap.d.ts +1 -1
- package/data-structures/Hinkal/hinkalSolanaProxySwap.mjs +59 -63
- package/data-structures/Hinkal/hinkalSolanaSwap.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaSwap.mjs +45 -48
- package/data-structures/Hinkal/hinkalSolanaTransfer.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaTransfer.mjs +48 -49
- package/data-structures/Hinkal/hinkalSolanaWithdraw.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaWithdraw.d.ts +1 -2
- package/data-structures/Hinkal/hinkalSolanaWithdraw.mjs +68 -71
- package/data-structures/Hinkal/hinkalSwap.cjs +1 -1
- package/data-structures/Hinkal/hinkalSwap.mjs +78 -71
- package/data-structures/Hinkal/hinkalTransfer.cjs +1 -1
- package/data-structures/Hinkal/hinkalTransfer.mjs +70 -71
- package/data-structures/Hinkal/hinkalWithdraw.cjs +1 -1
- package/data-structures/Hinkal/hinkalWithdraw.mjs +79 -81
- package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.cjs +1 -1
- package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.mjs +103 -105
- package/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
- package/data-structures/Hinkal/resetMerkleTrees.d.ts +1 -1
- package/data-structures/Hinkal/resetMerkleTrees.mjs +53 -107
- package/data-structures/IndexedDB/activity-db.cjs +1 -1
- package/data-structures/IndexedDB/activity-db.d.ts +0 -1
- package/data-structures/IndexedDB/activity-db.mjs +75 -91
- package/data-structures/IndexedDB/balances-db.cjs +1 -1
- package/data-structures/IndexedDB/balances-db.mjs +37 -40
- package/data-structures/IndexedDB/contact-db.cjs +1 -1
- package/data-structures/IndexedDB/contact-db.mjs +13 -16
- package/data-structures/IndexedDB/signatures-db.cjs +1 -1
- package/data-structures/IndexedDB/signatures-db.mjs +40 -25
- package/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
- package/data-structures/TokenDBs/EventsPublicTokensDB.mjs +84 -82
- package/data-structures/TokenDBs/token-visibility-db.cjs +1 -1
- package/data-structures/TokenDBs/token-visibility-db.mjs +36 -22
- package/data-structures/crypto-keys/keys.cjs +1 -1
- package/data-structures/crypto-keys/keys.d.ts +11 -0
- package/data-structures/crypto-keys/keys.mjs +107 -47
- package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.cjs +1 -1
- package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.d.ts +2 -3
- package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.mjs +9 -9
- package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.cjs +1 -1
- package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.d.ts +2 -3
- package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.mjs +5 -5
- package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.cjs +1 -1
- package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.d.ts +2 -3
- package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.mjs +6 -6
- package/data-structures/event-service/evm/AbstractEventService.cjs +1 -1
- package/data-structures/event-service/evm/AbstractEventService.d.ts +2 -4
- package/data-structures/event-service/evm/AbstractEventService.mjs +19 -19
- package/data-structures/event-service/evm/AbstractNullifierSnapshotService.cjs +1 -1
- package/data-structures/event-service/evm/AbstractNullifierSnapshotService.d.ts +3 -3
- package/data-structures/event-service/evm/AbstractNullifierSnapshotService.mjs +5 -6
- package/data-structures/event-service/evm/AbstractSnapshotService.cjs +1 -1
- package/data-structures/event-service/evm/AbstractSnapshotService.d.ts +2 -1
- package/data-structures/event-service/evm/AbstractSnapshotService.mjs +4 -3
- package/data-structures/event-service/evm/BlockchainEventEmitter.cjs +1 -1
- package/data-structures/event-service/evm/BlockchainEventEmitter.d.ts +5 -10
- package/data-structures/event-service/evm/BlockchainEventEmitter.mjs +35 -39
- package/data-structures/event-service/index.d.ts +0 -4
- package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.cjs +1 -1
- package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.d.ts +2 -3
- package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.mjs +6 -6
- package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.cjs +1 -1
- package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.d.ts +3 -4
- package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.mjs +8 -8
- package/data-structures/event-service/solana/AbstractSolanaEventService.cjs +1 -1
- package/data-structures/event-service/solana/AbstractSolanaEventService.d.ts +10 -4
- package/data-structures/event-service/solana/AbstractSolanaEventService.mjs +7 -10
- package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.cjs +1 -1
- package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.d.ts +2 -3
- package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.mjs +1 -1
- package/data-structures/event-service/solana/AbstractSolanaSnapshotService.cjs +1 -1
- package/data-structures/event-service/solana/AbstractSolanaSnapshotService.d.ts +2 -1
- package/data-structures/event-service/solana/AbstractSolanaSnapshotService.mjs +2 -1
- package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.cjs +1 -1
- package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.d.ts +16 -11
- package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.mjs +66 -64
- package/data-structures/index.d.ts +0 -3
- package/data-structures/provider-adapter/IProviderAdapter.d.ts +13 -8
- package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.cjs +1 -1
- package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.mjs +4 -6
- package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.cjs +1 -1
- package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.mjs +4 -6
- package/data-structures/snapshot/evm-snapshots/ClientCommitmentsSnapshotService.cjs +1 -1
- package/data-structures/snapshot/evm-snapshots/ClientCommitmentsSnapshotService.mjs +4 -6
- package/data-structures/snapshot/evm-snapshots/ClientNullifierSnapshotService.cjs +1 -1
- package/data-structures/snapshot/evm-snapshots/ClientNullifierSnapshotService.mjs +4 -6
- package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.cjs +1 -1
- package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.mjs +4 -6
- package/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.cjs +1 -1
- package/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.mjs +4 -5
- package/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.cjs +1 -1
- package/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.mjs +4 -6
- package/error-handling/error-codes.constants.cjs +1 -1
- package/error-handling/error-codes.constants.d.ts +0 -1
- package/error-handling/error-codes.constants.mjs +3 -4
- package/error-handling/get-error.message.cjs +1 -1
- package/error-handling/get-error.message.mjs +27 -21
- package/error-handling/handleErrorRestore.cjs +1 -0
- package/error-handling/handleErrorRestore.d.ts +2 -0
- package/error-handling/handleErrorRestore.mjs +11 -0
- package/error-handling/index.d.ts +1 -0
- package/functions/kyc/authentoHelper.cjs +1 -0
- package/functions/kyc/authentoHelper.d.ts +12 -0
- package/functions/kyc/authentoHelper.mjs +30 -0
- package/functions/kyc/zkMeHelper.cjs +1 -1
- package/functions/kyc/zkMeHelper.mjs +17 -18
- package/functions/pre-transaction/constructAdminData.cjs +1 -1
- package/functions/pre-transaction/constructAdminData.d.ts +2 -2
- package/functions/pre-transaction/constructAdminData.mjs +18 -12
- package/functions/pre-transaction/getExternalSwapAddress.cjs +1 -1
- package/functions/pre-transaction/getExternalSwapAddress.d.ts +2 -1
- package/functions/pre-transaction/getExternalSwapAddress.mjs +8 -8
- package/functions/pre-transaction/getVolatileTransferAmount.cjs +1 -1
- package/functions/pre-transaction/getVolatileTransferAmount.mjs +36 -21
- package/functions/pre-transaction/merge-with-fee-structure-emporium.cjs +1 -1
- package/functions/pre-transaction/merge-with-fee-structure-emporium.d.ts +1 -1
- package/functions/pre-transaction/merge-with-fee-structure-emporium.mjs +17 -17
- package/functions/pre-transaction/outputApprovalDataProcessing.cjs +1 -1
- package/functions/pre-transaction/outputApprovalDataProcessing.d.ts +9 -1
- package/functions/pre-transaction/outputApprovalDataProcessing.mjs +34 -19
- package/functions/pre-transaction/sendV0Transaction.cjs +1 -1
- package/functions/pre-transaction/sendV0Transaction.mjs +50 -53
- package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.cjs +1 -1
- package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.d.ts +1 -1
- package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.mjs +4 -4
- package/functions/private-wallet/emporium.helpers.cjs +1 -1
- package/functions/private-wallet/emporium.helpers.d.ts +6 -3
- package/functions/private-wallet/emporium.helpers.mjs +127 -89
- package/functions/private-wallet/emporium.swap.helpers.cjs +1 -1
- package/functions/private-wallet/emporium.swap.helpers.d.ts +4 -1
- package/functions/private-wallet/emporium.swap.helpers.mjs +102 -100
- package/functions/snarkjs/constructEmporiumProof.cjs +1 -1
- package/functions/snarkjs/constructEmporiumProof.mjs +49 -49
- package/functions/snarkjs/constructSolanaZkProof.cjs +1 -1
- package/functions/snarkjs/constructSolanaZkProof.mjs +20 -18
- package/functions/snarkjs/fetchMerkleTreeSiblings.cjs +1 -1
- package/functions/snarkjs/fetchMerkleTreeSiblings.mjs +10 -11
- package/functions/utils/addresses.cjs +1 -1
- package/functions/utils/addresses.d.ts +0 -1
- package/functions/utils/addresses.mjs +12 -13
- package/functions/utils/cacheFunctions.cjs +1 -1
- package/functions/utils/cacheFunctions.mjs +2 -2
- package/functions/utils/create-provider.cjs +1 -1
- package/functions/utils/create-provider.d.ts +1 -1
- package/functions/utils/create-provider.mjs +9 -13
- package/functions/utils/get-hinkal-approvals.cjs +1 -0
- package/functions/utils/get-hinkal-approvals.d.ts +3 -0
- package/functions/utils/get-hinkal-approvals.mjs +38 -0
- package/functions/utils/getUtxosFromReceipt.utils.cjs +1 -1
- package/functions/utils/getUtxosFromReceipt.utils.d.ts +1 -1
- package/functions/utils/getUtxosFromReceipt.utils.mjs +11 -11
- package/functions/utils/index.d.ts +1 -0
- package/functions/utils/involves-permit2-op.cjs +1 -1
- package/functions/utils/involves-permit2-op.d.ts +1 -0
- package/functions/utils/involves-permit2-op.mjs +6 -4
- package/functions/utils/mutexes.utils.cjs +1 -1
- package/functions/utils/mutexes.utils.d.ts +1 -1
- package/functions/utils/mutexes.utils.mjs +3 -3
- package/functions/utils/nftTokenFunctions.cjs +1 -1
- package/functions/utils/nftTokenFunctions.mjs +23 -8
- package/functions/utils/prepareHinkal.cjs +1 -1
- package/functions/utils/prepareHinkal.d.ts +13 -6
- package/functions/utils/prepareHinkal.mjs +72 -45
- package/functions/utils/publicBalance.utils.cjs +1 -1
- package/functions/utils/publicBalance.utils.mjs +54 -49
- package/functions/utils/replaceAddressInCalldata.cjs +1 -0
- package/functions/utils/replaceAddressInCalldata.d.ts +1 -0
- package/functions/utils/replaceAddressInCalldata.mjs +7 -0
- package/functions/utils/string.utils.cjs +1 -1
- package/functions/utils/string.utils.d.ts +0 -1
- package/functions/utils/string.utils.mjs +14 -18
- package/functions/utils/token-check.utils.cjs +1 -1
- package/functions/utils/token-check.utils.d.ts +0 -3
- package/functions/utils/token-check.utils.mjs +7 -18
- package/functions/utils/upToDateState.cjs +1 -1
- package/functions/utils/upToDateState.d.ts +1 -1
- package/functions/utils/upToDateState.mjs +4 -4
- package/functions/utils/walletBalances.utils.cjs +1 -1
- package/functions/utils/walletBalances.utils.d.ts +17 -2
- package/functions/utils/walletBalances.utils.mjs +36 -5
- package/functions/web3/events/getApprovedBalance.cjs +1 -1
- package/functions/web3/events/getApprovedBalance.d.ts +4 -3
- package/functions/web3/events/getApprovedBalance.mjs +44 -39
- package/functions/web3/events/getInputUtxoAndBalance.cjs +1 -1
- package/functions/web3/events/getInputUtxoAndBalance.d.ts +3 -3
- package/functions/web3/events/getInputUtxoAndBalance.mjs +150 -129
- package/functions/web3/events/getShieldedBalance.cjs +2 -2
- package/functions/web3/events/getShieldedBalance.d.ts +1 -1
- package/functions/web3/events/getShieldedBalance.mjs +75 -73
- package/functions/web3/events/getTransactionLogEvents.cjs +1 -1
- package/functions/web3/events/getTransactionLogEvents.mjs +38 -38
- package/functions/web3/fetchSolanaMerkleTreeRootHash.cjs +1 -1
- package/functions/web3/fetchSolanaMerkleTreeRootHash.mjs +10 -13
- package/functions/web3/functionCalls/accessTokenCalls.cjs +1 -1
- package/functions/web3/functionCalls/accessTokenCalls.d.ts +6 -1
- package/functions/web3/functionCalls/accessTokenCalls.mjs +21 -12
- package/functions/web3/functionCalls/approveToken.cjs +1 -1
- package/functions/web3/functionCalls/approveToken.d.ts +1 -1
- package/functions/web3/functionCalls/approveToken.mjs +46 -50
- package/functions/web3/functionCalls/approveTokensToHinkal.cjs +1 -1
- package/functions/web3/functionCalls/approveTokensToHinkal.d.ts +1 -1
- package/functions/web3/functionCalls/approveTokensToHinkal.mjs +6 -6
- package/functions/web3/functionCalls/estimateGasRelayer.cjs +1 -1
- package/functions/web3/functionCalls/estimateGasRelayer.d.ts +2 -1
- package/functions/web3/functionCalls/estimateGasRelayer.mjs +10 -10
- package/functions/web3/functionCalls/inHinkalApprovalCalls.cjs +1 -0
- package/functions/web3/functionCalls/inHinkalApprovalCalls.d.ts +5 -0
- package/functions/web3/functionCalls/inHinkalApprovalCalls.mjs +32 -0
- package/functions/web3/functionCalls/transactCallDirect.cjs +1 -1
- package/functions/web3/functionCalls/transactCallDirect.d.ts +1 -1
- package/functions/web3/functionCalls/transactCallDirect.mjs +40 -36
- package/functions/web3/functionCalls/transactCallRelayer.cjs +1 -1
- package/functions/web3/functionCalls/transactCallRelayer.d.ts +3 -3
- package/functions/web3/functionCalls/transactCallRelayer.mjs +54 -54
- package/functions/web3/getContractMetadata.cjs +1 -1
- package/functions/web3/getContractMetadata.mjs +22 -17
- package/functions/web3/getPublicAddressBalance.cjs +1 -1
- package/functions/web3/getPublicAddressBalance.d.ts +1 -1
- package/functions/web3/getPublicAddressBalance.mjs +6 -6
- package/functions/web3/getTokenHolder.cjs +1 -1
- package/functions/web3/getTokenHolder.mjs +27 -27
- package/functions/web3/index.d.ts +0 -1
- package/functions/web3/lifiAPI.cjs +1 -1
- package/functions/web3/lifiAPI.d.ts +1 -1
- package/functions/web3/lifiAPI.mjs +12 -12
- package/functions/web3/odosAPI.cjs +1 -1
- package/functions/web3/odosAPI.mjs +19 -6
- package/functions/web3/okxAPI.cjs +1 -1
- package/functions/web3/okxAPI.mjs +13 -13
- package/functions/web3/oneInchAPI.cjs +1 -1
- package/functions/web3/oneInchAPI.mjs +20 -7
- package/functions/web3/runContractFunction.cjs +1 -1
- package/functions/web3/runContractFunction.mjs +56 -38
- package/functions/web3/uniswapAPI.cjs +1 -1
- package/functions/web3/uniswapAPI.mjs +34 -22
- package/index.cjs +1 -1
- package/index.mjs +922 -920
- package/package.json +2 -3
- package/providers/EthersProviderAdapter.cjs +1 -1
- package/providers/EthersProviderAdapter.d.ts +17 -10
- package/providers/EthersProviderAdapter.mjs +76 -45
- package/providers/SolanaProviderAdapter.cjs +1 -1
- package/providers/SolanaProviderAdapter.d.ts +11 -7
- package/providers/SolanaProviderAdapter.mjs +31 -16
- package/providers/WagmiProviderAdapter.cjs +1 -1
- package/providers/WagmiProviderAdapter.d.ts +17 -11
- package/providers/WagmiProviderAdapter.mjs +117 -86
- package/providers/prepareEthersHinkal.cjs +1 -1
- package/providers/prepareEthersHinkal.mjs +9 -14
- package/providers/prepareWagmiHinkal.cjs +1 -1
- package/providers/prepareWagmiHinkal.mjs +9 -15
- package/types/TransactionSimulator.types.d.ts +9 -2
- package/types/activities.types.d.ts +0 -2
- package/types/admin.types.cjs +1 -1
- package/types/admin.types.d.ts +6 -0
- package/types/admin.types.mjs +2 -2
- package/types/balances.types.d.ts +1 -0
- package/types/bridging.types.d.ts +29 -0
- package/types/cache.types.cjs +1 -1
- package/types/cache.types.d.ts +3 -6
- package/types/cache.types.mjs +1 -1
- package/types/coingecko.types.d.ts +0 -5
- package/types/duneAPI.types.d.ts +9 -0
- package/types/ethereum-network.types.d.ts +0 -1
- package/types/hinkal.types.cjs +1 -1
- package/types/hinkal.types.d.ts +1 -1
- package/types/hinkal.types.mjs +18 -18
- package/types/index.d.ts +2 -2
- package/types/proxy.types.d.ts +3 -6
- package/types/sandbox.types.cjs +1 -1
- package/types/sandbox.types.d.ts +39 -10
- package/types/sandbox.types.mjs +2 -2
- package/types/scheduled-transactions.types.cjs +1 -1
- package/types/scheduled-transactions.types.d.ts +6 -0
- package/types/scheduled-transactions.types.mjs +3 -2
- package/types/session.types.d.ts +0 -2
- package/types/solana.types.d.ts +0 -9
- package/types/token-prices.types.cjs +1 -1
- package/types/token-prices.types.d.ts +0 -7
- package/types/token-prices.types.mjs +2 -4
- package/webworker/snarkjsWorker/snarkjsWorkerLauncher.cjs +1 -1
- package/webworker/snarkjsWorker/snarkjsWorkerLauncher.mjs +1 -1
- package/webworker/utxoWorker/utxoWorkerLauncher.cjs +1 -1
- package/webworker/utxoWorker/utxoWorkerLauncher.mjs +1 -1
- package/webworker/viteWorkerURL.constant.cjs +3 -3
- package/webworker/viteWorkerURL.constant.mjs +3 -3
- package/webworker/zkProofWorker/zkProofWorkerLauncher.cjs +1 -1
- package/webworker/zkProofWorker/zkProofWorkerLauncher.mjs +1 -1
- package/API/get-token-price-chart-data.cjs +0 -1
- package/API/get-token-price-chart-data.d.ts +0 -16
- package/API/get-token-price-chart-data.mjs +0 -13
- package/API/onrampCalls.cjs +0 -1
- package/API/onrampCalls.d.ts +0 -20
- package/API/onrampCalls.mjs +0 -15
- package/API/unspent-utxos-calls.cjs +0 -1
- package/API/unspent-utxos-calls.d.ts +0 -26
- package/API/unspent-utxos-calls.mjs +0 -26
- package/data-structures/AccountActions/AccountActions.cjs +0 -1
- package/data-structures/AccountActions/AccountActions.d.ts +0 -18
- package/data-structures/AccountActions/AccountActions.mjs +0 -78
- package/data-structures/AccountActions/index.d.ts +0 -1
- package/data-structures/BlockchainEvent/BlockchainEvent.cjs +0 -1
- package/data-structures/BlockchainEvent/BlockchainEvent.d.ts +0 -14
- package/data-structures/BlockchainEvent/BlockchainEvent.mjs +0 -41
- package/data-structures/PublicBalance/PublicBalanceWatcher.cjs +0 -1
- package/data-structures/PublicBalance/PublicBalanceWatcher.d.ts +0 -20
- package/data-structures/PublicBalance/PublicBalanceWatcher.mjs +0 -124
- package/data-structures/PublicBalance/SolanaPublicBalancerWatcher.cjs +0 -1
- package/data-structures/PublicBalance/SolanaPublicBalancerWatcher.d.ts +0 -15
- package/data-structures/PublicBalance/SolanaPublicBalancerWatcher.mjs +0 -64
- package/data-structures/PublicBalance/index.d.ts +0 -2
- package/data-structures/event-service/evm/ClientBlockchainEventEmitter.cjs +0 -1
- package/data-structures/event-service/evm/ClientBlockchainEventEmitter.d.ts +0 -11
- package/data-structures/event-service/evm/ClientBlockchainEventEmitter.mjs +0 -21
- package/data-structures/event-service/evm/PollingBlockchainEventEmitter.cjs +0 -1
- package/data-structures/event-service/evm/PollingBlockchainEventEmitter.d.ts +0 -6
- package/data-structures/event-service/evm/PollingBlockchainEventEmitter.mjs +0 -16
- package/data-structures/event-service/helpers/ClientEventHelper.cjs +0 -1
- package/data-structures/event-service/helpers/ClientEventHelper.d.ts +0 -11
- package/data-structures/event-service/helpers/ClientEventHelper.mjs +0 -26
- package/data-structures/event-service/helpers/PollingEventHelper.cjs +0 -1
- package/data-structures/event-service/helpers/PollingEventHelper.d.ts +0 -5
- package/data-structures/event-service/helpers/PollingEventHelper.mjs +0 -14
- package/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.cjs +0 -1
- package/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.d.ts +0 -11
- package/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.mjs +0 -22
- package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.cjs +0 -1
- package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.d.ts +0 -6
- package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.mjs +0 -16
- package/functions/utils/enum.utils.cjs +0 -1
- package/functions/utils/enum.utils.mjs +0 -14
- package/functions/utils/socket.utils.cjs +0 -1
- package/functions/utils/socket.utils.d.ts +0 -1
- package/functions/utils/socket.utils.mjs +0 -12
- package/functions/web3/crypto.cjs +0 -1
- package/functions/web3/crypto.d.ts +0 -1
- package/functions/web3/crypto.mjs +0 -7
- package/types/events.types.cjs +0 -1
- package/types/events.types.d.ts +0 -9
- package/types/events.types.mjs +0 -5
- package/types/onramp.types.cjs +0 -1
- package/types/onramp.types.d.ts +0 -58
- package/types/onramp.types.mjs +0 -4
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { get as
|
|
1
|
+
import { get as k, update as g } from "idb-keyval";
|
|
2
2
|
import { BigNumber as T } from "ethers";
|
|
3
3
|
import "../../types/circom-data.types.mjs";
|
|
4
|
-
import { solanaNativeAddress as
|
|
4
|
+
import { solanaNativeAddress as P, zeroAddress as C } from "../../constants/protocol.constants.mjs";
|
|
5
5
|
import "../../types/transactions.types.mjs";
|
|
6
6
|
import { ActivityStatus as f } from "../../types/activities.types.mjs";
|
|
7
|
-
import { StorageKeys as
|
|
7
|
+
import { StorageKeys as l } from "../../types/cache.types.mjs";
|
|
8
8
|
import "../../constants/token-data/index.mjs";
|
|
9
|
-
import { isSolanaLike as
|
|
9
|
+
import { isSolanaLike as N } from "../../constants/chains.constants.mjs";
|
|
10
10
|
import "../../constants/contracts.constants.mjs";
|
|
11
11
|
import "../../constants/kyc.constants.mjs";
|
|
12
12
|
import "../../constants/server.constants.mjs";
|
|
@@ -21,134 +21,118 @@ import "../../constants/tasks.constants.mjs";
|
|
|
21
21
|
import "../../constants/events.constants.mjs";
|
|
22
22
|
import "@coral-xyz/anchor";
|
|
23
23
|
import "@solana/web3.js";
|
|
24
|
-
import { fixDecimalsAmount as
|
|
24
|
+
import { fixDecimalsAmount as b } from "../../functions/utils/amounts.utils.mjs";
|
|
25
25
|
import "circomlibjs-hinkal-fork";
|
|
26
26
|
import "../http/HttpClient.mjs";
|
|
27
|
-
import { Logger as
|
|
28
|
-
import { getERC20Token as
|
|
27
|
+
import { Logger as q } from "../../error-handling/logger.mjs";
|
|
28
|
+
import { getERC20Token as _ } from "../../functions/utils/erc20tokenFunctions.mjs";
|
|
29
29
|
import "../../functions/utils/convertIntegrationProviderToExternalActionId.mjs";
|
|
30
|
-
import { getAmountInToken as
|
|
30
|
+
import { getAmountInToken as E } from "../../functions/web3/etherFunctions.mjs";
|
|
31
31
|
import "../crypto-keys/keys.mjs";
|
|
32
32
|
import "../../error-handling/error-codes.constants.mjs";
|
|
33
|
-
import "../../API/getServerURL.mjs";
|
|
34
33
|
import "axios";
|
|
35
|
-
import "
|
|
36
|
-
import "
|
|
37
|
-
import "
|
|
38
|
-
import "bs58";
|
|
34
|
+
import "../../API/getServerURL.mjs";
|
|
35
|
+
import "libsodium-wrappers";
|
|
36
|
+
import "process";
|
|
39
37
|
import "buffer";
|
|
38
|
+
import "../../constants/save-depths.mjs";
|
|
39
|
+
import "../../functions/utils/mutexes.utils.mjs";
|
|
40
|
+
import "@solana/spl-token";
|
|
40
41
|
import "../../functions/utils/userAgent.mjs";
|
|
41
|
-
import "libsodium-wrappers";
|
|
42
42
|
import "multiformats";
|
|
43
|
-
import { API as
|
|
44
|
-
import "
|
|
45
|
-
import "
|
|
46
|
-
import "../../providers/EthersProviderAdapter.mjs";
|
|
47
|
-
import "../../functions/web3/events/getInputUtxoAndBalance.mjs";
|
|
43
|
+
import { API as H } from "../../API/API.mjs";
|
|
44
|
+
import "../../API/tenderly.api.mjs";
|
|
45
|
+
import "node-forge";
|
|
48
46
|
import "../../functions/web3/events/getApprovedBalance.mjs";
|
|
49
47
|
import "../../functions/web3/getTokenHolder.mjs";
|
|
50
|
-
import "
|
|
51
|
-
class
|
|
48
|
+
import "ethers-v6h";
|
|
49
|
+
class R {
|
|
52
50
|
generateTxId() {
|
|
53
51
|
const t = (/* @__PURE__ */ new Date()).getTime(), o = Math.random().toString(36).substring(2, 15);
|
|
54
52
|
return `tx_${t}_${o}`;
|
|
55
53
|
}
|
|
56
54
|
async getTransactionRecord() {
|
|
57
|
-
return await
|
|
55
|
+
return await k(l.TX_ACTIVITY) || {};
|
|
58
56
|
}
|
|
59
57
|
async saveTxRequest(t) {
|
|
60
58
|
const {
|
|
61
59
|
from: o,
|
|
62
60
|
to: r,
|
|
63
|
-
gas:
|
|
61
|
+
gas: i,
|
|
64
62
|
gasPrice: a,
|
|
65
63
|
gasInDollar: s,
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
} = t, g = this.generateTxId(), P = {
|
|
82
|
-
id: g,
|
|
64
|
+
value: n,
|
|
65
|
+
chainId: m,
|
|
66
|
+
status: e,
|
|
67
|
+
txHash: u,
|
|
68
|
+
activityType: c,
|
|
69
|
+
tokensReceive: p,
|
|
70
|
+
tokensSpend: v,
|
|
71
|
+
tokensApprove: y,
|
|
72
|
+
ownerPublicAddress: w,
|
|
73
|
+
activityIcon: A,
|
|
74
|
+
dappUrl: h,
|
|
75
|
+
dappName: x,
|
|
76
|
+
integrationProvider: D
|
|
77
|
+
} = t, d = this.generateTxId(), S = {
|
|
78
|
+
id: d,
|
|
83
79
|
from: o,
|
|
84
80
|
to: r,
|
|
85
|
-
gas:
|
|
81
|
+
gas: i,
|
|
86
82
|
gasPrice: a,
|
|
87
83
|
gasInDollar: s?.toString(),
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
status: d ?? f.PENDING,
|
|
84
|
+
value: n,
|
|
85
|
+
chainId: m,
|
|
86
|
+
txHash: u,
|
|
87
|
+
activityType: c,
|
|
88
|
+
status: e ?? f.PENDING,
|
|
94
89
|
timestamp: /* @__PURE__ */ new Date(),
|
|
95
|
-
tokensReceive:
|
|
96
|
-
tokensSpend:
|
|
97
|
-
tokensApprove:
|
|
98
|
-
ownerPublicAddress:
|
|
99
|
-
activityIcon:
|
|
100
|
-
dappUrl:
|
|
101
|
-
dappName:
|
|
102
|
-
integrationProvider:
|
|
103
|
-
knownPartialSignature: k
|
|
90
|
+
tokensReceive: p,
|
|
91
|
+
tokensSpend: v,
|
|
92
|
+
tokensApprove: y,
|
|
93
|
+
ownerPublicAddress: w,
|
|
94
|
+
activityIcon: A,
|
|
95
|
+
dappUrl: h,
|
|
96
|
+
dappName: x,
|
|
97
|
+
integrationProvider: D
|
|
104
98
|
};
|
|
105
|
-
return await l
|
|
99
|
+
return await g(l.TX_ACTIVITY, (I = {}) => (I[d] = S, I)), d;
|
|
106
100
|
}
|
|
107
101
|
async getTxRequest(t) {
|
|
108
102
|
return (await this.getTransactionRecord())[t] || null;
|
|
109
103
|
}
|
|
110
104
|
async getAllTxRequests(t) {
|
|
111
105
|
const o = await this.getTransactionRecord();
|
|
112
|
-
return Object.values(o).filter((r) => r.chainId === t).sort((r,
|
|
113
|
-
}
|
|
114
|
-
async updateTxHash(t, o) {
|
|
115
|
-
const r = await this.getTxRequest(t);
|
|
116
|
-
if (!r)
|
|
117
|
-
throw new Error("Activity not found");
|
|
118
|
-
const e = {
|
|
119
|
-
...r,
|
|
120
|
-
txHash: o
|
|
121
|
-
};
|
|
122
|
-
await l(c.TX_ACTIVITY, (a = {}) => (a[t] = e, a));
|
|
106
|
+
return Object.values(o).filter((r) => r.chainId === t).sort((r, i) => new Date(i.timestamp).getTime() - new Date(r.timestamp).getTime());
|
|
123
107
|
}
|
|
124
|
-
async updateTxStatusAndHash(t, o, r,
|
|
125
|
-
const
|
|
126
|
-
if (!
|
|
108
|
+
async updateTxStatusAndHash(t, o, r, i, a, s, n, m) {
|
|
109
|
+
const e = await this.getTxRequest(t);
|
|
110
|
+
if (!e)
|
|
127
111
|
throw new Error("Transaction not found");
|
|
128
|
-
const
|
|
129
|
-
...
|
|
112
|
+
const u = await this.getGasInDollar(n, m, e.chainId), c = {
|
|
113
|
+
...e,
|
|
130
114
|
status: o,
|
|
131
115
|
txHash: r,
|
|
132
|
-
value:
|
|
133
|
-
from:
|
|
134
|
-
to:
|
|
116
|
+
value: e.value ?? i,
|
|
117
|
+
from: e.from ?? a,
|
|
118
|
+
to: e.to ?? s,
|
|
135
119
|
gas: n,
|
|
136
120
|
gasPrice: m,
|
|
137
|
-
gasInDollar:
|
|
121
|
+
gasInDollar: e.gasInDollar ?? u?.toString(),
|
|
138
122
|
timestamp: /* @__PURE__ */ new Date()
|
|
139
123
|
};
|
|
140
|
-
return await l
|
|
124
|
+
return await g(l.TX_ACTIVITY, (p = {}) => (p[t] = c, p)), c;
|
|
141
125
|
}
|
|
142
|
-
async updateActivity(t, o, r,
|
|
126
|
+
async updateActivity(t, o, r, i, a, s, n, m) {
|
|
143
127
|
try {
|
|
144
|
-
await this.updateTxStatusAndHash(t, o, r,
|
|
145
|
-
} catch (
|
|
146
|
-
console.log("error in updating tx request",
|
|
128
|
+
await this.updateTxStatusAndHash(t, o, r, i, a, s, n, m);
|
|
129
|
+
} catch (e) {
|
|
130
|
+
console.log("error in updating tx request", e);
|
|
147
131
|
}
|
|
148
132
|
}
|
|
149
133
|
async removePendingTransactions(t) {
|
|
150
134
|
try {
|
|
151
|
-
await l
|
|
135
|
+
await g(l.TX_ACTIVITY, (o = {}) => (delete o[t], o));
|
|
152
136
|
} catch (o) {
|
|
153
137
|
console.log("error in deleting tx requests", o);
|
|
154
138
|
}
|
|
@@ -183,21 +167,21 @@ class V {
|
|
|
183
167
|
getGasInDollar = async (t, o, r) => {
|
|
184
168
|
if (!(!t || !o))
|
|
185
169
|
try {
|
|
186
|
-
const
|
|
170
|
+
const i = N(r) ? P : C, a = _(i, r);
|
|
187
171
|
if (!a)
|
|
188
172
|
return;
|
|
189
|
-
const { prices: s } = await
|
|
173
|
+
const { prices: s } = await H.getTokenPrices(r, [a.erc20TokenAddress]), n = s[0];
|
|
190
174
|
if (!n)
|
|
191
175
|
return;
|
|
192
|
-
const
|
|
193
|
-
return
|
|
194
|
-
} catch (
|
|
195
|
-
|
|
176
|
+
const e = n * Number(E(a, o.toBigInt())) * Number(t.toBigInt());
|
|
177
|
+
return b(e);
|
|
178
|
+
} catch (i) {
|
|
179
|
+
q.error("Failed to calculate gas cost in dollars:", { chainId: r, error: i });
|
|
196
180
|
return;
|
|
197
181
|
}
|
|
198
182
|
};
|
|
199
183
|
}
|
|
200
|
-
const
|
|
184
|
+
const qt = new R();
|
|
201
185
|
export {
|
|
202
|
-
|
|
186
|
+
qt as activityStorage
|
|
203
187
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("idb-keyval");require("ethers");require("../../constants/chains.constants.cjs");require("@solana/web3.js");require("../http/HttpClient.cjs");const B=require("../../error-handling/logger.cjs");require("../../constants/token-data/index.cjs");require("../../error-handling/error-codes.constants.cjs");require("../../functions/utils/convertIntegrationProviderToExternalActionId.cjs");require("../../types/circom-data.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");require("circomlibjs-hinkal-fork");require("../crypto-keys/keys.cjs");require("../../constants/server.constants.cjs");require("../../
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("idb-keyval");require("ethers");require("../../constants/chains.constants.cjs");require("@solana/web3.js");require("../http/HttpClient.cjs");const B=require("../../error-handling/logger.cjs");require("../../constants/token-data/index.cjs");require("../../error-handling/error-codes.constants.cjs");require("../../functions/utils/convertIntegrationProviderToExternalActionId.cjs");require("../../types/circom-data.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");require("circomlibjs-hinkal-fork");require("../crypto-keys/keys.cjs");require("../../constants/server.constants.cjs");require("../../constants/vite.constants.cjs");require("axios");require("../../API/getServerURL.cjs");require("libsodium-wrappers");require("process");require("buffer");require("../../constants/save-depths.cjs");require("../../constants/reorg-depths.constants.cjs");require("../../functions/utils/mutexes.utils.cjs");require("@coral-xyz/anchor");require("@solana/spl-token");require("../../constants/contracts.constants.cjs");require("../../constants/kyc.constants.cjs");require("../../constants/coingecko.constants.cjs");require("../../constants/addresses.constants.cjs");require("../../constants/token.limits.constants.cjs");require("../../constants/presale.constants.cjs");require("../../constants/activity.constants.cjs");require("../../constants/tasks.constants.cjs");require("../../constants/events.constants.cjs");require("../../functions/utils/userAgent.cjs");const q=require("../../functions/utils/string.utils.cjs");require("multiformats");require("../../API/tenderly.api.cjs");class y{balancesRecordLabel="walletsBalances";async getBalances(){return await c.get(this.balancesRecordLabel)}async getBalancesByWallet(r,a){const e=await this.getBalances();if(!e)return;const i=q.getStateKey(r,a);return e[i]}async setBalances(r,a,e,i){let n=[];if(!i)return await c.update(this.balancesRecordLabel,(t={})=>{const u=q.getStateKey(a,r);return{...t,[u]:e}}),e;if(i.length===0)return await this.getBalancesByWallet(a,r)??[];try{await c.update(this.balancesRecordLabel,(t={})=>{const u=q.getStateKey(a,r),s=this.createBalanceLookup(t[u]),o=this.createBalanceLookup(e);return i.forEach(({erc20TokenAddress:g})=>{const l=g.toLowerCase();l in o?s[l]=o[l]:delete s[l]}),n=Object.values(s),{...t,[u]:n}})}catch(t){B.Logger.error("Failed to update wallet balances:",t)}return n}createBalanceLookup(r=[]){return r.reduce((a,e)=>({...a,[e.token.erc20TokenAddress.toLowerCase()]:e}),{})}}const w=new y;exports.publicBalancesStorage=w;
|
|
@@ -13,19 +13,20 @@ import "../../types/activities.types.mjs";
|
|
|
13
13
|
import "circomlibjs-hinkal-fork";
|
|
14
14
|
import "../crypto-keys/keys.mjs";
|
|
15
15
|
import "../../constants/server.constants.mjs";
|
|
16
|
-
import "../../API/getServerURL.mjs";
|
|
17
|
-
import "axios";
|
|
18
16
|
import "../../constants/vite.constants.mjs";
|
|
17
|
+
import "axios";
|
|
18
|
+
import "../../API/getServerURL.mjs";
|
|
19
|
+
import "libsodium-wrappers";
|
|
20
|
+
import "process";
|
|
21
|
+
import "buffer";
|
|
22
|
+
import "../../constants/save-depths.mjs";
|
|
23
|
+
import "../../constants/reorg-depths.constants.mjs";
|
|
24
|
+
import "../../functions/utils/mutexes.utils.mjs";
|
|
19
25
|
import "@coral-xyz/anchor";
|
|
20
26
|
import "@solana/spl-token";
|
|
21
|
-
import "ethers-v6h";
|
|
22
|
-
import "tweetnacl";
|
|
23
|
-
import "bs58";
|
|
24
|
-
import "buffer";
|
|
25
27
|
import "../../constants/contracts.constants.mjs";
|
|
26
28
|
import "../../constants/kyc.constants.mjs";
|
|
27
29
|
import "../../constants/coingecko.constants.mjs";
|
|
28
|
-
import "../../constants/reorg-depths.constants.mjs";
|
|
29
30
|
import "../../constants/addresses.constants.mjs";
|
|
30
31
|
import "../../constants/token.limits.constants.mjs";
|
|
31
32
|
import "../../constants/presale.constants.mjs";
|
|
@@ -33,64 +34,60 @@ import "../../constants/activity.constants.mjs";
|
|
|
33
34
|
import "../../constants/tasks.constants.mjs";
|
|
34
35
|
import "../../constants/events.constants.mjs";
|
|
35
36
|
import "../../functions/utils/userAgent.mjs";
|
|
36
|
-
import { getStateKey as
|
|
37
|
-
import "libsodium-wrappers";
|
|
37
|
+
import { getStateKey as c } from "../../functions/utils/string.utils.mjs";
|
|
38
38
|
import "multiformats";
|
|
39
|
-
import "../../API/
|
|
40
|
-
import "async-mutex";
|
|
41
|
-
import "process";
|
|
42
|
-
import "../../providers/EthersProviderAdapter.mjs";
|
|
39
|
+
import "../../API/tenderly.api.mjs";
|
|
43
40
|
class g {
|
|
44
41
|
balancesRecordLabel = "walletsBalances";
|
|
45
42
|
async getBalances() {
|
|
46
43
|
return await u(this.balancesRecordLabel);
|
|
47
44
|
}
|
|
48
|
-
async getBalancesByWallet(
|
|
45
|
+
async getBalancesByWallet(e, r) {
|
|
49
46
|
const t = await this.getBalances();
|
|
50
47
|
if (!t)
|
|
51
48
|
return;
|
|
52
|
-
const
|
|
53
|
-
return t[
|
|
49
|
+
const o = c(e, r);
|
|
50
|
+
return t[o];
|
|
54
51
|
}
|
|
55
|
-
async setBalances(
|
|
56
|
-
let
|
|
57
|
-
if (!
|
|
58
|
-
return await s(this.balancesRecordLabel, (
|
|
59
|
-
const i =
|
|
52
|
+
async setBalances(e, r, t, o) {
|
|
53
|
+
let l = [];
|
|
54
|
+
if (!o)
|
|
55
|
+
return await s(this.balancesRecordLabel, (a = {}) => {
|
|
56
|
+
const i = c(r, e);
|
|
60
57
|
return {
|
|
61
|
-
...
|
|
58
|
+
...a,
|
|
62
59
|
[i]: t
|
|
63
60
|
};
|
|
64
61
|
}), t;
|
|
65
|
-
if (
|
|
66
|
-
return await this.getBalancesByWallet(
|
|
62
|
+
if (o.length === 0)
|
|
63
|
+
return await this.getBalancesByWallet(r, e) ?? [];
|
|
67
64
|
try {
|
|
68
|
-
await s(this.balancesRecordLabel, (
|
|
69
|
-
const i =
|
|
70
|
-
return
|
|
65
|
+
await s(this.balancesRecordLabel, (a = {}) => {
|
|
66
|
+
const i = c(r, e), n = this.createBalanceLookup(a[i]), m = this.createBalanceLookup(t);
|
|
67
|
+
return o.forEach(({ erc20TokenAddress: B }) => {
|
|
71
68
|
const p = B.toLowerCase();
|
|
72
|
-
p in
|
|
73
|
-
}),
|
|
74
|
-
...
|
|
75
|
-
[i]:
|
|
69
|
+
p in m ? n[p] = m[p] : delete n[p];
|
|
70
|
+
}), l = Object.values(n), {
|
|
71
|
+
...a,
|
|
72
|
+
[i]: l
|
|
76
73
|
};
|
|
77
74
|
});
|
|
78
|
-
} catch (
|
|
79
|
-
w.error("Failed to update wallet balances:",
|
|
75
|
+
} catch (a) {
|
|
76
|
+
w.error("Failed to update wallet balances:", a);
|
|
80
77
|
}
|
|
81
|
-
return
|
|
78
|
+
return l;
|
|
82
79
|
}
|
|
83
|
-
createBalanceLookup(
|
|
84
|
-
return
|
|
85
|
-
(
|
|
86
|
-
...
|
|
80
|
+
createBalanceLookup(e = []) {
|
|
81
|
+
return e.reduce(
|
|
82
|
+
(r, t) => ({
|
|
83
|
+
...r,
|
|
87
84
|
[t.token.erc20TokenAddress.toLowerCase()]: t
|
|
88
85
|
}),
|
|
89
86
|
{}
|
|
90
87
|
);
|
|
91
88
|
}
|
|
92
89
|
}
|
|
93
|
-
const
|
|
90
|
+
const rt = new g();
|
|
94
91
|
export {
|
|
95
|
-
|
|
92
|
+
rt as publicBalancesStorage
|
|
96
93
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("idb-keyval"),q=require("../../error-handling/logger.cjs");require("../../types/circom-data.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");require("../../constants/chains.constants.cjs");require("@coral-xyz/anchor");require("@solana/web3.js");require("ethers");require("circomlibjs-hinkal-fork");require("../../constants/kyc.constants.cjs");require("../http/HttpClient.cjs");require("../../constants/token-data/index.cjs");require("../../error-handling/error-codes.constants.cjs");require("../../functions/utils/convertIntegrationProviderToExternalActionId.cjs");require("../crypto-keys/keys.cjs");require("../../constants/server.constants.cjs");require("../../constants/vite.constants.cjs");require("axios");const d=require("../../functions/utils/caseInsensitive.utils.cjs");require("../../API/getServerURL.cjs");require("libsodium-wrappers");require("process");require("buffer");require("../../constants/save-depths.cjs");require("../../constants/reorg-depths.constants.cjs");require("../../functions/utils/mutexes.utils.cjs");require("@solana/spl-token");require("../../constants/contracts.constants.cjs");require("../../constants/coingecko.constants.cjs");require("../../constants/addresses.constants.cjs");require("../../constants/token.limits.constants.cjs");require("../../constants/presale.constants.cjs");require("../../constants/activity.constants.cjs");require("../../constants/tasks.constants.cjs");require("../../constants/events.constants.cjs");require("../../functions/utils/userAgent.cjs");require("multiformats");require("../../API/tenderly.api.cjs");require("node-forge");require("../../functions/web3/events/getApprovedBalance.cjs");require("../../functions/web3/getTokenHolder.cjs");require("ethers-v6h");class l{STORAGE_KEY="contacts";checkForDuplicate(o,e,r){if(o.find(({ethereumAddress:t,nickname:i})=>(t===e.ethereumAddress||i===e.nickname)&&t!==r)!==void 0)throw new Error("Duplicate Contact attribute")}async createContact(o,e){const r=o.toLowerCase();await s.update(this.STORAGE_KEY,c=>{const t=c??{},i=t[r]??[];return this.checkForDuplicate(i,e),i.push(e),t[r]=i,t})}async getContacts(o){try{const e=o.toLowerCase(),r=await s.get(this.STORAGE_KEY);return!r||!r[e]?[]:r[e]}catch(e){return q.Logger.error("Error while getting contacts:",e),[]}}async editContact(o,e,r){const c=o.toLowerCase();await s.update(this.STORAGE_KEY,t=>{const i=t??{},a=i[c];if(!i||!a)throw new Error("Contacts could not be fetched");this.checkForDuplicate(a,r,e);const n=a.findIndex(({ethereumAddress:u})=>d.caseInsensitiveEqual(u,e));if(n===-1)throw new Error("Contact to be edited was not found");return a[n]=r,i[c]=a,i})}async deleteContact(o,e){const r=o.toLowerCase();await s.update(this.STORAGE_KEY,c=>{const t=c??{},i=t[r];if(!t||!i)throw new Error("Contacts could not be fetched");const a=i.filter(({ethereumAddress:n})=>n!==e);return t[r]=a,t})}}const w=new l;exports.contactStorage=w;
|
|
@@ -15,18 +15,19 @@ import "../../error-handling/error-codes.constants.mjs";
|
|
|
15
15
|
import "../../functions/utils/convertIntegrationProviderToExternalActionId.mjs";
|
|
16
16
|
import "../crypto-keys/keys.mjs";
|
|
17
17
|
import "../../constants/server.constants.mjs";
|
|
18
|
-
import "../../API/getServerURL.mjs";
|
|
19
|
-
import "axios";
|
|
20
18
|
import "../../constants/vite.constants.mjs";
|
|
19
|
+
import "axios";
|
|
21
20
|
import { caseInsensitiveEqual as l } from "../../functions/utils/caseInsensitive.utils.mjs";
|
|
22
|
-
import "
|
|
23
|
-
import "
|
|
24
|
-
import "
|
|
25
|
-
import "bs58";
|
|
21
|
+
import "../../API/getServerURL.mjs";
|
|
22
|
+
import "libsodium-wrappers";
|
|
23
|
+
import "process";
|
|
26
24
|
import "buffer";
|
|
25
|
+
import "../../constants/save-depths.mjs";
|
|
26
|
+
import "../../constants/reorg-depths.constants.mjs";
|
|
27
|
+
import "../../functions/utils/mutexes.utils.mjs";
|
|
28
|
+
import "@solana/spl-token";
|
|
27
29
|
import "../../constants/contracts.constants.mjs";
|
|
28
30
|
import "../../constants/coingecko.constants.mjs";
|
|
29
|
-
import "../../constants/reorg-depths.constants.mjs";
|
|
30
31
|
import "../../constants/addresses.constants.mjs";
|
|
31
32
|
import "../../constants/token.limits.constants.mjs";
|
|
32
33
|
import "../../constants/presale.constants.mjs";
|
|
@@ -34,16 +35,12 @@ import "../../constants/activity.constants.mjs";
|
|
|
34
35
|
import "../../constants/tasks.constants.mjs";
|
|
35
36
|
import "../../constants/events.constants.mjs";
|
|
36
37
|
import "../../functions/utils/userAgent.mjs";
|
|
37
|
-
import "libsodium-wrappers";
|
|
38
38
|
import "multiformats";
|
|
39
|
-
import "../../API/
|
|
40
|
-
import "
|
|
41
|
-
import "process";
|
|
42
|
-
import "../../providers/EthersProviderAdapter.mjs";
|
|
43
|
-
import "../../functions/web3/events/getInputUtxoAndBalance.mjs";
|
|
39
|
+
import "../../API/tenderly.api.mjs";
|
|
40
|
+
import "node-forge";
|
|
44
41
|
import "../../functions/web3/events/getApprovedBalance.mjs";
|
|
45
42
|
import "../../functions/web3/getTokenHolder.mjs";
|
|
46
|
-
import "
|
|
43
|
+
import "ethers-v6h";
|
|
47
44
|
class w {
|
|
48
45
|
STORAGE_KEY = "contacts";
|
|
49
46
|
checkForDuplicate(e, t, o) {
|
|
@@ -95,7 +92,7 @@ class w {
|
|
|
95
92
|
});
|
|
96
93
|
}
|
|
97
94
|
}
|
|
98
|
-
const
|
|
95
|
+
const et = new w();
|
|
99
96
|
export {
|
|
100
|
-
|
|
97
|
+
et as contactStorage
|
|
101
98
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("idb-keyval");require("../../error-handling/error-codes.constants.cjs");require("ethers");require("../../types/circom-data.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");const a=require("../../types/cache.types.cjs");require("../../constants/server.constants.cjs");require("../../API/getServerURL.cjs");require("../http/HttpClient.cjs");require("axios");require("../../constants/chains.constants.cjs");require("circomlibjs-hinkal-fork");require("libsodium-wrappers");require("process");require("buffer");require("../../constants/vite.constants.cjs");require("../../constants/save-depths.cjs");require("../../constants/reorg-depths.constants.cjs");require("../../functions/utils/mutexes.utils.cjs");require("@coral-xyz/anchor");const o=require("../../error-handling/logger.cjs");require("@solana/web3.js");require("../crypto-keys/keys.cjs");class c{generateMessageId(){const e=new Date().getTime(),r=Math.random().toString(36).substring(2,15);return`msg_${e}_${r}`}async saveSignedMessage(e,r,t,n,u,S){try{const s=this.generateMessageId(),g=await i.get(a.StorageKeys.SIGNED_MESSAGES)||{},q={chainId:e,messageText:r,messageType:t,subAccountAddress:n,signature:u,appMetaData:S};g[s]={timestamp:new Date().toISOString(),...q},await i.set(a.StorageKeys.SIGNED_MESSAGES,g)}catch(s){o.Logger.error("Failed to save signed message:",s,{chainId:e,messageType:t})}}async getAllSignedMessages(){try{const e=await i.get(a.StorageKeys.SIGNED_MESSAGES)||{};return Object.values(e).sort((r,t)=>new Date(t.timestamp).getTime()-new Date(r.timestamp).getTime())}catch(e){return o.Logger.error("Failed to retrieve signed messages:",e),[]}}}const d=new c;exports.signedMessagesStorage=d;
|
|
@@ -1,48 +1,63 @@
|
|
|
1
|
-
import { get as
|
|
1
|
+
import { get as m, set as c } from "idb-keyval";
|
|
2
2
|
import "../../error-handling/error-codes.constants.mjs";
|
|
3
3
|
import "ethers";
|
|
4
4
|
import "../../types/circom-data.types.mjs";
|
|
5
5
|
import "../../types/transactions.types.mjs";
|
|
6
6
|
import "../../types/activities.types.mjs";
|
|
7
|
-
import { StorageKeys as
|
|
7
|
+
import { StorageKeys as s } from "../../types/cache.types.mjs";
|
|
8
|
+
import "../../constants/server.constants.mjs";
|
|
9
|
+
import "../../API/getServerURL.mjs";
|
|
10
|
+
import "../http/HttpClient.mjs";
|
|
11
|
+
import "axios";
|
|
12
|
+
import "../../constants/chains.constants.mjs";
|
|
13
|
+
import "circomlibjs-hinkal-fork";
|
|
14
|
+
import "libsodium-wrappers";
|
|
15
|
+
import "process";
|
|
16
|
+
import "buffer";
|
|
8
17
|
import "../../constants/vite.constants.mjs";
|
|
9
|
-
import
|
|
10
|
-
|
|
18
|
+
import "../../constants/save-depths.mjs";
|
|
19
|
+
import "../../constants/reorg-depths.constants.mjs";
|
|
20
|
+
import "../../functions/utils/mutexes.utils.mjs";
|
|
21
|
+
import "@coral-xyz/anchor";
|
|
22
|
+
import { Logger as a } from "../../error-handling/logger.mjs";
|
|
23
|
+
import "@solana/web3.js";
|
|
24
|
+
import "../crypto-keys/keys.mjs";
|
|
25
|
+
class d {
|
|
11
26
|
generateMessageId() {
|
|
12
|
-
const
|
|
13
|
-
return `msg_${
|
|
27
|
+
const t = (/* @__PURE__ */ new Date()).getTime(), e = Math.random().toString(36).substring(2, 15);
|
|
28
|
+
return `msg_${t}_${e}`;
|
|
14
29
|
}
|
|
15
|
-
async saveSignedMessage(
|
|
30
|
+
async saveSignedMessage(t, e, r, g, n, p) {
|
|
16
31
|
try {
|
|
17
|
-
const
|
|
18
|
-
chainId:
|
|
19
|
-
messageText:
|
|
32
|
+
const o = this.generateMessageId(), i = await m(s.SIGNED_MESSAGES) || {}, S = {
|
|
33
|
+
chainId: t,
|
|
34
|
+
messageText: e,
|
|
20
35
|
messageType: r,
|
|
21
|
-
subAccountAddress:
|
|
22
|
-
signature:
|
|
23
|
-
appMetaData:
|
|
36
|
+
subAccountAddress: g,
|
|
37
|
+
signature: n,
|
|
38
|
+
appMetaData: p
|
|
24
39
|
};
|
|
25
|
-
o
|
|
40
|
+
i[o] = {
|
|
26
41
|
timestamp: (/* @__PURE__ */ new Date()).toISOString(),
|
|
27
|
-
...
|
|
28
|
-
}, await
|
|
29
|
-
} catch (
|
|
30
|
-
|
|
31
|
-
chainId:
|
|
42
|
+
...S
|
|
43
|
+
}, await c(s.SIGNED_MESSAGES, i);
|
|
44
|
+
} catch (o) {
|
|
45
|
+
a.error("Failed to save signed message:", o, {
|
|
46
|
+
chainId: t,
|
|
32
47
|
messageType: r
|
|
33
48
|
});
|
|
34
49
|
}
|
|
35
50
|
}
|
|
36
51
|
async getAllSignedMessages() {
|
|
37
52
|
try {
|
|
38
|
-
const
|
|
39
|
-
return Object.values(
|
|
40
|
-
} catch (
|
|
41
|
-
return
|
|
53
|
+
const t = await m(s.SIGNED_MESSAGES) || {};
|
|
54
|
+
return Object.values(t).sort((e, r) => new Date(r.timestamp).getTime() - new Date(e.timestamp).getTime());
|
|
55
|
+
} catch (t) {
|
|
56
|
+
return a.error("Failed to retrieve signed messages:", t), [];
|
|
42
57
|
}
|
|
43
58
|
}
|
|
44
59
|
}
|
|
45
|
-
const
|
|
60
|
+
const q = new d();
|
|
46
61
|
export {
|
|
47
|
-
|
|
62
|
+
q as signedMessagesStorage
|
|
48
63
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const k=require("ethers"),T=require("idb-keyval"),_=require("../../API/API.cjs"),m=require("../../constants/chains.constants.cjs"),p=require("../../error-handling/logger.cjs"),E=require("../../functions/utils/caseInsensitive.utils.cjs"),g=require("../../types/cache.types.cjs"),d=require("../../functions/utils/string.utils.cjs"),A=require("../../constants/protocol.constants.cjs"),C=require("async-mutex"),S=require("../../functions/utils/erc20tokenFunctions.cjs"),I=require("./token-visibility-db.cjs");require("../../types/circom-data.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");require("@coral-xyz/anchor");require("@solana/web3.js");require("circomlibjs-hinkal-fork");require("../../constants/kyc.constants.cjs");const K=require("../../functions/utils/create-provider.cjs");require("../../functions/utils/convertIntegrationProviderToExternalActionId.cjs");require("../../error-handling/error-codes.constants.cjs");require("../crypto-keys/keys.cjs");require("../../constants/server.constants.cjs");require("../../constants/vite.constants.cjs");require("../http/HttpClient.cjs");require("axios");require("../../API/getServerURL.cjs");require("libsodium-wrappers");require("process");require("buffer");require("../../constants/save-depths.cjs");require("../../constants/reorg-depths.constants.cjs");require("../../functions/utils/mutexes.utils.cjs");require("@solana/spl-token");require("../../constants/token-data/index.cjs");require("../../constants/contracts.constants.cjs");require("../../constants/coingecko.constants.cjs");require("../../constants/addresses.constants.cjs");require("../../constants/token.limits.constants.cjs");require("../../constants/presale.constants.cjs");require("../../constants/activity.constants.cjs");require("../../constants/tasks.constants.cjs");const x=require("../../constants/events.constants.cjs");require("../../functions/utils/userAgent.cjs");require("multiformats");require("../../API/tenderly.api.cjs");require("node-forge");require("../../functions/web3/events/getApprovedBalance.cjs");require("../../functions/web3/getTokenHolder.cjs");require("ethers-v6h");class P{fetchedTokens={};updateMutexes={};transferEventTopic=k.ethers.utils.id("Transfer(address,address,uint256)");getMutex(r){return this.updateMutexes[r]||(this.updateMutexes[r]=new C.Mutex),this.updateMutexes[r]}async getPublicTokens(r,o){const t=d.getStateKey(o,r);return(await T.get(g.StorageKeys.EVENTS_PUBLIC_TOKENS))?.[t]||[]}getFetchedTokens(r,o){const t=d.getStateKey(o,r);return this.fetchedTokens[t]||[]}async fetchAndUpdatePublicTokens(r,o){const t=d.getStateKey(r,o);await this.getMutex(t).runExclusive(async()=>{try{const s=(await this.getPublicTokens(o,r)).map(a=>a.erc20TokenAddress),{toEvents:i,fromEvents:u,latestBlock:c}=await this.getEvents(r,o),q=[...i,...u],{erc20Tokens:l}=await this.fetchPublicTokens(q,o,s),b=await I.tokenVisibilityStorage.hideSpamsAndFetchHiddenTokensAddresses(o,l),B=l.filter(a=>!E.lowerCaseIncludes(b,a.erc20TokenAddress));await T.update(g.StorageKeys.EVENTS_PUBLIC_TOKENS,(a={})=>{const h=a[t]||[],w=h.map(f=>f.erc20TokenAddress),L=B.filter(f=>!E.lowerCaseIncludes(w,f.erc20TokenAddress));h.push(...L);const v=this.updateTokenIds(u,i,h),y={...a,[t]:v};return this.fetchedTokens=y,y}),c&&await this.updateLastProcessedBlock(o,r,c)}catch(e){p.Logger.error("public tokens db error",e)}})}async getLastProcessedBlock(r,o){const t=await T.get(g.StorageKeys.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS)||{},n=d.getStateKey(o,r);return t[n]||x.EVENTS_INITIAL_BLOCKS[r]}async updateLastProcessedBlock(r,o,t){await T.update(g.StorageKeys.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS,(n={})=>{const e=d.getStateKey(o,r);return{...n,[e]:t}})}async getEvents(r,o){try{const{fetchRpcUrl:t}=m.networkRegistry[o];if(!t)throw Error("No fetchRpcUrl in PublicTokensDB");const n=K.createCustomRpcProvider(t),e=await this.getLastProcessedBlock(o,r)+1,s=await n.getBlockNumber(),i=k.ethers.utils.hexZeroPad(r.toLowerCase(),32),u={topics:[this.transferEventTopic,null,i],fromBlock:e,toBlock:s},c={topics:[this.transferEventTopic,i,null],fromBlock:e,toBlock:s},[q,l]=await Promise.all([n.getLogs(u),n.getLogs(c)]);return{toEvents:q,fromEvents:l,latestBlock:s}}catch(t){return p.Logger.error("Error fetching events:",t),{toEvents:[],fromEvents:[],latestBlock:void 0}}}updateTokenIds(r,o,t){const n=new Map;return t.forEach(e=>{if(S.isNFTToken(e)&&e.tokenIds){const s=e.erc20TokenAddress.toLowerCase();n.set(s,[...e.tokenIds])}}),o.forEach(e=>{if(e.topics.length<=3)return;const s=e.address.toLowerCase(),i=k.ethers.BigNumber.from(e.topics[3]).toString();n.has(s)||n.set(s,[]),n.get(s)?.push(i)}),r.forEach(e=>{if(e.topics.length<=3)return;const s=e.address.toLowerCase(),i=n.get(s);if(i?.length){const u=k.ethers.BigNumber.from(e.topics[3]).toString(),c=i.indexOf(u);c!==-1&&i.splice(c,1)}}),t.forEach(e=>{if(S.isNFTToken(e)){const s=e.erc20TokenAddress.toLowerCase(),i=n.get(s);e.tokenIds=i?.length&&i.length>0?i:void 0}}),t}async fetchPublicTokens(r,o,t){try{const n=[A.zeroAddress,...new Set(r.map(s=>s.address))].filter(s=>s&&!E.lowerCaseIncludes(t,s));return n.length?{erc20Tokens:(await _.API.tokensInfoCall(o,n)).filter(s=>!!s)}:{erc20Tokens:[]}}catch(n){return p.Logger.error("Error fetching public tokens:",n),{erc20Tokens:[]}}}}const N=new P;exports.EventsPublicTokensDB=P;exports.eventsPublicTokensDB=N;
|