@hinkal/common 0.3.1 → 0.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -18
- package/common/src/API/API.cjs +1 -1
- package/common/src/API/API.d.ts +12 -37
- package/common/src/API/API.mjs +80 -105
- package/common/src/API/callRelayer.d.ts +3 -0
- package/common/src/API/dashboardAccountMemberCalls.cjs +1 -1
- package/common/src/API/dashboardAccountMemberCalls.d.ts +15 -0
- package/common/src/API/dashboardAccountMemberCalls.mjs +5 -2
- package/common/src/API/dashboardPayoutCalls.cjs +1 -1
- package/common/src/API/dashboardPayoutCalls.d.ts +2 -1
- package/common/src/API/dashboardPayoutCalls.mjs +4 -1
- package/common/src/API/enclaveUtxoCalls.cjs +1 -1
- package/common/src/API/enclaveUtxoCalls.d.ts +17 -8
- package/common/src/API/enclaveUtxoCalls.mjs +5 -3
- package/common/src/API/getOdosPriceForToken.cjs +1 -0
- package/common/src/API/getOdosPriceForToken.d.ts +1 -0
- package/common/src/API/getOdosPriceForToken.mjs +14 -0
- package/common/src/API/getWebsiteURL.d.ts +1 -3
- package/common/src/API/index.cjs +1 -1
- package/common/src/API/index.d.ts +1 -3
- package/common/src/API/index.mjs +3 -5
- package/common/src/API/payoutNotificationStateCalls.cjs +1 -0
- package/common/src/API/payoutNotificationStateCalls.d.ts +10 -0
- package/common/src/API/payoutNotificationStateCalls.mjs +10 -0
- package/common/src/API/proxyAccountsCalls.cjs +1 -1
- package/common/src/API/proxyAccountsCalls.d.ts +2 -3
- package/common/src/API/proxyAccountsCalls.mjs +11 -10
- package/common/src/API/rewardsUserCalls.cjs +1 -1
- package/common/src/API/rewardsUserCalls.d.ts +1 -40
- package/common/src/API/rewardsUserCalls.mjs +2 -10
- package/common/src/API/scheduled-transactions-calls.d.ts +1 -0
- package/common/src/API/temporaryWalletCalls.cjs +1 -1
- package/common/src/API/temporaryWalletCalls.mjs +8 -8
- package/common/src/API/tenderly.api.cjs +1 -1
- package/common/src/API/tenderly.api.d.ts +5 -10
- package/common/src/API/tenderly.api.mjs +1 -1
- package/common/src/API/weeklyAnalyticCalls.cjs +1 -1
- package/common/src/API/weeklyAnalyticCalls.d.ts +1 -11
- package/common/src/API/weeklyAnalyticCalls.mjs +2 -5
- package/common/src/constants/addresses.constants.cjs +1 -1
- package/common/src/constants/addresses.constants.d.ts +4 -46
- package/common/src/constants/addresses.constants.mjs +19 -60
- package/common/src/constants/balance.constants.cjs +1 -0
- package/common/src/constants/balance.constants.d.ts +1 -0
- package/common/src/constants/balance.constants.mjs +4 -0
- package/common/src/constants/chains.constants.cjs +1 -1
- package/common/src/constants/chains.constants.d.ts +3 -1
- package/common/src/constants/chains.constants.mjs +117 -138
- package/common/src/constants/coingecko.constants.cjs +1 -1
- package/common/src/constants/coingecko.constants.d.ts +2 -0
- package/common/src/constants/coingecko.constants.mjs +1 -1
- package/common/src/constants/contracts.constants.cjs +1 -1
- package/common/src/constants/contracts.constants.d.ts +0 -109
- package/common/src/constants/contracts.constants.mjs +9 -31
- package/common/src/constants/deploy-data/deploy-data-arbMainnet.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-arbMainnet.json.mjs +6 -9
- package/common/src/constants/deploy-data/deploy-data-arcTestnet.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-arcTestnet.json.mjs +6 -6
- package/common/src/constants/deploy-data/deploy-data-base.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-base.json.mjs +6 -9
- package/common/src/constants/deploy-data/deploy-data-bnbMainnet.json.cjs +1 -0
- package/common/src/constants/deploy-data/deploy-data-bnbMainnet.json.mjs +10 -0
- package/common/src/constants/deploy-data/deploy-data-ethMainnet.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-ethMainnet.json.mjs +6 -9
- package/common/src/constants/deploy-data/deploy-data-localhost.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-localhost.json.mjs +0 -3
- package/common/src/constants/deploy-data/deploy-data-optimism.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-optimism.json.mjs +6 -9
- package/common/src/constants/deploy-data/deploy-data-optimismTest.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-optimismTest.json.mjs +5 -9
- package/common/src/constants/deploy-data/deploy-data-polygon.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-polygon.json.mjs +6 -9
- package/common/src/constants/deploy-data/deploy-data-sepoliaTestnet.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-sepoliaTestnet.json.mjs +0 -1
- package/common/src/constants/deploy-data/deploy-data-solana.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-solana.json.mjs +2 -2
- package/common/src/constants/deploy-data/deploy-data-tempo.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-tempo.json.mjs +6 -7
- package/common/src/constants/deploy-data/deploy-data-tronMainnet.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-tronMainnet.json.mjs +2 -4
- package/common/src/constants/deploy-data/deploy-data-tronNile.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-tronNile.json.mjs +2 -4
- package/common/src/constants/deploy-data/index.cjs +1 -1
- package/common/src/constants/deploy-data/index.d.ts +2 -1
- package/common/src/constants/deploy-data/index.mjs +16 -15
- package/common/src/constants/deploy-data/shared-deploy-data-evm.json.cjs +1 -1
- package/common/src/constants/deploy-data/shared-deploy-data-evm.json.mjs +19 -45
- package/common/src/constants/deploy-data/shared-deploy-data-solana.json.cjs +1 -1
- package/common/src/constants/deploy-data/shared-deploy-data-solana.json.mjs +1 -1
- package/common/src/constants/deploy-data/shared-deploy-data-tron.json.cjs +1 -1
- package/common/src/constants/deploy-data/shared-deploy-data-tron.json.mjs +2 -46
- package/common/src/constants/enclaveAuth.constants.d.ts +5 -0
- package/common/src/constants/events.constants.cjs +1 -1
- package/common/src/constants/events.constants.mjs +3 -2
- package/common/src/constants/fees.constants.cjs +1 -1
- package/common/src/constants/fees.constants.mjs +2 -2
- package/common/src/constants/index.cjs +1 -1
- package/common/src/constants/index.d.ts +1 -3
- package/common/src/constants/index.mjs +1 -1
- package/common/src/constants/mediaUrls.constants.d.ts +0 -1
- package/common/src/constants/pay.constants.d.ts +1 -0
- package/common/src/constants/protocol.constants.cjs +2 -1
- package/common/src/constants/protocol.constants.d.ts +10 -6
- package/common/src/constants/protocol.constants.mjs +4 -11
- package/common/src/constants/server.constants.cjs +1 -1
- package/common/src/constants/server.constants.d.ts +6 -30
- package/common/src/constants/server.constants.mjs +11 -43
- package/common/src/constants/tokens.constants.cjs +1 -1
- package/common/src/constants/tokens.constants.mjs +1 -1
- package/common/src/crypto/ecdh.cjs +1 -1
- package/common/src/crypto/ecdh.mjs +2 -9
- package/common/src/crypto/index.cjs +1 -1
- package/common/src/crypto/index.mjs +1 -1
- package/common/src/data-structures/Hinkal/Hinkal.cjs +1 -1
- package/common/src/data-structures/Hinkal/Hinkal.d.ts +4 -8
- package/common/src/data-structures/Hinkal/Hinkal.mjs +88 -100
- package/common/src/data-structures/Hinkal/IHinkal.d.ts +5 -9
- package/common/src/data-structures/Hinkal/handleAutoDepositBack.cjs +1 -1
- package/common/src/data-structures/Hinkal/handleAutoDepositBack.d.ts +1 -1
- package/common/src/data-structures/Hinkal/handleAutoDepositBack.mjs +24 -23
- package/common/src/data-structures/Hinkal/hinkalActionReceive.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalActionReceive.mjs +3 -3
- package/common/src/data-structures/Hinkal/hinkalBridgePrivateToPrivate.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalBridgePrivateToPrivate.mjs +59 -57
- package/common/src/data-structures/Hinkal/hinkalClaimUtxo.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalClaimUtxo.mjs +42 -50
- package/common/src/data-structures/Hinkal/hinkalDeposit.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalDeposit.d.ts +1 -0
- package/common/src/data-structures/Hinkal/hinkalDeposit.mjs +50 -119
- package/common/src/data-structures/Hinkal/hinkalDepositAndBridge.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalDepositAndBridge.mjs +108 -100
- package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.d.ts +3 -2
- package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +105 -64
- package/common/src/data-structures/Hinkal/hinkalDepositOnChainUtxos.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalDepositOnChainUtxos.d.ts +1 -1
- package/common/src/data-structures/Hinkal/hinkalDepositOnChainUtxos.mjs +33 -43
- package/common/src/data-structures/Hinkal/hinkalNearDepositAndBridge.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalNearDepositAndBridge.mjs +7 -3
- package/common/src/data-structures/Hinkal/hinkalPalEvmDeposit.d.ts +1 -1
- package/common/src/data-structures/Hinkal/hinkalPalTronDepositPrepare.d.ts +2 -2
- package/common/src/data-structures/Hinkal/hinkalPrivateWallet.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalPrivateWallet.mjs +50 -38
- package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.d.ts +2 -3
- package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.mjs +52 -117
- package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.utils.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.utils.d.ts +3 -0
- package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.utils.mjs +26 -32
- package/common/src/data-structures/Hinkal/hinkalProxyToPrivate.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalProxyToPrivate.mjs +6 -6
- package/common/src/data-structures/Hinkal/hinkalSolanaClaimUtxo.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaClaimUtxo.mjs +71 -51
- package/common/src/data-structures/Hinkal/hinkalSolanaDeposit.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaDeposit.d.ts +2 -2
- package/common/src/data-structures/Hinkal/hinkalSolanaDeposit.mjs +47 -51
- package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.d.ts +8 -4
- package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +155 -102
- package/common/src/data-structures/Hinkal/hinkalSolanaProoflessDeposit.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaProoflessDeposit.d.ts +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaProoflessDeposit.mjs +16 -12
- package/common/src/data-structures/Hinkal/hinkalSolanaProxyShield.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaProxyShield.d.ts +2 -2
- package/common/src/data-structures/Hinkal/hinkalSolanaProxyShield.mjs +61 -54
- package/common/src/data-structures/Hinkal/hinkalSolanaProxySwap.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaProxySwap.mjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaSwap.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaSwap.mjs +87 -51
- package/common/src/data-structures/Hinkal/hinkalSolanaTransfer.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaTransfer.d.ts +1 -0
- package/common/src/data-structures/Hinkal/hinkalSolanaTransfer.mjs +97 -52
- package/common/src/data-structures/Hinkal/hinkalSolanaWithdraw.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaWithdraw.mjs +60 -34
- package/common/src/data-structures/Hinkal/hinkalSwap.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSwap.mjs +29 -32
- package/common/src/data-structures/Hinkal/hinkalTransact.cjs +1 -0
- package/common/src/data-structures/Hinkal/hinkalTransact.d.ts +3 -0
- package/common/src/data-structures/Hinkal/hinkalTransact.mjs +90 -0
- package/common/src/data-structures/Hinkal/hinkalTransfer.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalTransfer.mjs +39 -44
- package/common/src/data-structures/Hinkal/hinkalTronDepositToSelf.cjs +1 -0
- package/common/src/data-structures/Hinkal/hinkalTronDepositToSelf.d.ts +8 -0
- package/common/src/data-structures/Hinkal/hinkalTronDepositToSelf.mjs +30 -0
- package/common/src/data-structures/Hinkal/hinkalWithdraw.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalWithdraw.mjs +35 -49
- package/common/src/data-structures/Hinkal/hinkalWithdrawStuckUtxos.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalWithdrawStuckUtxos.mjs +170 -101
- package/common/src/data-structures/Hinkal/index.d.ts +0 -1
- package/common/src/data-structures/Hinkal/prepareTronDepositToSelf.cjs +1 -0
- package/common/src/data-structures/Hinkal/prepareTronDepositToSelf.d.ts +27 -0
- package/common/src/data-structures/Hinkal/prepareTronDepositToSelf.mjs +31 -0
- package/common/src/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
- package/common/src/data-structures/Hinkal/resetMerkleTrees.mjs +5 -4
- package/common/src/data-structures/IndexedDB/contact-db.cjs +1 -1
- package/common/src/data-structures/IndexedDB/contact-db.d.ts +0 -1
- package/common/src/data-structures/IndexedDB/contact-db.mjs +14 -28
- package/common/src/data-structures/IndexedDB/key-val-store.cjs +1 -1
- package/common/src/data-structures/IndexedDB/key-val-store.d.ts +2 -0
- package/common/src/data-structures/IndexedDB/key-val-store.mjs +14 -0
- package/common/src/data-structures/IndexedDB/private-balances-db.cjs +1 -1
- package/common/src/data-structures/IndexedDB/private-balances-db.d.ts +1 -0
- package/common/src/data-structures/IndexedDB/private-balances-db.mjs +3 -0
- package/common/src/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.cjs +1 -1
- package/common/src/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.mjs +25 -25
- package/common/src/data-structures/TokenDBs/AlchemyPublicTokensDB.cjs +1 -1
- package/common/src/data-structures/TokenDBs/AlchemyPublicTokensDB.mjs +15 -14
- package/common/src/data-structures/TokenDBs/ArcPublicTokensDB.cjs +1 -1
- package/common/src/data-structures/TokenDBs/ArcPublicTokensDB.mjs +7 -7
- package/common/src/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
- package/common/src/data-structures/TokenDBs/EventsPublicTokensDB.mjs +30 -30
- package/common/src/data-structures/TokenDBs/PrivateTokensDB.cjs +1 -1
- package/common/src/data-structures/TokenDBs/PrivateTokensDB.mjs +6 -6
- package/common/src/data-structures/TokenDBs/TempoPublicTokensDB.cjs +1 -1
- package/common/src/data-structures/TokenDBs/TempoPublicTokensDB.mjs +12 -16
- package/common/src/data-structures/TokenDBs/TronPublicTokensDB.cjs +1 -1
- package/common/src/data-structures/TokenDBs/TronPublicTokensDB.d.ts +1 -0
- package/common/src/data-structures/TokenDBs/TronPublicTokensDB.mjs +22 -18
- package/common/src/data-structures/WalletManager/WalletManager.d.ts +1 -0
- package/common/src/data-structures/cacheDevices/BaseCacheDevice.cjs +1 -1
- package/common/src/data-structures/cacheDevices/BaseCacheDevice.d.ts +1 -0
- package/common/src/data-structures/cacheDevices/BaseCacheDevice.mjs +3 -0
- package/common/src/data-structures/cacheDevices/FileCacheDevice.cjs +1 -1
- package/common/src/data-structures/cacheDevices/FileCacheDevice.d.ts +3 -0
- package/common/src/data-structures/cacheDevices/FileCacheDevice.mjs +12 -3
- package/common/src/data-structures/crypto-keys/decodeUTXO.cjs +1 -1
- package/common/src/data-structures/crypto-keys/decodeUTXO.d.ts +9 -9
- package/common/src/data-structures/crypto-keys/decodeUTXO.mjs +37 -47
- package/common/src/data-structures/crypto-keys/encryptDecryptUtxo.cjs +1 -1
- package/common/src/data-structures/crypto-keys/encryptDecryptUtxo.d.ts +2 -3
- package/common/src/data-structures/crypto-keys/encryptDecryptUtxo.mjs +26 -22
- package/common/src/data-structures/crypto-keys/keys.cjs +1 -1
- package/common/src/data-structures/crypto-keys/keys.d.ts +12 -27
- package/common/src/data-structures/crypto-keys/keys.mjs +61 -79
- package/common/src/data-structures/event-service/evm/BlockchainEventEmitter.cjs +1 -1
- package/common/src/data-structures/event-service/evm/BlockchainEventEmitter.d.ts +1 -2
- package/common/src/data-structures/event-service/evm/BlockchainEventEmitter.mjs +14 -20
- package/common/src/data-structures/event-service/evm/ClientBlockchainEventEmitter.cjs +1 -1
- package/common/src/data-structures/event-service/evm/ClientBlockchainEventEmitter.d.ts +1 -1
- package/common/src/data-structures/event-service/evm/ClientBlockchainEventEmitter.mjs +2 -2
- package/common/src/data-structures/event-service/helpers/ClientEventHelper.cjs +1 -1
- package/common/src/data-structures/event-service/helpers/ClientEventHelper.mjs +6 -6
- package/common/src/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.cjs +1 -1
- package/common/src/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.mjs +27 -23
- package/common/src/data-structures/merkle-tree/MerkleTree.cjs +1 -1
- package/common/src/data-structures/merkle-tree/MerkleTree.d.ts +10 -0
- package/common/src/data-structures/merkle-tree/MerkleTree.mjs +9 -1
- package/common/src/data-structures/private-balances/HinkalPrivateBalanceController.cjs +1 -1
- package/common/src/data-structures/private-balances/HinkalPrivateBalanceController.d.ts +3 -0
- package/common/src/data-structures/private-balances/HinkalPrivateBalanceController.mjs +29 -19
- package/common/src/data-structures/provider-adapter/IProviderAdapter.d.ts +0 -1
- package/common/src/data-structures/utxo/Utxo.cjs +1 -1
- package/common/src/data-structures/utxo/Utxo.d.ts +1 -4
- package/common/src/data-structures/utxo/Utxo.mjs +7 -17
- package/common/src/error-handling/error-codes.constants.cjs +2 -2
- package/common/src/error-handling/error-codes.constants.d.ts +6 -14
- package/common/src/error-handling/error-codes.constants.mjs +21 -31
- package/common/src/error-handling/get-error.message.cjs +1 -1
- package/common/src/error-handling/get-error.message.mjs +27 -14
- package/common/src/error-handling/index.cjs +1 -1
- package/common/src/error-handling/index.d.ts +1 -0
- package/common/src/error-handling/index.mjs +1 -0
- package/common/src/externalABIs/index.cjs +1 -1
- package/common/src/externalABIs/index.d.ts +1 -113
- package/common/src/externalABIs/index.mjs +2 -6
- package/common/src/functions/index.cjs +1 -1
- package/common/src/functions/index.d.ts +0 -1
- package/common/src/functions/index.mjs +13 -16
- package/common/src/functions/pre-transaction/buildCommitmentValidationData.cjs +1 -1
- package/common/src/functions/pre-transaction/buildCommitmentValidationData.mjs +36 -38
- package/common/src/functions/pre-transaction/calculateSolanaNullifierCount.cjs +1 -1
- package/common/src/functions/pre-transaction/calculateSolanaNullifierCount.mjs +39 -5
- package/common/src/functions/pre-transaction/getExternalSwapAddress.cjs +1 -1
- package/common/src/functions/pre-transaction/getExternalSwapAddress.mjs +2 -18
- package/common/src/functions/pre-transaction/getSolanaCalldataHash.cjs +1 -1
- package/common/src/functions/pre-transaction/getSolanaCalldataHash.d.ts +1 -1
- package/common/src/functions/pre-transaction/getSolanaCalldataHash.mjs +11 -10
- package/common/src/functions/pre-transaction/getVolatileTransferAmount.cjs +1 -1
- package/common/src/functions/pre-transaction/getVolatileTransferAmount.mjs +12 -12
- package/common/src/functions/pre-transaction/index.cjs +1 -1
- package/common/src/functions/pre-transaction/index.d.ts +1 -2
- package/common/src/functions/pre-transaction/index.mjs +1 -2
- package/common/src/functions/pre-transaction/outputUtxoProcessing.cjs +1 -1
- package/common/src/functions/pre-transaction/outputUtxoProcessing.d.ts +1 -1
- package/common/src/functions/pre-transaction/outputUtxoProcessing.mjs +9 -12
- package/common/src/functions/pre-transaction/solana-public-signals.d.ts +1 -0
- package/common/src/functions/pre-transaction/solana.cjs +1 -1
- package/common/src/functions/pre-transaction/solana.d.ts +13 -0
- package/common/src/functions/pre-transaction/solana.mjs +46 -21
- package/common/src/functions/pre-transaction/store-proof.cjs +1 -1
- package/common/src/functions/pre-transaction/store-proof.d.ts +1 -1
- package/common/src/functions/pre-transaction/store-proof.mjs +1 -0
- package/common/src/functions/pre-transaction/waitForDepositedUtxosInMerkleTree.cjs +1 -1
- package/common/src/functions/pre-transaction/waitForDepositedUtxosInMerkleTree.mjs +1 -1
- package/common/src/functions/private-wallet/emporium.helpers.cjs +1 -1
- package/common/src/functions/private-wallet/emporium.helpers.d.ts +1 -2
- package/common/src/functions/private-wallet/emporium.helpers.mjs +75 -50
- package/common/src/functions/private-wallet/emporium.swap.helpers.cjs +1 -1
- package/common/src/functions/private-wallet/emporium.swap.helpers.d.ts +0 -1
- package/common/src/functions/private-wallet/emporium.swap.helpers.mjs +34 -76
- package/common/src/functions/private-wallet/index.cjs +1 -1
- package/common/src/functions/private-wallet/index.d.ts +0 -1
- package/common/src/functions/private-wallet/index.mjs +0 -1
- package/common/src/functions/snarkjs/common.snarkjs.cjs +1 -1
- package/common/src/functions/snarkjs/common.snarkjs.d.ts +3 -4
- package/common/src/functions/snarkjs/common.snarkjs.mjs +97 -62
- package/common/src/functions/snarkjs/constant.cjs +1 -1
- package/common/src/functions/snarkjs/constant.d.ts +183 -144
- package/common/src/functions/snarkjs/constant.mjs +183 -145
- package/common/src/functions/snarkjs/constructGeneralZkProof.cjs +1 -1
- package/common/src/functions/snarkjs/constructGeneralZkProof.d.ts +1 -1
- package/common/src/functions/snarkjs/constructGeneralZkProof.mjs +69 -57
- package/common/src/functions/snarkjs/constructSignatureFromMnemonicProofInput.cjs +1 -0
- package/common/src/functions/snarkjs/constructSignatureFromMnemonicProofInput.d.ts +7 -0
- package/common/src/functions/snarkjs/constructSignatureFromMnemonicProofInput.mjs +2 -0
- package/common/src/functions/snarkjs/constructSolanaZkProof.cjs +1 -1
- package/common/src/functions/snarkjs/constructSolanaZkProof.d.ts +4 -1
- package/common/src/functions/snarkjs/constructSolanaZkProof.mjs +63 -62
- package/common/src/functions/snarkjs/constructTxEnclave.cjs +1 -0
- package/common/src/functions/snarkjs/constructTxEnclave.d.ts +32 -0
- package/common/src/functions/snarkjs/constructTxEnclave.mjs +162 -0
- package/common/src/functions/snarkjs/fetchMerkleTreeSiblings.d.ts +1 -3
- package/common/src/functions/snarkjs/fetchOnChainRootHashes.cjs +1 -1
- package/common/src/functions/snarkjs/fetchOnChainRootHashes.d.ts +1 -0
- package/common/src/functions/snarkjs/fetchOnChainRootHashes.mjs +14 -5
- package/common/src/functions/snarkjs/fetchTronInsertionSiblings.cjs +1 -0
- package/common/src/functions/snarkjs/fetchTronInsertionSiblings.d.ts +7 -0
- package/common/src/functions/snarkjs/fetchTronInsertionSiblings.mjs +13 -0
- package/common/src/functions/snarkjs/generateCircomData.cjs +1 -1
- package/common/src/functions/snarkjs/generateCircomData.d.ts +1 -1
- package/common/src/functions/snarkjs/generateCircomData.mjs +41 -31
- package/common/src/functions/snarkjs/generateMainAndCommitmentZkProof.cjs +1 -1
- package/common/src/functions/snarkjs/generateMainAndCommitmentZkProof.d.ts +1 -1
- package/common/src/functions/snarkjs/generateMainAndCommitmentZkProof.mjs +7 -7
- package/common/src/functions/snarkjs/generateSignatureFromMnemonicProof.cjs +1 -0
- package/common/src/functions/snarkjs/generateSignatureFromMnemonicProof.d.ts +2 -0
- package/common/src/functions/snarkjs/generateSignatureFromMnemonicProof.mjs +3 -0
- package/common/src/functions/snarkjs/generateZkProof.cjs +1 -1
- package/common/src/functions/snarkjs/generateZkProof.d.ts +1 -1
- package/common/src/functions/snarkjs/generateZkProof.mjs +9 -16
- package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.cjs +1 -1
- package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.d.ts +2 -0
- package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.mjs +18 -12
- package/common/src/functions/snarkjs/getZKFiles.cjs +1 -1
- package/common/src/functions/snarkjs/getZKFiles.mjs +9 -3
- package/common/src/functions/snarkjs/index.cjs +1 -1
- package/common/src/functions/snarkjs/index.d.ts +2 -0
- package/common/src/functions/snarkjs/index.mjs +2 -0
- package/common/src/functions/snarkjs/signedMessageHash.cjs +1 -1
- package/common/src/functions/snarkjs/signedMessageHash.d.ts +12 -0
- package/common/src/functions/snarkjs/signedMessageHash.mjs +23 -3
- package/common/src/functions/snarkjs/verifySignedEnclaveResponse.cjs +1 -0
- package/common/src/functions/snarkjs/verifySignedEnclaveResponse.d.ts +1 -0
- package/common/src/functions/snarkjs/verifySignedEnclaveResponse.mjs +11 -0
- package/common/src/functions/utils/addresses.cjs +1 -1
- package/common/src/functions/utils/addresses.d.ts +1 -1
- package/common/src/functions/utils/addresses.mjs +13 -12
- package/common/src/functions/utils/bridge-flow.utils.d.ts +1 -1
- package/common/src/functions/utils/buildClaimableDepositPlan.d.ts +3 -2
- package/common/src/functions/utils/convertEmporiumOpToCallInfo.cjs +1 -1
- package/common/src/functions/utils/convertEmporiumOpToCallInfo.mjs +5 -10
- package/common/src/functions/utils/convertIntegrationProviderToExternalActionId.cjs +1 -1
- package/common/src/functions/utils/convertIntegrationProviderToExternalActionId.mjs +1 -1
- package/common/src/functions/utils/deposit-claimable.utils.cjs +1 -1
- package/common/src/functions/utils/deposit-claimable.utils.d.ts +1 -1
- package/common/src/functions/utils/deposit-claimable.utils.mjs +3 -1
- package/common/src/functions/utils/enclave-utxo-storage.cjs +1 -1
- package/common/src/functions/utils/enclave-utxo-storage.d.ts +3 -0
- package/common/src/functions/utils/enclave-utxo-storage.mjs +1 -1
- package/common/src/functions/utils/enclaveSessionSigning.cjs +1 -0
- package/common/src/functions/utils/enclaveSessionSigning.d.ts +16 -0
- package/common/src/functions/utils/enclaveSessionSigning.mjs +2 -0
- package/common/src/functions/utils/encodeTokenWithId.cjs +1 -1
- package/common/src/functions/utils/encodeTokenWithId.d.ts +1 -2
- package/common/src/functions/utils/encodeTokenWithId.mjs +2 -5
- package/common/src/functions/utils/fees.utils.cjs +1 -1
- package/common/src/functions/utils/fees.utils.d.ts +1 -0
- package/common/src/functions/utils/fees.utils.mjs +32 -28
- package/common/src/functions/utils/formatter.d.ts +1 -0
- package/common/src/functions/utils/getDataFromTransaction.d.ts +4 -3
- package/common/src/functions/utils/getRecipientInfoFromUserKeys.cjs +1 -1
- package/common/src/functions/utils/getRecipientInfoFromUserKeys.mjs +2 -3
- package/common/src/functions/utils/getUtxosFromReceipt.utils.cjs +1 -1
- package/common/src/functions/utils/getUtxosFromReceipt.utils.mjs +6 -6
- package/common/src/functions/utils/getUtxosFromReceiptSolana.cjs +1 -1
- package/common/src/functions/utils/getUtxosFromReceiptSolana.mjs +17 -18
- package/common/src/functions/utils/index.cjs +1 -1
- package/common/src/functions/utils/index.d.ts +7 -3
- package/common/src/functions/utils/index.mjs +16 -11
- package/common/src/functions/utils/legacyKeys.cjs +1 -0
- package/common/src/functions/utils/legacyKeys.d.ts +10 -0
- package/common/src/functions/utils/legacyKeys.mjs +8 -0
- package/common/src/functions/utils/mnemonics.cjs +1 -1
- package/common/src/functions/utils/mnemonics.mjs +4 -6
- package/common/src/functions/utils/nearIntents.utils.cjs +1 -1
- package/common/src/functions/utils/nearIntents.utils.mjs +1 -1
- package/common/src/functions/utils/networks.utils.d.ts +1 -0
- package/common/src/functions/utils/prepareHinkal.cjs +1 -1
- package/common/src/functions/utils/prepareHinkal.d.ts +1 -3
- package/common/src/functions/utils/prepareHinkal.mjs +2 -1
- package/common/src/functions/utils/process.utils.cjs +1 -1
- package/common/src/functions/utils/process.utils.d.ts +0 -1
- package/common/src/functions/utils/process.utils.mjs +2 -11
- package/common/src/functions/utils/publicBalance.utils.cjs +1 -1
- package/common/src/functions/utils/publicBalance.utils.mjs +2 -1
- package/common/src/functions/utils/resolve-domain-address.cjs +1 -0
- package/common/src/functions/utils/resolve-domain-address.d.ts +4 -0
- package/common/src/functions/utils/resolve-domain-address.mjs +3 -0
- package/common/src/functions/utils/serialize-utxos.utils.cjs +1 -1
- package/common/src/functions/utils/serialize-utxos.utils.mjs +6 -4
- package/common/src/functions/utils/transfer-claimable.utils.cjs +1 -1
- package/common/src/functions/utils/transfer-claimable.utils.mjs +2 -2
- package/common/src/functions/utils/tron.utils.cjs +1 -1
- package/common/src/functions/utils/tron.utils.d.ts +5 -14
- package/common/src/functions/utils/tron.utils.mjs +91 -142
- package/common/src/functions/utils/validateWalletAddress.cjs +1 -0
- package/common/src/functions/utils/validateWalletAddress.d.ts +1 -0
- package/common/src/functions/utils/validateWalletAddress.mjs +2 -0
- package/common/src/functions/utils/voidWallets.utils.cjs +1 -0
- package/common/src/functions/utils/voidWallets.utils.d.ts +4 -0
- package/common/src/functions/utils/voidWallets.utils.mjs +1 -0
- package/common/src/functions/utils/waasStamp.cjs +1 -0
- package/common/src/functions/utils/waasStamp.d.ts +5 -0
- package/common/src/functions/utils/waasStamp.mjs +2 -0
- package/common/src/functions/web3/etherFunctions.d.ts +1 -0
- package/common/src/functions/web3/events/getInputUtxoAndBalance.cjs +1 -1
- package/common/src/functions/web3/events/getInputUtxoAndBalance.d.ts +5 -12
- package/common/src/functions/web3/events/getInputUtxoAndBalance.mjs +50 -61
- package/common/src/functions/web3/events/getInputUtxosEnclave.cjs +1 -1
- package/common/src/functions/web3/events/getInputUtxosEnclave.d.ts +4 -3
- package/common/src/functions/web3/events/getInputUtxosEnclave.mjs +34 -25
- package/common/src/functions/web3/events/getShieldedBalance.cjs +1 -1
- package/common/src/functions/web3/events/getShieldedBalance.d.ts +2 -2
- package/common/src/functions/web3/events/getShieldedBalance.mjs +89 -85
- package/common/src/functions/web3/fetchSolanaMerkleTreeRootHash.cjs +1 -1
- package/common/src/functions/web3/fetchSolanaMerkleTreeRootHash.mjs +9 -6
- package/common/src/functions/web3/functionCalls/approveToken.cjs +1 -1
- package/common/src/functions/web3/functionCalls/approveToken.d.ts +1 -1
- package/common/src/functions/web3/functionCalls/approveToken.mjs +21 -107
- package/common/src/functions/web3/functionCalls/constructBatchCall.cjs +1 -1
- package/common/src/functions/web3/functionCalls/constructBatchCall.d.ts +2 -2
- package/common/src/functions/web3/functionCalls/constructBatchCall.mjs +23 -18
- package/common/src/functions/web3/functionCalls/submitProof.cjs +1 -0
- package/common/src/functions/web3/functionCalls/submitProof.d.ts +5 -0
- package/common/src/functions/web3/functionCalls/submitProof.mjs +26 -0
- package/common/src/functions/web3/functionCalls/transactCallDirectTron.cjs +1 -1
- package/common/src/functions/web3/functionCalls/transactCallDirectTron.d.ts +7 -3
- package/common/src/functions/web3/functionCalls/transactCallDirectTron.mjs +81 -53
- package/common/src/functions/web3/functionCalls/transactCallRelayer.cjs +1 -1
- package/common/src/functions/web3/functionCalls/transactCallRelayer.d.ts +6 -11
- package/common/src/functions/web3/functionCalls/transactCallRelayer.mjs +4 -2
- package/common/src/functions/web3/getContractMetadata.cjs +1 -1
- package/common/src/functions/web3/getContractMetadata.mjs +1 -1
- package/common/src/functions/web3/getTokenHolder.cjs +1 -1
- package/common/src/functions/web3/getTokenHolder.mjs +3 -2
- package/common/src/functions/web3/index.cjs +1 -1
- package/common/src/functions/web3/index.d.ts +0 -3
- package/common/src/functions/web3/index.mjs +0 -3
- package/common/src/functions/web3/lifiAPI.cjs +1 -1
- package/common/src/functions/web3/lifiAPI.mjs +1 -1
- package/common/src/providers/EthersProviderAdapter.cjs +1 -1
- package/common/src/providers/EthersProviderAdapter.d.ts +0 -1
- package/common/src/providers/EthersProviderAdapter.mjs +0 -3
- package/common/src/providers/SolanaProviderAdapter.cjs +1 -1
- package/common/src/providers/SolanaProviderAdapter.d.ts +0 -1
- package/common/src/providers/SolanaProviderAdapter.mjs +0 -3
- package/common/src/providers/TronProviderAdapter.cjs +1 -1
- package/common/src/providers/TronProviderAdapter.d.ts +0 -1
- package/common/src/providers/TronProviderAdapter.mjs +7 -4
- package/common/src/providers/WagmiProviderAdapter.cjs +1 -1
- package/common/src/providers/WagmiProviderAdapter.d.ts +0 -1
- package/common/src/providers/WagmiProviderAdapter.mjs +0 -4
- package/common/src/types/API.types.d.ts +0 -4
- package/common/src/types/WeeklyAnalytics.types.d.ts +1 -26
- package/common/src/types/activities.types.cjs +1 -1
- package/common/src/types/activities.types.d.ts +0 -9
- package/common/src/types/activities.types.mjs +1 -1
- package/common/src/types/admin.types.cjs +1 -1
- package/common/src/types/admin.types.d.ts +3 -1
- package/common/src/types/admin.types.mjs +1 -1
- package/common/src/types/bridging-tx.types.d.ts +8 -0
- package/common/src/types/cache.types.cjs +1 -1
- package/common/src/types/cache.types.d.ts +3 -2
- package/common/src/types/cache.types.mjs +1 -1
- package/common/src/types/circom-data.types.cjs +1 -1
- package/common/src/types/circom-data.types.d.ts +32 -27
- package/common/src/types/circom-data.types.mjs +1 -1
- package/common/src/types/commitments.types.d.ts +2 -0
- package/common/src/types/dashboard-account.d.ts +15 -0
- package/common/src/types/dashboard-payout.types.d.ts +1 -0
- package/common/src/types/dashboard-transaction.types.d.ts +3 -0
- package/common/src/types/enclaveApi.types.d.ts +78 -0
- package/common/src/types/ethereum-network.types.cjs +1 -1
- package/common/src/types/ethereum-network.types.d.ts +8 -27
- package/common/src/types/ethereum-network.types.mjs +1 -1
- package/common/src/types/external-action.types.cjs +1 -1
- package/common/src/types/external-action.types.d.ts +4 -8
- package/common/src/types/external-action.types.mjs +1 -1
- package/common/src/types/hinkal.types.cjs +1 -1
- package/common/src/types/hinkal.types.d.ts +12 -29
- package/common/src/types/hinkal.types.mjs +12 -20
- package/common/src/types/index.cjs +1 -1
- package/common/src/types/index.d.ts +5 -5
- package/common/src/types/index.mjs +1 -1
- package/common/src/types/near-intents.types.d.ts +1 -0
- package/common/src/types/new-rewards.type.d.ts +0 -70
- package/common/src/types/offscreen.types.cjs +1 -1
- package/common/src/types/offscreen.types.d.ts +0 -1
- package/common/src/types/offscreen.types.mjs +1 -1
- package/common/src/types/pay-activities.types.d.ts +3 -0
- package/common/src/types/payout-notification.types.d.ts +11 -0
- package/common/src/types/proxy-progress.types.d.ts +5 -0
- package/common/src/types/remote-proof.types.d.ts +0 -6
- package/common/src/types/remote-tx-build.types.d.ts +242 -0
- package/common/src/types/scheduled-transactions.types.d.ts +3 -0
- package/common/src/types/snark.types.d.ts +1 -3
- package/common/src/types/solana.types.d.ts +7 -0
- package/common/src/types/tenderly.api.types.d.ts +70 -0
- package/common/src/types/token.types.cjs +1 -1
- package/common/src/types/token.types.mjs +1 -3
- package/common/src/types/transact.types.cjs +1 -0
- package/common/src/types/transact.types.d.ts +53 -0
- package/common/src/types/transact.types.mjs +6 -0
- package/common/src/types/transaction.types.d.ts +0 -1
- package/common/src/types/transactions.types.d.ts +0 -1
- package/common/src/webworker/logError-CxZzSALU.js +2 -0
- package/common/src/webworker/package.json +12 -12
- package/common/src/webworker/snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url.cjs +1 -1
- package/common/src/webworker/snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url.mjs +1 -1
- package/common/src/webworker/snarkjsWorkerNode.cjs +1 -1
- package/common/src/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.cjs +1 -1
- package/common/src/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.mjs +1 -1
- package/common/src/webworker/utxoWorkerNode.cjs +1 -1
- package/common/src/webworker/viteWorkerURL.constant.cjs +3 -3
- package/common/src/webworker/viteWorkerURL.constant.mjs +3 -3
- package/common/src/webworker/workerProxy-swwPYw6e.js +1 -0
- package/common/src/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.cjs +1 -1
- package/common/src/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.mjs +1 -1
- package/common/src/webworker/zkProofWorkerNode.cjs +1 -1
- package/index.cjs +1 -1
- package/index.mjs +1 -1
- package/internal/swapApi.cjs +1 -1
- package/internal/swapApi.d.ts +3 -3
- package/internal/swapApi.mjs +22 -25
- package/package.json +12 -12
- package/services/Hinkal.cjs +1 -1
- package/services/Hinkal.d.ts +4 -5
- package/services/Hinkal.mjs +11 -14
- package/types/IHinkal.d.ts +4 -5
- package/types/swap.types.d.ts +3 -20
- package/common/src/API/accessCodeCalls.cjs +0 -1
- package/common/src/API/accessCodeCalls.d.ts +0 -23
- package/common/src/API/accessCodeCalls.mjs +0 -13
- package/common/src/API/brotherhoodCalls.cjs +0 -1
- package/common/src/API/brotherhoodCalls.d.ts +0 -82
- package/common/src/API/brotherhoodCalls.mjs +0 -17
- package/common/src/API/callOdosAPI.cjs +0 -1
- package/common/src/API/callOdosAPI.d.ts +0 -63
- package/common/src/API/callOdosAPI.mjs +0 -18
- package/common/src/API/callOneInchAPI.cjs +0 -1
- package/common/src/API/callOneInchAPI.d.ts +0 -18
- package/common/src/API/callOneInchAPI.mjs +0 -13
- package/common/src/API/generate-trading-points.cjs +0 -1
- package/common/src/API/generate-trading-points.d.ts +0 -27
- package/common/src/API/generate-trading-points.mjs +0 -23
- package/common/src/API/leaderboardCalls.cjs +0 -1
- package/common/src/API/leaderboardCalls.d.ts +0 -14
- package/common/src/API/leaderboardCalls.mjs +0 -8
- package/common/src/API/referralsCalls.cjs +0 -1
- package/common/src/API/referralsCalls.d.ts +0 -22
- package/common/src/API/referralsCalls.mjs +0 -11
- package/common/src/API/send-telegram-callback.cjs +0 -1
- package/common/src/API/send-telegram-callback.d.ts +0 -7
- package/common/src/API/send-telegram-callback.mjs +0 -11
- package/common/src/constants/mystery-boxes.constants.d.ts +0 -0
- package/common/src/constants/price-impact.constants.d.ts +0 -2
- package/common/src/constants/rewards.constants.d.ts +0 -15
- package/common/src/constants/tasks.constants.cjs +0 -1
- package/common/src/constants/tasks.constants.d.ts +0 -9
- package/common/src/constants/tasks.constants.mjs +0 -124
- package/common/src/data-structures/Hinkal/hinkalMultiSend.cjs +0 -1
- package/common/src/data-structures/Hinkal/hinkalMultiSend.d.ts +0 -3
- package/common/src/data-structures/Hinkal/hinkalMultiSend.mjs +0 -12
- package/common/src/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.cjs +0 -1
- package/common/src/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.d.ts +0 -6
- package/common/src/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.mjs +0 -128
- package/common/src/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.cjs +0 -1
- package/common/src/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.d.ts +0 -22
- package/common/src/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.mjs +0 -34
- package/common/src/externalABIs/IQuoterV2.json.cjs +0 -1
- package/common/src/externalABIs/IQuoterV2.json.mjs +0 -203
- package/common/src/externalABIs/ISwapRouter.json.cjs +0 -1
- package/common/src/externalABIs/ISwapRouter.json.mjs +0 -537
- package/common/src/externalABIs/IUniswapV3Factory.json.cjs +0 -1
- package/common/src/externalABIs/IUniswapV3Factory.json.mjs +0 -188
- package/common/src/externalABIs/IUniswapV3Pool.json.cjs +0 -1
- package/common/src/externalABIs/IUniswapV3Pool.json.mjs +0 -938
- package/common/src/externalABIs/UniswapV2PoolAbi.json.cjs +0 -1
- package/common/src/externalABIs/UniswapV2PoolAbi.json.mjs +0 -78
- package/common/src/functions/pre-transaction/interaction-to-action.cjs +0 -1
- package/common/src/functions/pre-transaction/interaction-to-action.d.ts +0 -2
- package/common/src/functions/pre-transaction/interaction-to-action.mjs +0 -1
- package/common/src/functions/pre-transaction/recipientUtxoProcessing.cjs +0 -1
- package/common/src/functions/pre-transaction/recipientUtxoProcessing.d.ts +0 -3
- package/common/src/functions/pre-transaction/recipientUtxoProcessing.mjs +0 -32
- package/common/src/functions/private-wallet/opProducer.cjs +0 -1
- package/common/src/functions/private-wallet/opProducer.d.ts +0 -5
- package/common/src/functions/private-wallet/opProducer.mjs +0 -3
- package/common/src/functions/snarkjs/generateZkProofEnclave.cjs +0 -1
- package/common/src/functions/snarkjs/generateZkProofEnclave.d.ts +0 -5
- package/common/src/functions/snarkjs/generateZkProofEnclave.mjs +0 -27
- package/common/src/functions/utils/bit.operations.cjs +0 -1
- package/common/src/functions/utils/bit.operations.d.ts +0 -3
- package/common/src/functions/utils/bit.operations.mjs +0 -4
- package/common/src/functions/utils/get-signature-header.cjs +0 -1
- package/common/src/functions/utils/get-signature-header.d.ts +0 -5
- package/common/src/functions/utils/get-signature-header.mjs +0 -4
- package/common/src/functions/web3/odosAPI.cjs +0 -1
- package/common/src/functions/web3/odosAPI.d.ts +0 -5
- package/common/src/functions/web3/odosAPI.mjs +0 -35
- package/common/src/functions/web3/oneInchAPI.cjs +0 -1
- package/common/src/functions/web3/oneInchAPI.d.ts +0 -5
- package/common/src/functions/web3/oneInchAPI.mjs +0 -34
- package/common/src/functions/web3/uniswapAPI.cjs +0 -1
- package/common/src/functions/web3/uniswapAPI.d.ts +0 -16
- package/common/src/functions/web3/uniswapAPI.mjs +0 -60
- package/common/src/types/brotherhood-user.types.d.ts +0 -11
- package/common/src/types/crypto.types.d.ts +0 -8
- package/common/src/types/generatePoints.d.ts +0 -14
- package/common/src/types/new-rewards.type.cjs +0 -1
- package/common/src/types/new-rewards.type.mjs +0 -10
- package/common/src/types/referral.types.d.ts +0 -12
- package/common/src/types/rewards.types.d.ts +0 -34
- package/common/src/types/token-with-id.types.d.ts +0 -4
- package/common/src/webworker/logError-BR5TJP6T.js +0 -2
- package/common/src/webworker/workerProxy-Ddzxn23N.js +0 -1
|
@@ -1,21 +1,20 @@
|
|
|
1
|
-
import { CIRCOM_P as e } from "../../constants/protocol.constants.mjs";
|
|
2
|
-
import { poseidonHash as
|
|
3
|
-
import { babyJubInstance as
|
|
4
|
-
import { eddsaInstance as
|
|
5
|
-
import { AttachableMemoryCacheDevice as
|
|
6
|
-
import { getCircomSign as
|
|
7
|
-
import { ethers as
|
|
8
|
-
import { Keypair as
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import { Trx as
|
|
1
|
+
import { CIRCOM_P as e, NULLIFYING_PRIVATE_KEY_MOD as t } from "../../constants/protocol.constants.mjs";
|
|
2
|
+
import { poseidonHash as n } from "../../crypto/poseidon.mjs";
|
|
3
|
+
import { babyJubInstance as r } from "../../crypto/babyJub.mjs";
|
|
4
|
+
import { eddsaInstance as i } from "../../crypto/eddsa.mjs";
|
|
5
|
+
import { AttachableMemoryCacheDevice as a } from "../cacheDevices/AttachableMemoryCacheDevice.mjs";
|
|
6
|
+
import { getCircomSign as o } from "./keyUtils.mjs";
|
|
7
|
+
import { ethers as s } from "ethers";
|
|
8
|
+
import { Keypair as c, PublicKey as l } from "@solana/web3.js";
|
|
9
|
+
import u from "bs58";
|
|
10
|
+
import d from "libsodium-wrappers";
|
|
11
|
+
import f from "tweetnacl";
|
|
12
|
+
import { Trx as p } from "tronweb";
|
|
13
13
|
//#region libs/shared/common/src/data-structures/crypto-keys/keys.ts
|
|
14
|
-
var
|
|
14
|
+
var m = new a(), h = class {
|
|
15
15
|
signature;
|
|
16
16
|
nullifyingKey;
|
|
17
17
|
PREFIX_FOR_SPENDING_PAIR = "1";
|
|
18
|
-
PREFIX_FOR_NULLIFYING_PAIR = "2";
|
|
19
18
|
constructor(e, t) {
|
|
20
19
|
this.signature = e, this.nullifyingKey = t;
|
|
21
20
|
}
|
|
@@ -32,21 +31,28 @@ var p = new i(), m = new i(), h = new i(), g = class {
|
|
|
32
31
|
if (!this.signature && !this.nullifyingKey) throw Error("No signature or private key provided");
|
|
33
32
|
}
|
|
34
33
|
verifyTronMessage(e, t) {
|
|
35
|
-
return this.requireSignature(), t ===
|
|
34
|
+
return this.requireSignature(), t === p.verifyMessageV2(e, this.signature);
|
|
36
35
|
}
|
|
37
|
-
getShieldedPrivateKey = () =>
|
|
38
|
-
|
|
36
|
+
getShieldedPrivateKey = () => {
|
|
37
|
+
if (this.requireKeyMaterial(), !this.nullifyingKey) {
|
|
38
|
+
let e = BigInt(n(this.signature));
|
|
39
|
+
this.nullifyingKey = s.toBeHex(e % t);
|
|
40
|
+
}
|
|
41
|
+
return this.nullifyingKey;
|
|
42
|
+
};
|
|
43
|
+
getShieldedPrivateKeySeed = () => s.keccak256(this.getShieldedPrivateKey());
|
|
44
|
+
getShieldedPublicKey = () => (this.requireKeyMaterial(), n(this.getShieldedPrivateKey()));
|
|
39
45
|
getSpendingKeyPair = () => {
|
|
40
46
|
this.requireSignature();
|
|
41
|
-
let e =
|
|
47
|
+
let e = i(), t = r(), a = n(this.PREFIX_FOR_SPENDING_PAIR, this.getSignature()), o = Buffer.from(s.getBytes(a)), c = e.prv2pub(o);
|
|
42
48
|
return {
|
|
43
49
|
privSpendingKey: a,
|
|
44
|
-
pubSpendingBJJPoint: [BigInt(
|
|
50
|
+
pubSpendingBJJPoint: [BigInt(t.F.toString(c[0])), BigInt(t.F.toString(c[1]))]
|
|
45
51
|
};
|
|
46
52
|
};
|
|
47
53
|
signEddsa = (e) => {
|
|
48
54
|
this.requireSignature();
|
|
49
|
-
let t =
|
|
55
|
+
let t = r(), n = i(), a = Buffer.from(s.getBytes(this.getSpendingKeyPair().privSpendingKey)), o = t.F.e(e), c = n.signPoseidon(a, o);
|
|
50
56
|
return {
|
|
51
57
|
R8: [BigInt(t.F.toString(c.R8[0])), BigInt(t.F.toString(c.R8[1]))],
|
|
52
58
|
S: BigInt(c.S)
|
|
@@ -54,96 +60,72 @@ var p = new i(), m = new i(), h = new i(), g = class {
|
|
|
54
60
|
};
|
|
55
61
|
getShieldedPrivateKeyFromNonce = (e) => {
|
|
56
62
|
this.requireKeyMaterial();
|
|
57
|
-
let
|
|
58
|
-
return
|
|
63
|
+
let t = n(e, this.getShieldedPrivateKey(), this.getShieldedPublicKey());
|
|
64
|
+
return s.keccak256(s.toUtf8Bytes(`hinkal-offchain-shielded-key:${t}`));
|
|
59
65
|
};
|
|
60
66
|
getClaimableSignatureFromNonce = (e) => {
|
|
61
67
|
this.requireKeyMaterial();
|
|
62
|
-
let
|
|
63
|
-
return
|
|
68
|
+
let t = n(e, this.getShieldedPrivateKey(), this.getShieldedPublicKey());
|
|
69
|
+
return s.keccak256(s.toUtf8Bytes(`hinkal-claimable-utxo-signature:${t}`));
|
|
64
70
|
};
|
|
65
|
-
getDerivedEthereumAddress = () => (this.requireKeyMaterial(), new o.Wallet(this.getShieldedPrivateKey()).address);
|
|
66
|
-
getDerivedSolanaPublicKey = () => (this.requireKeyMaterial(), s.fromSeed(o.getBytes(this.getShieldedPrivateKey())).publicKey.toBase58());
|
|
67
71
|
getNearIntentsAccountId = () => {
|
|
68
72
|
this.requireKeyMaterial();
|
|
69
|
-
let e =
|
|
70
|
-
return
|
|
73
|
+
let e = c.fromSeed(s.getBytes(this.getShieldedPrivateKeySeed()));
|
|
74
|
+
return s.hexlify(e.publicKey.toBytes()).slice(2);
|
|
71
75
|
};
|
|
72
76
|
getNearIntentsKeyPairString = () => {
|
|
73
77
|
this.requireKeyMaterial();
|
|
74
|
-
let e =
|
|
75
|
-
return `ed25519:${
|
|
78
|
+
let e = c.fromSeed(s.getBytes(this.getShieldedPrivateKeySeed()));
|
|
79
|
+
return `ed25519:${u.encode(e.secretKey)}`;
|
|
76
80
|
};
|
|
77
81
|
getSignerPrivateKeyFromNonce = (e) => {
|
|
78
82
|
this.requireKeyMaterial();
|
|
79
|
-
let
|
|
80
|
-
return
|
|
83
|
+
let t = n(e, this.getShieldedPrivateKey(), this.getShieldedPublicKey());
|
|
84
|
+
return s.keccak256(s.toUtf8Bytes(t));
|
|
81
85
|
};
|
|
82
86
|
getSignerSolanaPrivateKeyFromNonce = (e) => {
|
|
83
|
-
let t = this.getSignerPrivateKeyFromNonce(e), n =
|
|
84
|
-
return
|
|
87
|
+
let t = this.getSignerPrivateKeyFromNonce(e), n = s.getBytes(t), r = c.fromSeed(n);
|
|
88
|
+
return u.encode(r.secretKey);
|
|
85
89
|
};
|
|
86
90
|
verifyMessage(e) {
|
|
87
|
-
return this.requireSignature(),
|
|
91
|
+
return this.requireSignature(), s.verifyMessage(e, this.signature);
|
|
88
92
|
}
|
|
89
93
|
verifySolanaMessage(e, t) {
|
|
90
94
|
this.requireSignature();
|
|
91
|
-
let n = new TextEncoder().encode(e), r =
|
|
92
|
-
return
|
|
95
|
+
let n = new TextEncoder().encode(e), r = s.getBytes(this.signature), i = new l(t).toBytes();
|
|
96
|
+
return f.sign.detached.verify(n, r, i);
|
|
93
97
|
}
|
|
94
|
-
static
|
|
95
|
-
let
|
|
96
|
-
return {
|
|
97
|
-
H0: [BigInt(i.F.toString(o[0])), BigInt(i.F.toString(o[1]))],
|
|
98
|
-
H1: [BigInt(i.F.toString(s[0])), BigInt(i.F.toString(s[1]))]
|
|
99
|
-
};
|
|
100
|
-
});
|
|
101
|
-
static getRandomizedStealthPair = p.attach((t, r) => {
|
|
102
|
-
let i = n(), a = BigInt(r) % e, o = i.mulPointEscalar(i.Base8, t), s = i.mulPointEscalar(o, a);
|
|
103
|
-
return {
|
|
104
|
-
H0: [BigInt(i.F.toString(o[0])), BigInt(i.F.toString(o[1]))],
|
|
105
|
-
H1: [BigInt(i.F.toString(s[0])), BigInt(i.F.toString(s[1]))]
|
|
106
|
-
};
|
|
107
|
-
});
|
|
108
|
-
static getStealthAddressCompressedPoints = (e, t) => {
|
|
109
|
-
let { H0: n, H1: r } = this.getRandomizedStealthPairOld(e, t), [i, o] = [n, r].map((e) => BigInt(e[1]) + 2n ** 255n * a(e[0]));
|
|
98
|
+
static getRandomizedStealthPair = m.attach((e, t) => {
|
|
99
|
+
let n = r(), i = n.mulPointEscalar(n.Base8, e), a = n.mulPointEscalar(i, BigInt(t));
|
|
110
100
|
return {
|
|
111
|
-
|
|
112
|
-
|
|
101
|
+
H0: [BigInt(n.F.toString(i[0])), BigInt(n.F.toString(i[1]))],
|
|
102
|
+
H1: [BigInt(n.F.toString(a[0])), BigInt(n.F.toString(a[1]))]
|
|
113
103
|
};
|
|
114
|
-
};
|
|
115
|
-
static checkSignature = (e, t, n, r) => {
|
|
116
|
-
let { h0: i, h1: a } = this.getStealthAddressCompressedPoints(e, r);
|
|
117
|
-
return t === i && n === a;
|
|
118
|
-
};
|
|
119
|
-
static getStealthAddress = h.attach((e, n) => {
|
|
120
|
-
let { H0: r, H1: i } = this.getRandomizedStealthPairOld(e, n);
|
|
121
|
-
return t(2n * a(r[0]) + a(i[0]), r[1], i[1]);
|
|
122
104
|
});
|
|
123
|
-
static getH1FromH0 = (
|
|
124
|
-
let
|
|
125
|
-
return [BigInt(
|
|
105
|
+
static getH1FromH0 = (e, t) => {
|
|
106
|
+
let n = r(), i = [n.F.e(e[0]), n.F.e(e[1])], a = n.mulPointEscalar(i, BigInt(t));
|
|
107
|
+
return [BigInt(n.F.toString(a[0])), BigInt(n.F.toString(a[1]))];
|
|
126
108
|
};
|
|
127
109
|
static verifyStealthPair = (e, t, n, r = !0) => {
|
|
128
110
|
let i = this.getH1FromH0(e, n);
|
|
129
111
|
return r ? i[1] === t[1] : i === t;
|
|
130
112
|
};
|
|
131
|
-
static
|
|
113
|
+
static getStealthAddress = (e, t, r) => {
|
|
132
114
|
if (r?.length !== 2) throw Error("Spending public key must be an array of 2 elements");
|
|
133
|
-
let i = this.getH1FromH0(e,
|
|
134
|
-
return
|
|
115
|
+
let i = this.getH1FromH0(e, t);
|
|
116
|
+
return n(2n * o(e[0]) + o(i[0]), e[1], i[1], r[0], r[1], t);
|
|
135
117
|
};
|
|
136
118
|
static findCorrectRandomization(t, n) {
|
|
137
119
|
if (!n) throw Error("No Private Shielded Key Provided");
|
|
138
|
-
let r = BigInt(n)
|
|
120
|
+
let r = BigInt(n), i, a, o = 0n;
|
|
139
121
|
do
|
|
140
122
|
i = t * 10n ** o % e, a = i * r % e, o += 1n;
|
|
141
|
-
while (a >= 2n **
|
|
123
|
+
while (a >= 2n ** 250n || i >= 2n ** 250n);
|
|
142
124
|
return i;
|
|
143
125
|
}
|
|
144
126
|
static getH0FromRandomization = (e) => {
|
|
145
|
-
let t =
|
|
146
|
-
return [BigInt(t.F.toString(
|
|
127
|
+
let t = r(), n = t.mulPointEscalar(t.Base8, e);
|
|
128
|
+
return [BigInt(t.F.toString(n[0])), BigInt(t.F.toString(n[1]))];
|
|
147
129
|
};
|
|
148
130
|
static findH0(e, t) {
|
|
149
131
|
if (!t) return;
|
|
@@ -151,14 +133,14 @@ var p = new i(), m = new i(), h = new i(), g = class {
|
|
|
151
133
|
return n;
|
|
152
134
|
}
|
|
153
135
|
static getEncryptionKeyPair = (e) => {
|
|
154
|
-
let t =
|
|
136
|
+
let t = d.crypto_box_seed_keypair(s.getBytes(s.keccak256(e)));
|
|
155
137
|
return {
|
|
156
|
-
privateKey:
|
|
157
|
-
publicKey:
|
|
138
|
+
privateKey: s.hexlify(t.privateKey),
|
|
139
|
+
publicKey: s.hexlify(t.publicKey)
|
|
158
140
|
};
|
|
159
141
|
};
|
|
160
|
-
getAccessKey = () => (this.requireKeyMaterial(),
|
|
161
|
-
getBackendToken = () => (this.requireKeyMaterial(),
|
|
142
|
+
getAccessKey = () => (this.requireKeyMaterial(), n(this.getShieldedPrivateKey(), this.getShieldedPublicKey()));
|
|
143
|
+
getBackendToken = () => (this.requireKeyMaterial(), n(this.getAccessKey(), this.getShieldedPublicKey()));
|
|
162
144
|
};
|
|
163
145
|
//#endregion
|
|
164
|
-
export {
|
|
146
|
+
export { h as UserKeys, m as stealthPairCacheDevice };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`../../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../../error-handling/logger.cjs`),t=require(`../../../functions/utils/
|
|
1
|
+
require(`../../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../../error-handling/logger.cjs`),t=require(`../../../functions/utils/getSignerFromContract.cjs`),n=require(`../../../constants/reorg-depths.constants.cjs`),r=require(`../../../functions/utils/resolve-sync.utils.cjs`),i=require(`../../BlockchainEvent/BlockchainEvent.cjs`);let a=require(`ethers`);var o=class{RETRY_MIN_PAGE_SIZE=100;MAX_RETRIES=20;_chainId;contract;_latestBlockNumber;_initialBlockNumber;onEventsProcessed;eventProcessors=new Set;maxPageSize;_isReady=!1;isServer;inProgress;eventsFetchingMutex;constructor(e,t,n,r,i,a){this.contract=t,this._chainId=e,this._initialBlockNumber=n,this.maxPageSize=a,this.isServer=r,this.inProgress=!1,this.eventsFetchingMutex=i}get latestBlockNumber(){return this._latestBlockNumber??this._initialBlockNumber}get chainId(){return this._chainId}get isReady(){return this._isReady}syncFromAtMost(e){(this._latestBlockNumber===void 0||e<this._latestBlockNumber)&&(this._latestBlockNumber=e)}advanceLatestBlockNumber(e){e>(this._latestBlockNumber??this._initialBlockNumber)&&(this._latestBlockNumber=e)}intervalClear(){this._isReady=!1,this.eventProcessors=new Set,this.clear()}async init(){if(this._isReady)throw Error(`Already initialized`);this._isReady=!0,await this.retrieveEvents(this.latestBlockNumber+1),this.startUpdateListener()}requireReady(){if(!this._isReady)throw Error(`Not ready`)}async getEventsForSingleContract(e,t,n,r=0){try{return(await e.queryFilter(`*`,t,n)).filter(e=>e instanceof a.ethers.EventLog)}catch(i){if(r<this.MAX_RETRIES&&n-t>this.RETRY_MIN_PAGE_SIZE){let i=Math.floor((t+n)/2),a=await this.getEventsForSingleContract(e,t,i,r+1),o=await this.getEventsForSingleContract(e,i+1,n,r+1);return[...a,...o]}throw i}}addEventProcessorFunction(e){if(this._isReady)throw Error(`Can't add event processor after event emitter initialized`);this.eventProcessors.add(e)}async getEventsInRange(e,t){let n=[];return await r.resolveSync(r.getSequence(e,t,this.maxPageSize).map(({from:e,to:t})=>async()=>{let r=await this.getEventsForSingleContract(this.contract,e,t);n.push(...r)})),n.map(e=>i.BlockchainEvent.fromEthers(e))}async getLastBlockNumberForEventRequest(){let e=await t.getProviderFromContract(this.contract).getBlockNumber();if(!this.isServer)return e;let{chainId:r}=await t.getProviderFromContract(this.contract).getNetwork();return Math.max(this.latestBlockNumber,e-n.blockReorgDepth[Number(r)]+1)}async retrieveEvents(t,n=!1){return this.requireReady(),await this.eventsFetchingMutex.runExclusive(async()=>{try{if(this.inProgress&&!n)return!1;this.inProgress=!0;let e=await this.getLastBlockNumberForEventRequest();if(e<t)return this.inProgress=!1,!1;let r=await this.getEventsInRange(t,e);return await this.processEvents(r,e),this._latestBlockNumber=e,this.inProgress=!1,!0}catch(t){return e.Logger.error(`retrieveEvents error`,t),this.inProgress=!1,!1}})}async processEvents(e,t){let n=(await Promise.all([...this.eventProcessors].map(n=>n(e,t)))).reduce((e,t)=>e+t,0);this.onEventsProcessed?.(n)}};exports.BlockchainEventEmitter=o;
|
|
@@ -7,7 +7,6 @@ export declare abstract class BlockchainEventEmitter {
|
|
|
7
7
|
private readonly MAX_RETRIES;
|
|
8
8
|
private readonly _chainId;
|
|
9
9
|
readonly contract: ethers.Contract;
|
|
10
|
-
readonly depositOnChainUtxosContract?: ethers.Contract;
|
|
11
10
|
private _latestBlockNumber;
|
|
12
11
|
private _initialBlockNumber;
|
|
13
12
|
onEventsProcessed?: (acceptedEventCount: number) => void;
|
|
@@ -17,7 +16,7 @@ export declare abstract class BlockchainEventEmitter {
|
|
|
17
16
|
protected isServer: boolean;
|
|
18
17
|
private inProgress;
|
|
19
18
|
protected eventsFetchingMutex: ChainBalanceFetchingLock;
|
|
20
|
-
constructor(chainId: number, contract: ethers.Contract, initialBlockNumber: number, isServer: boolean, eventsFetchingMutex: ChainBalanceFetchingLock, maxPageSize?: number
|
|
19
|
+
constructor(chainId: number, contract: ethers.Contract, initialBlockNumber: number, isServer: boolean, eventsFetchingMutex: ChainBalanceFetchingLock, maxPageSize?: number);
|
|
21
20
|
get latestBlockNumber(): number;
|
|
22
21
|
get chainId(): number;
|
|
23
22
|
get isReady(): boolean;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Logger as e } from "../../../error-handling/logger.mjs";
|
|
2
|
-
import {
|
|
3
|
-
import { blockReorgDepth as
|
|
4
|
-
import {
|
|
2
|
+
import { getProviderFromContract as t } from "../../../functions/utils/getSignerFromContract.mjs";
|
|
3
|
+
import { blockReorgDepth as n } from "../../../constants/reorg-depths.constants.mjs";
|
|
4
|
+
import { getSequence as r, resolveSync as i } from "../../../functions/utils/resolve-sync.utils.mjs";
|
|
5
5
|
import { BlockchainEvent as a } from "../../BlockchainEvent/BlockchainEvent.mjs";
|
|
6
6
|
import { ethers as o } from "ethers";
|
|
7
7
|
//#region libs/shared/common/src/data-structures/event-service/evm/BlockchainEventEmitter.ts
|
|
@@ -10,7 +10,6 @@ var s = class {
|
|
|
10
10
|
MAX_RETRIES = 20;
|
|
11
11
|
_chainId;
|
|
12
12
|
contract;
|
|
13
|
-
depositOnChainUtxosContract;
|
|
14
13
|
_latestBlockNumber;
|
|
15
14
|
_initialBlockNumber;
|
|
16
15
|
onEventsProcessed;
|
|
@@ -20,8 +19,8 @@ var s = class {
|
|
|
20
19
|
isServer;
|
|
21
20
|
inProgress;
|
|
22
21
|
eventsFetchingMutex;
|
|
23
|
-
constructor(e, t, n, r, i, a
|
|
24
|
-
this.contract = t, this.
|
|
22
|
+
constructor(e, t, n, r, i, a) {
|
|
23
|
+
this.contract = t, this._chainId = e, this._initialBlockNumber = n, this.maxPageSize = a, this.isServer = r, this.inProgress = !1, this.eventsFetchingMutex = i;
|
|
25
24
|
}
|
|
26
25
|
get latestBlockNumber() {
|
|
27
26
|
return this._latestBlockNumber ?? this._initialBlockNumber;
|
|
@@ -63,23 +62,18 @@ var s = class {
|
|
|
63
62
|
if (this._isReady) throw Error("Can't add event processor after event emitter initialized");
|
|
64
63
|
this.eventProcessors.add(e);
|
|
65
64
|
}
|
|
66
|
-
async getEventsInRange(e,
|
|
67
|
-
let
|
|
68
|
-
await
|
|
69
|
-
let
|
|
70
|
-
|
|
71
|
-
}));
|
|
72
|
-
let s = this.depositOnChainUtxosContract;
|
|
73
|
-
return s && await n(o.map(({ from: e, to: t }) => async () => {
|
|
74
|
-
let n = await this.getEventsForSingleContract(s, e, t);
|
|
75
|
-
i.push(...n);
|
|
76
|
-
})), i.map((e) => a.fromEthers(e));
|
|
65
|
+
async getEventsInRange(e, t) {
|
|
66
|
+
let n = [];
|
|
67
|
+
return await i(r(e, t, this.maxPageSize).map(({ from: e, to: t }) => async () => {
|
|
68
|
+
let r = await this.getEventsForSingleContract(this.contract, e, t);
|
|
69
|
+
n.push(...r);
|
|
70
|
+
})), n.map((e) => a.fromEthers(e));
|
|
77
71
|
}
|
|
78
72
|
async getLastBlockNumberForEventRequest() {
|
|
79
|
-
let e = await
|
|
73
|
+
let e = await t(this.contract).getBlockNumber();
|
|
80
74
|
if (!this.isServer) return e;
|
|
81
|
-
let { chainId:
|
|
82
|
-
return Math.max(this.latestBlockNumber, e -
|
|
75
|
+
let { chainId: r } = await t(this.contract).getNetwork();
|
|
76
|
+
return Math.max(this.latestBlockNumber, e - n[Number(r)] + 1);
|
|
83
77
|
}
|
|
84
78
|
async retrieveEvents(t, n = !1) {
|
|
85
79
|
return this.requireReady(), await this.eventsFetchingMutex.runExclusive(async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`./BlockchainEventEmitter.cjs`),t=require(`../helpers/ClientEventHelper.cjs`);var n=class extends e.BlockchainEventEmitter{clientEventHelper;constructor(e,n,r,i,a,o
|
|
1
|
+
const e=require(`./BlockchainEventEmitter.cjs`),t=require(`../helpers/ClientEventHelper.cjs`);var n=class extends e.BlockchainEventEmitter{clientEventHelper;constructor(e,n,r,i,a,o){super(n,r,i,!1,a,o),this.clientEventHelper=new t.ClientEventHelper(n,e)}clear(){this.clientEventHelper.clear()}startUpdateListener(){this.clientEventHelper.startUpdateListener(async e=>{await this.eventsFetchingMutex.runExclusive(async()=>{await this.processEvents(e)})},this.latestBlockNumber+1,e=>this.advanceLatestBlockNumber(e))}};exports.ClientBlockchainEventEmitter=n;
|
|
@@ -5,7 +5,7 @@ import { ChainBalanceFetchingLock } from '../../../mutexes/chainBalanceRwLock';
|
|
|
5
5
|
import { ClientEventHelper } from '../helpers/ClientEventHelper';
|
|
6
6
|
export declare class ClientBlockchainEventEmitter extends BlockchainEventEmitter {
|
|
7
7
|
clientEventHelper: ClientEventHelper;
|
|
8
|
-
constructor(eventCategory: EventCategory, chainId: number, contract: ethers.Contract, initialBlockNumber: number, eventsFetchingMutex: ChainBalanceFetchingLock, maxPageSize?: number
|
|
8
|
+
constructor(eventCategory: EventCategory, chainId: number, contract: ethers.Contract, initialBlockNumber: number, eventsFetchingMutex: ChainBalanceFetchingLock, maxPageSize?: number);
|
|
9
9
|
protected clear(): void;
|
|
10
10
|
protected startUpdateListener(): void;
|
|
11
11
|
}
|
|
@@ -3,8 +3,8 @@ import { ClientEventHelper as t } from "../helpers/ClientEventHelper.mjs";
|
|
|
3
3
|
//#region libs/shared/common/src/data-structures/event-service/evm/ClientBlockchainEventEmitter.ts
|
|
4
4
|
var n = class extends e {
|
|
5
5
|
clientEventHelper;
|
|
6
|
-
constructor(e, n, r, i, a, o
|
|
7
|
-
super(n, r, i, !1, a, o
|
|
6
|
+
constructor(e, n, r, i, a, o) {
|
|
7
|
+
super(n, r, i, !1, a, o), this.clientEventHelper = new t(n, e);
|
|
8
8
|
}
|
|
9
9
|
clear() {
|
|
10
10
|
this.clientEventHelper.clear();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`../../../
|
|
1
|
+
const e=require(`../../../API/API.cjs`),t=require(`../../../error-handling/logger.cjs`),n=require(`../../BlockchainEvent/BlockchainEvent.cjs`);var r=5e3,i=class{chainId;eventCategory;pollIntervalId;constructor(e,t){this.chainId=e,this.eventCategory=t}clear(){this.pollIntervalId!=null&&(clearInterval(this.pollIntervalId),this.pollIntervalId=void 0)}startUpdateListener(i,a,o){let s=a,c=async()=>{try{let{events:t,latestBlockNumber:r}=await e.API.getSnapshotServerEvents(this.chainId,this.eventCategory,s);t.length>0&&await i(t.map(e=>n.BlockchainEvent.fromSerialized(e))),r>=s&&(s=r+1,o(s))}catch(e){t.Logger.error(`Snapshot events poll error`,e)}};this.pollIntervalId=setInterval(c,r)}};exports.ClientEventHelper=i;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { API as e } from "../../../API/API.mjs";
|
|
2
|
+
import { Logger as t } from "../../../error-handling/logger.mjs";
|
|
3
3
|
import { BlockchainEvent as n } from "../../BlockchainEvent/BlockchainEvent.mjs";
|
|
4
4
|
//#region libs/shared/common/src/data-structures/event-service/helpers/ClientEventHelper.ts
|
|
5
5
|
var r = 5e3, i = class {
|
|
@@ -15,10 +15,10 @@ var r = 5e3, i = class {
|
|
|
15
15
|
startUpdateListener(i, a, o) {
|
|
16
16
|
let s = a, c = async () => {
|
|
17
17
|
try {
|
|
18
|
-
let { events:
|
|
19
|
-
|
|
20
|
-
} catch (
|
|
21
|
-
|
|
18
|
+
let { events: t, latestBlockNumber: r } = await e.getSnapshotServerEvents(this.chainId, this.eventCategory, s);
|
|
19
|
+
t.length > 0 && await i(t.map((e) => n.fromSerialized(e))), r >= s && (s = r + 1, o(s));
|
|
20
|
+
} catch (e) {
|
|
21
|
+
t.error("Snapshot events poll error", e);
|
|
22
22
|
}
|
|
23
23
|
};
|
|
24
24
|
this.pollIntervalId = setInterval(c, r);
|
package/common/src/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`../../../functions/utils/amounts.utils.cjs`),t=require(`../../../crypto/poseidon.cjs`),n=require(`../../crypto-keys/decodeUTXO.cjs`);require(`../../../crypto/index.cjs`);const r=require(`../../merkle-tree/MerkleTree.cjs`);require(`../../merkle-tree/index.cjs`);const i=require(`../../../functions/utils/merkleTree.utils.cjs`),a=require(`./AbstractSolanaSnapshotService.cjs`);var o=class extends a.AbstractSolanaSnapshotService{constructor(e){super(e,`NewCommitment`)}_merkleTree;_encryptedOutputs;_encryptedOutputsByCommitment=new Map;get merkleTree(){return this._merkleTree}get encryptedOutputs(){return this._encryptedOutputs}serializeSnapshot(e){return{merkleTree:e.payload.merkleTree.toJSON(),latestBlockNumber:e.latestBlockNumber,encryptedOutputs:e.payload.encryptedOutputs.map(e=>({value:e.value,isPositive:String(e.isPositive),isBlocked:e.isBlocked??!1})),encryptedOutputsByCommitment:Array.from(e.payload.encryptedOutputsByCommitment.entries()).map(([e,t])=>({commitment:e.toString(),encryptedOutput:t}))}}deserializeSnapshot(e){let n;n=e.latestBlockNumber&&e.merkleTree?i.contructMerkleTreeFromSerialized(e.merkleTree):r.MerkleTree.create(t.poseidonFunction,0n);let a=e.encryptedOutputs?.map(e=>({value:e.value,isPositive:JSON.parse(e.isPositive),isBlocked:e.isBlocked??!1})),o=new Map;return e.encryptedOutputsByCommitment?.forEach(({commitment:e,encryptedOutput:t})=>{o.set(BigInt(e),t)}),{latestBlockNumber:e.latestBlockNumber??0,payload:{merkleTree:n,encryptedOutputs:a||[],encryptedOutputsByCommitment:o}}}getSnapshotPayload(){return{merkleTree:this._merkleTree,encryptedOutputs:this._encryptedOutputs,encryptedOutputsByCommitment:this._encryptedOutputsByCommitment}}populateSnapshot({payload:{merkleTree:e,encryptedOutputs:t,encryptedOutputsByCommitment:n}}){this._merkleTree=e,this._encryptedOutputs=t,this._encryptedOutputsByCommitment=n}async mapEvent(t){let r=t.getArg(`commitment`),i=t.getArg(`index`),a=t.getArg(`encrypted_output`),o=t.getArg(`on_chain_data`),s=e.advancedToBigInt(r),c=e.advancedToBigInt(i)
|
|
1
|
+
const e=require(`../../../functions/utils/amounts.utils.cjs`),t=require(`../../../crypto/poseidon.cjs`),n=require(`../../crypto-keys/decodeUTXO.cjs`);require(`../../../crypto/index.cjs`);const r=require(`../../merkle-tree/MerkleTree.cjs`);require(`../../merkle-tree/index.cjs`);const i=require(`../../../functions/utils/merkleTree.utils.cjs`),a=require(`./AbstractSolanaSnapshotService.cjs`);var o=class extends a.AbstractSolanaSnapshotService{constructor(e){super(e,`NewCommitment`)}_merkleTree;_encryptedOutputs;_encryptedOutputsByCommitment=new Map;get merkleTree(){return this._merkleTree}get encryptedOutputs(){return this._encryptedOutputs}serializeSnapshot(e){return{merkleTree:e.payload.merkleTree.toJSON(),latestBlockNumber:e.latestBlockNumber,encryptedOutputs:e.payload.encryptedOutputs.map(e=>({value:e.value,isPositive:String(e.isPositive),isBlocked:e.isBlocked??!1,encryptedBlob:e.encryptedBlob})),encryptedOutputsByCommitment:Array.from(e.payload.encryptedOutputsByCommitment.entries()).map(([e,t])=>({commitment:e.toString(),encryptedOutput:t}))}}deserializeSnapshot(e){let n;n=e.latestBlockNumber&&e.merkleTree?i.contructMerkleTreeFromSerialized(e.merkleTree):r.MerkleTree.create(t.poseidonFunction,0n);let a=e.encryptedOutputs?.map(e=>({value:e.value,isPositive:JSON.parse(e.isPositive),isBlocked:e.isBlocked??!1,encryptedBlob:e.encryptedBlob})),o=new Map;return e.encryptedOutputsByCommitment?.forEach(({commitment:e,encryptedOutput:t})=>{o.set(BigInt(e),t)}),{latestBlockNumber:e.latestBlockNumber??0,payload:{merkleTree:n,encryptedOutputs:a||[],encryptedOutputsByCommitment:o}}}getSnapshotPayload(){return{merkleTree:this._merkleTree,encryptedOutputs:this._encryptedOutputs,encryptedOutputsByCommitment:this._encryptedOutputsByCommitment}}populateSnapshot({payload:{merkleTree:e,encryptedOutputs:t,encryptedOutputsByCommitment:n}}){this._merkleTree=e,this._encryptedOutputs=t,this._encryptedOutputsByCommitment=n}async mapEvent(t){let r=t.getArg(`commitment`),i=t.getArg(`index`),a=t.getArg(`encrypted_output`),o=t.getArg(`on_chain_data`),s=e.advancedToBigInt(r),c=e.advancedToBigInt(i),l=`0x${Buffer.from(a).toString(`hex`)}`;return n.hasSolanaOnChainData(o)?{commitment:s,index:c,encryptedOutput:n.encodeSolanaOnChainUtxo(o),encryptedBlob:a.length>0?l:void 0}:{commitment:s,index:c,encryptedOutput:l}}acceptEvent(e,t,r,i){let a=e.index>=0n?e.index:-1n*e.index,o=this._merkleTree.getValue(a);if(o===e.commitment)return!1;this._merkleTree.insert(e.commitment,a);let s=o===void 0?void 0:this._encryptedOutputsByCommitment.get(o);if(o!==void 0&&s!==void 0){let e=this.encryptedOutputs.findIndex(e=>e.value===s);e!==-1&&this.encryptedOutputs.splice(e,1),this._encryptedOutputsByCommitment.delete(o)}if(this._encryptedOutputsByCommitment.set(e.commitment,e.encryptedOutput),this.encryptedOutputs.map(e=>e.value).includes(e.encryptedOutput))return!0;let c={value:e.encryptedOutput,isPositive:!n.isSolanaOnChainUtxo(e.encryptedOutput),isBlocked:i??!1,encryptedBlob:e.encryptedBlob};return this._encryptedOutputs.push(c),!0}};exports.AbstractSolanaCommitmentsSnapshotService=o;
|
package/common/src/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.mjs
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { advancedToBigInt as e } from "../../../functions/utils/amounts.utils.mjs";
|
|
2
2
|
import { poseidonFunction as t } from "../../../crypto/poseidon.mjs";
|
|
3
|
-
import { encodeSolanaOnChainUtxo as n,
|
|
3
|
+
import { encodeSolanaOnChainUtxo as n, hasSolanaOnChainData as r, isSolanaOnChainUtxo as i } from "../../crypto-keys/decodeUTXO.mjs";
|
|
4
4
|
import "../../../crypto/index.mjs";
|
|
5
|
-
import { MerkleTree as
|
|
5
|
+
import { MerkleTree as a } from "../../merkle-tree/MerkleTree.mjs";
|
|
6
6
|
import "../../merkle-tree/index.mjs";
|
|
7
|
-
import { contructMerkleTreeFromSerialized as
|
|
8
|
-
import { AbstractSolanaSnapshotService as
|
|
7
|
+
import { contructMerkleTreeFromSerialized as o } from "../../../functions/utils/merkleTree.utils.mjs";
|
|
8
|
+
import { AbstractSolanaSnapshotService as s } from "./AbstractSolanaSnapshotService.mjs";
|
|
9
9
|
//#region libs/shared/common/src/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.ts
|
|
10
|
-
var
|
|
10
|
+
var c = class extends s {
|
|
11
11
|
constructor(e) {
|
|
12
12
|
super(e, "NewCommitment");
|
|
13
13
|
}
|
|
@@ -27,7 +27,8 @@ var s = class extends o {
|
|
|
27
27
|
encryptedOutputs: e.payload.encryptedOutputs.map((e) => ({
|
|
28
28
|
value: e.value,
|
|
29
29
|
isPositive: String(e.isPositive),
|
|
30
|
-
isBlocked: e.isBlocked ?? !1
|
|
30
|
+
isBlocked: e.isBlocked ?? !1,
|
|
31
|
+
encryptedBlob: e.encryptedBlob
|
|
31
32
|
})),
|
|
32
33
|
encryptedOutputsByCommitment: Array.from(e.payload.encryptedOutputsByCommitment.entries()).map(([e, t]) => ({
|
|
33
34
|
commitment: e.toString(),
|
|
@@ -37,20 +38,21 @@ var s = class extends o {
|
|
|
37
38
|
}
|
|
38
39
|
deserializeSnapshot(e) {
|
|
39
40
|
let n;
|
|
40
|
-
n = e.latestBlockNumber && e.merkleTree ?
|
|
41
|
+
n = e.latestBlockNumber && e.merkleTree ? o(e.merkleTree) : a.create(t, 0n);
|
|
41
42
|
let r = e.encryptedOutputs?.map((e) => ({
|
|
42
43
|
value: e.value,
|
|
43
44
|
isPositive: JSON.parse(e.isPositive),
|
|
44
|
-
isBlocked: e.isBlocked ?? !1
|
|
45
|
-
|
|
45
|
+
isBlocked: e.isBlocked ?? !1,
|
|
46
|
+
encryptedBlob: e.encryptedBlob
|
|
47
|
+
})), i = /* @__PURE__ */ new Map();
|
|
46
48
|
return e.encryptedOutputsByCommitment?.forEach(({ commitment: e, encryptedOutput: t }) => {
|
|
47
|
-
|
|
49
|
+
i.set(BigInt(e), t);
|
|
48
50
|
}), {
|
|
49
51
|
latestBlockNumber: e.latestBlockNumber ?? 0,
|
|
50
52
|
payload: {
|
|
51
53
|
merkleTree: n,
|
|
52
54
|
encryptedOutputs: r || [],
|
|
53
|
-
encryptedOutputsByCommitment:
|
|
55
|
+
encryptedOutputsByCommitment: i
|
|
54
56
|
}
|
|
55
57
|
};
|
|
56
58
|
}
|
|
@@ -65,18 +67,19 @@ var s = class extends o {
|
|
|
65
67
|
this._merkleTree = e, this._encryptedOutputs = t, this._encryptedOutputsByCommitment = n;
|
|
66
68
|
}
|
|
67
69
|
async mapEvent(t) {
|
|
68
|
-
let
|
|
69
|
-
return
|
|
70
|
-
commitment:
|
|
71
|
-
index:
|
|
72
|
-
encryptedOutput: n(
|
|
70
|
+
let i = t.getArg("commitment"), a = t.getArg("index"), o = t.getArg("encrypted_output"), s = t.getArg("on_chain_data"), c = e(i), l = e(a), u = `0x${Buffer.from(o).toString("hex")}`;
|
|
71
|
+
return r(s) ? {
|
|
72
|
+
commitment: c,
|
|
73
|
+
index: l,
|
|
74
|
+
encryptedOutput: n(s),
|
|
75
|
+
encryptedBlob: o.length > 0 ? u : void 0
|
|
73
76
|
} : {
|
|
74
|
-
commitment:
|
|
75
|
-
index:
|
|
76
|
-
encryptedOutput:
|
|
77
|
+
commitment: c,
|
|
78
|
+
index: l,
|
|
79
|
+
encryptedOutput: u
|
|
77
80
|
};
|
|
78
81
|
}
|
|
79
|
-
acceptEvent(e, t, n,
|
|
82
|
+
acceptEvent(e, t, n, r) {
|
|
80
83
|
let a = e.index >= 0n ? e.index : -1n * e.index, o = this._merkleTree.getValue(a);
|
|
81
84
|
if (o === e.commitment) return !1;
|
|
82
85
|
this._merkleTree.insert(e.commitment, a);
|
|
@@ -88,11 +91,12 @@ var s = class extends o {
|
|
|
88
91
|
if (this._encryptedOutputsByCommitment.set(e.commitment, e.encryptedOutput), this.encryptedOutputs.map((e) => e.value).includes(e.encryptedOutput)) return !0;
|
|
89
92
|
let c = {
|
|
90
93
|
value: e.encryptedOutput,
|
|
91
|
-
isPositive: !
|
|
92
|
-
isBlocked:
|
|
94
|
+
isPositive: !i(e.encryptedOutput),
|
|
95
|
+
isBlocked: r ?? !1,
|
|
96
|
+
encryptedBlob: e.encryptedBlob
|
|
93
97
|
};
|
|
94
98
|
return this._encryptedOutputs.push(c), !0;
|
|
95
99
|
}
|
|
96
100
|
};
|
|
97
101
|
//#endregion
|
|
98
|
-
export {
|
|
102
|
+
export { c as AbstractSolanaCommitmentsSnapshotService };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`../../constants/protocol.constants.cjs`),t=require(`../../error-handling/logError.cjs`),n=require(`./MerkleTreeIncompleteError.cjs`);var r=class r{tree;count;index;reverseTree;static createWithData(e,t,n,i,a,o,s){return new r(a,o,s,e,t,n,i)}static create(t,n,i=e.MERKLE_LEVELS){return new r(t,i,n)}createReverseTree(){let e=new Map;for(let t=this.getStartIndex();t<this.getStartIndex()+this.count;t+=1n){let n=this.tree.get(t);n!==void 0&&e.set(n,t)}return e}constructor(e,t,n,r,i,a,o){this.hashFunction=e,this.levels=t,this.defaultNodeValue=n,this.tree=r??new Map,this.count=o??0n,this.index=a??2n**(t-1n),i?this.reverseTree=i:this.reverseTree=this.createReverseTree()}getStartIndex(){return 2n**(this.levels-1n)}logarithm2(e){let t=0n;for(;2n**t<e;)t+=1n;return t}bigIntMax(e,t){return e>t?e:t}forceInsert(e,t){if(t<this.getStartIndex())throw RangeError();this.tree.set(t,e),this.reverseTree.set(e,t);let n=this.index-this.getStartIndex(),r=this.logarithm2(n),i=t;for(let e=1n;e<=r;e+=1n){i/=2n;let e=this.hashFunction(this.tree.get(i*2n)||this.defaultNodeValue,this.tree.get(i*2n+1n)||this.defaultNodeValue);this.tree.set(i,e)}}insert(e,n){let r=!1;this.tree.has(n)&&(r=!0,t.logError(`Editing commitment index: ${n} `)),r||(this.count+=1n),this.index=this.bigIntMax(this.index,n+1n),this.forceInsert(e,n)}remove(e){this.forceInsert(this.defaultNodeValue,e)}completenessCheck(){if(this.count!==this.index-this.getStartIndex())throw new n.MerkleTreeIncompleteError}getRootHash(){this.completenessCheck();for(let e=1n;e<2n**this.levels;e*=2n)if(this.tree.get(e))return this.tree.get(e);return this.defaultNodeValue}getMerkleData(){return this.completenessCheck(),new Map(this.tree)}getValue(e){return this.tree.get(e)}getSiblingIndex(e){return e===1n?1n:e%2n==1n?e-1n:e+1n}getSiblingHashesForVerification(e){this.completenessCheck();let t=this.reverseTree.get(e);if(t===void 0)return Array(25).fill(0n);let n=[];for(;t!==0n;)n.push(this.tree.get(this.getSiblingIndex(t))
|
|
1
|
+
const e=require(`../../constants/protocol.constants.cjs`),t=require(`../../error-handling/logError.cjs`),n=require(`./MerkleTreeIncompleteError.cjs`);var r=class r{tree;count;index;reverseTree;static createWithData(e,t,n,i,a,o,s){return new r(a,o,s,e,t,n,i)}static create(t,n,i=e.MERKLE_LEVELS){return new r(t,i,n)}createReverseTree(){let e=new Map;for(let t=this.getStartIndex();t<this.getStartIndex()+this.count;t+=1n){let n=this.tree.get(t);n!==void 0&&e.set(n,t)}return e}constructor(e,t,n,r,i,a,o){this.hashFunction=e,this.levels=t,this.defaultNodeValue=n,this.tree=r??new Map,this.count=o??0n,this.index=a??2n**(t-1n),i?this.reverseTree=i:this.reverseTree=this.createReverseTree()}getStartIndex(){return 2n**(this.levels-1n)}logarithm2(e){let t=0n;for(;2n**t<e;)t+=1n;return t}bigIntMax(e,t){return e>t?e:t}forceInsert(e,t){if(t<this.getStartIndex())throw RangeError();this.tree.set(t,e),this.reverseTree.set(e,t);let n=this.index-this.getStartIndex(),r=this.logarithm2(n),i=t;for(let e=1n;e<=r;e+=1n){i/=2n;let e=this.hashFunction(this.tree.get(i*2n)||this.defaultNodeValue,this.tree.get(i*2n+1n)||this.defaultNodeValue);this.tree.set(i,e)}}insert(e,n){let r=!1;this.tree.has(n)&&(r=!0,t.logError(`Editing commitment index: ${n} `)),r||(this.count+=1n),this.index=this.bigIntMax(this.index,n+1n),this.forceInsert(e,n)}remove(e){this.forceInsert(this.defaultNodeValue,e)}completenessCheck(){if(this.count!==this.index-this.getStartIndex())throw new n.MerkleTreeIncompleteError}getRootHash(){this.completenessCheck();for(let e=1n;e<2n**this.levels;e*=2n)if(this.tree.get(e))return this.tree.get(e);return this.defaultNodeValue}getMerkleData(){return this.completenessCheck(),new Map(this.tree)}getValue(e){return this.tree.get(e)}getSiblingIndex(e){return e===1n?1n:e%2n==1n?e-1n:e+1n}getSiblingHashesForVerification(e){this.completenessCheck();let t=this.reverseTree.get(e);if(t===void 0)return Array(25).fill(0n);let n=[];for(;t!==0n;)n.push(this.tree.get(this.getSiblingIndex(t))??this.defaultNodeValue),t/=2n;return n.slice(0,25)}getSiblingSides(e){this.completenessCheck();let t=this.reverseTree.get(e);if(t===void 0)return Array(25).fill(0n);let n=[];for(;t!==0n;){let e=t%2n==0n?0n:1n;n.push(e),t/=2n}return n.slice(0,25)}toJSON(){let{tree:e,reverseTree:t,count:n,index:r}=this;return{tree:Object.fromEntries(e),reverseTree:Object.fromEntries(t),count:n.toString(),index:r.toString()}}toJSONLite(){let{tree:e,count:t,index:n}=this;return{tree:Object.fromEntries(e),count:t.toString(),index:n.toString()}}clone(){return r.createWithData(new Map(this.tree),new Map(this.reverseTree),this.index,this.count,this.hashFunction,this.levels,this.defaultNodeValue)}getIndex(){return this.index}getInsertionSiblingData(e){let t=[],n=[],r=e;for(;r!==0n;)t.push(this.tree.get(this.getSiblingIndex(r))??this.defaultNodeValue),n.push(r%2n==0n?0n:1n),r/=2n;return{siblings:t.slice(0,25),sides:n.slice(0,25)}}};exports.MerkleTree=r;
|
|
@@ -79,4 +79,14 @@ export declare class MerkleTree<T> {
|
|
|
79
79
|
toJSONLite(): MerkleTreeJson;
|
|
80
80
|
clone(): MerkleTree<T>;
|
|
81
81
|
getIndex(): bigint;
|
|
82
|
+
/**
|
|
83
|
+
* Compute sibling hashes and sides needed to prove insertion at a given leaf index.
|
|
84
|
+
* Used by the Tron circuit to compute newRootHash off-chain.
|
|
85
|
+
* The caller is responsible for passing the correct nodeIndex (e.g. tree.getIndex()
|
|
86
|
+
* for the first insertion, or tree.getIndex() + 1n after simulating the first).
|
|
87
|
+
*/
|
|
88
|
+
getInsertionSiblingData(nodeIndex: bigint): {
|
|
89
|
+
siblings: T[];
|
|
90
|
+
sides: bigint[];
|
|
91
|
+
};
|
|
82
92
|
}
|
|
@@ -74,7 +74,7 @@ var r = class r {
|
|
|
74
74
|
let t = this.reverseTree.get(e);
|
|
75
75
|
if (t === void 0) return Array(25).fill(0n);
|
|
76
76
|
let n = [];
|
|
77
|
-
for (; t !== 0n;) n.push(this.tree.get(this.getSiblingIndex(t))
|
|
77
|
+
for (; t !== 0n;) n.push(this.tree.get(this.getSiblingIndex(t)) ?? this.defaultNodeValue), t /= 2n;
|
|
78
78
|
return n.slice(0, 25);
|
|
79
79
|
}
|
|
80
80
|
getSiblingSides(e) {
|
|
@@ -111,6 +111,14 @@ var r = class r {
|
|
|
111
111
|
getIndex() {
|
|
112
112
|
return this.index;
|
|
113
113
|
}
|
|
114
|
+
getInsertionSiblingData(e) {
|
|
115
|
+
let t = [], n = [], r = e;
|
|
116
|
+
for (; r !== 0n;) t.push(this.tree.get(this.getSiblingIndex(r)) ?? this.defaultNodeValue), n.push(r % 2n == 0n ? 0n : 1n), r /= 2n;
|
|
117
|
+
return {
|
|
118
|
+
siblings: t.slice(0, 25),
|
|
119
|
+
sides: n.slice(0, 25)
|
|
120
|
+
};
|
|
121
|
+
}
|
|
114
122
|
};
|
|
115
123
|
//#endregion
|
|
116
124
|
export { r as MerkleTree };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`../../functions/web3/etherFunctions.cjs`),t=require(`../../functions/utils/upToDateState.cjs`),n=require(`../../types/balances.types.cjs`),r=require(`../../error-handling/logger.cjs`),i=require(`../../functions/utils/string.utils.cjs`),a=require(`./BalanceChangedHandler.cjs`),
|
|
1
|
+
const e=require(`../../functions/web3/etherFunctions.cjs`),t=require(`../../functions/utils/upToDateState.cjs`),n=require(`../../types/balances.types.cjs`),r=require(`../../error-handling/logger.cjs`),i=require(`../../functions/utils/string.utils.cjs`),a=require(`../../constants/balance.constants.cjs`),o=require(`./BalanceChangedHandler.cjs`),s=require(`../IndexedDB/private-balances-db.cjs`),c=require(`../IndexedDB/prices-db.cjs`),l=require(`./privateBalancesReducer.cjs`);var u=class{privateBalancesState={};privateBalancesListeners=new Set;hinkal;unsubscribeBalanceChange;pollIntervalId;pollInFlight=!1;constructor(e){this.hinkal=e,this.unsubscribeBalanceChange=o.balanceChangedHandler.subscribe(e=>{this.applyRefreshFromBalanceChangeEvent(e).catch(e=>{r.Logger.error(`Private balance refresh from balance change failed:`,e)})}),this.pollIntervalId=setInterval(()=>this.pollRemoteBalances(),a.REMOTE_BALANCE_POLL_INTERVAL_MS)}getSnapshot(){return this.privateBalancesState}onPrivateBalancesWithUSDChange(e){return this.privateBalancesListeners.add(e),()=>this.privateBalancesListeners.delete(e)}dispose(){clearInterval(this.pollIntervalId),this.unsubscribeBalanceChange(),this.privateBalancesListeners.clear()}pollRemoteBalances(){this.privateBalancesListeners.size!==0&&(!this.hinkal.generateProofRemotely||this.pollInFlight||(this.pollInFlight=!0,this.refreshInternal(n.PrivateBalanceUpdateType.FreshWithoutLoader,void 0,!1,!0).catch(e=>{r.Logger.error(`Remote private balance poll failed:`,e)}).finally(()=>{this.pollInFlight=!1})))}async applyRefreshFromBalanceChangeEvent(e){if(!e){await this.refreshInternal(n.PrivateBalanceUpdateType.FreshWithoutLoader);return}let{updateType:t,balanceChangeState:r,chainIdToUpdate:i,resetCacheBefore:a,updateTokensListBefore:o}=e;await this.refreshInternal(t,r,a,o,i)}dispatch(e){this.privateBalancesState=l.privateBalancesReducer(this.privateBalancesState,e);let t=this.privateBalancesState;this.privateBalancesListeners.forEach(e=>e(t))}async getAddressAndChain(e){try{return{ethAdd:e?.ethereumAddress??await this.hinkal.getEthereumAddress(),userKeys:e?.userKeys??this.hinkal.userKeys}}catch{return{ethAdd:void 0,userKeys:void 0}}}async hasCache(e,t){return await s.privateBalancesStorage.getBalancesByWallet(e,t)!==void 0}async getBalancesWithUsdValues(t,n){try{if(!n)return[];let r=t.map(e=>e.token.erc20TokenAddress);if(!r.length)return[];let i=await c.pricesStorage.getAndUpdatePrices(n,r),a=new Map(r.map((e,t)=>[e,i[t]]));return[...t.map(t=>{try{let n=t.token.erc20TokenAddress,r=a.get(n)??0,i=t.balance,o=Number(e.getAmountInToken(t.token,i))*r;return{...t,usdValue:o}}catch{return{...t,usdValue:0}}})]}catch{return r.Logger.log(`Error fetching private token balances`),[]}}handleCached=async(n,a)=>{try{await t.checkAddressNotUpdated(this.hinkal,n),this.dispatch({type:`SET_BALANCES`,chainId:a,balances:void 0});let r=await s.privateBalancesStorage.getBalancesByWallet(n,a),o=await c.pricesStorage.getPrices();if(await t.checkAddressNotUpdated(this.hinkal,n),!r||(this.dispatch({type:`SET_BALANCES`,chainId:a,balances:r}),!o))return;let l=r.map(t=>{let n=i.getTokenStateKey(t.token.erc20TokenAddress,a);return{...t,usdValue:o[n]?Number(e.getAmountInToken(t.token,t.balance))*o[n]:0}});this.dispatch({type:`SET_USD_BALANCES`,chainId:a,balances:l})}catch(e){r.Logger.error(`Error refreshing cached private balance:`,e)}};handleFresh=async(e,n,i,a,o,c)=>{let l=o;try{await t.checkAddressNotUpdated(this.hinkal,e);let r=await this.hasCache(e,n);await t.checkAddressNotUpdated(this.hinkal,e),l=o||!r,l&&this.dispatch({type:`SET_LOADING`,chainId:n,newValue:!0}),await t.checkAddressNotUpdated(this.hinkal,e),a&&await this.hinkal.resetMerkle([n]);let u=await this.hinkal.getTotalBalance(n,i,e,a,c);await t.checkAddressNotUpdated(this.hinkal,e);let d=u.filter(e=>e.balance>0n);this.dispatch({type:`SET_BALANCES`,chainId:n,balances:d}),await s.privateBalancesStorage.setBalances(e,n,d),await t.checkAddressNotUpdated(this.hinkal,e),l&&(this.dispatch({type:`SET_USD_LOADING`,chainId:n,newValue:!0}),this.dispatch({type:`SET_LOADING`,chainId:n,newValue:!1})),await t.checkAddressNotUpdated(this.hinkal,e);let f=await this.getBalancesWithUsdValues(d,n);await t.checkAddressNotUpdated(this.hinkal,e),f.length>0&&this.dispatch({type:`SET_USD_BALANCES`,chainId:n,balances:f})}catch(e){r.Logger.error(`Error refreshing private balance:`,e)}finally{l&&(this.dispatch({type:`SET_LOADING`,chainId:n,newValue:!1}),this.dispatch({type:`SET_USD_LOADING`,chainId:n,newValue:!1}))}};getSupportedChainsToUpdate(e){let t=this.hinkal.getSupportedChains();return e?t.includes(e)?[e]:[]:t}async refreshInternal(e=n.PrivateBalanceUpdateType.FreshWithoutLoader,t,r=!1,i=!1,a){let{ethAdd:o,userKeys:s}=await this.getAddressAndChain(t);!o||!s?.getShieldedPublicKey()||await Promise.all(this.getSupportedChainsToUpdate(a).map(async t=>{switch(e){case n.PrivateBalanceUpdateType.OnlyCache:await this.handleCached(o,t);break;case n.PrivateBalanceUpdateType.Fresh:await this.handleFresh(o,t,s,r,!0,i);break;case n.PrivateBalanceUpdateType.FreshWithoutLoader:await this.handleFresh(o,t,s,r,!1,i);break;default:break}}))}};exports.HinkalPrivateBalanceController=u;
|
|
@@ -5,10 +5,13 @@ export declare class HinkalPrivateBalanceController {
|
|
|
5
5
|
private readonly privateBalancesListeners;
|
|
6
6
|
private readonly hinkal;
|
|
7
7
|
private readonly unsubscribeBalanceChange;
|
|
8
|
+
private readonly pollIntervalId;
|
|
9
|
+
private pollInFlight;
|
|
8
10
|
constructor(hinkal: IHinkal);
|
|
9
11
|
getSnapshot(): PrivateBalancesState;
|
|
10
12
|
onPrivateBalancesWithUSDChange(callback: (state: PrivateBalancesState) => void): () => void;
|
|
11
13
|
dispose(): void;
|
|
14
|
+
private pollRemoteBalances;
|
|
12
15
|
private applyRefreshFromBalanceChangeEvent;
|
|
13
16
|
private dispatch;
|
|
14
17
|
private getAddressAndChain;
|