@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
|
@@ -3,7 +3,7 @@ import { caseInsensitiveEqual as n } from "../../utils/caseInsensitive.utils.mjs
|
|
|
3
3
|
import { Utxo as r } from "../../../data-structures/utxo/Utxo.mjs";
|
|
4
4
|
import { checkAddressNotUpdated as i } from "../../utils/upToDateState.mjs";
|
|
5
5
|
import { getHinkalCache as a, resetCache as o, setHinkalCache as s } from "../../utils/cacheFunctions.mjs";
|
|
6
|
-
import {
|
|
6
|
+
import { normalizeTokenAddress as c } from "../../utils/encodeTokenWithId.mjs";
|
|
7
7
|
import { formatMintAddress as l } from "../../utils/solanaMint.utils.mjs";
|
|
8
8
|
import { getInputUtxosEnclave as u } from "./getInputUtxosEnclave.mjs";
|
|
9
9
|
import { hashEthereumAddress as d } from "../../utils/addresses.mjs";
|
|
@@ -33,14 +33,13 @@ var h = new m(), g = async (e, t) => e.allowParallelBalanceLocalDecryption ? t()
|
|
|
33
33
|
}, x = (e) => {
|
|
34
34
|
if (Array.isArray(e)) return e;
|
|
35
35
|
if (e !== void 0) return [e];
|
|
36
|
-
}, S = async (e, t, n) => await e.utxoUtils.batchFilterUtxosWithNullifier(t, n), C = (e, t, n, i, a, o, s
|
|
36
|
+
}, S = async (e, t, n) => await e.utxoUtils.batchFilterUtxosWithNullifier(t, n), C = (e, t, n, i, a, o, s) => {
|
|
37
37
|
for (e.sort((e, t) => e.amount <= t.amount ? 1 : -1); e.length < t || e.length > t && e.length < 6;) if (e.push(new r({
|
|
38
38
|
amount: 0n,
|
|
39
39
|
erc20TokenAddress: o,
|
|
40
|
-
mintAddress:
|
|
40
|
+
mintAddress: s,
|
|
41
41
|
nullifyingKey: i,
|
|
42
|
-
spendingPublicKey: a
|
|
43
|
-
isNewStyle: !0
|
|
42
|
+
spendingPublicKey: a
|
|
44
43
|
})), n) for (; e.length > 6;) e.splice(e.length - 1);
|
|
45
44
|
}, w = async ({ hinkal: e, chainId: t, passedShieldedPublicKey: n = void 0, ethAddress: r = void 0, resetCacheBefore: s = !1, allowRemoteDecryption: c = !1, useBlockedUtxos: l = !1 }) => {
|
|
46
45
|
let u = r ?? await e.getEthereumAddress(), d = n ?? e.userKeys.getShieldedPublicKey(), { userKeys: f } = e, p = e.encryptedOutputsByChain[t], m = e.nullifiersByChain[t], h = Array.from(p);
|
|
@@ -89,22 +88,16 @@ var h = new m(), g = async (e, t) => e.allowParallelBalanceLocalDecryption ? t()
|
|
|
89
88
|
}), y = x(r), b = /* @__PURE__ */ new Map();
|
|
90
89
|
v.forEach((e) => {
|
|
91
90
|
let t = e.getTokenAddress(o);
|
|
92
|
-
if (y && !y.some((e) => n(e
|
|
93
|
-
let r = c(o,
|
|
94
|
-
erc20TokenAddress: t,
|
|
95
|
-
tokenId: 0
|
|
96
|
-
}), i = b.get(r) ?? [];
|
|
91
|
+
if (y && !y.some((e) => n(e, t))) return;
|
|
92
|
+
let r = c(o, t), i = b.get(r) ?? [];
|
|
97
93
|
b.set(r, [...i, e]);
|
|
98
94
|
}), p?.forEach((e) => {
|
|
99
|
-
let t = c(o,
|
|
100
|
-
erc20TokenAddress: e.erc20TokenAddress,
|
|
101
|
-
tokenId: 0
|
|
102
|
-
});
|
|
95
|
+
let t = c(o, e);
|
|
103
96
|
b.set(t, b.get(t) ?? []);
|
|
104
97
|
});
|
|
105
98
|
for (let [t, n] of b) {
|
|
106
|
-
let r = t
|
|
107
|
-
C(n, i, a, g, _,
|
|
99
|
+
let r = t, s = e(o), c = s ? r : void 0;
|
|
100
|
+
C(n, i, a, g, _, s ? l(r).compressedAddress.toLowerCase() : r.toLowerCase(), c);
|
|
108
101
|
}
|
|
109
102
|
return b;
|
|
110
103
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`../../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../../constants/vite.constants.cjs`),t=require(`../../../constants/chains.constants.cjs`),n=require(`../../utils/caseInsensitive.utils.cjs`),r=require(`../../../error-handling/error-codes.constants.cjs`),i=require(`../etherFunctions.cjs`),a=require(`../../../data-structures/utxo/Utxo.cjs`),o=require(`../../../error-handling/customErrors/ErrorWithAmount.cjs`);require(`../../../error-handling/customErrors/index.cjs`);const s=require(`../../utils/encodeTokenWithId.cjs`),c=require(`../../utils/solanaMint.utils.cjs`),l=require(`./getInputUtxoAndBalance.cjs`),u=require(`../../../data-structures/TokenDBs/PrivateTokensDB.cjs`),d=require(`../../utils/map.utils.cjs`),f=require(`../../utils/mutexes.utils.cjs`),p=require(`../../utils/erc20tokenFunctions.cjs`);let m=require(`async-mutex`);var h=async(t,r,i,a,o,s=!1,c,h=!1,g=!1)=>d.getOrCreateMapValue(t.balanceFetchingMutexByChain,r,()=>new m.Mutex).runExclusive(async()=>f.getChainBalanceFetchingMutex(r).runShared(async()=>{let{inputUtxos:d}=g?await l.getInputUtxoAndBalanceOfStuckUtxos({hinkal:t,chainId:r,ethAddress:o,passedShieldedPrivateKey:i,resetCacheBefore:s,allowRemoteDecryption:c}):await l.getInputUtxoAndBalance({hinkal:t,sliceIfMore6:!1,chainId:r,passedShieldedPrivateKey:i,passedShieldedPublicKey:a,ethAddress:o,resetCacheBefore:s,allowRemoteDecryption:c});h&&e.isExtension&&await u.privateTokensDB.fetchAndUpdatePrivateTokens(d.map(e=>e.getTokenAddress(r)).filter(e=>e!==void 0),r,o);let f=(e.isExtension?await u.privateTokensDB.getPrivateTokens(r,o):await p.getErc20TokensForChainAPI(r)).map(e=>({token:e,balance:d.reduce((t,i)=>{let a=e.erc20TokenAddress;return n.caseInsensitiveEqual(a,i.getTokenAddress(r))?t+i.amount:t},0n),timestamp:d.filter(t=>n.caseInsensitiveEqual(t.getTokenAddress(r),e.erc20TokenAddress))[0]?.timeStamp,nfts:[]})),m=new Map;return f.forEach(e=>{m.set(e.token.erc20TokenAddress.toLowerCase(),e)}),m})),g=async(e,n,u,d,f=6,m
|
|
1
|
+
require(`../../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../../constants/vite.constants.cjs`),t=require(`../../../constants/chains.constants.cjs`),n=require(`../../utils/caseInsensitive.utils.cjs`),r=require(`../../../error-handling/error-codes.constants.cjs`),i=require(`../etherFunctions.cjs`),a=require(`../../../data-structures/utxo/Utxo.cjs`),o=require(`../../../error-handling/customErrors/ErrorWithAmount.cjs`);require(`../../../error-handling/customErrors/index.cjs`);const s=require(`../../utils/encodeTokenWithId.cjs`),c=require(`../../utils/solanaMint.utils.cjs`),l=require(`./getInputUtxoAndBalance.cjs`),u=require(`../../../data-structures/TokenDBs/PrivateTokensDB.cjs`),d=require(`../../utils/map.utils.cjs`),f=require(`../../utils/mutexes.utils.cjs`),p=require(`../../utils/erc20tokenFunctions.cjs`);let m=require(`async-mutex`);var h=async(t,r,i,a,o,s=!1,c,h=!1,g=!1)=>d.getOrCreateMapValue(t.balanceFetchingMutexByChain,r,()=>new m.Mutex).runExclusive(async()=>f.getChainBalanceFetchingMutex(r).runShared(async()=>{let{inputUtxos:d}=g?await l.getInputUtxoAndBalanceOfStuckUtxos({hinkal:t,chainId:r,ethAddress:o,passedShieldedPrivateKey:i,resetCacheBefore:s,allowRemoteDecryption:c}):await l.getInputUtxoAndBalance({hinkal:t,sliceIfMore6:!1,chainId:r,passedShieldedPrivateKey:i,passedShieldedPublicKey:a,ethAddress:o,resetCacheBefore:s,allowRemoteDecryption:c});h&&e.isExtension&&await u.privateTokensDB.fetchAndUpdatePrivateTokens(d.map(e=>e.getTokenAddress(r)).filter(e=>e!==void 0),r,o);let f=(e.isExtension?await u.privateTokensDB.getPrivateTokens(r,o):await p.getErc20TokensForChainAPI(r)).map(e=>({token:e,balance:d.reduce((t,i)=>{let a=e.erc20TokenAddress;return n.caseInsensitiveEqual(a,i.getTokenAddress(r))?t+i.amount:t},0n),timestamp:d.filter(t=>n.caseInsensitiveEqual(t.getTokenAddress(r),e.erc20TokenAddress))[0]?.timeStamp,nfts:[]})),m=new Map;return f.forEach(e=>{m.set(e.token.erc20TokenAddress.toLowerCase(),e)}),m})),g=async(e,n,u,d,f=6,m=!1,h=!1)=>{let{userKeys:g}=e,_=g.getSpendingKeyPair().pubSpendingBJJPoint,v=[],y=[];if(u.length===0)return[];if(m){for(let e=0;e<u.length;e+=1){let r=t.isSolanaLike(n),i=r?u[e]:void 0,o=r?c.formatMintAddress(u[e]).compressedAddress:u[e];v.push(Array.from({length:f},()=>new a.Utxo({amount:0n,erc20TokenAddress:o,mintAddress:i,nullifyingKey:g.getShieldedPrivateKey(),spendingPublicKey:_})))}return v}let b=await l.getInputUtxoAndBalancePerToken({hinkal:e,sliceIfMore6:!1,ensuredTokensWithId:u,allowRemoteDecryption:e.generateProofRemotely,useBlockedUtxos:h,chainId:n}),x=0;for(let e=0;e<u.length;e+=1){let t=b.get(s.normalizeTokenAddress(n,u[e]))??[];if(!t)throw Error(`Missing utxos for token`);x=Math.max(t.length,x),y.push(t)}if(x===2)return y;for(let[e,s]of y.entries())if(s.length>f){let t=s.slice(0,f),a=t.reduce((e,t)=>e+t.amount,0n);if(d[e]<0n&&a<-d[e]){let t=await p.getErc20TokenFromAPI(n,u[e]);if(!t)throw Error(`Token not found`);let s=t.decimals===18?6:2,c=Number(i.getAmountWithPrecision(a,t,s));throw new o.ErrorWithAmount(c,`${r.DIRECTLY_SHOW_MESSAGE_ERROR_CODES.UTXO_LIMITATIONS}. Please try again with ${c} ${t.symbol}, including gas fees.`)}v.push(t)}else if(s.length<=f){let r=[...s],i=f-s.length;for(;i>0;){--i;let o=t.isSolanaLike(n),s=o?u[e]:void 0,l=o?c.formatMintAddress(u[e]).compressedAddress:u[e];r.push(new a.Utxo({amount:0n,erc20TokenAddress:l,mintAddress:s,nullifyingKey:g.getShieldedPrivateKey(),spendingPublicKey:_}))}v.push(r)}return v};exports.addPaddingToUtxos=g,exports.getShieldedBalance=h;
|
|
@@ -15,4 +15,4 @@ export declare const getShieldedBalance: (hinkal: IHinkal, chainId: number, pass
|
|
|
15
15
|
* @param maxInput to pad until maxInput number
|
|
16
16
|
* @returns return padded UTXOs for every erc20 token
|
|
17
17
|
*/
|
|
18
|
-
export declare const addPaddingToUtxos: (hinkal: IHinkal, chainId: number, erc20Addresses: string[], amountChanges: bigint[], maxInput?: number,
|
|
18
|
+
export declare const addPaddingToUtxos: (hinkal: IHinkal, chainId: number, erc20Addresses: string[], amountChanges: bigint[], maxInput?: number, forceEmptyUtxos?: boolean, useBlockedUtxos?: boolean) => Promise<Utxo[][]>;
|
|
@@ -6,7 +6,7 @@ import { getAmountWithPrecision as i } from "../etherFunctions.mjs";
|
|
|
6
6
|
import { Utxo as a } from "../../../data-structures/utxo/Utxo.mjs";
|
|
7
7
|
import { ErrorWithAmount as o } from "../../../error-handling/customErrors/ErrorWithAmount.mjs";
|
|
8
8
|
import "../../../error-handling/customErrors/index.mjs";
|
|
9
|
-
import {
|
|
9
|
+
import { normalizeTokenAddress as s } from "../../utils/encodeTokenWithId.mjs";
|
|
10
10
|
import { formatMintAddress as c } from "../../utils/solanaMint.utils.mjs";
|
|
11
11
|
import { getInputUtxoAndBalance as l, getInputUtxoAndBalanceOfStuckUtxos as u, getInputUtxoAndBalancePerToken as d } from "./getInputUtxoAndBalance.mjs";
|
|
12
12
|
import { privateTokensDB as f } from "../../../data-structures/TokenDBs/PrivateTokensDB.mjs";
|
|
@@ -46,44 +46,37 @@ var v = async (t, r, i, a, o, s = !1, c, d = !1, h = !1) => p(t.balanceFetchingM
|
|
|
46
46
|
return m.forEach((e) => {
|
|
47
47
|
_.set(e.token.erc20TokenAddress.toLowerCase(), e);
|
|
48
48
|
}), _;
|
|
49
|
-
})), y = async (e, n, l, u, f = 6, p =
|
|
50
|
-
let { userKeys:
|
|
49
|
+
})), y = async (e, n, l, u, f = 6, p = !1, m = !1) => {
|
|
50
|
+
let { userKeys: g } = e, _ = g.getSpendingKeyPair().pubSpendingBJJPoint, v = [], y = [];
|
|
51
51
|
if (l.length === 0) return [];
|
|
52
|
-
if (
|
|
52
|
+
if (p) {
|
|
53
53
|
for (let e = 0; e < l.length; e += 1) {
|
|
54
54
|
let r = t(n), i = r ? l[e] : void 0, o = r ? c(l[e]).compressedAddress : l[e];
|
|
55
|
-
|
|
55
|
+
v.push(Array.from({ length: f }, () => new a({
|
|
56
56
|
amount: 0n,
|
|
57
57
|
erc20TokenAddress: o,
|
|
58
58
|
mintAddress: i,
|
|
59
|
-
nullifyingKey:
|
|
60
|
-
spendingPublicKey:
|
|
61
|
-
isNewStyle: !0
|
|
59
|
+
nullifyingKey: g.getShieldedPrivateKey(),
|
|
60
|
+
spendingPublicKey: _
|
|
62
61
|
})));
|
|
63
62
|
}
|
|
64
|
-
return
|
|
63
|
+
return v;
|
|
65
64
|
}
|
|
66
|
-
let
|
|
65
|
+
let b = await d({
|
|
67
66
|
hinkal: e,
|
|
68
67
|
sliceIfMore6: !1,
|
|
69
|
-
ensuredTokensWithId: l
|
|
70
|
-
erc20TokenAddress: l[t],
|
|
71
|
-
tokenId: p[t]
|
|
72
|
-
})),
|
|
68
|
+
ensuredTokensWithId: l,
|
|
73
69
|
allowRemoteDecryption: e.generateProofRemotely,
|
|
74
|
-
useBlockedUtxos:
|
|
70
|
+
useBlockedUtxos: m,
|
|
75
71
|
chainId: n
|
|
76
|
-
}),
|
|
72
|
+
}), x = 0;
|
|
77
73
|
for (let e = 0; e < l.length; e += 1) {
|
|
78
|
-
let t =
|
|
79
|
-
erc20TokenAddress: l[e],
|
|
80
|
-
tokenId: p[e]
|
|
81
|
-
})) ?? [];
|
|
74
|
+
let t = b.get(s(n, l[e])) ?? [];
|
|
82
75
|
if (!t) throw Error("Missing utxos for token");
|
|
83
|
-
|
|
76
|
+
x = Math.max(t.length, x), y.push(t);
|
|
84
77
|
}
|
|
85
|
-
if (
|
|
86
|
-
for (let [e, s] of
|
|
78
|
+
if (x === 2) return y;
|
|
79
|
+
for (let [e, s] of y.entries()) if (s.length > f) {
|
|
87
80
|
let t = s.slice(0, f), a = t.reduce((e, t) => e + t.amount, 0n);
|
|
88
81
|
if (u[e] < 0n && a < -u[e]) {
|
|
89
82
|
let t = await h(n, l[e]);
|
|
@@ -91,7 +84,7 @@ var v = async (t, r, i, a, o, s = !1, c, d = !1, h = !1) => p(t.balanceFetchingM
|
|
|
91
84
|
let s = t.decimals === 18 ? 6 : 2, c = Number(i(a, t, s));
|
|
92
85
|
throw new o(c, `${r.UTXO_LIMITATIONS}. Please try again with ${c} ${t.symbol}, including gas fees.`);
|
|
93
86
|
}
|
|
94
|
-
|
|
87
|
+
v.push(t);
|
|
95
88
|
} else if (s.length <= f) {
|
|
96
89
|
let r = [...s], i = f - s.length;
|
|
97
90
|
for (; i > 0;) {
|
|
@@ -101,14 +94,13 @@ var v = async (t, r, i, a, o, s = !1, c, d = !1, h = !1) => p(t.balanceFetchingM
|
|
|
101
94
|
amount: 0n,
|
|
102
95
|
erc20TokenAddress: u,
|
|
103
96
|
mintAddress: s,
|
|
104
|
-
nullifyingKey:
|
|
105
|
-
spendingPublicKey:
|
|
106
|
-
isNewStyle: !0
|
|
97
|
+
nullifyingKey: g.getShieldedPrivateKey(),
|
|
98
|
+
spendingPublicKey: _
|
|
107
99
|
}));
|
|
108
100
|
}
|
|
109
|
-
|
|
101
|
+
v.push(r);
|
|
110
102
|
}
|
|
111
|
-
return
|
|
103
|
+
return v;
|
|
112
104
|
};
|
|
113
105
|
//#endregion
|
|
114
106
|
export { y as addPaddingToUtxos, v as getShieldedBalance };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`../../../constants/chains.constants.cjs`),t=require(`../../../types/ethereum-network.types.cjs`),n=require(`../../utils/getContractAddress.cjs`),r=require(`../../utils/getSignerFromContract.cjs`),i=require(`./recoverTransactionFromError.cjs`);var a=async(e,t,n)=>{let i=r.getSignerFromContract(n);return await n.allowance(await i.getAddress(),t.target)>=e},o=async(t,i,a,o,s)=>{if(e.getNonLocalhostChainId(i)!==e.chainIds.ethMainnet||o.symbol.toLowerCase()!==`usdt`||BigInt(await s.allowance(await r.getSignerFromContract(s).getAddress(),a.target))===0n)return;let c=await s.approve(n.getContractAddress(a),0n);c&&`hash`in c&&await t.waitForTransaction(i,c.hash)},s=async(s,c,l,u,d)=>{let f=s.getContractWithSigner(c,t.ContractType.ERC20Contract,d.erc20TokenAddress);if(await a(u,l,f))return;await o(s,c,l,d,f);let p=c===e.chainIds.base?2:1;try{let e=await f.approve(n.getContractAddress(l),u);e&&`hash`in e&&await s.waitForTransaction(c,e.hash,p)}catch(e){if(!e?.transactionHash||!await i.recoverTransactionFromError(r.getProviderFromContract(f),e.transactionHash,p))throw e}};exports.approveTokenToHinkal=s;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { ethers } from 'ethers';
|
|
2
2
|
import { IHinkal } from '../../../data-structures/Hinkal/IHinkal';
|
|
3
3
|
import { ERC20Token } from '../../../types/token.types';
|
|
4
|
-
export declare const approveTokenToHinkal: (hinkal: IHinkal, chainId: number, contractToApprove: ethers.Contract, amount: bigint, token: ERC20Token) => Promise<
|
|
4
|
+
export declare const approveTokenToHinkal: (hinkal: IHinkal, chainId: number, contractToApprove: ethers.Contract, amount: bigint, token: ERC20Token) => Promise<void>;
|
|
@@ -1,113 +1,27 @@
|
|
|
1
1
|
import { chainIds as e, getNonLocalhostChainId as t } from "../../../constants/chains.constants.mjs";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { getProviderFromContract as o, getSignerFromContract as s } from "../../utils/getSignerFromContract.mjs";
|
|
7
|
-
import { recoverTransactionFromError as c } from "./recoverTransactionFromError.mjs";
|
|
8
|
-
import { ethers as l } from "ethers";
|
|
2
|
+
import { ContractType as n } from "../../../types/ethereum-network.types.mjs";
|
|
3
|
+
import { getContractAddress as r } from "../../utils/getContractAddress.mjs";
|
|
4
|
+
import { getProviderFromContract as i, getSignerFromContract as a } from "../../utils/getSignerFromContract.mjs";
|
|
5
|
+
import { recoverTransactionFromError as o } from "./recoverTransactionFromError.mjs";
|
|
9
6
|
//#region libs/shared/common/src/functions/web3/functionCalls/approveToken.ts
|
|
10
|
-
var
|
|
11
|
-
let r =
|
|
7
|
+
var s = async (e, t, n) => {
|
|
8
|
+
let r = a(n);
|
|
12
9
|
return await n.allowance(await r.getAddress(), t.target) >= e;
|
|
13
|
-
},
|
|
14
|
-
if (t(
|
|
15
|
-
let l = await c.approve(
|
|
16
|
-
l && "hash" in l && await n.waitForTransaction(
|
|
17
|
-
},
|
|
18
|
-
let
|
|
19
|
-
if (
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
if (!e?.transactionHash || !await c(o(h), e.transactionHash, n)) throw e;
|
|
28
|
-
}
|
|
29
|
-
return;
|
|
10
|
+
}, c = async (n, i, o, s, c) => {
|
|
11
|
+
if (t(i) !== e.ethMainnet || s.symbol.toLowerCase() !== "usdt" || BigInt(await c.allowance(await a(c).getAddress(), o.target)) === 0n) return;
|
|
12
|
+
let l = await c.approve(r(o), 0n);
|
|
13
|
+
l && "hash" in l && await n.waitForTransaction(i, l.hash);
|
|
14
|
+
}, l = async (t, a, l, u, d) => {
|
|
15
|
+
let f = t.getContractWithSigner(a, n.ERC20Contract, d.erc20TokenAddress);
|
|
16
|
+
if (await s(u, l, f)) return;
|
|
17
|
+
await c(t, a, l, d, f);
|
|
18
|
+
let p = a === e.base ? 2 : 1;
|
|
19
|
+
try {
|
|
20
|
+
let e = await f.approve(r(l), u);
|
|
21
|
+
e && "hash" in e && await t.waitForTransaction(a, e.hash, p);
|
|
22
|
+
} catch (e) {
|
|
23
|
+
if (!e?.transactionHash || !await o(i(f), e.transactionHash, p)) throw e;
|
|
30
24
|
}
|
|
31
|
-
let _ = await t.getEthereumAddressByChain(s), v = t.getContract(s, r.PermitterContract), y = await t.getContractWithFetcher(s, r.ContractWithNonces, m.erc20TokenAddress).nonces(_), b = BigInt(Date.now() + n) / 1000n, x = {
|
|
32
|
-
owner: _,
|
|
33
|
-
holder: _,
|
|
34
|
-
spender: a(v),
|
|
35
|
-
value: p,
|
|
36
|
-
nonce: y,
|
|
37
|
-
deadline: b,
|
|
38
|
-
expiry: b,
|
|
39
|
-
allowed: !0
|
|
40
|
-
}, { v: S, r: C, s: w } = l.Signature.from(await t.signTypedData({
|
|
41
|
-
name: await h.name(),
|
|
42
|
-
chainId: s,
|
|
43
|
-
version: "1",
|
|
44
|
-
verifyingContract: m.erc20TokenAddress
|
|
45
|
-
}, { Permit: g === i.ERC20Permit ? [
|
|
46
|
-
{
|
|
47
|
-
name: "owner",
|
|
48
|
-
type: "address"
|
|
49
|
-
},
|
|
50
|
-
{
|
|
51
|
-
name: "spender",
|
|
52
|
-
type: "address"
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
name: "value",
|
|
56
|
-
type: "uint256"
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
name: "nonce",
|
|
60
|
-
type: "uint256"
|
|
61
|
-
},
|
|
62
|
-
{
|
|
63
|
-
name: "deadline",
|
|
64
|
-
type: "uint256"
|
|
65
|
-
}
|
|
66
|
-
] : [
|
|
67
|
-
{
|
|
68
|
-
name: "holder",
|
|
69
|
-
type: "address"
|
|
70
|
-
},
|
|
71
|
-
{
|
|
72
|
-
name: "spender",
|
|
73
|
-
type: "address"
|
|
74
|
-
},
|
|
75
|
-
{
|
|
76
|
-
name: "nonce",
|
|
77
|
-
type: "uint256"
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
name: "expiry",
|
|
81
|
-
type: "uint256"
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
name: "allowed",
|
|
85
|
-
type: "bool"
|
|
86
|
-
}
|
|
87
|
-
] }, x));
|
|
88
|
-
if (g === i.ERC20Permit) {
|
|
89
|
-
let e = new l.Interface(["function permit(address owner,address spender,uint256 value,uint256 deadline,uint8 v,bytes32 r,bytes32 s) external"]);
|
|
90
|
-
return l.getBytesCopy(e.encodeFunctionData("permit", [
|
|
91
|
-
x.owner,
|
|
92
|
-
x.spender,
|
|
93
|
-
x.value,
|
|
94
|
-
x.deadline,
|
|
95
|
-
S,
|
|
96
|
-
l.getBytesCopy(C),
|
|
97
|
-
l.getBytesCopy(w)
|
|
98
|
-
])).slice(4);
|
|
99
|
-
}
|
|
100
|
-
let T = new l.Interface(["function permit(address holder,address spender,uint256 nonce,uint256 expiry,bool allowed,uint8 v,bytes32 r,bytes32 s) external"]);
|
|
101
|
-
return l.getBytesCopy(T.encodeFunctionData("permit", [
|
|
102
|
-
x.holder,
|
|
103
|
-
x.spender,
|
|
104
|
-
x.nonce,
|
|
105
|
-
x.expiry,
|
|
106
|
-
x.allowed,
|
|
107
|
-
S,
|
|
108
|
-
l.getBytesCopy(C),
|
|
109
|
-
l.getBytesCopy(w)
|
|
110
|
-
])).slice(4);
|
|
111
25
|
};
|
|
112
26
|
//#endregion
|
|
113
|
-
export {
|
|
27
|
+
export { l as approveTokenToHinkal };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`../../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../../externalABIs/index.cjs`),t=require(`../../utils/getContractAddress.cjs`);let n=require(`ethers`);var r=(t,r)=>new n.ethers.Interface(e.ERC20ABI).encodeFunctionData(`approve`,[t,r]),i=(e,t,n,r)=>r.encodeFunctionData(`transact`,[e[0],e[1],e[2],t,n]),a=(e,t,n,r,i)=>i
|
|
1
|
+
require(`../../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../../externalABIs/index.cjs`),t=require(`../../utils/getContractAddress.cjs`);let n=require(`ethers`);var r=(t,r)=>new n.ethers.Interface(e.ERC20ABI).encodeFunctionData(`approve`,[t,r]),i=(e,t,n,r)=>r.encodeFunctionData(`transact`,[e[0],e[1],e[2],t,n]),a=(e,t,n,r,i,a,o,s)=>{let c=a?[e,t,n,r,i,a,o]:[e,t,n,r,i,o];return s.encodeFunctionData(`prooflessDeposit`,c)},o=(e,t,i,a,o,s)=>{let c=[];for(let a=0;a<e.length;a+=1){let o=e[a],s=t[a];o!==n.ethers.ZeroAddress&&s>0n&&c.push({to:o,value:`0x0`,data:r(i,s)})}return c.push({to:a,value:s>0n?`0x${s.toString(16)}`:`0x0`,data:o}),c},s=(e,a,o,s,c,l,u,d)=>{let f=[];for(let t=0;t<e.length;t+=1){let i=e[t],s=a[t];i!==n.ethers.ZeroAddress&&s>0n&&f.push({to:i,value:`0x0`,data:r(o,s)})}return f.push({to:t.getContractAddress(s),value:d>0n?`0x${d.toString(16)}`:`0x0`,data:i(c,l,u,s.interface)}),f},c=(e,n,r,i,s,c,l,u,d,f,p,m)=>{let h=a(s,c,l,u,d,f,p,i.interface);return o(e,n,r,t.getContractAddress(i),h,m)};exports.buildApproveAndProoflessDepositCalls=c,exports.buildApproveAndTransactCalls=s;
|
|
@@ -2,6 +2,6 @@ import { ethers } from 'ethers';
|
|
|
2
2
|
import { CircomDataType, DimDataType, StealthAddressStructure } from '../../../types/circom-data.types';
|
|
3
3
|
import { NewZkCallDataType } from '../../../types/snark.types';
|
|
4
4
|
import { Call } from '../../../types/eip5792.types';
|
|
5
|
+
import { ProoflessFeeStructure } from '../../../types/hinkal.types';
|
|
5
6
|
export declare const buildApproveAndTransactCalls: (tokenAddresses: string[], amounts: bigint[], spenderAddress: string, contractForTransaction: ethers.Contract, zkCallData: NewZkCallDataType, dimData: DimDataType, circomData: CircomDataType, ethValue: bigint) => Call[];
|
|
6
|
-
export declare const
|
|
7
|
-
export declare const buildApproveAndProoflessDepositCalls: (tokenAddresses: string[], amounts: bigint[], spenderAddress: string, contractForTransaction: ethers.Contract, prooflessDepositTokenAddresses: string[], prooflessDepositAmountChanges: bigint[], prooflessDepositTokenIds: bigint[], stealthAddressStructures: StealthAddressStructure[], ethValue: bigint) => Call[];
|
|
7
|
+
export declare const buildApproveAndProoflessDepositCalls: (tokenAddresses: string[], amounts: bigint[], spenderAddress: string, contractForTransaction: ethers.Contract, prooflessDepositTokenAddresses: string[], prooflessDepositAmountChanges: bigint[], stealthAddressStructures: StealthAddressStructure[], encryptedOutputs: string[], createBlockedUtxos: boolean, feeStructure: ProoflessFeeStructure | undefined, orderId: string, ethValue: bigint) => Call[];
|
|
@@ -8,12 +8,25 @@ var r = (t, r) => new n.Interface(e).encodeFunctionData("approve", [t, r]), i =
|
|
|
8
8
|
e[2],
|
|
9
9
|
t,
|
|
10
10
|
n
|
|
11
|
-
]), a = (e, t, n, r, i) =>
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
]), a = (e, t, n, r, i, a, o, s) => {
|
|
12
|
+
let c = a ? [
|
|
13
|
+
e,
|
|
14
|
+
t,
|
|
15
|
+
n,
|
|
16
|
+
r,
|
|
17
|
+
i,
|
|
18
|
+
a,
|
|
19
|
+
o
|
|
20
|
+
] : [
|
|
21
|
+
e,
|
|
22
|
+
t,
|
|
23
|
+
n,
|
|
24
|
+
r,
|
|
25
|
+
i,
|
|
26
|
+
o
|
|
27
|
+
];
|
|
28
|
+
return s.encodeFunctionData("prooflessDeposit", c);
|
|
29
|
+
}, o = (e, t, i, a, o, s) => {
|
|
17
30
|
let c = [];
|
|
18
31
|
for (let a = 0; a < e.length; a += 1) {
|
|
19
32
|
let o = e[a], s = t[a];
|
|
@@ -43,17 +56,9 @@ var r = (t, r) => new n.Interface(e).encodeFunctionData("approve", [t, r]), i =
|
|
|
43
56
|
value: d > 0n ? `0x${d.toString(16)}` : "0x0",
|
|
44
57
|
data: i(c, l, u, s.interface)
|
|
45
58
|
}), f;
|
|
46
|
-
}, c = (e,
|
|
47
|
-
|
|
48
|
-
n,
|
|
49
|
-
r,
|
|
50
|
-
i,
|
|
51
|
-
a,
|
|
52
|
-
o,
|
|
53
|
-
s
|
|
54
|
-
]), l = (e, t, n, r, i, a, s, l, u, d, f, p) => o(e, t, n, n, c(r, i, a, s, l, u, d, f), p), u = (e, n, r, i, s, c, l, u, d) => {
|
|
55
|
-
let f = a(s, c, l, u, i.interface);
|
|
56
|
-
return o(e, n, r, t(i), f, d);
|
|
59
|
+
}, c = (e, n, r, i, s, c, l, u, d, f, p, m) => {
|
|
60
|
+
let h = a(s, c, l, u, d, f, p, i.interface);
|
|
61
|
+
return o(e, n, r, t(i), h, m);
|
|
57
62
|
};
|
|
58
63
|
//#endregion
|
|
59
|
-
export {
|
|
64
|
+
export { c as buildApproveAndProoflessDepositCalls, s as buildApproveAndTransactCalls };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`../../../constants/chains.constants.cjs`),t=require(`../../../constants/protocol.constants.cjs`),n=require(`../../utils/caseInsensitive.utils.cjs`),r=require(`../../../error-handling/error-codes.constants.cjs`),i=require(`../../../externalABIs/index.cjs`),a=require(`../../../error-handling/logger.cjs`),o=require(`../../utils/tron.utils.cjs`),s=require(`../../utils/tronSimulation.utils.cjs`),c=require(`./waitForErc20Approvals.cjs`);var l=async(l,u,d,f,p,m,h,g,_,v=!0)=>{let y=Array.isArray(d)?d:[d],b=Array.isArray(f)?f:[f];if(y.length!==b.length)throw Error(`token and amount length mismatch`);let x=l.getTronWeb(),S=await l.getEthereumAddressByChain(u),{hinkalAddress:C,hinkalABI:w}=e.networkRegistry[u].contractData,T=x.contract(w,o.evmHexToTronBase58Address(C)),E=g??T,D=_??T;if(!E.address)throw Error(`contractForApproval address not set`);if(!D.address)throw Error(`contractForTransaction address not set`);let O=b.findIndex(({erc20TokenAddress:e})=>n.caseInsensitiveEqual(e,t.zeroAddress)),k=O===-1?0n:y[O],A=k>0n?k:0n;if(b.some(({erc20TokenAddress:e},r)=>!n.caseInsensitiveEqual(e,t.zeroAddress)&&y[r]>0n)){let e=E.address;if(!e)throw Error(`token approval spender not set`);let r=[];for(let a=0;a<b.length;a+=1){let s=b[a],c=y[a];if(c>0n&&!n.caseInsensitiveEqual(s.erc20TokenAddress,t.zeroAddress)){let n=o.evmHexToTronBase58Address(s.erc20TokenAddress),a=await x.contract(i.ERC20ABI,n).allowance(S,e).call({from:S});if(BigInt(String(a))<c){let{transaction:i}=await x.transactionBuilder.triggerSmartContract(n,`approve(address,uint256)`,{feeLimit:t.TRON_DEFAULT_FEE_LIMIT_SUN},[{type:`address`,value:e},{type:`uint256`,value:c.toString()}],S),a=await x.trx.sign(i),o=await x.trx.sendRawTransaction(a);if(!o.result){let e=o.code??`UNKNOWN`,t=o.message?Buffer.from(o.message,`hex`).toString():`no message`;throw Error(`Tron token approval failed: ${e} - ${t}`)}r.push({tokenAddress:n,requiredAmount:c})}}}r.length>0&&await c.waitForTronErc20Approvals(x,S,e,r)}let{a:j,b:M,c:N}=o.parseZkCalldata(p),P=await o.reorderZkCallData(!0,p,h,m,!1);if(!P)throw Error(`Tron proof signature not found`);let F=[P.v,P.r,P.s],I=[h.tokenNumber,h.nullifierAmount,h.outputAmount],L=o.circomDataToArray(m);if(v){await s.simulateTronTransaction(u,D.address,`transact`,D.abi,[F,j,M,N,I,L],S,A);let e=
|
|
1
|
+
const e=require(`../../../constants/chains.constants.cjs`),t=require(`../../../constants/protocol.constants.cjs`),n=require(`../../utils/caseInsensitive.utils.cjs`),r=require(`../../../error-handling/error-codes.constants.cjs`),i=require(`../../../externalABIs/index.cjs`),a=require(`../../../error-handling/logger.cjs`),o=require(`../../utils/tron.utils.cjs`),s=require(`../../utils/tronSimulation.utils.cjs`),c=require(`./waitForErc20Approvals.cjs`);var l=async(l,u,d,f,p,m,h,g,_,v=!0)=>{let y=Array.isArray(d)?d:[d],b=Array.isArray(f)?f:[f];if(y.length!==b.length)throw Error(`token and amount length mismatch`);let x=l.getTronWeb(),S=await l.getEthereumAddressByChain(u),{hinkalAddress:C,hinkalABI:w}=e.networkRegistry[u].contractData,T=x.contract(w,o.evmHexToTronBase58Address(C)),E=g??T,D=_??T;if(!E.address)throw Error(`contractForApproval address not set`);if(!D.address)throw Error(`contractForTransaction address not set`);let O=b.findIndex(({erc20TokenAddress:e})=>n.caseInsensitiveEqual(e,t.zeroAddress)),k=O===-1?0n:y[O],A=k>0n?k:0n;if(b.some(({erc20TokenAddress:e},r)=>!n.caseInsensitiveEqual(e,t.zeroAddress)&&y[r]>0n)){let e=E.address;if(!e)throw Error(`token approval spender not set`);let r=[];for(let a=0;a<b.length;a+=1){let s=b[a],c=y[a];if(c>0n&&!n.caseInsensitiveEqual(s.erc20TokenAddress,t.zeroAddress)){let n=o.evmHexToTronBase58Address(s.erc20TokenAddress),a=await x.contract(i.ERC20ABI,n).allowance(S,e).call({from:S});if(BigInt(String(a))<c){let{transaction:i}=await x.transactionBuilder.triggerSmartContract(n,`approve(address,uint256)`,{feeLimit:t.TRON_DEFAULT_FEE_LIMIT_SUN},[{type:`address`,value:e},{type:`uint256`,value:c.toString()}],S),a=await x.trx.sign(i),o=await x.trx.sendRawTransaction(a);if(!o.result){let e=o.code??`UNKNOWN`,t=o.message?Buffer.from(o.message,`hex`).toString():`no message`;throw Error(`Tron token approval failed: ${e} - ${t}`)}r.push({tokenAddress:n,requiredAmount:c})}}}r.length>0&&await c.waitForTronErc20Approvals(x,S,e,r)}let{a:j,b:M,c:N}=o.parseZkCalldata(p),P=await o.reorderZkCallData(!0,p,h,m,!1);if(!P)throw Error(`Tron proof signature not found`);let F=[P.v,P.r,P.s],I=[h.tokenNumber,h.nullifierAmount,h.outputAmount],L=o.circomDataToArray(m);if(v){await s.simulateTronTransaction(u,D.address,`transact`,D.abi,[F,j,M,N,I,L],S,A);let e=o.evmHexToTronBase58Address(S),n=x,i=async e=>{try{return e?(await x.trx.getBalance(e)).toString():`empty-addr`}catch(e){return`ERR:${e?.message??String(e)}`}},c=async e=>{try{if(!e)return`empty-addr`;let t=await x.trx.getAccount(e);return t&&Object.keys(t).length>0?`exists(balance=${t.balance??0})`:`not-found`}catch(e){return`ERR:${e?.message??String(e)}`}},l=n?.defaultAddress?.base58||``,[d,f,p,m]=await Promise.all([i(S),i(e),i(l),c(e)]);a.Logger.error(`Tron balance read debug`,{chainId:u,rawEthereumAddress:S,rawAddrPrefix:S?.slice(0,4),balanceQueryAddress:e,tronWebDefaultBase58:l||`none`,tronWebDefaultHex:n?.defaultAddress?.hex??`none`,balanceWithRawAddr:d,balanceWithConvertedAddr:f,balanceWithTronWebDefault:p,accountLookupConverted:m,fullNodeHost:n?.fullNode?.host??`unknown`,solidityNodeHost:n?.solidityNode?.host??`unknown`});let h=BigInt(await x.trx.getBalance(S)),g=BigInt(t.TRON_DEFAULT_FEE_LIMIT_SUN);try{let e=o.createTronCallData(D.abi,`transact`,[F,j,M,N,I,L]);g=await o.estimateTronFeeSunWithPadding(x,u,D.address,S,e,A)}catch(e){a.Logger.error(`Error estimating Tron transact fee`,e)}if(h<A+g)throw Error(r.insufficientResourcesErrorCodes.INSUFFICIENT_TRON_BALANCE_FOR_FEE)}let R=await D.transact(F,j,M,N,I,L).send({feeLimit:t.TRON_DEFAULT_FEE_LIMIT_SUN,callValue:Number(A)}),z=typeof R==`string`?R:R?.txid??R?.transaction?.txID??R?.transaction?.txid;if(!z)throw Error(`Tron transact failed (missing txid)`);return z};exports.transactCallDirectTron=l;
|
|
@@ -64,7 +64,41 @@ var h = async (h, g, _, v, y, b, x, S, C, w = !0) => {
|
|
|
64
64
|
H,
|
|
65
65
|
U
|
|
66
66
|
], O, I);
|
|
67
|
-
let e =
|
|
67
|
+
let e = u(O), n = D, r = async (e) => {
|
|
68
|
+
try {
|
|
69
|
+
return e ? (await D.trx.getBalance(e)).toString() : "empty-addr";
|
|
70
|
+
} catch (e) {
|
|
71
|
+
return `ERR:${e?.message ?? String(e)}`;
|
|
72
|
+
}
|
|
73
|
+
}, a = async (e) => {
|
|
74
|
+
try {
|
|
75
|
+
if (!e) return "empty-addr";
|
|
76
|
+
let t = await D.trx.getAccount(e);
|
|
77
|
+
return t && Object.keys(t).length > 0 ? `exists(balance=${t.balance ?? 0})` : "not-found";
|
|
78
|
+
} catch (e) {
|
|
79
|
+
return `ERR:${e?.message ?? String(e)}`;
|
|
80
|
+
}
|
|
81
|
+
}, s = n?.defaultAddress?.base58 || "", [d, f, m, h] = await Promise.all([
|
|
82
|
+
r(O),
|
|
83
|
+
r(e),
|
|
84
|
+
r(s),
|
|
85
|
+
a(e)
|
|
86
|
+
]);
|
|
87
|
+
o.error("Tron balance read debug", {
|
|
88
|
+
chainId: g,
|
|
89
|
+
rawEthereumAddress: O,
|
|
90
|
+
rawAddrPrefix: O?.slice(0, 4),
|
|
91
|
+
balanceQueryAddress: e,
|
|
92
|
+
tronWebDefaultBase58: s || "none",
|
|
93
|
+
tronWebDefaultHex: n?.defaultAddress?.hex ?? "none",
|
|
94
|
+
balanceWithRawAddr: d,
|
|
95
|
+
balanceWithConvertedAddr: f,
|
|
96
|
+
balanceWithTronWebDefault: m,
|
|
97
|
+
accountLookupConverted: h,
|
|
98
|
+
fullNodeHost: n?.fullNode?.host ?? "unknown",
|
|
99
|
+
solidityNodeHost: n?.solidityNode?.host ?? "unknown"
|
|
100
|
+
});
|
|
101
|
+
let _ = BigInt(await D.trx.getBalance(O)), v = BigInt(t);
|
|
68
102
|
try {
|
|
69
103
|
let e = c(N.abi, "transact", [
|
|
70
104
|
V,
|
|
@@ -74,11 +108,11 @@ var h = async (h, g, _, v, y, b, x, S, C, w = !0) => {
|
|
|
74
108
|
H,
|
|
75
109
|
U
|
|
76
110
|
]);
|
|
77
|
-
|
|
111
|
+
v = await l(D, g, N.address, O, e, I);
|
|
78
112
|
} catch (e) {
|
|
79
113
|
o.error("Error estimating Tron transact fee", e);
|
|
80
114
|
}
|
|
81
|
-
if (
|
|
115
|
+
if (_ < I + v) throw Error(i.INSUFFICIENT_TRON_BALANCE_FOR_FEE);
|
|
82
116
|
}
|
|
83
117
|
let W = await N.transact(V, L, R, z, H, U).send({
|
|
84
118
|
feeLimit: t,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`../../../constants/protocol.constants.cjs`),t=require(`../../utils/caseInsensitive.utils.cjs`),n=require(`../../utils/time.utils.cjs`),r=require(`../../../
|
|
1
|
+
const e=require(`../../../constants/protocol.constants.cjs`),t=require(`../../utils/caseInsensitive.utils.cjs`),n=require(`../../utils/time.utils.cjs`),r=require(`../../../externalABIs/index.cjs`),i=require(`../../../types/ethereum-network.types.cjs`);var a=async(r,a,o,s,c,l=30,u=1e3)=>{let d=c.filter(({tokenAddress:n,requiredAmount:r})=>r>0n&&!t.caseInsensitiveEqual(n,e.zeroAddress));if(d.length===0)return;let f=d.map(({tokenAddress:e})=>r.getContractWithSigner(a,i.ContractType.ERC20Contract,e));for(let e=0;e<l;e+=1){let e=!0;for(let t=0;t<d.length;t+=1){let{requiredAmount:n}=d[t],r=f[t];if(BigInt(await r.allowance(o,s))<n){e=!1;break}}if(e)break;await n.waitLittle(u)}},o=async(i,a,o,s,c=30,l=1e3)=>{let u=s.filter(({tokenAddress:n,requiredAmount:r})=>r>0n&&!t.caseInsensitiveEqual(n,e.zeroAddress)&&!!n);if(u.length===0)return;let d=await Promise.all(u.map(async({tokenAddress:e})=>i.contract(r.ERC20ABI,e)));for(let e=0;e<c;e+=1){let e=!0;for(let t=0;t<u.length;t+=1){let{requiredAmount:n}=u[t],r=await d[t].allowance(a,o).call({from:a});if(BigInt(String(r))<n){e=!1;break}}if(e)break;await n.waitLittle(l)}};exports.waitForErc20Approvals=a,exports.waitForTronErc20Approvals=o;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { zeroAddress as e } from "../../../constants/protocol.constants.mjs";
|
|
2
2
|
import { caseInsensitiveEqual as t } from "../../utils/caseInsensitive.utils.mjs";
|
|
3
3
|
import { waitLittle as n } from "../../utils/time.utils.mjs";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
4
|
+
import { ERC20ABI as r } from "../../../externalABIs/index.mjs";
|
|
5
|
+
import { ContractType as i } from "../../../types/ethereum-network.types.mjs";
|
|
6
6
|
//#region libs/shared/common/src/functions/web3/functionCalls/waitForErc20Approvals.ts
|
|
7
|
-
var a = async (
|
|
7
|
+
var a = async (r, a, o, s, c, l = 30, u = 1e3) => {
|
|
8
8
|
let d = c.filter(({ tokenAddress: n, requiredAmount: r }) => r > 0n && !t(n, e));
|
|
9
9
|
if (d.length === 0) return;
|
|
10
|
-
let f = d.map(({ tokenAddress: e }) =>
|
|
10
|
+
let f = d.map(({ tokenAddress: e }) => r.getContractWithSigner(a, i.ERC20Contract, e));
|
|
11
11
|
for (let e = 0; e < l; e += 1) {
|
|
12
12
|
let e = !0;
|
|
13
13
|
for (let t = 0; t < d.length; t += 1) {
|
|
@@ -20,10 +20,10 @@ var a = async (i, a, o, s, c, l = 30, u = 1e3) => {
|
|
|
20
20
|
if (e) break;
|
|
21
21
|
await n(u);
|
|
22
22
|
}
|
|
23
|
-
}, o = async (
|
|
23
|
+
}, o = async (i, a, o, s, c = 30, l = 1e3) => {
|
|
24
24
|
let u = s.filter(({ tokenAddress: n, requiredAmount: r }) => r > 0n && !t(n, e) && !!n);
|
|
25
25
|
if (u.length === 0) return;
|
|
26
|
-
let d = await Promise.all(u.map(async ({ tokenAddress: e }) =>
|
|
26
|
+
let d = await Promise.all(u.map(async ({ tokenAddress: e }) => i.contract(r, e)));
|
|
27
27
|
for (let e = 0; e < c; e += 1) {
|
|
28
28
|
let e = !0;
|
|
29
29
|
for (let t = 0; t < u.length; t += 1) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`../../constants/
|
|
1
|
+
const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.cjs`),n=require(`../../error-handling/error-codes.constants.cjs`),r=require(`./etherFunctions.cjs`),i=require(`../../error-handling/logger.cjs`),a=require(`../../types/ethereum-network.types.cjs`);require(`../../types/index.cjs`),require(`../../error-handling/index.cjs`);const o=require(`./getContractMetadata.cjs`);require(`../../constants/index.cjs`);const s=require(`../../API/callOneInchAPI.cjs`);var c=`angstrom`,l=[e.chainIds.base],u=async e=>{if(l.includes(e))try{let t=await s.getOneInchLiquiditySources(e),n=t.filter(({id:e,title:t})=>!`${e} ${t}`.toLowerCase().includes(c));return!n.length||n.length===t.length?void 0:n.map(({id:e})=>e).join(`,`)}catch(e){i.Logger.log({error:e});return}},d=async(e,c,l,d,f=.7)=>{try{let n=await u(e),i=await s.callOneInchAPI(e,{fromTokenAddress:c.erc20TokenAddress===t.zeroAddress?t.oneInchZeroAddress:c.erc20TokenAddress,toTokenAddress:l.erc20TokenAddress===t.zeroAddress?t.oneInchZeroAddress:l.erc20TokenAddress,fromAddress:t.zeroAddress,destReceiver:o.getContractMetadata(a.ContractType.OneInchExternalActionContract,e).address,amount:r.getAmountInWei(c,d),slippage:f,disableEstimate:!0,allowPartialFill:!1,protocols:n});if(!i||!i.tx)throw Error(`OneInch API price fetch error`);return{outSwapAmountValue:BigInt(i.toAmount),oneInchDataValue:i.tx.data}}catch(e){throw i.Logger.log({error:e}),Error(n.transactionErrorCodes.NO_ONEINCH_PRICE)}};exports.getOneInchPrice=d;
|
|
@@ -1,34 +1,44 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import "../../types/index.mjs";
|
|
1
|
+
import { chainIds as e } from "../../constants/chains.constants.mjs";
|
|
2
|
+
import { oneInchZeroAddress as t, zeroAddress as n } from "../../constants/protocol.constants.mjs";
|
|
3
|
+
import { transactionErrorCodes as r } from "../../error-handling/error-codes.constants.mjs";
|
|
4
|
+
import { getAmountInWei as i } from "./etherFunctions.mjs";
|
|
6
5
|
import { Logger as a } from "../../error-handling/logger.mjs";
|
|
6
|
+
import { ContractType as o } from "../../types/ethereum-network.types.mjs";
|
|
7
|
+
import "../../types/index.mjs";
|
|
7
8
|
import "../../error-handling/index.mjs";
|
|
8
|
-
import { getContractMetadata as
|
|
9
|
+
import { getContractMetadata as s } from "./getContractMetadata.mjs";
|
|
9
10
|
import "../../constants/index.mjs";
|
|
10
|
-
import { callOneInchAPI as
|
|
11
|
+
import { callOneInchAPI as c, getOneInchLiquiditySources as l } from "../../API/callOneInchAPI.mjs";
|
|
11
12
|
//#region libs/shared/common/src/functions/web3/oneInchAPI.ts
|
|
12
|
-
var
|
|
13
|
+
var u = "angstrom", d = [e.base], f = async (e) => {
|
|
14
|
+
if (d.includes(e)) try {
|
|
15
|
+
let t = await l(e), n = t.filter(({ id: e, title: t }) => !`${e} ${t}`.toLowerCase().includes(u));
|
|
16
|
+
return !n.length || n.length === t.length ? void 0 : n.map(({ id: e }) => e).join(",");
|
|
17
|
+
} catch (e) {
|
|
18
|
+
a.log({ error: e });
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
}, p = async (e, l, u, d, p = .7) => {
|
|
13
22
|
try {
|
|
14
|
-
let
|
|
15
|
-
fromTokenAddress: l.erc20TokenAddress ===
|
|
16
|
-
toTokenAddress: u.erc20TokenAddress ===
|
|
17
|
-
fromAddress:
|
|
18
|
-
destReceiver: o
|
|
19
|
-
amount:
|
|
20
|
-
slippage:
|
|
23
|
+
let r = await f(e), a = await c(e, {
|
|
24
|
+
fromTokenAddress: l.erc20TokenAddress === n ? t : l.erc20TokenAddress,
|
|
25
|
+
toTokenAddress: u.erc20TokenAddress === n ? t : u.erc20TokenAddress,
|
|
26
|
+
fromAddress: n,
|
|
27
|
+
destReceiver: s(o.OneInchExternalActionContract, e).address,
|
|
28
|
+
amount: i(l, d),
|
|
29
|
+
slippage: p,
|
|
21
30
|
disableEstimate: !0,
|
|
22
|
-
allowPartialFill: !1
|
|
31
|
+
allowPartialFill: !1,
|
|
32
|
+
protocols: r
|
|
23
33
|
});
|
|
24
|
-
if (!
|
|
34
|
+
if (!a || !a.tx) throw Error("OneInch API price fetch error");
|
|
25
35
|
return {
|
|
26
|
-
outSwapAmountValue: BigInt(
|
|
27
|
-
oneInchDataValue:
|
|
36
|
+
outSwapAmountValue: BigInt(a.toAmount),
|
|
37
|
+
oneInchDataValue: a.tx.data
|
|
28
38
|
};
|
|
29
39
|
} catch (e) {
|
|
30
|
-
throw a.log({ error: e }), Error(
|
|
40
|
+
throw a.log({ error: e }), Error(r.NO_ONEINCH_PRICE);
|
|
31
41
|
}
|
|
32
42
|
};
|
|
33
43
|
//#endregion
|
|
34
|
-
export {
|
|
44
|
+
export { p as getOneInchPrice };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.cjs`),n=require(`../../error-handling/error-codes.constants.cjs`),r=require(`./etherFunctions.cjs`),i=require(`../../
|
|
1
|
+
require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.cjs`),n=require(`../../error-handling/error-codes.constants.cjs`),r=require(`./etherFunctions.cjs`),i=require(`../../error-handling/logError.cjs`),a=require(`../../types/ethereum-network.types.cjs`);require(`../../types/index.cjs`),require(`../../error-handling/index.cjs`),require(`../../constants/index.cjs`);let o=require(`ethers`);var s=async(e,r,i,a)=>{let o=(await Promise.all([100,500,3e3,1e4].map(async e=>({poolAddress:await r.getPool(i,a,e),fee:e})))).filter(({poolAddress:e})=>e!==t.zeroAddress),s=await Promise.all(o.map(async t=>({poolAddress:t.poolAddress,fee:t.fee,token1Balance:await e.balanceOf(t.poolAddress)}))),c=s.map(e=>e.token1Balance).reduce((e,t)=>t>=e?t:e,0n);if(c===0n)throw Error(n.transactionErrorCodes.UNISWAP_NOT_ENOUGH_LIQUIDITY);return s.find(e=>e.token1Balance===c)},c=async(t,n,r,o,s,c)=>{try{if(!e.networkRegistry[n].quoterV2Address)throw Error(`No Quoter Contract Provided`);return(await t.getContractWithFetcherByChainId(n,a.ContractType.UniswapV3QuoterContract,e.networkRegistry[n].quoterV2Address).quoteExactInputSingle.staticCall({tokenIn:r.wrappedErc20TokenAddress??r.erc20TokenAddress,tokenOut:o.wrappedErc20TokenAddress??o.erc20TokenAddress,fee:s,amountIn:c,sqrtPriceLimitX96:0})).amountOut}catch(e){throw i.logError(e),e}},l=async(t,n,r,i)=>{try{let o=t.getContractWithFetcherByChainId(n,a.ContractType.UniswapV3FactoryContract,e.networkRegistry[n].uniswapV3FactoryAddress),{fee:c}=await s(t.getContractWithFetcherByChainId(n,a.ContractType.ERC20Contract,i.wrappedErc20TokenAddress??i.erc20TokenAddress),o,r.wrappedErc20TokenAddress??r.erc20TokenAddress,i.wrappedErc20TokenAddress??i.erc20TokenAddress);return c}catch(e){throw console.log(`Error in getUniswapFee`,e),e}},u=async(e,t,i,a,s)=>{try{let n=await l(e,t,a,s),u=o.ethers.AbiCoder.defaultAbiCoder().encode([`uint24`],[n]);return{tokenPrice:await c(e,t,a,s,n,r.getAmountInWei(a,i)),poolFee:u}}catch{throw Error(n.transactionErrorCodes.NO_UNISWAP_PRICE)}};exports.getUniswapFee=l,exports.getUniswapPrice=u,exports.getUniswapPriceHelper=c,exports.searchPoolAndFee=s;
|