@hinkal/common 0.3.1 → 0.3.2
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/common/src/API/API.cjs +1 -1
- package/common/src/API/API.d.ts +9 -34
- package/common/src/API/API.mjs +75 -100
- package/common/src/API/callOneInchAPI.cjs +1 -1
- package/common/src/API/callOneInchAPI.d.ts +6 -0
- package/common/src/API/callOneInchAPI.mjs +5 -2
- 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.d.ts +9 -1
- package/common/src/API/getWebsiteURL.d.ts +1 -2
- package/common/src/API/index.cjs +1 -1
- package/common/src/API/index.d.ts +1 -2
- package/common/src/API/index.mjs +2 -3
- 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 -38
- package/common/src/API/rewardsUserCalls.mjs +2 -9
- 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/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/chains.constants.cjs +1 -1
- package/common/src/constants/chains.constants.mjs +3 -10
- package/common/src/constants/contracts.constants.cjs +1 -1
- package/common/src/constants/contracts.constants.mjs +19 -32
- package/common/src/constants/deploy-data/deploy-data-arbMainnet.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-arbMainnet.json.mjs +8 -9
- package/common/src/constants/deploy-data/deploy-data-base.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-base.json.mjs +8 -9
- package/common/src/constants/deploy-data/deploy-data-ethMainnet.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-ethMainnet.json.mjs +8 -9
- package/common/src/constants/deploy-data/deploy-data-optimism.json.cjs +1 -1
- package/common/src/constants/deploy-data/deploy-data-optimism.json.mjs +8 -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 +8 -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 +8 -9
- 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 +7 -18
- package/common/src/constants/enclaveAuth.constants.d.ts +5 -0
- package/common/src/constants/index.cjs +1 -1
- package/common/src/constants/index.d.ts +1 -2
- package/common/src/constants/index.mjs +0 -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 +7 -5
- package/common/src/constants/protocol.constants.mjs +4 -11
- package/common/src/constants/rewards.constants.d.ts +0 -13
- package/common/src/constants/server.constants.cjs +1 -1
- package/common/src/constants/server.constants.d.ts +5 -28
- package/common/src/constants/server.constants.mjs +10 -41
- 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 +83 -99
- 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.mjs +22 -22
- package/common/src/data-structures/Hinkal/hinkalBridgePrivateToPrivate.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalBridgePrivateToPrivate.mjs +21 -21
- package/common/src/data-structures/Hinkal/hinkalClaimUtxo.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalClaimUtxo.mjs +6 -9
- package/common/src/data-structures/Hinkal/hinkalDeposit.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalDeposit.mjs +4 -7
- package/common/src/data-structures/Hinkal/hinkalDepositAndBridge.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalDepositAndBridge.mjs +64 -66
- package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.d.ts +1 -1
- package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +47 -51
- 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/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 +6 -6
- package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.d.ts +2 -2
- package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.mjs +107 -94
- 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 -14
- package/common/src/data-structures/Hinkal/hinkalProxyToPrivate.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalProxyToPrivate.mjs +4 -4
- package/common/src/data-structures/Hinkal/hinkalSolanaClaimUtxo.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaClaimUtxo.mjs +4 -9
- package/common/src/data-structures/Hinkal/hinkalSolanaDeposit.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaDeposit.mjs +26 -32
- package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +43 -42
- package/common/src/data-structures/Hinkal/hinkalSolanaTransfer.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaTransfer.mjs +4 -4
- package/common/src/data-structures/Hinkal/hinkalTransfer.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalTransfer.mjs +6 -6
- package/common/src/data-structures/Hinkal/hinkalWithdraw.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalWithdraw.mjs +22 -26
- package/common/src/data-structures/Hinkal/hinkalWithdrawStuckUtxos.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalWithdrawStuckUtxos.mjs +21 -24
- package/common/src/data-structures/Hinkal/index.d.ts +0 -1
- package/common/src/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
- package/common/src/data-structures/Hinkal/resetMerkleTrees.mjs +4 -4
- package/common/src/data-structures/IndexedDB/activity-db.cjs +1 -1
- package/common/src/data-structures/IndexedDB/activity-db.mjs +34 -34
- 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/IndexedDB/signatures-db.cjs +1 -1
- package/common/src/data-structures/IndexedDB/signatures-db.mjs +11 -11
- 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 +12 -12
- package/common/src/data-structures/TokenDBs/ArcPublicTokensDB.cjs +1 -1
- package/common/src/data-structures/TokenDBs/ArcPublicTokensDB.mjs +12 -12
- package/common/src/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
- package/common/src/data-structures/TokenDBs/EventsPublicTokensDB.mjs +24 -24
- package/common/src/data-structures/TokenDBs/PrivateTokensDB.cjs +1 -1
- package/common/src/data-structures/TokenDBs/PrivateTokensDB.mjs +14 -14
- package/common/src/data-structures/TokenDBs/TronPublicTokensDB.cjs +1 -1
- package/common/src/data-structures/TokenDBs/TronPublicTokensDB.mjs +14 -14
- 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 +8 -9
- package/common/src/data-structures/crypto-keys/decodeUTXO.mjs +38 -48
- 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 +4 -10
- 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/private-balances/HinkalPrivateBalanceController.cjs +1 -1
- package/common/src/data-structures/private-balances/HinkalPrivateBalanceController.mjs +40 -40
- 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 +0 -3
- package/common/src/error-handling/error-codes.constants.mjs +13 -18
- 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/functions/auto-deposit-back-helpers/select-gas-token.cjs +1 -1
- package/common/src/functions/auto-deposit-back-helpers/select-gas-token.mjs +8 -8
- package/common/src/functions/index.cjs +1 -1
- package/common/src/functions/index.mjs +1 -1
- 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/outputUtxoProcessing.cjs +1 -1
- package/common/src/functions/pre-transaction/outputUtxoProcessing.mjs +3 -5
- package/common/src/functions/pre-transaction/recipientUtxoProcessing.cjs +1 -1
- package/common/src/functions/pre-transaction/recipientUtxoProcessing.mjs +3 -5
- 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.mjs +5 -4
- 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 +83 -57
- package/common/src/functions/private-wallet/emporium.swap.helpers.cjs +1 -1
- package/common/src/functions/private-wallet/emporium.swap.helpers.mjs +19 -19
- package/common/src/functions/snarkjs/common.snarkjs.cjs +1 -1
- package/common/src/functions/snarkjs/common.snarkjs.d.ts +2 -3
- package/common/src/functions/snarkjs/common.snarkjs.mjs +45 -47
- package/common/src/functions/snarkjs/constant.cjs +1 -1
- package/common/src/functions/snarkjs/constant.d.ts +151 -144
- package/common/src/functions/snarkjs/constant.mjs +151 -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 +59 -60
- 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.mjs +54 -58
- 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/generateCircomData.cjs +1 -1
- package/common/src/functions/snarkjs/generateCircomData.d.ts +1 -1
- package/common/src/functions/snarkjs/generateCircomData.mjs +35 -31
- 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/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 +1 -0
- package/common/src/functions/snarkjs/signedMessageHash.mjs +2 -0
- package/common/src/functions/utils/addresses.cjs +1 -1
- package/common/src/functions/utils/addresses.d.ts +0 -1
- package/common/src/functions/utils/addresses.mjs +10 -13
- package/common/src/functions/utils/bridge-flow.utils.d.ts +1 -1
- package/common/src/functions/utils/buildClaimableDepositPlan.d.ts +1 -0
- package/common/src/functions/utils/convertEmporiumOpToCallInfo.cjs +1 -1
- package/common/src/functions/utils/convertEmporiumOpToCallInfo.mjs +5 -10
- package/common/src/functions/utils/enclave-utxo-storage.d.ts +3 -0
- 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 +5 -1
- 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/getUtxosFromReceiptSolana.cjs +1 -1
- package/common/src/functions/utils/getUtxosFromReceiptSolana.mjs +16 -18
- package/common/src/functions/utils/index.cjs +1 -1
- package/common/src/functions/utils/index.d.ts +5 -1
- package/common/src/functions/utils/index.mjs +5 -1
- 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/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/tron.utils.cjs +1 -1
- package/common/src/functions/utils/tron.utils.d.ts +1 -1
- package/common/src/functions/utils/tron.utils.mjs +14 -29
- 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/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 +2 -4
- package/common/src/functions/web3/events/getInputUtxoAndBalance.mjs +9 -16
- package/common/src/functions/web3/events/getShieldedBalance.cjs +1 -1
- package/common/src/functions/web3/events/getShieldedBalance.d.ts +1 -1
- package/common/src/functions/web3/events/getShieldedBalance.mjs +21 -29
- 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/transactCallDirectTron.cjs +1 -1
- package/common/src/functions/web3/functionCalls/transactCallDirectTron.mjs +37 -3
- package/common/src/functions/web3/functionCalls/waitForErc20Approvals.cjs +1 -1
- package/common/src/functions/web3/functionCalls/waitForErc20Approvals.mjs +6 -6
- package/common/src/functions/web3/oneInchAPI.cjs +1 -1
- package/common/src/functions/web3/oneInchAPI.mjs +31 -21
- package/common/src/functions/web3/uniswapAPI.cjs +1 -1
- package/common/src/functions/web3/uniswapAPI.mjs +6 -6
- 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 +0 -3
- package/common/src/providers/WagmiProviderAdapter.cjs +1 -1
- package/common/src/providers/WagmiProviderAdapter.d.ts +0 -1
- package/common/src/providers/WagmiProviderAdapter.mjs +5 -9
- package/common/src/types/API.types.d.ts +0 -4
- package/common/src/types/WeeklyAnalytics.types.d.ts +1 -26
- package/common/src/types/cache.types.cjs +1 -1
- package/common/src/types/cache.types.d.ts +2 -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 +26 -27
- package/common/src/types/circom-data.types.mjs +1 -1
- 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/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 +13 -23
- 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 +2 -3
- 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 +8 -22
- package/common/src/types/hinkal.types.mjs +11 -19
- package/common/src/types/index.cjs +1 -1
- package/common/src/types/index.d.ts +3 -5
- package/common/src/types/index.mjs +0 -1
- package/common/src/types/new-rewards.type.d.ts +0 -70
- 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/snark.types.d.ts +1 -3
- package/common/src/types/token.types.cjs +1 -1
- package/common/src/types/token.types.mjs +1 -3
- 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-uy41lNp1.js +2 -0
- package/common/src/webworker/package.json +1 -1
- 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-MheXtWa4.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/package.json +1 -1
- package/services/Hinkal.cjs +1 -1
- package/services/Hinkal.d.ts +1 -2
- package/services/Hinkal.mjs +4 -7
- package/types/IHinkal.d.ts +1 -2
- 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/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/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/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/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,44 +1,43 @@
|
|
|
1
1
|
import { CustomJSONStringify as e } from "../../functions/utils/serialize.utils.mjs";
|
|
2
2
|
import { isExtension as t } from "../../constants/vite.constants.mjs";
|
|
3
3
|
import { HINKAL_SUPPORTED_CHAINS as n, WALLET_SUPPORTED_CHAINS as r, chainIds as i, currentSolanaChainId as a, currentTronChainId as o, isSameOnchainNetwork as s, isSolanaLike as c, isTronLike as l, networkRegistry as u, setHinkalTronChainId as d } from "../../constants/chains.constants.mjs";
|
|
4
|
-
import {
|
|
5
|
-
import { EventType as
|
|
4
|
+
import { DAPP_SIGNING_MESSAGE as f, DETERMINISTIC_SOLANA_LEDGER_BLOCKHASH as p, DETERMINISTIC_SOLANA_LEDGER_LAST_VALID_BLOCK_HEIGHT as m, SDK_SIGNING_MESSAGE as h } from "../../constants/protocol.constants.mjs";
|
|
5
|
+
import { EventType as g, LoginMessageMode as _, zeroProoflessFeeStructure as v } from "../../types/hinkal.types.mjs";
|
|
6
6
|
import { poseidonFunction as ee } from "../../crypto/poseidon.mjs";
|
|
7
|
-
import { transactionErrorCodes as
|
|
8
|
-
import { UserKeys as
|
|
9
|
-
import { getScheduledTransactionById as
|
|
10
|
-
import { API as
|
|
11
|
-
import { validateAndGetChainId as
|
|
12
|
-
import { privateTokensDB as
|
|
13
|
-
import { getErc20TokensForChainAPI as
|
|
14
|
-
import { getShieldedBalance as
|
|
15
|
-
import { getContractWithFetcherByChainId as
|
|
16
|
-
import { reloadPage as
|
|
17
|
-
import { createCacheDevice as
|
|
18
|
-
import { SolanaProviderAdapter as
|
|
19
|
-
import { storeAndGetSignatureFromEnclave as
|
|
20
|
-
import { generateHashFromSeedPhrases as
|
|
21
|
-
import { fetchOnChainRootHashes as
|
|
22
|
-
import { createTransaferEmporiumOpsBatch as
|
|
23
|
-
import { hinkalDeposit as
|
|
7
|
+
import { transactionErrorCodes as te } from "../../error-handling/error-codes.constants.mjs";
|
|
8
|
+
import { UserKeys as y } from "../crypto-keys/keys.mjs";
|
|
9
|
+
import { getScheduledTransactionById as b } from "../../API/scheduled-transactions-calls.mjs";
|
|
10
|
+
import { API as x } from "../../API/API.mjs";
|
|
11
|
+
import { validateAndGetChainId as S } from "../../functions/utils/token-check.utils.mjs";
|
|
12
|
+
import { privateTokensDB as C } from "../TokenDBs/PrivateTokensDB.mjs";
|
|
13
|
+
import { getErc20TokensForChainAPI as w } from "../../functions/utils/erc20tokenFunctions.mjs";
|
|
14
|
+
import { getShieldedBalance as T } from "../../functions/web3/events/getShieldedBalance.mjs";
|
|
15
|
+
import { getContractWithFetcherByChainId as E } from "../../functions/web3/getContractMetadata.mjs";
|
|
16
|
+
import { reloadPage as D } from "../../functions/utils/reloadPage.mjs";
|
|
17
|
+
import { createCacheDevice as O } from "../../functions/utils/cacheDevice.utils.mjs";
|
|
18
|
+
import { SolanaProviderAdapter as k } from "../../providers/SolanaProviderAdapter.mjs";
|
|
19
|
+
import { storeAndGetSignatureFromEnclave as A } from "../../functions/utils/enclave-signature-storage.mjs";
|
|
20
|
+
import { generateHashFromSeedPhrases as j } from "../../functions/utils/mnemonics.mjs";
|
|
21
|
+
import { fetchOnChainRootHashes as M } from "../../functions/snarkjs/fetchOnChainRootHashes.mjs";
|
|
22
|
+
import { createTransaferEmporiumOpsBatch as N } from "../../functions/private-wallet/emporium.helpers.mjs";
|
|
23
|
+
import { hinkalDeposit as P, hinkalDepositForOther as F } from "./hinkalDeposit.mjs";
|
|
24
|
+
import { hinkalProoflessDeposit as I } from "./hinkalProoflessDeposit.mjs";
|
|
24
25
|
import "../../functions/index.mjs";
|
|
25
|
-
import { hinkalDepositAndWithdraw as
|
|
26
|
-
import { hinkalSolanaDeposit as
|
|
27
|
-
import { hinkalSwap as
|
|
28
|
-
import { hinkalWithdraw as
|
|
29
|
-
import { MerkleTree as
|
|
26
|
+
import { hinkalDepositAndWithdraw as L } from "./hinkalDepositAndWithdraw.mjs";
|
|
27
|
+
import { hinkalSolanaDeposit as R, hinkalSolanaDepositForOther as z } from "./hinkalSolanaDeposit.mjs";
|
|
28
|
+
import { hinkalSwap as B } from "./hinkalSwap.mjs";
|
|
29
|
+
import { hinkalWithdraw as V } from "./hinkalWithdraw.mjs";
|
|
30
|
+
import { MerkleTree as H } from "../merkle-tree/MerkleTree.mjs";
|
|
30
31
|
import "../merkle-tree/index.mjs";
|
|
31
|
-
import { resetMerkleTrees as
|
|
32
|
+
import { resetMerkleTrees as ne } from "./resetMerkleTrees.mjs";
|
|
32
33
|
import "../../API/index.mjs";
|
|
33
|
-
import { MultiThreadedUtxoUtils as
|
|
34
|
-
import { hinkalPrivateWallet as
|
|
35
|
-
import { getRecipientInfo as
|
|
36
|
-
import { hinkalSignSubAccount as
|
|
37
|
-
import { hinkalActionReceive as
|
|
34
|
+
import { MultiThreadedUtxoUtils as U } from "../MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.mjs";
|
|
35
|
+
import { hinkalPrivateWallet as W } from "./hinkalPrivateWallet.mjs";
|
|
36
|
+
import { getRecipientInfo as G } from "./hinkalGetRecipientInfo.mjs";
|
|
37
|
+
import { hinkalSignSubAccount as K } from "./hinkalSignSubAccount.mjs";
|
|
38
|
+
import { hinkalActionReceive as q } from "./hinkalActionReceive.mjs";
|
|
38
39
|
import "../TokenDBs/index.mjs";
|
|
39
|
-
import {
|
|
40
|
-
import { hinkalProxySwap as q } from "./hinkalProxySwap.mjs";
|
|
41
|
-
import { hinkalMultiSendPrivateRecipients as J } from "./hinkalMultiSend.mjs";
|
|
40
|
+
import { hinkalProxySwap as J } from "./hinkalProxySwap.mjs";
|
|
42
41
|
import { hinkalTransfer as Y } from "./hinkalTransfer.mjs";
|
|
43
42
|
import { hinkalProxyToPrivate as X } from "./hinkalProxyToPrivate.mjs";
|
|
44
43
|
import { TronProviderAdapter as Z } from "../../providers/TronProviderAdapter.mjs";
|
|
@@ -65,13 +64,13 @@ var _e = class {
|
|
|
65
64
|
solanaProviderAdapter;
|
|
66
65
|
tronProviderAdapter;
|
|
67
66
|
userKeys;
|
|
68
|
-
|
|
69
|
-
privateTransferSigningMessage = "Login to Hinkal's Private Transfer App";
|
|
67
|
+
legacySignature;
|
|
70
68
|
merkleTreeHinkalByChain = {};
|
|
71
69
|
nullifiersByChain = {};
|
|
72
70
|
encryptedOutputsByChain = {};
|
|
73
71
|
commitmentsSnapshotServiceByChain = {};
|
|
74
72
|
nullifierSnapshotServiceByChain = {};
|
|
73
|
+
privateBalances = new he(this);
|
|
75
74
|
utxoUtils;
|
|
76
75
|
lastCallState = /* @__PURE__ */ new Map();
|
|
77
76
|
cacheDevice;
|
|
@@ -79,11 +78,10 @@ var _e = class {
|
|
|
79
78
|
generateProofRemotely;
|
|
80
79
|
disableMerkleTreeUpdates;
|
|
81
80
|
allowParallelBalanceLocalDecryption;
|
|
82
|
-
privateBalances = new he(this);
|
|
83
81
|
constructor(e) {
|
|
84
|
-
this.userKeys = new
|
|
85
|
-
this.merkleTreeHinkalByChain[e] =
|
|
86
|
-
}), this.generateProofRemotely = e?.generateProofRemotely ?? !0, this.utxoUtils = new
|
|
82
|
+
this.userKeys = new y(void 0), e?.tronChainOverride && d(e.tronChainOverride), n.forEach((e) => {
|
|
83
|
+
this.merkleTreeHinkalByChain[e] = H.create(ee, 0n), this.nullifiersByChain[e] = /* @__PURE__ */ new Set(), this.encryptedOutputsByChain[e] = [];
|
|
84
|
+
}), this.generateProofRemotely = e?.generateProofRemotely ?? !0, this.utxoUtils = new U(), this.cacheDevice = O(e), this.disableMerkleTreeUpdates = e?.disableMerkleTreeUpdates ?? !1, this.allowParallelBalanceLocalDecryption = e?.allowParallelBalanceLocalDecryption ?? !1;
|
|
87
85
|
}
|
|
88
86
|
enforceRateLimit(t, n, r = 1e3) {
|
|
89
87
|
let i = Date.now(), a = e(n), o = this.lastCallState.get(t);
|
|
@@ -102,25 +100,25 @@ var _e = class {
|
|
|
102
100
|
}
|
|
103
101
|
async initProviderAdapter(e, t) {
|
|
104
102
|
let n = i.ethMainnet;
|
|
105
|
-
t instanceof
|
|
103
|
+
t instanceof k ? n = a : t instanceof Z && (n = o), await this.updateProviderAdapter(n, t), t.initConnector(e);
|
|
106
104
|
let r = await t.connectAndPatchProvider(e);
|
|
107
105
|
await t.init(r), await this.setListeners();
|
|
108
106
|
}
|
|
109
|
-
getSigningMessage(e =
|
|
107
|
+
getSigningMessage(e = _.SDK) {
|
|
110
108
|
switch (e) {
|
|
111
|
-
case
|
|
112
|
-
case
|
|
113
|
-
default: return
|
|
109
|
+
case _.SDK: return h;
|
|
110
|
+
case _.HINKAL_DAPP:
|
|
111
|
+
default: return f;
|
|
114
112
|
}
|
|
115
113
|
}
|
|
116
|
-
async signHinkalMessage(e =
|
|
114
|
+
async signHinkalMessage(e = _.SDK) {
|
|
117
115
|
let t = this.getSigningMessage(e);
|
|
118
116
|
return this.getProviderAdapter().signMessage(t);
|
|
119
117
|
}
|
|
120
118
|
async signSolanaLedgerMessage() {
|
|
121
119
|
let e = new ge({
|
|
122
|
-
blockhash:
|
|
123
|
-
lastValidBlockHeight:
|
|
120
|
+
blockhash: p,
|
|
121
|
+
lastValidBlockHeight: m,
|
|
124
122
|
feePayer: this.getSolanaPublicKey()
|
|
125
123
|
}), t = await this.getProviderAdapter().signTransactionWithoutBroadcast?.(e);
|
|
126
124
|
if (!t) throw Error("Failed to sign transaction without broadcast");
|
|
@@ -129,17 +127,17 @@ var _e = class {
|
|
|
129
127
|
txMessageForSolanaLedger: t.transactionMessageB64
|
|
130
128
|
};
|
|
131
129
|
}
|
|
132
|
-
async initUserKeys(e =
|
|
133
|
-
this.userKeys = new
|
|
130
|
+
async initUserKeys(e = _.SDK) {
|
|
131
|
+
this.userKeys = new y(await this.signHinkalMessage(e));
|
|
134
132
|
}
|
|
135
133
|
initUserKeysWithSignature(e) {
|
|
136
|
-
this.userKeys = new
|
|
134
|
+
this.userKeys = new y(e);
|
|
137
135
|
}
|
|
138
136
|
async initUserKeysFromSeedPhrases(e) {
|
|
139
|
-
let t =
|
|
140
|
-
this.userKeys = new
|
|
137
|
+
let t = j(e);
|
|
138
|
+
this.userKeys = new y(t);
|
|
141
139
|
}
|
|
142
|
-
async initUserKeysWithEnclaveSignature(e =
|
|
140
|
+
async initUserKeysWithEnclaveSignature(e = _.SDK) {
|
|
143
141
|
if (!await this.getEthereumAddress()) throw Error("Connected address not found");
|
|
144
142
|
let t = this.getProviderAdapter().isSolanaLedger?.() ?? !1, n, r;
|
|
145
143
|
if (t) {
|
|
@@ -152,10 +150,10 @@ var _e = class {
|
|
|
152
150
|
async storeAndGetInitialSignature(e, t = !1, n) {
|
|
153
151
|
let r = await this.getEthereumAddress();
|
|
154
152
|
if (!r) throw Error("Connected address not found");
|
|
155
|
-
return await
|
|
153
|
+
return await A(r, e, t, n);
|
|
156
154
|
}
|
|
157
155
|
async resetMerkle(e) {
|
|
158
|
-
this.disableMerkleTreeUpdates || (e?.every((e) => this.isSelectedNetworkSupported(e)) ?? !0) && await
|
|
156
|
+
this.disableMerkleTreeUpdates || (e?.every((e) => this.isSelectedNetworkSupported(e)) ?? !0) && await ne(this, e);
|
|
159
157
|
}
|
|
160
158
|
getTronWeb() {
|
|
161
159
|
let e = this.tronProviderAdapter;
|
|
@@ -175,7 +173,7 @@ var _e = class {
|
|
|
175
173
|
return this.getProviderAdapter(e).getContract(e, t, n);
|
|
176
174
|
}
|
|
177
175
|
getContractWithFetcherByChainId(e, t, n = void 0) {
|
|
178
|
-
return
|
|
176
|
+
return E(e, t, n);
|
|
179
177
|
}
|
|
180
178
|
async signMessage(e) {
|
|
181
179
|
return await this.getProviderAdapter().signMessage(e);
|
|
@@ -184,7 +182,7 @@ var _e = class {
|
|
|
184
182
|
return await this.getProviderAdapter().signTypedData(e, t, n);
|
|
185
183
|
}
|
|
186
184
|
async signWithSubAccount(e, t, n, r) {
|
|
187
|
-
return
|
|
185
|
+
return K(e, t, n, r);
|
|
188
186
|
}
|
|
189
187
|
getContractWithSigner(e, t, n = "") {
|
|
190
188
|
return this.getProviderAdapter(e).getContractWithSigner(e, t, n);
|
|
@@ -200,12 +198,9 @@ var _e = class {
|
|
|
200
198
|
if (!(e.chainId === n || r)) try {
|
|
201
199
|
await t.switchNetwork(e);
|
|
202
200
|
} catch {
|
|
203
|
-
throw Error(
|
|
201
|
+
throw Error(te.FAILED_TO_SWITCH_NETWORKS);
|
|
204
202
|
}
|
|
205
203
|
}
|
|
206
|
-
isPermitterAvailable(e) {
|
|
207
|
-
return this.getProviderAdapter(e).isPermitterAvailable();
|
|
208
|
-
}
|
|
209
204
|
async disconnectFromConnector() {
|
|
210
205
|
await this.ethereumProviderAdapter?.disconnectFromConnector(), await this.solanaProviderAdapter?.disconnectFromConnector(), await this.tronProviderAdapter?.disconnectFromConnector();
|
|
211
206
|
}
|
|
@@ -245,20 +240,20 @@ var _e = class {
|
|
|
245
240
|
}
|
|
246
241
|
async onAccountChanged() {
|
|
247
242
|
await this.ethereumProviderAdapter?.onAccountChanged(), await this.solanaProviderAdapter?.onAccountChanged(), await this.tronProviderAdapter?.onAccountChanged();
|
|
248
|
-
let e =
|
|
243
|
+
let e = g.AccountChanged;
|
|
249
244
|
typeof document < "u" ? document?.dispatchEvent(new Event(e)) : process?.emit("message", e, void 0);
|
|
250
245
|
}
|
|
251
246
|
async onChainChanged(e) {
|
|
252
|
-
e ? await this.getProviderAdapter(e).onChainChanged(e) : (await this.disconnectFromConnector(),
|
|
247
|
+
e ? await this.getProviderAdapter(e).onChainChanged(e) : (await this.disconnectFromConnector(), D());
|
|
253
248
|
}
|
|
254
249
|
async monitorConnectedAddress(e) {
|
|
255
|
-
await
|
|
250
|
+
await x.monitor(await this.getEthereumAddressByChain(e));
|
|
256
251
|
}
|
|
257
252
|
async getBalances(e, t, n, r, i = !1, a, o = !1) {
|
|
258
|
-
return
|
|
253
|
+
return T(this, e, t, n, r, i, this.generateProofRemotely, a, o);
|
|
259
254
|
}
|
|
260
255
|
async getTotalBalance(e, n, r, i = !1, a, o = !1) {
|
|
261
|
-
let s = r ?? await this.getEthereumAddressByChain(e), c = n ?? this.userKeys, l = await this.getBalances(e, c.getShieldedPrivateKey(), c.getShieldedPublicKey(), s, i, a, o), u = t ? await
|
|
256
|
+
let s = r ?? await this.getEthereumAddressByChain(e), c = n ?? this.userKeys, l = await this.getBalances(e, c.getShieldedPrivateKey(), c.getShieldedPublicKey(), s, i, a, o), u = t ? await C.getPrivateTokens(e, s) : await w(e), d = [];
|
|
262
257
|
return u.forEach((e) => {
|
|
263
258
|
let t = e.erc20TokenAddress.toLowerCase(), n = l.get(t), r = {
|
|
264
259
|
token: e,
|
|
@@ -279,7 +274,7 @@ var _e = class {
|
|
|
279
274
|
return this.privateBalances.onPrivateBalancesWithUSDChange(e);
|
|
280
275
|
}
|
|
281
276
|
async getHinkalTreeRootHash(e) {
|
|
282
|
-
return (await
|
|
277
|
+
return (await M(e)).hinkalRootHash;
|
|
283
278
|
}
|
|
284
279
|
async resetMerkleTreesIfNecessary(e) {
|
|
285
280
|
let t = (await Promise.all((e ?? this.getSupportedChains()).map(async (e) => {
|
|
@@ -300,7 +295,7 @@ var _e = class {
|
|
|
300
295
|
return this.getProviderAdapter(e).getAddress();
|
|
301
296
|
}
|
|
302
297
|
async getRandomRelay(e, t = !1) {
|
|
303
|
-
return (await
|
|
298
|
+
return (await x.getIdleRelay(e, t)).relay;
|
|
304
299
|
}
|
|
305
300
|
getGasPrice(e) {
|
|
306
301
|
let t = this.getProviderAdapter(e);
|
|
@@ -308,7 +303,7 @@ var _e = class {
|
|
|
308
303
|
return t.getGasPrice(e);
|
|
309
304
|
}
|
|
310
305
|
getAPI() {
|
|
311
|
-
return
|
|
306
|
+
return x;
|
|
312
307
|
}
|
|
313
308
|
snapshotsClearInterval() {
|
|
314
309
|
this.getSupportedChains().forEach((e) => {
|
|
@@ -319,33 +314,33 @@ var _e = class {
|
|
|
319
314
|
this.snapshotsClearInterval(), this.privateBalances.dispose(), await this.resetProviderAdapters();
|
|
320
315
|
}
|
|
321
316
|
getRecipientInfo() {
|
|
322
|
-
return
|
|
317
|
+
return G(this);
|
|
323
318
|
}
|
|
324
319
|
async deposit(e, t, n = !0, r = !1) {
|
|
325
|
-
return
|
|
320
|
+
return P(this, e, t, n, r);
|
|
326
321
|
}
|
|
327
322
|
async depositSolana(e, t, n = !1) {
|
|
328
|
-
return
|
|
323
|
+
return R(this, e, t, n);
|
|
329
324
|
}
|
|
330
325
|
async depositForOther(e, t, n, r = !0, i = !1, a) {
|
|
331
326
|
return this.enforceRateLimit(this.depositForOther.name, [
|
|
332
327
|
e,
|
|
333
328
|
t,
|
|
334
329
|
n
|
|
335
|
-
]),
|
|
330
|
+
]), F(this, e, t, n, r, i, a);
|
|
336
331
|
}
|
|
337
332
|
async depositSolanaForOther(e, t, n, r = !1, i) {
|
|
338
333
|
return this.enforceRateLimit(this.depositSolanaForOther.name, [
|
|
339
334
|
e,
|
|
340
335
|
t,
|
|
341
336
|
n
|
|
342
|
-
]),
|
|
337
|
+
]), z(this, e, t, n, r, i);
|
|
343
338
|
}
|
|
344
339
|
async depositAndWithdraw(e, t, n, r, i, a, o, s, l = !0) {
|
|
345
|
-
return c(
|
|
340
|
+
return c(S([e])) ? re(this, e, t, n, r, i, a, o, s) : L(this, e, t, n, r, i, a, o, s, l);
|
|
346
341
|
}
|
|
347
342
|
async claimUtxo(e, t, n, r) {
|
|
348
|
-
return c(
|
|
343
|
+
return c(S([e])) ? $(this, e, t, n, r) : fe(this, e, t, n, r);
|
|
349
344
|
}
|
|
350
345
|
async depositAndBridge(e, t, n, r, i, a, o, s = !0) {
|
|
351
346
|
return le(this, e, t, n, r, i, a, o, s);
|
|
@@ -358,7 +353,7 @@ var _e = class {
|
|
|
358
353
|
]), ue(this, e, t, n, r, i, a, o);
|
|
359
354
|
}
|
|
360
355
|
async checkSendTransactionStatus(e) {
|
|
361
|
-
return
|
|
356
|
+
return b(e);
|
|
362
357
|
}
|
|
363
358
|
async nearDepositAndBridge(e, t, n, r, i, a, o, s, c) {
|
|
364
359
|
return this.enforceRateLimit(this.nearDepositAndBridge.name, [
|
|
@@ -368,12 +363,8 @@ var _e = class {
|
|
|
368
363
|
r
|
|
369
364
|
]), de(this, e, t, n, r, i, a, o, s, c);
|
|
370
365
|
}
|
|
371
|
-
async prooflessDeposit(e, t, n, r, i = !1) {
|
|
372
|
-
return c(
|
|
373
|
-
}
|
|
374
|
-
async prooflessDepositWithPublicFee(e, t, n, r, i) {
|
|
375
|
-
let a = y([e]);
|
|
376
|
-
return c(a) ? I(this, e, t, n, r, i) : K(this, a, e, t, n, r, i);
|
|
366
|
+
async prooflessDeposit(e, t, n, r, i = !1, a = v, o = "", s, l = !1) {
|
|
367
|
+
return c(S(e)) ? pe(this, e, t, n, s, l) : I(this, e, t, n, r, i, a, o, s, l);
|
|
377
368
|
}
|
|
378
369
|
getSolanaProgram(e) {
|
|
379
370
|
if (!this.solanaProviderAdapter) throw Error("No provider adapter initialized");
|
|
@@ -390,16 +381,16 @@ var _e = class {
|
|
|
390
381
|
e,
|
|
391
382
|
t,
|
|
392
383
|
n
|
|
393
|
-
]), c(
|
|
384
|
+
]), c(S(e)) ? ae(this, e, t, n, r, i, a) : Y(this, e, t, n, r, i, a);
|
|
394
385
|
}
|
|
395
386
|
async withdraw(e, t, n, r, i, a, o) {
|
|
396
|
-
return c(
|
|
387
|
+
return c(S(e)) ? ie(this, e, t, n, i, a, o) : V(this, e, t, n, r, i, a, o);
|
|
397
388
|
}
|
|
398
389
|
async withdrawStuckUtxos(e, t) {
|
|
399
390
|
return me(this, e, t);
|
|
400
391
|
}
|
|
401
392
|
async swap(e, t, n, r, i, a, o) {
|
|
402
|
-
return c(
|
|
393
|
+
return c(S(e)) ? this.swapSolana(e, t, r, i, a, o) : B(this, e, t, n, r, i, a, o);
|
|
403
394
|
}
|
|
404
395
|
async swapSolana(e, t, n, r, i, a) {
|
|
405
396
|
let o = JSON.parse(n), s = BigInt(o.swapperAccountSalt), { instructionLists: c, addressLookupTableAccount: l } = o.data;
|
|
@@ -407,7 +398,7 @@ var _e = class {
|
|
|
407
398
|
}
|
|
408
399
|
async actionReceive(e, t, n, r, i, a) {
|
|
409
400
|
if (!i) throw Error("subAccount is required");
|
|
410
|
-
return c(
|
|
401
|
+
return c(S(e)) ? Q(this, e[0], t[0], i, void 0, a) : q(this, e, t, n, r, i, a);
|
|
411
402
|
}
|
|
412
403
|
async actionPrivateWallet(e, t, n, r, i, a, o, s, c, l, u = !1, d, f, p) {
|
|
413
404
|
return this.enforceRateLimit(this.actionPrivateWallet.name, [
|
|
@@ -421,13 +412,13 @@ var _e = class {
|
|
|
421
412
|
s,
|
|
422
413
|
c,
|
|
423
414
|
p
|
|
424
|
-
]),
|
|
415
|
+
]), W(this, e, t, n, r, i, a, o, s, c, l, u, d, f, p);
|
|
425
416
|
}
|
|
426
417
|
async proxySwap(e, t, n, r, i, a, o, s, l = !1, u, d) {
|
|
427
|
-
return c(
|
|
418
|
+
return c(S(e)) ? ce(this, e, t, r, a, n, o, s, d) : J(this, e, t, n, r, i, a, o, s, l, u, d);
|
|
428
419
|
}
|
|
429
420
|
async proxyToPrivate(e, t, n, r, i, a, o) {
|
|
430
|
-
return c(
|
|
421
|
+
return c(S(e)) ? (this.enforceRateLimit(this.proxyToPrivate.name, [
|
|
431
422
|
e[0],
|
|
432
423
|
t[0],
|
|
433
424
|
n,
|
|
@@ -435,21 +426,14 @@ var _e = class {
|
|
|
435
426
|
]), Q(this, e[0], t[0], n, r, o)) : X(this, e, t, r, i, a, n, o);
|
|
436
427
|
}
|
|
437
428
|
async proxySend(e, t, n, r, i, a, o) {
|
|
438
|
-
let s =
|
|
429
|
+
let s = S(e);
|
|
439
430
|
if (c(s)) return se(this, e[0], t[0], n, r, o);
|
|
440
|
-
let l =
|
|
431
|
+
let l = N(this, s, e.map((e) => e.erc20TokenAddress), t, r), u = e.map((e, n) => ({
|
|
441
432
|
token: e,
|
|
442
433
|
amount: -1n * t[n]
|
|
443
434
|
}));
|
|
444
435
|
return await this.actionPrivateWallet(s, [], [], [], l, u, n, i, a, void 0, void 0, void 0, o, void 0);
|
|
445
436
|
}
|
|
446
|
-
async multiSendPrivateRecipients(e, t, n) {
|
|
447
|
-
return this.enforceRateLimit(this.multiSendPrivateRecipients.name, [
|
|
448
|
-
e,
|
|
449
|
-
t,
|
|
450
|
-
n
|
|
451
|
-
]), J(this, e, t, n);
|
|
452
|
-
}
|
|
453
437
|
areMerkleTreeUpdatesDisabled() {
|
|
454
438
|
return this.disableMerkleTreeUpdates;
|
|
455
439
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FeeStructure, LoginMessageMode } from '../../types/hinkal.types';
|
|
1
|
+
import { FeeStructure, LoginMessageMode, ProoflessFeeStructure } from '../../types/hinkal.types';
|
|
2
2
|
import { ContractType, EthereumNetwork } from '../../types/ethereum-network.types';
|
|
3
3
|
import { EncryptedOutputWithSign } from '../../types/commitments.types';
|
|
4
4
|
import { ExternalActionId } from '../../types/external-action.types';
|
|
@@ -26,18 +26,17 @@ import { DepositAndSendExtendedResult } from '../../types/scheduled-transactions
|
|
|
26
26
|
import { Mutex } from 'async-mutex';
|
|
27
27
|
export interface IHinkal<ConnectorType = unknown> {
|
|
28
28
|
userKeys: UserKeys;
|
|
29
|
-
|
|
30
|
-
readonly privateTransferSigningMessage: string;
|
|
31
|
-
readonly allowParallelBalanceLocalDecryption: boolean;
|
|
29
|
+
legacySignature?: string;
|
|
32
30
|
merkleTreeHinkalByChain: Record<number, MerkleTree<bigint>>;
|
|
33
31
|
nullifiersByChain: Record<number, Set<string>>;
|
|
34
32
|
encryptedOutputsByChain: Record<number, EncryptedOutputWithSign[]>;
|
|
35
33
|
commitmentsSnapshotServiceByChain: Record<number, ClientCommitmentsSnapshotService | ClientSolanaCommitmentsSnapshotService | undefined>;
|
|
36
34
|
nullifierSnapshotServiceByChain: Record<number, ClientNullifierSnapshotService | ClientSolanaNullifierSnapshotService | undefined>;
|
|
37
|
-
generateProofRemotely: boolean;
|
|
38
35
|
utxoUtils: IMultiThreadedUtxoUtils;
|
|
39
36
|
cacheDevice: ICacheDevice;
|
|
37
|
+
generateProofRemotely: boolean;
|
|
40
38
|
balanceFetchingMutexByChain: Map<number, Mutex>;
|
|
39
|
+
readonly allowParallelBalanceLocalDecryption: boolean;
|
|
41
40
|
getBalances(chainId: number, passedShieldedPrivateKey: string, passedShieldedPublicKey: string, ethAddress: string, resetCacheBefore?: boolean, updateTokensListBefore?: boolean): Promise<Map<string, TokenBalance>>;
|
|
42
41
|
getTotalBalance(chainId: number, userKeys?: UserKeys, ethAddress?: string, resetCacheBefore?: boolean, updateTokensListBefore?: boolean, useBlockedUtxos?: boolean): Promise<TokenBalance[]>;
|
|
43
42
|
getStuckShieldedBalances(chainId: number, userKeys?: UserKeys, ethAddress?: string, resetCacheBefore?: boolean, updateTokensListBefore?: boolean): Promise<TokenBalance[]>;
|
|
@@ -63,8 +62,7 @@ export interface IHinkal<ConnectorType = unknown> {
|
|
|
63
62
|
bridgePrivateToPrivate(sourceToken: ERC20Token, destToken: ERC20Token, amount: string, recipient: PrivateBridgeRecipient, slippage?: number, feeToken?: string, action?: AdminTransactionType): Promise<PrivateBridgeResult>;
|
|
64
63
|
checkSendTransactionStatus(scheduleId: string): Promise<ScheduledTransactionByIdResponse>;
|
|
65
64
|
nearDepositAndBridge(erc20Token: ERC20Token, recipientAmounts: bigint[], recipientAddresses: string[], params: NearBridgeParams, txCompletionTime?: number, feeStructureOverride?: FeeStructure, ref?: string, action?: AdminTransactionType, dashboardAccountId?: string): Promise<NearBridgeResult>;
|
|
66
|
-
prooflessDeposit(erc20Tokens: ERC20Token[], amountChanges: bigint[], stealthAddressStructures?: StealthAddressStructure[], action?: AdminTransactionType, returnTxData?: boolean): Promise<string | ethers.TransactionRequest | TronWebTypes.Transaction<TronWebTypes.TriggerSmartContract>>;
|
|
67
|
-
prooflessDepositWithPublicFee(erc20Token: ERC20Token, amounts: bigint[], stealthAddressStructures: StealthAddressStructure[], feeAmount: bigint, action?: AdminTransactionType): Promise<string>;
|
|
65
|
+
prooflessDeposit(erc20Tokens: ERC20Token[], amountChanges: bigint[], stealthAddressStructures?: StealthAddressStructure[], recipientEncryptionKeys?: string[], createBlockedUtxos?: boolean, feeStructure?: ProoflessFeeStructure, orderId?: string, action?: AdminTransactionType, returnTxData?: boolean): Promise<string | ethers.TransactionRequest | TronWebTypes.Transaction<TronWebTypes.TriggerSmartContract>>;
|
|
68
66
|
getSolanaProgram(idl: Idl): Program;
|
|
69
67
|
getSolanaPublicKey(): PublicKey;
|
|
70
68
|
depositSolana(amount: bigint, token: ERC20Token): Promise<string>;
|
|
@@ -98,7 +96,6 @@ export interface IHinkal<ConnectorType = unknown> {
|
|
|
98
96
|
isSelectedNetworkSupported(chainId: number): boolean;
|
|
99
97
|
switchNetwork(network: EthereumNetwork): Promise<unknown>;
|
|
100
98
|
monitorConnectedAddress(chainId: number): Promise<void>;
|
|
101
|
-
isPermitterAvailable(chainId: number): boolean;
|
|
102
99
|
signMessage(message: string): Promise<string>;
|
|
103
100
|
signTypedData(domain: ethers.TypedDataDomain, types: Record<string, ethers.TypedDataField[]>, value: Record<string, unknown>): Promise<string>;
|
|
104
101
|
signWithSubAccount(chainId: number, messageToSign: string | undefined, typedData: TypedData | undefined, subAccount: SubAccount): Promise<string>;
|
|
@@ -107,7 +104,6 @@ export interface IHinkal<ConnectorType = unknown> {
|
|
|
107
104
|
proxySwap(erc20Tokens: ERC20Token[], deltaAmounts: bigint[], externalActionId: ExternalActionId, swapData: string, isTheSameChainSwap: boolean, subAccount: SubAccount, feeToken?: string, feeStructureOverride?: FeeStructure, autoDepositBack?: boolean, maxGasInDollar?: string, action?: AdminTransactionType): Promise<string>;
|
|
108
105
|
proxyToPrivate(erc20Tokens: ERC20Token[], deltaAmountsBase: bigint[], subAccount: SubAccount, recipientInfo: string, feeToken?: string, feeStructureOverride?: FeeStructure, action?: AdminTransactionType): Promise<string>;
|
|
109
106
|
proxySend(erc20Tokens: ERC20Token[], amounts: bigint[], subAccount: SubAccount, recipientAddress: string, feeToken?: string, feeStructureOverride?: FeeStructure, action?: AdminTransactionType): Promise<string>;
|
|
110
|
-
multiSendPrivateRecipients(erc20Tokens: ERC20Token[], amounts: bigint[], extendedRecipientInfos?: string[]): Promise<string>;
|
|
111
107
|
areMerkleTreeUpdatesDisabled(): boolean;
|
|
112
108
|
updateMerkleTreeUpdates(value: boolean): void;
|
|
113
109
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`../../constants/chains.constants.cjs`),t=require(`../../functions/utils/caseInsensitive.utils.cjs`),n=require(`../../error-handling/error-codes.constants.cjs`),r=require(`../../functions/web3/etherFunctions.cjs`),i=require(`../../functions/utils/time.utils.cjs`),a=require(`../../error-handling/customErrors/ErrorWithTx.cjs`),o=require(`../../types/external-action.types.cjs`),
|
|
1
|
+
const e=require(`../../constants/chains.constants.cjs`),t=require(`../../functions/utils/caseInsensitive.utils.cjs`),n=require(`../../error-handling/error-codes.constants.cjs`),r=require(`../../functions/web3/etherFunctions.cjs`),i=require(`../../functions/utils/time.utils.cjs`),a=require(`../../error-handling/customErrors/ErrorWithTx.cjs`),o=require(`../../error-handling/logger.cjs`),s=require(`../../types/external-action.types.cjs`),c=require(`../../types/transactions.types.cjs`),l=require(`../../types/admin.types.cjs`),u=require(`../../types/activities.types.cjs`),d=require(`../../types/transaction.types.cjs`),f=require(`../../types/offscreen.types.cjs`);require(`../../types/index.cjs`);const ee=require(`../../API/API.cjs`),p=require(`../../functions/utils/erc20tokenFunctions.cjs`),m=require(`../../error-handling/get-error.message.cjs`);require(`../../error-handling/index.cjs`);const h=require(`../../functions/pre-transaction/getVolatileTransferAmount.cjs`),g=require(`../../functions/utils/create-provider.cjs`),_=require(`../../functions/pre-transaction/getFeeStructure.cjs`),v=require(`../../functions/utils/convertEmporiumOpToCallInfo.cjs`),y=require(`../../functions/utils/postToOffscreen.cjs`),b=require(`../../functions/utils/fees.utils.cjs`),x=require(`../../functions/private-wallet/emporium.helpers.cjs`),S=require(`../../functions/auto-deposit-back-helpers/get-tokens-to-deposit-back.cjs`),C=require(`../../functions/auto-deposit-back-helpers/get-gas-token-records.cjs`),w=require(`../../functions/auto-deposit-back-helpers/select-gas-token.cjs`),T=require(`../../functions/auto-deposit-back-helpers/update-hinkal.cjs`);require(`../../functions/index.cjs`);const E=require(`../IndexedDB/activity-db.cjs`);require(`../IndexedDB/index.cjs`);var D=3*1e3,O=13*1e3,k=async(k,A,j,M,N,P,F,I)=>{if(!j||F.length===0)return;let L;try{let a=g.createJsonRpcProvider(A);await i.waitLittle(A===e.chainIds.ethMainnet?O:D);let o=await S.getTokensToDepositBack(F,N,j,a);if(!o.length){y.postToOffscreen(f.MessagesFromOffscreen.AutoShieldTxStatus,{message:n.transactionErrorCodes.AUTO_SHIELD_SKIPPED});return}let d=(await p.getErc20TokensBySymbolsFromAPI(await b.getGasTokenSymbols(A),A)).filter(e=>e!==void 0),{prices:m}=await ee.API.getTokenPrices(A,d.map(e=>e.erc20TokenAddress)),R=new Map(m.map((e,t)=>[d[t].erc20TokenAddress.toLowerCase(),e])),z=o.map(({token:e})=>e),B=o.map(({balance:e})=>e),V=z.map(({erc20TokenAddress:e})=>e),H=x.createTransaferEmporiumOpsBatch(k,A,V,await h.modifyVolatileTokenAmountChanges(A,z,B,j)),U=await _.getFeeStructure(A,N,V,s.ExternalActionId.Emporium,H.map(e=>v.convertEmporiumOpToCallInfo(e,j,A))),{flatFee:W}=U??{},G=await p.getErc20TokenFromAPI(A,U.feeToken);if(!G)return;let K=r.getAmountInToken(G,W),q=(R.get(G.erc20TokenAddress.toLowerCase())??0)*Number(K),J=await w.selectGasToken(N,q,A,z,H,await C.getGasTokenRecords(d,A,k,j,a,R),U,V,j);if(!J)return;let{feeToken:Y,feeStructure:X}=J??{};if(P&&Number(P)<q){y.postToOffscreen(f.MessagesFromOffscreen.AutoShieldTxStatus,{message:n.gasErrorCodes.GAS_PRICE_EXCEEDS_AUTOSHIELD_LIMIT});return}let Z=z.findIndex(e=>t.caseInsensitiveEqual(e.erc20TokenAddress,Y));Z!==-1&&(B[Z]-=X?.flatFee??0n);let{hinkalAddress:Q}=e.networkRegistry[A].contractData,$={activityType:u.ActivityTypes.AUTO_SHIELD,chainId:A,from:j,to:Q,gasInDollar:q.toString(),tokensReceive:z.map((e,t)=>({amount:r.getAmountInToken(e,B[t]),token:e}))};L=await E.activityStorage.saveTxRequest($),y.postToOffscreen(f.MessagesFromOffscreen.AutoShieldTxStatus,{status:c.TransactionStatus.Loading}),T.updateHinkal(A,k,I.inputNullifiers?.flat(),I.outCommitments?.flat(),I.encryptedOutputs?.flat());let te={id:0,success:!0,txHash:await k.actionReceive(z,B,Y,X,M,l.AdminTransactionType.AutoShield)};await E.activityStorage.updatePendingTransactions(te,L),y.postToOffscreen(f.MessagesFromOffscreen.AutoShieldTxStatus,{status:c.TransactionStatus.Confirmed,activityRequest:$})}catch(e){let t;e instanceof a.ErrorWithRelayerTransaction&&(t=e.txHash);let n={error:e,id:0,success:!1,...t?{erroredTx:t}:{}};L&&await E.activityStorage.updatePendingTransactions(n,L),y.postToOffscreen(f.MessagesFromOffscreen.AutoShieldTxStatus,{status:c.TransactionStatus.Failed,error:m.getErrorMessageFromTransactionRequest(e,d.TransactionRequestType.ReceiveFromShieldedAccount)}),o.Logger.error(`Error in auto deposit back:`,e)}};exports.handleAutoDepositBack=k;
|
|
@@ -4,14 +4,14 @@ import { gasErrorCodes as ee, transactionErrorCodes as r } from "../../error-han
|
|
|
4
4
|
import { getAmountInToken as i } from "../../functions/web3/etherFunctions.mjs";
|
|
5
5
|
import { waitLittle as a } from "../../functions/utils/time.utils.mjs";
|
|
6
6
|
import { ErrorWithRelayerTransaction as o } from "../../error-handling/customErrors/ErrorWithTx.mjs";
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
7
|
+
import { Logger as s } from "../../error-handling/logger.mjs";
|
|
8
|
+
import { ExternalActionId as c } from "../../types/external-action.types.mjs";
|
|
9
|
+
import { TransactionStatus as l } from "../../types/transactions.types.mjs";
|
|
10
|
+
import { AdminTransactionType as u } from "../../types/admin.types.mjs";
|
|
11
|
+
import { ActivityTypes as d } from "../../types/activities.types.mjs";
|
|
12
|
+
import { TransactionRequestType as f } from "../../types/transaction.types.mjs";
|
|
13
|
+
import { MessagesFromOffscreen as p } from "../../types/offscreen.types.mjs";
|
|
13
14
|
import "../../types/index.mjs";
|
|
14
|
-
import { Logger as p } from "../../error-handling/logger.mjs";
|
|
15
15
|
import { API as te } from "../../API/API.mjs";
|
|
16
16
|
import { getErc20TokenFromAPI as m, getErc20TokensBySymbolsFromAPI as h } from "../../functions/utils/erc20tokenFunctions.mjs";
|
|
17
17
|
import { getErrorMessageFromTransactionRequest as g } from "../../error-handling/get-error.message.mjs";
|
|
@@ -37,24 +37,24 @@ var k = 3 * 1e3, ne = 13 * 1e3, A = async (A, j, M, N, P, F, I, L) => {
|
|
|
37
37
|
try {
|
|
38
38
|
let o = v(j);
|
|
39
39
|
await a(j === e.ethMainnet ? ne : k);
|
|
40
|
-
let
|
|
41
|
-
if (!
|
|
42
|
-
x(
|
|
40
|
+
let s = await w(I, P, M, o);
|
|
41
|
+
if (!s.length) {
|
|
42
|
+
x(p.AutoShieldTxStatus, { message: r.AUTO_SHIELD_SKIPPED });
|
|
43
43
|
return;
|
|
44
44
|
}
|
|
45
|
-
let
|
|
45
|
+
let f = (await h(await S(j), j)).filter((e) => e !== void 0), { prices: g } = await te.getTokenPrices(j, f.map((e) => e.erc20TokenAddress)), z = new Map(g.map((e, t) => [f[t].erc20TokenAddress.toLowerCase(), e])), B = s.map(({ token: e }) => e), V = s.map(({ balance: e }) => e), H = B.map(({ erc20TokenAddress: e }) => e), U = C(A, j, H, await _(j, B, V, M)), W = await y(j, P, H, c.Emporium, U.map((e) => b(e, M, j))), { flatFee: G } = W ?? {}, K = await m(j, W.feeToken);
|
|
46
46
|
if (!K) return;
|
|
47
|
-
let q = i(K, G), J = (z.get(K.erc20TokenAddress.toLowerCase()) ?? 0) * Number(q), Y = await E(P, J, j, B, U, await T(
|
|
47
|
+
let q = i(K, G), J = (z.get(K.erc20TokenAddress.toLowerCase()) ?? 0) * Number(q), Y = await E(P, J, j, B, U, await T(f, j, A, M, o, z), W, H, M);
|
|
48
48
|
if (!Y) return;
|
|
49
49
|
let { feeToken: X, feeStructure: Z } = Y ?? {};
|
|
50
50
|
if (F && Number(F) < J) {
|
|
51
|
-
x(
|
|
51
|
+
x(p.AutoShieldTxStatus, { message: ee.GAS_PRICE_EXCEEDS_AUTOSHIELD_LIMIT });
|
|
52
52
|
return;
|
|
53
53
|
}
|
|
54
54
|
let Q = B.findIndex((e) => n(e.erc20TokenAddress, X));
|
|
55
55
|
Q !== -1 && (V[Q] -= Z?.flatFee ?? 0n);
|
|
56
56
|
let { hinkalAddress: re } = t[j].contractData, $ = {
|
|
57
|
-
activityType:
|
|
57
|
+
activityType: d.AUTO_SHIELD,
|
|
58
58
|
chainId: j,
|
|
59
59
|
from: M,
|
|
60
60
|
to: re,
|
|
@@ -64,14 +64,14 @@ var k = 3 * 1e3, ne = 13 * 1e3, A = async (A, j, M, N, P, F, I, L) => {
|
|
|
64
64
|
token: e
|
|
65
65
|
}))
|
|
66
66
|
};
|
|
67
|
-
R = await O.saveTxRequest($), x(
|
|
67
|
+
R = await O.saveTxRequest($), x(p.AutoShieldTxStatus, { status: l.Loading }), D(j, A, L.inputNullifiers?.flat(), L.outCommitments?.flat(), L.encryptedOutputs?.flat());
|
|
68
68
|
let ie = {
|
|
69
69
|
id: 0,
|
|
70
70
|
success: !0,
|
|
71
|
-
txHash: await A.actionReceive(B, V, X, Z, N,
|
|
71
|
+
txHash: await A.actionReceive(B, V, X, Z, N, u.AutoShield)
|
|
72
72
|
};
|
|
73
|
-
await O.updatePendingTransactions(ie, R), x(
|
|
74
|
-
status:
|
|
73
|
+
await O.updatePendingTransactions(ie, R), x(p.AutoShieldTxStatus, {
|
|
74
|
+
status: l.Confirmed,
|
|
75
75
|
activityRequest: $
|
|
76
76
|
});
|
|
77
77
|
} catch (e) {
|
|
@@ -83,10 +83,10 @@ var k = 3 * 1e3, ne = 13 * 1e3, A = async (A, j, M, N, P, F, I, L) => {
|
|
|
83
83
|
success: !1,
|
|
84
84
|
...t ? { erroredTx: t } : {}
|
|
85
85
|
};
|
|
86
|
-
R && await O.updatePendingTransactions(n, R), x(
|
|
87
|
-
status:
|
|
88
|
-
error: g(e,
|
|
89
|
-
}),
|
|
86
|
+
R && await O.updatePendingTransactions(n, R), x(p.AutoShieldTxStatus, {
|
|
87
|
+
status: l.Failed,
|
|
88
|
+
error: g(e, f.ReceiveFromShieldedAccount)
|
|
89
|
+
}), s.error("Error in auto deposit back:", e);
|
|
90
90
|
}
|
|
91
91
|
};
|
|
92
92
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`../../constants/protocol.constants.cjs`),t=require(`../../functions/utils/caseInsensitive.utils.cjs`),n=require(`../../error-handling/error-codes.constants.cjs`),r=require(`../../functions/web3/etherFunctions.cjs`),i=require(`../crypto-keys/keys.cjs`),a=require(`../../functions/utils/time.utils.cjs`),o=require(`../../
|
|
1
|
+
const e=require(`../../constants/protocol.constants.cjs`),t=require(`../../functions/utils/caseInsensitive.utils.cjs`),n=require(`../../error-handling/error-codes.constants.cjs`),r=require(`../../functions/web3/etherFunctions.cjs`),i=require(`../crypto-keys/keys.cjs`),a=require(`../../functions/utils/time.utils.cjs`),o=require(`../../functions/utils/addresses.cjs`),s=require(`../../error-handling/logger.cjs`),c=require(`../../types/external-action.types.cjs`),l=require(`../../types/token.types.cjs`),u=require(`../../API/API.cjs`),d=require(`../../functions/utils/erc20tokenFunctions.cjs`),f=require(`../../functions/pre-transaction/getFeeStructure.cjs`),p=require(`../../constants/addresses.constants.cjs`),m=require(`../../constants/bridging.constants.cjs`),h=require(`../../constants/tx-confirmation.constants.cjs`);require(`../../constants/index.cjs`);const g=require(`../../functions/utils/convertEmporiumOpToCallInfo.cjs`),_=require(`../../functions/utils/getRecipientInfoFromUserKeys.cjs`),v=require(`../../functions/utils/publicBalance.utils.cjs`),y=require(`../../functions/utils/getUtxosFromReceipt.utils.cjs`),b=require(`../../functions/utils/fees.utils.cjs`),x=require(`../../functions/utils/tx-confirmation.utils.cjs`),S=require(`../../functions/utils/temp-wallet.utils.cjs`),C=require(`../../functions/private-wallet/emporium.helpers.cjs`),w=require(`../../functions/web3/lifiAPI.cjs`);var T=async(n,i,a,s,f,m,h)=>{let{chainId:g}=i,_=a.chainId,v=i.erc20TokenAddress,y=p.SWAP_ROUTER_ADDRESSES[c.ExternalActionId.Lifi][g];if(!y)throw Error(`LIFI not configured for chain ${g}`);let b=r.randomBigInt(6),{privateKey:x,ethAddress:T}=S.deriveTempWallet(n,g,b),{lifiDataValue:E,outSwapAmountValue:D,extraNativeTokenFee:O}=await w.getLifiPrice(i,a,s,f,T,T),k={calldata:E,expectedAmount:D,nativeFee:O},A=r.getAmountInWei(i,s),j=S.buildTempSubAccount(b,x,T),M=o.hashEthereumAddress(await n.getEthereumAddressByChain(g));await Promise.all([u.API.addTemporaryWalletNonce(g,M,Number(b),l.TemporaryWalletRecoveryDestination.Confidential),u.API.addTemporaryWalletNonce(_,M,Number(b),l.TemporaryWalletRecoveryDestination.Confidential)]);let N=t.caseInsensitiveEqual(v,e.zeroAddress),P=k.nativeFee>0n&&!N,F=N?A+k.nativeFee:A,I=[i],L=[-F];if(P){let t=await d.getErc20TokenFromAPI(g,e.zeroAddress);if(!t)throw Error(`Native token not found for bridge fee`);I.push(t),L.push(-k.nativeFee)}let R=C.createLifiBridgeOps(n,g,T,y,v,F,A,k),z=I.map((e,t)=>({token:e,amount:L[t]}));return{nonce:b,tempSubAccount:j,sourceTxHash:await n.actionPrivateWallet(g,I,L,L.map(()=>!1),R,z,j,m??v,void 0,void 0,!1,void 0,h,void 0),quote:k}},E=async(e,t,n,r,i)=>{let o=BigInt(Math.round(i*m.SLIPPAGE_SCALING_FACTOR)),s=r.expectedAmount-r.expectedAmount*o/BigInt(m.SLIPPAGE_SCALING_FACTOR),c=s>0n?s:1n,l=Date.now()+m.BRIDGE_ARRIVAL_TIMEOUT_MS;for(;Date.now()<l;){let r=await v.getPublicBalanceByTokenAddress(e,t,n);if(r!==null&&r>=c)return r;await a.waitLittle(m.BRIDGE_ARRIVAL_POLL_INTERVAL_MS)}throw Error(`Bridge did not land on destination temp wallet ${t} on chain ${e} within timeout.`)},D=async(t,r,a,o,s,l)=>{let u=r.chainId,d=r.erc20TokenAddress,p=a.ethAddress;if(!p)throw Error(`Missing temp wallet address for bridge shield`);let m=C.createTransaferEmporiumOpsBatch(t,u,[d],[o]),v=await b.calculateModifiedFeeStructure(u,r,o,await f.getFeeStructure(u,d,[d],c.ExternalActionId.Emporium,m.map(e=>g.convertEmporiumOpToCallInfo(e,p,u)),e.PAY_SEND_VARIABLE_RATE)),S=o-b.calculateTotalFee(o,v);if(S<=0n)throw Error(n.transactionErrorCodes.INSUFFICIENT_FUNDS_TO_TRANSACT);let w,T;if(`recipientInfo`in s)w=s.recipientInfo;else{let e=t.userKeys.getClaimableSignatureFromNonce(s.claimableNonce),n=new i.UserKeys(e);T={signature:e,keys:n,ethAddress:s.recipientEthAddress},w=_.getRecipientInfoFromUserKeys(n)}let E=await t.proxyToPrivate([r],[S],a,w,v.feeToken,v,l),D;if(T){let e=await x.waitForEthereumTransactionConfirmation(u,E,{evmTimeoutMs:h.RELAYER_TX_CONFIRMATION_TIMEOUT});if(!e)throw Error(`Could not fetch receipt for bridge shield tx ${E}`);let[n]=y.getUtxosFromReceipt(e,t,u,d,T.keys.getShieldedPrivateKey());if(!n)throw Error(`Could not find recipient UTXO in bridge shield tx`);D={chainId:u,senderAddress:await t.getEthereumAddressByChain(u),recipientAddress:T.ethAddress,claimableSignature:T.signature,utxo:n}}return{destTxHash:E,pendingEnclaveUtxo:D}},O=async(e,t,n,r,i,a=m.DEFAULT_BRIDGING_SLIPPAGE_DECIMAL,c,l)=>{let{nonce:d,tempSubAccount:f,sourceTxHash:p,quote:h}=await T(e,t,n,r,a,c,l),g=f.ethAddress;if(!g)throw Error(`Missing temp wallet address for bridge`);let{destTxHash:_,pendingEnclaveUtxo:v}=await D(e,n,f,await E(n.chainId,g,n.erc20TokenAddress,h,a),i,l),y=o.hashEthereumAddress(await e.getEthereumAddressByChain(n.chainId)),b=[t.chainId,n.chainId];return(await Promise.allSettled(b.map(e=>u.API.removeTemporaryWalletNonce(e,y,Number(d))))).forEach((e,t)=>{e.status===`rejected`&&s.Logger.error(`Failed to remove temp-wallet nonce on chain ${b[t]}`,e.reason)}),{sourceTxHash:p,destTxHash:_,pendingEnclaveUtxo:v}};exports.hinkalBridgePrivateToPrivate=O;
|