@gurge/sdk 0.3.13 → 0.3.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +184 -32
- package/common/src/API/API.cjs +1 -1
- package/common/src/API/API.d.ts +0 -5
- package/common/src/API/API.mjs +114 -119
- package/common/src/API/TokenCallsCachedHelper.cjs +1 -0
- package/common/src/API/TokenCallsCachedHelper.d.ts +15 -0
- package/common/src/API/TokenCallsCachedHelper.mjs +62 -0
- package/common/src/API/callLifiAPI.cjs +1 -1
- package/common/src/API/callLifiAPI.mjs +2 -7
- package/common/src/API/enclaveUtxoCalls.cjs +1 -1
- package/common/src/API/enclaveUtxoCalls.mjs +6 -7
- package/common/src/API/getServerURL.cjs +1 -1
- package/common/src/API/getServerURL.mjs +2 -2
- package/common/src/API/scheduled-transactions-calls.cjs +1 -1
- package/common/src/API/scheduled-transactions-calls.mjs +3 -3
- package/common/src/API/token-calls.cjs +1 -1
- package/common/src/API/token-calls.d.ts +1 -1
- package/common/src/API/token-calls.mjs +3 -13
- package/common/src/constants/chains.constants.cjs +1 -1
- package/common/src/constants/chains.constants.d.ts +1 -0
- package/common/src/constants/chains.constants.mjs +3 -2
- package/common/src/constants/deploy-data/mergeDeployData.cjs +1 -1
- package/common/src/constants/deploy-data/mergeDeployData.mjs +11 -10
- 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 +60 -3517
- package/common/src/constants/events.constants.cjs +1 -1
- package/common/src/constants/events.constants.mjs +3 -1
- package/common/src/constants/index.cjs +1 -1
- package/common/src/constants/index.d.ts +0 -3
- package/common/src/constants/index.mjs +0 -3
- package/common/src/constants/lifi.constants.cjs +1 -1
- package/common/src/constants/lifi.constants.mjs +3 -6
- package/common/src/constants/mediaUrls.constants.d.ts +0 -1
- package/common/src/constants/rewards.constants.d.ts +0 -2
- package/common/src/constants/server.constants.cjs +1 -1
- package/common/src/constants/server.constants.d.ts +1 -5
- package/common/src/constants/server.constants.mjs +3 -8
- package/common/src/constants/vite.constants.cjs +1 -1
- package/common/src/constants/vite.constants.d.ts +1 -0
- package/common/src/constants/vite.constants.mjs +3 -3
- package/common/src/crypto/BabyJubRN.cjs +1 -0
- package/common/src/crypto/BabyJubRN.d.ts +18 -0
- package/common/src/crypto/BabyJubRN.mjs +33 -0
- package/common/src/crypto/babyJub.cjs +1 -1
- package/common/src/crypto/babyJub.mjs +7 -5
- package/common/src/crypto/poseidon.cjs +1 -1
- package/common/src/crypto/poseidon.mjs +22 -12
- package/common/src/data-structures/Hinkal/Hinkal.cjs +1 -1
- package/common/src/data-structures/Hinkal/Hinkal.d.ts +10 -6
- package/common/src/data-structures/Hinkal/Hinkal.mjs +104 -113
- package/common/src/data-structures/Hinkal/IHinkal.d.ts +9 -5
- package/common/src/data-structures/Hinkal/handleAutoDepositBack.cjs +1 -1
- package/common/src/data-structures/Hinkal/handleAutoDepositBack.mjs +37 -37
- package/common/src/data-structures/Hinkal/hinkalDepositAndBridge.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalDepositAndBridge.d.ts +2 -2
- package/common/src/data-structures/Hinkal/hinkalDepositAndBridge.mjs +8 -5
- package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.d.ts +2 -2
- package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +4 -1
- package/common/src/data-structures/Hinkal/hinkalNearDepositAndBridge.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalNearDepositAndBridge.mjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.mjs +4 -4
- package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.utils.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.utils.mjs +3 -3
- package/common/src/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.mjs +15 -15
- package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
- package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.d.ts +2 -2
- package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +4 -1
- package/common/src/data-structures/Hinkal/index.d.ts +0 -1
- package/common/src/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.cjs +1 -1
- package/common/src/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.mjs +1 -1
- package/common/src/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
- package/common/src/data-structures/Hinkal/resetMerkleTrees.mjs +29 -31
- package/common/src/data-structures/TokenDBs/AlchemyPublicTokensDB.cjs +1 -1
- package/common/src/data-structures/TokenDBs/AlchemyPublicTokensDB.mjs +7 -6
- package/common/src/data-structures/TokenDBs/ArcPublicTokensDB.cjs +1 -1
- package/common/src/data-structures/TokenDBs/ArcPublicTokensDB.mjs +18 -18
- package/common/src/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
- package/common/src/data-structures/TokenDBs/EventsPublicTokensDB.mjs +43 -43
- package/common/src/data-structures/TokenDBs/PublicTokensDB.cjs +1 -1
- package/common/src/data-structures/TokenDBs/PublicTokensDB.mjs +23 -20
- package/common/src/data-structures/TokenDBs/TempoPublicTokensDB.cjs +1 -0
- package/common/src/data-structures/TokenDBs/TempoPublicTokensDB.d.ts +9 -0
- package/common/src/data-structures/TokenDBs/TempoPublicTokensDB.mjs +41 -0
- package/common/src/data-structures/TokenDBs/TronPublicTokensDB.cjs +1 -0
- package/common/src/data-structures/TokenDBs/TronPublicTokensDB.d.ts +9 -0
- package/common/src/data-structures/TokenDBs/TronPublicTokensDB.mjs +47 -0
- package/common/src/data-structures/TokenDBs/index.cjs +1 -1
- package/common/src/data-structures/TokenDBs/index.d.ts +2 -0
- package/common/src/data-structures/TokenDBs/index.mjs +2 -0
- package/common/src/data-structures/event-service/evm/BlockchainEventEmitter.d.ts +3 -3
- package/common/src/data-structures/event-service/evm/ClientBlockchainEventEmitter.d.ts +2 -2
- package/common/src/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.d.ts +2 -2
- package/common/src/data-structures/event-service/solana/SolanaBlockchainEventEmitter.d.ts +3 -3
- package/common/src/data-structures/index.d.ts +1 -0
- package/common/src/data-structures/private-balances/BalanceChangedHandler.cjs +1 -0
- package/common/src/data-structures/private-balances/BalanceChangedHandler.d.ts +9 -0
- package/common/src/data-structures/private-balances/BalanceChangedHandler.mjs +12 -0
- package/common/src/data-structures/private-balances/HinkalPrivateBalanceController.cjs +1 -0
- package/common/src/data-structures/{Hinkal → private-balances}/HinkalPrivateBalanceController.d.ts +4 -2
- package/common/src/data-structures/{Hinkal → private-balances}/HinkalPrivateBalanceController.mjs +34 -90
- package/common/src/data-structures/private-balances/index.cjs +1 -0
- package/common/src/data-structures/private-balances/index.d.ts +3 -0
- package/common/src/data-structures/private-balances/index.mjs +3 -0
- package/common/src/data-structures/private-balances/privateBalancesReducer.cjs +1 -0
- package/common/src/data-structures/private-balances/privateBalancesReducer.d.ts +2 -0
- package/common/src/data-structures/private-balances/privateBalancesReducer.mjs +73 -0
- package/common/src/data-structures/token-price-fetcher/TokenChecker.cjs +1 -1
- package/common/src/data-structures/token-price-fetcher/TokenChecker.mjs +5 -5
- package/common/src/error-handling/error-codes.constants.cjs +1 -1
- package/common/src/error-handling/error-codes.constants.d.ts +2 -5
- package/common/src/error-handling/error-codes.constants.mjs +3 -6
- package/common/src/externalABIs/index.cjs +1 -1
- package/common/src/externalABIs/index.d.ts +1 -36
- package/common/src/externalABIs/index.mjs +3 -5
- package/common/src/functions/index.cjs +1 -1
- package/common/src/functions/index.d.ts +0 -1
- package/common/src/functions/index.mjs +4 -5
- package/common/src/functions/pre-transaction/buildCommitmentValidationData.cjs +1 -1
- package/common/src/functions/pre-transaction/buildCommitmentValidationData.mjs +37 -36
- package/common/src/functions/pre-transaction/merge-with-fee-structure-emporium.cjs +1 -1
- package/common/src/functions/pre-transaction/merge-with-fee-structure-emporium.mjs +4 -4
- package/common/src/functions/pre-transaction/sendV0Transaction.cjs +2 -2
- package/common/src/functions/pre-transaction/sendV0Transaction.mjs +54 -42
- package/common/src/functions/private-wallet/emporium.helpers.cjs +1 -1
- package/common/src/functions/private-wallet/emporium.helpers.mjs +17 -17
- package/common/src/functions/private-wallet/emporium.swap.helpers.cjs +1 -1
- package/common/src/functions/private-wallet/emporium.swap.helpers.mjs +16 -16
- package/common/src/functions/snarkjs/common.snarkjs.cjs +1 -1
- package/common/src/functions/snarkjs/common.snarkjs.d.ts +9 -1
- package/common/src/functions/snarkjs/common.snarkjs.mjs +13 -9
- package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.cjs +1 -1
- package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.d.ts +2 -3
- package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.mjs +49 -32
- package/common/src/functions/utils/abi.utils.cjs +1 -0
- package/common/src/functions/utils/abi.utils.d.ts +3 -0
- package/common/src/functions/utils/abi.utils.mjs +5 -0
- package/common/src/functions/utils/bigint-math.utils.cjs +1 -0
- package/common/src/functions/utils/bigint-math.utils.d.ts +2 -0
- package/common/src/functions/utils/bigint-math.utils.mjs +12 -0
- package/common/src/functions/utils/dispatchBalanceRefreshes.cjs +1 -1
- package/common/src/functions/utils/dispatchBalanceRefreshes.mjs +1 -1
- package/common/src/functions/utils/enclaveHandshakeService.cjs +1 -0
- package/common/src/functions/utils/enclaveHandshakeService.d.ts +10 -0
- package/common/src/functions/utils/enclaveHandshakeService.mjs +22 -0
- package/common/src/functions/utils/encryptInputForEnclave.cjs +1 -1
- package/common/src/functions/utils/encryptInputForEnclave.mjs +23 -25
- package/common/src/functions/utils/erc20tokenFunctions.cjs +1 -1
- package/common/src/functions/utils/erc20tokenFunctions.d.ts +4 -1
- package/common/src/functions/utils/erc20tokenFunctions.mjs +28 -12
- package/common/src/functions/utils/evmNetworkFunctions.cjs +1 -1
- package/common/src/functions/utils/evmNetworkFunctions.d.ts +1 -0
- package/common/src/functions/utils/evmNetworkFunctions.mjs +4 -0
- package/common/src/functions/utils/getUtxosFromReceipt.utils.cjs +1 -1
- package/common/src/functions/utils/getUtxosFromReceipt.utils.mjs +10 -10
- package/common/src/functions/utils/index.cjs +1 -1
- package/common/src/functions/utils/index.d.ts +4 -0
- package/common/src/functions/utils/index.mjs +4 -0
- package/common/src/functions/utils/map.utils.cjs +1 -0
- package/common/src/functions/utils/map.utils.d.ts +1 -0
- package/common/src/functions/utils/map.utils.mjs +9 -0
- package/common/src/functions/utils/mutexes.utils.cjs +1 -1
- package/common/src/functions/utils/mutexes.utils.d.ts +2 -2
- package/common/src/functions/utils/mutexes.utils.mjs +4 -3
- package/common/src/functions/utils/process.utils.cjs +1 -1
- package/common/src/functions/utils/process.utils.d.ts +1 -0
- package/common/src/functions/utils/process.utils.mjs +7 -2
- package/common/src/functions/utils/tron.utils.cjs +1 -1
- package/common/src/functions/utils/tron.utils.d.ts +1 -0
- package/common/src/functions/utils/tron.utils.mjs +1 -1
- package/common/src/functions/web3/events/getInputUtxoAndBalance.cjs +1 -1
- package/common/src/functions/web3/events/getInputUtxoAndBalance.mjs +26 -26
- package/common/src/functions/web3/events/getShieldedBalance.cjs +1 -1
- package/common/src/functions/web3/events/getShieldedBalance.mjs +29 -11
- package/common/src/functions/web3/events/index.cjs +1 -1
- package/common/src/functions/web3/events/index.d.ts +0 -1
- package/common/src/functions/web3/events/index.mjs +0 -1
- package/common/src/functions/web3/functionCalls/transactCallDirect.cjs +1 -1
- package/common/src/functions/web3/functionCalls/transactCallDirect.mjs +4 -4
- package/common/src/functions/web3/functionCalls/waitForErc20Approvals.cjs +1 -1
- package/common/src/functions/web3/functionCalls/waitForErc20Approvals.mjs +10 -10
- package/common/src/functions/web3/index.cjs +1 -1
- package/common/src/functions/web3/index.mjs +0 -1
- package/common/src/functions/web3/lifiAPI.cjs +1 -1
- package/common/src/functions/web3/lifiAPI.mjs +7 -38
- package/common/src/functions/web3/oneInchAPI.cjs +1 -1
- package/common/src/functions/web3/oneInchAPI.mjs +10 -10
- package/common/src/functions/web3/uniswapAPI.cjs +1 -1
- package/common/src/functions/web3/uniswapAPI.mjs +16 -16
- package/common/src/mutexes/chainBalanceRwLock.cjs +1 -0
- package/common/src/mutexes/chainBalanceRwLock.d.ts +18 -0
- package/common/src/mutexes/chainBalanceRwLock.mjs +31 -0
- package/common/src/mutexes/index.d.ts +1 -0
- package/common/src/types/cache.types.cjs +1 -1
- package/common/src/types/cache.types.d.ts +2 -0
- package/common/src/types/cache.types.mjs +1 -1
- package/common/src/types/commitments.types.d.ts +0 -10
- package/common/src/types/hinkal.types.cjs +1 -1
- package/common/src/types/hinkal.types.d.ts +4 -7
- package/common/src/types/hinkal.types.mjs +1 -1
- package/common/src/types/index.cjs +1 -1
- package/common/src/types/index.d.ts +0 -1
- package/common/src/types/index.mjs +1 -2
- package/common/src/types/new-rewards.type.cjs +1 -1
- package/common/src/types/new-rewards.type.d.ts +0 -1
- package/common/src/types/new-rewards.type.mjs +1 -1
- package/common/src/types/scheduled-transactions.types.d.ts +5 -0
- package/common/src/webworker/logError-BTCYh_YM.js +2 -0
- package/common/src/webworker/package.json +34 -4
- 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 +4 -4
- package/common/src/webworker/viteWorkerURL.constant.mjs +4 -4
- package/common/src/webworker/workerFactory.cjs +1 -1
- package/common/src/webworker/workerFactory.d.ts +1 -0
- package/common/src/webworker/workerFactory.mjs +3 -2
- package/common/src/webworker/workerProxy-DPeuP2Mg.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/functions/index.cjs +1 -1
- package/functions/index.mjs +0 -4
- package/functions/integrations/index.cjs +1 -1
- package/functions/integrations/index.mjs +0 -4
- package/functions/integrations/swapApi.cjs +1 -1
- package/functions/integrations/swapApi.d.ts +21 -7
- package/functions/integrations/swapApi.mjs +29 -10
- package/functions/utils/refreshBalance.cjs +1 -1
- package/functions/utils/refreshBalance.mjs +2 -2
- package/index.cjs +1 -1
- package/index.mjs +4 -8
- package/internal/token.utils.cjs +1 -1
- package/internal/token.utils.d.ts +1 -3
- package/internal/token.utils.mjs +10 -21
- package/package.json +34 -4
- package/react-native/HinkalWebViewWorker.cjs +98 -0
- package/react-native/HinkalWebViewWorker.d.ts +2 -0
- package/react-native/HinkalWebViewWorker.mjs +174 -0
- package/react-native/bridge/HinkalRNWorker.cjs +1 -0
- package/react-native/bridge/HinkalRNWorker.d.ts +13 -0
- package/react-native/bridge/HinkalRNWorker.mjs +26 -0
- package/react-native/bridge/serialization.utils.cjs +1 -0
- package/react-native/bridge/serialization.utils.d.ts +3 -0
- package/react-native/bridge/serialization.utils.mjs +13 -0
- package/react-native/metro-config.js +90 -0
- package/react-native/shims/circomlibjs-hinkal-fork.js +14 -0
- package/react-native/shims/circomlibjs.js +15 -0
- package/react-native/shims/constants.js +7 -0
- package/react-native/shims/crypto.js +103 -0
- package/react-native/shims/ffjavascript.js +5 -0
- package/react-native/shims/fs.js +5 -0
- package/react-native/shims/globals.js +10 -0
- package/react-native/shims/idb-keyval.js +75 -0
- package/react-native/shims/multiformats.js +1 -0
- package/react-native/shims/os.js +7 -0
- package/react-native/shims/path.js +11 -0
- package/react-native/shims/readline.js +6 -0
- package/react-native/shims/snarkjs.js +21 -0
- package/react-native/shims/url.js +5 -0
- package/react-native/shims/web-worker.js +7 -0
- package/react-native/shims/worker_threads.js +6 -0
- package/react-native/shims.d.ts +16 -0
- package/react-native/workerCDNUrls.cjs +1 -0
- package/react-native/workerCDNUrls.d.ts +2 -0
- package/react-native/workerCDNUrls.mjs +14 -0
- package/sdk/package.json.cjs +1 -0
- package/sdk/package.json.mjs +130 -0
- package/services/Hinkal.cjs +1 -1
- package/services/Hinkal.d.ts +6 -5
- package/services/Hinkal.mjs +50 -48
- package/types/IHinkal.d.ts +6 -5
- package/common/src/API/kycCalls.cjs +0 -1
- package/common/src/API/kycCalls.d.ts +0 -14
- package/common/src/API/kycCalls.mjs +0 -26
- package/common/src/constants/assets.constants.cjs +0 -1
- package/common/src/constants/assets.constants.d.ts +0 -13
- package/common/src/constants/assets.constants.mjs +0 -4
- package/common/src/constants/kyc.constants.cjs +0 -1
- package/common/src/constants/kyc.constants.d.ts +0 -29
- package/common/src/constants/kyc.constants.mjs +0 -126
- package/common/src/constants/token.limits.constants.cjs +0 -1
- package/common/src/constants/token.limits.constants.d.ts +0 -5
- package/common/src/constants/token.limits.constants.mjs +0 -3
- package/common/src/data-structures/Hinkal/HinkalPrivateBalanceController.cjs +0 -1
- package/common/src/data-structures/Hinkal/hinkalGetZkMeProvider.cjs +0 -1
- package/common/src/data-structures/Hinkal/hinkalGetZkMeProvider.d.ts +0 -28
- package/common/src/data-structures/Hinkal/hinkalGetZkMeProvider.mjs +0 -22
- package/common/src/externalABIs/BabPassport.json.cjs +0 -1
- package/common/src/externalABIs/BabPassport.json.mjs +0 -20
- package/common/src/externalABIs/GalxePassport.json.cjs +0 -1
- package/common/src/externalABIs/GalxePassport.json.mjs +0 -37
- package/common/src/functions/kyc/aiPriseHelper.d.ts +0 -0
- package/common/src/functions/kyc/checkTokenLimitsUSD.cjs +0 -1
- package/common/src/functions/kyc/checkTokenLimitsUSD.d.ts +0 -1
- package/common/src/functions/kyc/checkTokenLimitsUSD.mjs +0 -29
- package/common/src/functions/kyc/index.cjs +0 -1
- package/common/src/functions/kyc/index.d.ts +0 -3
- package/common/src/functions/kyc/index.mjs +0 -3
- package/common/src/functions/kyc/openDefaultPassportWindow.cjs +0 -1
- package/common/src/functions/kyc/openDefaultPassportWindow.d.ts +0 -1
- package/common/src/functions/kyc/openDefaultPassportWindow.mjs +0 -7
- package/common/src/functions/kyc/passportHelper.cjs +0 -1
- package/common/src/functions/kyc/passportHelper.d.ts +0 -3
- package/common/src/functions/kyc/passportHelper.mjs +0 -1
- package/common/src/functions/kyc/zkMeHelper.cjs +0 -1
- package/common/src/functions/kyc/zkMeHelper.d.ts +0 -4
- package/common/src/functions/kyc/zkMeHelper.mjs +0 -42
- package/common/src/functions/web3/events/balanceChangedHandler.cjs +0 -1
- package/common/src/functions/web3/events/balanceChangedHandler.d.ts +0 -5
- package/common/src/functions/web3/events/balanceChangedHandler.mjs +0 -21
- package/common/src/types/kyc.types.cjs +0 -1
- package/common/src/types/kyc.types.d.ts +0 -41
- package/common/src/types/kyc.types.mjs +0 -10
- package/common/src/webworker/logError-CmD5XYI9.js +0 -2
- package/common/src/webworker/workerProxy-C49-EPZz.js +0 -1
|
@@ -46,7 +46,6 @@ export declare const transactionErrorCodes: {
|
|
|
46
46
|
RECIPIENT_FORMAT_INCORRECT: string;
|
|
47
47
|
INVALID_TOKEN: string;
|
|
48
48
|
STATE_TO_UPDATE: string;
|
|
49
|
-
HAS_TOKEN: string;
|
|
50
49
|
INVALID_RECEIVER: string;
|
|
51
50
|
INVALID_RELAYER: string;
|
|
52
51
|
INVALID_RELAYER_FEE: string;
|
|
@@ -57,7 +56,6 @@ export declare const transactionErrorCodes: {
|
|
|
57
56
|
UNSUPPORTED_NETWORK: string;
|
|
58
57
|
SIG_BY_OWNER: string;
|
|
59
58
|
AMOUNT_EMPTY: string;
|
|
60
|
-
UNVERIFIED_USER: string;
|
|
61
59
|
RELAYER_ISSUE: string;
|
|
62
60
|
RELAYER_GAS_ESTIMATE: string;
|
|
63
61
|
RECEIVER_EMPTY: string;
|
|
@@ -90,7 +88,6 @@ export declare const transactionErrorCodes: {
|
|
|
90
88
|
Invalid_Password: string;
|
|
91
89
|
INTERNAL_ERROR: string;
|
|
92
90
|
INVALID_MERKLE_ROOT: string;
|
|
93
|
-
ACCESS_TOKEN_INVALID_HASH: string;
|
|
94
91
|
MERLE_TREE_SNARK: string;
|
|
95
92
|
ERROR_MESSAGE_CHAIN_ADDRESS_CHANGED: string;
|
|
96
93
|
DECIMALS_LIMIT: string;
|
|
@@ -106,6 +103,7 @@ export declare const transactionErrorCodes: {
|
|
|
106
103
|
GAS_ESTIMATE_INCORRECT_PARAMETERS: string;
|
|
107
104
|
CONNECTIVITY_ERROR: string;
|
|
108
105
|
TRANSACTION_FAILED: string;
|
|
106
|
+
NO_SWAP_QUOTES: string;
|
|
109
107
|
NO_UNISWAP_PRICE: string;
|
|
110
108
|
NO_ODOS_PRICE: string;
|
|
111
109
|
NO_ONEINCH_PRICE: string;
|
|
@@ -145,7 +143,6 @@ export declare const transactionErrorCodes: {
|
|
|
145
143
|
COMPUTATIONAL_BUDGET_EXCEEDED: string;
|
|
146
144
|
RELAY_FEE_OVER_WITHDRAW_AMOUNT: string;
|
|
147
145
|
TRON_CONFIRMATION_DECLINED: string;
|
|
148
|
-
KYC_PRICE_FETCH_FAILED: string;
|
|
149
146
|
BLACKLISTED_INPUT_COMMITMENT_ADDRESS: string;
|
|
150
147
|
ACCOUNT_RESOURCE_INSUFFICIENT_ERROR: string;
|
|
151
148
|
GAS_PRICE_EXCEEDS_AUTOSHIELD_LIMIT: string;
|
|
@@ -242,8 +239,8 @@ export declare const UserFriendlyErrorCodes: {
|
|
|
242
239
|
TRON_CONFIRMATION_DECLINED: string;
|
|
243
240
|
INVALID_RELAYER_FEE: string;
|
|
244
241
|
REQUEST_PENDING: string;
|
|
245
|
-
KYC_PRICE_FETCH_FAILED: string;
|
|
246
242
|
BLACKLISTED_INPUT_COMMITMENT_ADDRESS: string;
|
|
243
|
+
NO_SWAP_QUOTES: string;
|
|
247
244
|
};
|
|
248
245
|
export declare const DIRECTLY_SHOW_MESSAGE_ERROR_CODES: {
|
|
249
246
|
UTXO_LIMITATIONS: string;
|
|
@@ -53,7 +53,6 @@ var e = {
|
|
|
53
53
|
RECIPIENT_FORMAT_INCORRECT: "Recipient Information format is incorrect",
|
|
54
54
|
INVALID_TOKEN: "Invalid token provided",
|
|
55
55
|
STATE_TO_UPDATE: "Error in template Verifier_219 line: 121",
|
|
56
|
-
HAS_TOKEN: "User already has an access token",
|
|
57
56
|
INVALID_RECEIVER: "Receiver address doesn't match",
|
|
58
57
|
INVALID_RELAYER: "Relayer address doesn't match",
|
|
59
58
|
INVALID_RELAYER_FEE: "Relayer fee amount is not valid",
|
|
@@ -64,7 +63,6 @@ var e = {
|
|
|
64
63
|
UNSUPPORTED_NETWORK: "The selected network is not supported. Please switch to another network to continue.",
|
|
65
64
|
SIG_BY_OWNER: "Signature must be signed by the owner of the contract",
|
|
66
65
|
AMOUNT_EMPTY: "Please, specify amount",
|
|
67
|
-
UNVERIFIED_USER: "Please, pass KYC verification",
|
|
68
66
|
RELAYER_ISSUE: "Relayer has some issues. Try again later",
|
|
69
67
|
RELAYER_GAS_ESTIMATE: "Relayer was not able to estimate the gas costs of tx. Please, try later",
|
|
70
68
|
RECEIVER_EMPTY: "Please, enter recipient address",
|
|
@@ -97,7 +95,6 @@ var e = {
|
|
|
97
95
|
Invalid_Password: "Invalid password",
|
|
98
96
|
INTERNAL_ERROR: "Internal error: please, try again",
|
|
99
97
|
INVALID_MERKLE_ROOT: "Invalid merkle tree root",
|
|
100
|
-
ACCESS_TOKEN_INVALID_HASH: "Access Token not minted",
|
|
101
98
|
MERLE_TREE_SNARK: "Error in template ForceEqualIfEnabled",
|
|
102
99
|
ERROR_MESSAGE_CHAIN_ADDRESS_CHANGED: "Chain/address changed: balance updated canceled",
|
|
103
100
|
DECIMALS_LIMIT: "Number of decimals exceed maximum",
|
|
@@ -113,6 +110,7 @@ var e = {
|
|
|
113
110
|
GAS_ESTIMATE_INCORRECT_PARAMETERS: "Incorrect Parameters for Gas Estimate",
|
|
114
111
|
CONNECTIVITY_ERROR: "Request failed with status code 500",
|
|
115
112
|
TRANSACTION_FAILED: "Transaction Failed: Revert",
|
|
113
|
+
NO_SWAP_QUOTES: "No swap quotes available",
|
|
116
114
|
NO_UNISWAP_PRICE: "Cannot get Uniswap Price",
|
|
117
115
|
NO_ODOS_PRICE: "Cannot get Odos Price",
|
|
118
116
|
NO_ONEINCH_PRICE: "Cannot get OneInch Price",
|
|
@@ -152,7 +150,6 @@ var e = {
|
|
|
152
150
|
COMPUTATIONAL_BUDGET_EXCEEDED: "ComputationalBudgetExceeded",
|
|
153
151
|
RELAY_FEE_OVER_WITHDRAW_AMOUNT: "Relay Fee is over withdraw amount",
|
|
154
152
|
TRON_CONFIRMATION_DECLINED: "Confirmation declined by user",
|
|
155
|
-
KYC_PRICE_FETCH_FAILED: "We’re having trouble verifying your wallet address. Please try again.",
|
|
156
153
|
BLACKLISTED_INPUT_COMMITMENT_ADDRESS: "One of the source addresses is restricted from private transactions",
|
|
157
154
|
ACCOUNT_RESOURCE_INSUFFICIENT_ERROR: "Account resource insufficient error"
|
|
158
155
|
}, a = "Not enough memory. Please, close some tabs/applications to free up memory and try again", o = "Your transaction didn’t go through due to price slippage. Try increasing your slippage tolerance", s = {
|
|
@@ -233,8 +230,8 @@ var e = {
|
|
|
233
230
|
TRON_CONFIRMATION_DECLINED: "You canceled the request",
|
|
234
231
|
INVALID_RELAYER_FEE: "The transaction fee changed while submitting. Please try again.",
|
|
235
232
|
REQUEST_PENDING: "A request is already pending in your wallet. Please confirm to connect.",
|
|
236
|
-
|
|
237
|
-
|
|
233
|
+
BLACKLISTED_INPUT_COMMITMENT_ADDRESS: "The funds you’re trying to use have been flagged as sanctioned.",
|
|
234
|
+
NO_SWAP_QUOTES: "No swap route available for this token pair on the selected network at the moment. Please try again later or adjust the swap parameters."
|
|
238
235
|
}, c = {
|
|
239
236
|
UTXO_LIMITATIONS: "Your transaction exceeds the UTXO limit",
|
|
240
237
|
INSUFFICIENT_BALANCE_FOR_FEES: "Fees are high right now and would consume a large portion of your balance. Consider reducing the amount or retrying later.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`./ERC20.json.cjs`),t=require(`./ERC721.json.cjs`),n=require(`./ERC1155.json.cjs`),r=require(`./IQuoterV2.json.cjs`),i=require(`./IUniswapV3Factory.json.cjs`),a=require(`./ISwapRouter.json.cjs`)
|
|
1
|
+
const e=require(`./ERC20.json.cjs`),t=require(`./ERC721.json.cjs`),n=require(`./ERC1155.json.cjs`),r=require(`./IQuoterV2.json.cjs`),i=require(`./IUniswapV3Factory.json.cjs`),a=require(`./ISwapRouter.json.cjs`);var o=e.default.abi,s=t.default.abi,c=n.default.abi;r.default.abi,i.default.abi,a.default.abi,exports.ERC1155ABI=c,exports.ERC20ABI=o,exports.ERC721ABI=s;
|
|
@@ -216,39 +216,4 @@ declare const ISwapRouterABI: ({
|
|
|
216
216
|
name?: undefined;
|
|
217
217
|
outputs?: undefined;
|
|
218
218
|
})[];
|
|
219
|
-
|
|
220
|
-
inputs: {
|
|
221
|
-
internalType: string;
|
|
222
|
-
name: string;
|
|
223
|
-
type: string;
|
|
224
|
-
}[];
|
|
225
|
-
name: string;
|
|
226
|
-
outputs: {
|
|
227
|
-
internalType: string;
|
|
228
|
-
name: string;
|
|
229
|
-
type: string;
|
|
230
|
-
}[];
|
|
231
|
-
stateMutability: string;
|
|
232
|
-
type: string;
|
|
233
|
-
}[];
|
|
234
|
-
declare const GalxeABI: {
|
|
235
|
-
inputs: {
|
|
236
|
-
internalType: string;
|
|
237
|
-
name: string;
|
|
238
|
-
type: string;
|
|
239
|
-
}[];
|
|
240
|
-
name: string;
|
|
241
|
-
outputs: {
|
|
242
|
-
components: {
|
|
243
|
-
internalType: string;
|
|
244
|
-
name: string;
|
|
245
|
-
type: string;
|
|
246
|
-
}[];
|
|
247
|
-
internalType: string;
|
|
248
|
-
name: string;
|
|
249
|
-
type: string;
|
|
250
|
-
}[];
|
|
251
|
-
stateMutability: string;
|
|
252
|
-
type: string;
|
|
253
|
-
}[];
|
|
254
|
-
export { quoterV2ABI, factoryABI, AmTokenABI, ERC20ABI, ERC721ABI, USDCABI, daiABI, USDRABI, USDR3CRVABI, USDTABI, WETHABI, BUSDABI, sanctionsListABI, BabABI, GalxeABI, optimismGasPriceOracleAbi, NodeInterfaceABI, ISwapRouterABI, ERC1155ABI, };
|
|
219
|
+
export { quoterV2ABI, factoryABI, AmTokenABI, ERC20ABI, ERC721ABI, USDCABI, daiABI, USDRABI, USDR3CRVABI, USDTABI, WETHABI, BUSDABI, sanctionsListABI, optimismGasPriceOracleAbi, NodeInterfaceABI, ISwapRouterABI, ERC1155ABI, };
|
|
@@ -4,10 +4,8 @@ import n from "./ERC1155.json.mjs";
|
|
|
4
4
|
import r from "./IQuoterV2.json.mjs";
|
|
5
5
|
import i from "./IUniswapV3Factory.json.mjs";
|
|
6
6
|
import a from "./ISwapRouter.json.mjs";
|
|
7
|
-
import o from "./BabPassport.json.mjs";
|
|
8
|
-
import s from "./GalxePassport.json.mjs";
|
|
9
7
|
//#region libs/shared/common/src/externalABIs/index.ts
|
|
10
|
-
var
|
|
11
|
-
r.abi, i.abi, a.abi
|
|
8
|
+
var o = e.abi, s = t.abi, c = n.abi;
|
|
9
|
+
r.abi, i.abi, a.abi;
|
|
12
10
|
//#endregion
|
|
13
|
-
export {
|
|
11
|
+
export { c as ERC1155ABI, o as ERC20ABI, s as ERC721ABI };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`./utils/serialize.utils.cjs`),require(`./utils/caseInsensitive.utils.cjs`),require(`./utils/amounts.utils.cjs`),require(`./web3/etherFunctions.cjs`),require(`./utils/time.utils.cjs`),require(`./utils/upToDateState.cjs`),require(`./utils/cacheFunctions.cjs`),require(`./utils/encryptInputForEnclave.cjs`),require(`./utils/solanaMint.utils.cjs`),require(`./utils/customEnclaveFunctionsRegister.cjs`),require(`./utils/addresses.cjs`),require(`./utils/tron.utils.cjs`),require(`./web3/events/getInputUtxoAndBalance.cjs`),require(`./utils/get-signature-header.cjs`),require(`./utils/auth.utils.cjs`),require(`./utils/string.utils.cjs`),require(`./utils/token-check.utils.cjs`),require(`./utils/mutexes.utils.cjs`),require(`./utils/erc20tokenFunctions.cjs`),require(`./web3/events/getShieldedBalance.cjs`),require(`./pre-transaction/outputUtxoProcessing.cjs`),require(`./utils/external-action.utils.cjs`),require(`./utils/bit.operations.cjs`),require(`./snarkjs/common.snarkjs.cjs`),require(`./pre-transaction/solana.cjs`),require(`./snarkjs/signedMessageHash.cjs`),require(`./pre-transaction/process-gas-estimates.cjs`),require(`./pre-transaction/getVolatileTransferAmount.cjs`),require(`./pre-transaction/constructAdminData.cjs`),require(`./utils/create-provider.cjs`),require(`./pre-transaction/convert-okx-instructions.cjs`),require(`./web3/getSolanaPriorityFee.cjs`),require(`./utils/process.utils.cjs`),require(`./pre-transaction/sendV0Transaction.cjs`),require(`./utils/bytes32.utils.cjs`),require(`./pre-transaction/recipientUtxoProcessing.cjs`),require(`./pre-transaction/ensureAmountChanges.cjs`),require(`./pre-transaction/getFeeStructure.cjs`),require(`./pre-transaction/waitForDepositedUtxosInMerkleTree.cjs`),require(`./pre-transaction/buildCommitmentValidationData.cjs`),require(`./pre-transaction/index.cjs`),require(`./snarkjs/generateZkProof.cjs`),require(`./snarkjs/generateMainAndCommitmentZkProof.cjs`),require(`./utils/serialize-utxos.utils.cjs`),require(`./utils/resolve-sync.utils.cjs`),require(`./
|
|
1
|
+
require(`./utils/abi.utils.cjs`),require(`./utils/serialize.utils.cjs`),require(`./utils/caseInsensitive.utils.cjs`),require(`./utils/amounts.utils.cjs`),require(`./web3/etherFunctions.cjs`),require(`./utils/bigint-math.utils.cjs`),require(`./utils/time.utils.cjs`),require(`./utils/upToDateState.cjs`),require(`./utils/cacheFunctions.cjs`),require(`./utils/enclaveHandshakeService.cjs`),require(`./utils/encryptInputForEnclave.cjs`),require(`./utils/solanaMint.utils.cjs`),require(`./utils/customEnclaveFunctionsRegister.cjs`),require(`./utils/addresses.cjs`),require(`./utils/tron.utils.cjs`),require(`./web3/events/getInputUtxoAndBalance.cjs`),require(`./utils/get-signature-header.cjs`),require(`./utils/auth.utils.cjs`),require(`./utils/string.utils.cjs`),require(`./utils/token-check.utils.cjs`),require(`./utils/map.utils.cjs`),require(`./utils/mutexes.utils.cjs`),require(`./utils/erc20tokenFunctions.cjs`),require(`./web3/events/getShieldedBalance.cjs`),require(`./pre-transaction/outputUtxoProcessing.cjs`),require(`./utils/external-action.utils.cjs`),require(`./utils/bit.operations.cjs`),require(`./snarkjs/common.snarkjs.cjs`),require(`./pre-transaction/solana.cjs`),require(`./snarkjs/signedMessageHash.cjs`),require(`./pre-transaction/process-gas-estimates.cjs`),require(`./pre-transaction/getVolatileTransferAmount.cjs`),require(`./pre-transaction/constructAdminData.cjs`),require(`./utils/create-provider.cjs`),require(`./pre-transaction/convert-okx-instructions.cjs`),require(`./web3/getSolanaPriorityFee.cjs`),require(`./utils/process.utils.cjs`),require(`./pre-transaction/sendV0Transaction.cjs`),require(`./utils/bytes32.utils.cjs`),require(`./pre-transaction/recipientUtxoProcessing.cjs`),require(`./pre-transaction/ensureAmountChanges.cjs`),require(`./pre-transaction/getFeeStructure.cjs`),require(`./pre-transaction/waitForDepositedUtxosInMerkleTree.cjs`),require(`./pre-transaction/buildCommitmentValidationData.cjs`),require(`./pre-transaction/index.cjs`),require(`./snarkjs/generateZkProof.cjs`),require(`./snarkjs/generateMainAndCommitmentZkProof.cjs`),require(`./utils/serialize-utxos.utils.cjs`),require(`./utils/resolve-sync.utils.cjs`),require(`./utils/reloadPage.cjs`),require(`./utils/cacheDevice.utils.cjs`),require(`./utils/involves-permit2-op.cjs`),require(`./utils/convertEmporiumOpToCallInfo.cjs`),require(`./utils/getRecipientInfoFromUserKeys.cjs`),require(`./utils/publicBalance.utils.cjs`),require(`./utils/postToOffscreen.cjs`),require(`./utils/getContractAddress.cjs`),require(`./utils/getUtxosFromReceipt.utils.cjs`),require(`./utils/getUtxosFromReceiptSolana.cjs`),require(`./utils/fees.utils.cjs`),require(`./utils/enclave-signature-storage.cjs`),require(`./utils/tx-confirmation.utils.cjs`),require(`./utils/tronSimulation.utils.cjs`),require(`./utils/getSignerFromContract.cjs`),require(`./utils/mnemonics.cjs`),require(`./utils/nearIntents.utils.cjs`),require(`./utils/index.cjs`),require(`./snarkjs/fetchOnChainRootHashes.cjs`),require(`./private-wallet/emporium.helpers.cjs`),require(`./snarkjs/constructGeneralZkProof.cjs`),require(`./web3/uniswapAPI.cjs`),require(`./web3/odosAPI.cjs`),require(`./web3/oneInchAPI.cjs`),require(`./web3/okxAPI.cjs`),require(`./web3/index.cjs`),require(`./snarkjs/constructSolanaZkProof.cjs`),require(`./snarkjs/index.cjs`),require(`./private-wallet/emporium.swap.helpers.cjs`),require(`./private-wallet/index.cjs`),require(`./auto-deposit-back-helpers/get-tokens-to-deposit-back.cjs`),require(`./auto-deposit-back-helpers/get-gas-token-records.cjs`),require(`./auto-deposit-back-helpers/select-gas-token.cjs`),require(`./auto-deposit-back-helpers/update-hinkal.cjs`),require(`./auto-deposit-back-helpers/index.cjs`);
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
+
import "./utils/abi.utils.mjs";
|
|
1
2
|
import "./utils/serialize.utils.mjs";
|
|
2
3
|
import "./utils/caseInsensitive.utils.mjs";
|
|
3
4
|
import "./utils/amounts.utils.mjs";
|
|
4
5
|
import "./web3/etherFunctions.mjs";
|
|
6
|
+
import "./utils/bigint-math.utils.mjs";
|
|
5
7
|
import "./utils/time.utils.mjs";
|
|
6
8
|
import "./utils/upToDateState.mjs";
|
|
7
9
|
import "./utils/cacheFunctions.mjs";
|
|
10
|
+
import "./utils/enclaveHandshakeService.mjs";
|
|
8
11
|
import "./utils/encryptInputForEnclave.mjs";
|
|
9
12
|
import "./utils/solanaMint.utils.mjs";
|
|
10
13
|
import "./utils/customEnclaveFunctionsRegister.mjs";
|
|
@@ -15,6 +18,7 @@ import "./utils/get-signature-header.mjs";
|
|
|
15
18
|
import "./utils/auth.utils.mjs";
|
|
16
19
|
import "./utils/string.utils.mjs";
|
|
17
20
|
import "./utils/token-check.utils.mjs";
|
|
21
|
+
import "./utils/map.utils.mjs";
|
|
18
22
|
import "./utils/mutexes.utils.mjs";
|
|
19
23
|
import "./utils/erc20tokenFunctions.mjs";
|
|
20
24
|
import "./web3/events/getShieldedBalance.mjs";
|
|
@@ -43,7 +47,6 @@ import "./snarkjs/generateZkProof.mjs";
|
|
|
43
47
|
import "./snarkjs/generateMainAndCommitmentZkProof.mjs";
|
|
44
48
|
import "./utils/serialize-utxos.utils.mjs";
|
|
45
49
|
import "./utils/resolve-sync.utils.mjs";
|
|
46
|
-
import "./kyc/openDefaultPassportWindow.mjs";
|
|
47
50
|
import "./utils/reloadPage.mjs";
|
|
48
51
|
import "./utils/cacheDevice.utils.mjs";
|
|
49
52
|
import "./utils/involves-permit2-op.mjs";
|
|
@@ -59,7 +62,6 @@ import "./utils/enclave-signature-storage.mjs";
|
|
|
59
62
|
import "./utils/tx-confirmation.utils.mjs";
|
|
60
63
|
import "./utils/tronSimulation.utils.mjs";
|
|
61
64
|
import "./utils/getSignerFromContract.mjs";
|
|
62
|
-
import "./web3/events/balanceChangedHandler.mjs";
|
|
63
65
|
import "./utils/mnemonics.mjs";
|
|
64
66
|
import "./utils/nearIntents.utils.mjs";
|
|
65
67
|
import "./utils/index.mjs";
|
|
@@ -69,13 +71,10 @@ import "./snarkjs/constructGeneralZkProof.mjs";
|
|
|
69
71
|
import "./web3/uniswapAPI.mjs";
|
|
70
72
|
import "./web3/odosAPI.mjs";
|
|
71
73
|
import "./web3/oneInchAPI.mjs";
|
|
72
|
-
import "./web3/lifiAPI.mjs";
|
|
73
74
|
import "./web3/okxAPI.mjs";
|
|
74
75
|
import "./web3/index.mjs";
|
|
75
76
|
import "./snarkjs/constructSolanaZkProof.mjs";
|
|
76
77
|
import "./snarkjs/index.mjs";
|
|
77
|
-
import "./kyc/checkTokenLimitsUSD.mjs";
|
|
78
|
-
import "./kyc/index.mjs";
|
|
79
78
|
import "./private-wallet/emporium.swap.helpers.mjs";
|
|
80
79
|
import "./private-wallet/index.mjs";
|
|
81
80
|
import "./auto-deposit-back-helpers/get-tokens-to-deposit-back.mjs";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`../../constants/chains.constants.cjs`),t=require(`../../data-structures/crypto-keys/keys.cjs`),n=require(`../utils/solanaMint.utils.cjs`),r=require(`../snarkjs/common.snarkjs.cjs`),i=require(`../../webworker/worker.registry.cjs`),a=require(`../../webworker/performTaskWithWorker.cjs`),o=require(`../../webworker/zkProofWorker/zkProofWorker.types.cjs`);var s=async(s,c,l,u)=>{let d=e.isSolanaLike(s),f=u.map(e=>e.map(e=>e.amount.toString())),p=u.map(e=>e.map(e=>e.timeStamp)),m=u.map(e=>e.map(e=>r.getUtxoCircuitInRandomization(e))),h=u.map(e=>e.map(e=>e.getConstructableParams())),g=u.map(e=>e.map(e=>e.amount===0n?`0`:BigInt(e.getCommitment()).toString())),_=await a.performTaskWithWorker({type:i.WorkerVariant.ZKProof,payload:{type:o.ZKProofWorkerActionType.BUILD_IN_NULLIFIERS,data:{inputUtxosSerialized:h}}}),v=c.getShieldedPrivateKey(),y=c.getSpendingKeyPair().pubSpendingBJJPoint,b=d?l.map(e=>{let{compressedAddress:t}=n.formatMintAddress(e);return BigInt(t).toString()}):l.map(e=>BigInt(e).toString());u.forEach((e,n)=>{e.forEach((e,r)=>{let i=e.getStealthAddress(),a=e.spendingPublicKey??y,o=e.isNewStyle&&e.H0?t.UserKeys.getStealthAddressNewStyle(e.H0,v,a):t.UserKeys.getStealthAddress(BigInt(e.randomization),v);if(BigInt(i).toString()!==BigInt(o).toString())throw Error(`Commitment validation stealth mismatch at tokenIdx=${n}, utxoIdx=${r}`)})});let x={nullifyingPrivateKey:v,spendingPublicKey:y,erc20TokenAddresses:b,inAmounts:f,inRandomizations:m,inH0Ax:u.map(e=>e.map(e=>r.getUtxoCircuitH0Coords(e)[0].toString())),inH0Ay:u.map(e=>e.map(e=>r.getUtxoCircuitH0Coords(e)[1].toString())),isNewStyle:u.map(e=>e.map(e=>!!e.isNewStyle)),inTimeStamps:p,inCommitments:g,inNullifiers:_};if(!(!l.length||!u[0]?.length))return{tokenAddresses:b,inAmounts:f,inTimeStamps:p,inRandomizations:m,inCommitments:g,inNullifiers:_,verifierName:`commitmentCalculator${l.length}x${u[0].length}`,commitmentInput:x}},c=(e,t)=>{if(!(!e||!t))return{tokenAddresses:e.tokenAddresses,inAmounts:e.inAmounts,inTimeStamps:e.inTimeStamps,inRandomizations:e.inRandomizations,inCommitments:e.inCommitments,inNullifiers:e.inNullifiers,proof:{a:t.zkCallData[0],b:t.zkCallData[1],c:t.zkCallData[2]}}};exports.buildCommitmentValidationData=s,exports.buildCommitmentValidationDataFromProof=c;
|
|
1
|
+
const e=require(`../../constants/chains.constants.cjs`),t=require(`../../data-structures/crypto-keys/keys.cjs`),n=require(`../utils/solanaMint.utils.cjs`),r=require(`../snarkjs/common.snarkjs.cjs`),i=require(`../../webworker/worker.registry.cjs`),a=require(`../../webworker/performTaskWithWorker.cjs`),o=require(`../../webworker/zkProofWorker/zkProofWorker.types.cjs`);var s=async(s,c,l,u)=>{if(r.hasOnlyZeroAmounts(u))return;let d=e.isSolanaLike(s),f=u.map(e=>e.map(e=>e.amount.toString())),p=u.map(e=>e.map(e=>e.timeStamp)),m=u.map(e=>e.map(e=>r.getUtxoCircuitInRandomization(e))),h=u.map(e=>e.map(e=>e.getConstructableParams())),g=u.map(e=>e.map(e=>e.amount===0n?`0`:BigInt(e.getCommitment()).toString())),_=await a.performTaskWithWorker({type:i.WorkerVariant.ZKProof,payload:{type:o.ZKProofWorkerActionType.BUILD_IN_NULLIFIERS,data:{inputUtxosSerialized:h}}}),v=c.getShieldedPrivateKey(),y=c.getSpendingKeyPair().pubSpendingBJJPoint,b=d?l.map(e=>{let{compressedAddress:t}=n.formatMintAddress(e);return BigInt(t).toString()}):l.map(e=>BigInt(e).toString());u.forEach((e,n)=>{e.forEach((e,r)=>{let i=e.getStealthAddress(),a=e.spendingPublicKey??y,o=e.isNewStyle&&e.H0?t.UserKeys.getStealthAddressNewStyle(e.H0,v,a):t.UserKeys.getStealthAddress(BigInt(e.randomization),v);if(BigInt(i).toString()!==BigInt(o).toString())throw Error(`Commitment validation stealth mismatch at tokenIdx=${n}, utxoIdx=${r}`)})});let x={nullifyingPrivateKey:v,spendingPublicKey:y,erc20TokenAddresses:b,inAmounts:f,inRandomizations:m,inH0Ax:u.map(e=>e.map(e=>r.getUtxoCircuitH0Coords(e)[0].toString())),inH0Ay:u.map(e=>e.map(e=>r.getUtxoCircuitH0Coords(e)[1].toString())),isNewStyle:u.map(e=>e.map(e=>!!e.isNewStyle)),inTimeStamps:p,inCommitments:g,inNullifiers:_};if(!(!l.length||!u[0]?.length))return{tokenAddresses:b,inAmounts:f,inTimeStamps:p,inRandomizations:m,inCommitments:g,inNullifiers:_,verifierName:`commitmentCalculator${l.length}x${u[0].length}`,commitmentInput:x}},c=(e,t)=>{if(!(!e||!t))return{tokenAddresses:e.tokenAddresses,inAmounts:e.inAmounts,inTimeStamps:e.inTimeStamps,inRandomizations:e.inRandomizations,inCommitments:e.inCommitments,inNullifiers:e.inNullifiers,proof:{a:t.zkCallData[0],b:t.zkCallData[1],c:t.zkCallData[2]}}};exports.buildCommitmentValidationData=s,exports.buildCommitmentValidationDataFromProof=c;
|
|
@@ -1,52 +1,53 @@
|
|
|
1
1
|
import { isSolanaLike as e } from "../../constants/chains.constants.mjs";
|
|
2
2
|
import { UserKeys as t } from "../../data-structures/crypto-keys/keys.mjs";
|
|
3
3
|
import { formatMintAddress as n } from "../utils/solanaMint.utils.mjs";
|
|
4
|
-
import { getUtxoCircuitH0Coords as r, getUtxoCircuitInRandomization as i } from "../snarkjs/common.snarkjs.mjs";
|
|
5
|
-
import { WorkerVariant as
|
|
6
|
-
import { performTaskWithWorker as
|
|
7
|
-
import { ZKProofWorkerActionType as
|
|
4
|
+
import { getUtxoCircuitH0Coords as r, getUtxoCircuitInRandomization as i, hasOnlyZeroAmounts as a } from "../snarkjs/common.snarkjs.mjs";
|
|
5
|
+
import { WorkerVariant as o } from "../../webworker/worker.registry.mjs";
|
|
6
|
+
import { performTaskWithWorker as s } from "../../webworker/performTaskWithWorker.mjs";
|
|
7
|
+
import { ZKProofWorkerActionType as c } from "../../webworker/zkProofWorker/zkProofWorker.types.mjs";
|
|
8
8
|
//#region libs/shared/common/src/functions/pre-transaction/buildCommitmentValidationData.ts
|
|
9
|
-
var
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
var l = async (l, u, d, f) => {
|
|
10
|
+
if (a(f)) return;
|
|
11
|
+
let p = e(l), m = f.map((e) => e.map((e) => e.amount.toString())), h = f.map((e) => e.map((e) => e.timeStamp)), g = f.map((e) => e.map((e) => i(e))), _ = f.map((e) => e.map((e) => e.getConstructableParams())), v = f.map((e) => e.map((e) => e.amount === 0n ? "0" : BigInt(e.getCommitment()).toString())), y = await s({
|
|
12
|
+
type: o.ZKProof,
|
|
12
13
|
payload: {
|
|
13
|
-
type:
|
|
14
|
-
data: { inputUtxosSerialized:
|
|
14
|
+
type: c.BUILD_IN_NULLIFIERS,
|
|
15
|
+
data: { inputUtxosSerialized: _ }
|
|
15
16
|
}
|
|
16
|
-
}),
|
|
17
|
+
}), b = u.getShieldedPrivateKey(), x = u.getSpendingKeyPair().pubSpendingBJJPoint, S = p ? d.map((e) => {
|
|
17
18
|
let { compressedAddress: t } = n(e);
|
|
18
19
|
return BigInt(t).toString();
|
|
19
|
-
}) :
|
|
20
|
-
|
|
20
|
+
}) : d.map((e) => BigInt(e).toString());
|
|
21
|
+
f.forEach((e, n) => {
|
|
21
22
|
e.forEach((e, r) => {
|
|
22
|
-
let i = e.getStealthAddress(), a = e.spendingPublicKey ??
|
|
23
|
+
let i = e.getStealthAddress(), a = e.spendingPublicKey ?? x, o = e.isNewStyle && e.H0 ? t.getStealthAddressNewStyle(e.H0, b, a) : t.getStealthAddress(BigInt(e.randomization), b);
|
|
23
24
|
if (BigInt(i).toString() !== BigInt(o).toString()) throw Error(`Commitment validation stealth mismatch at tokenIdx=${n}, utxoIdx=${r}`);
|
|
24
25
|
});
|
|
25
26
|
});
|
|
26
|
-
let
|
|
27
|
-
nullifyingPrivateKey:
|
|
28
|
-
spendingPublicKey:
|
|
29
|
-
erc20TokenAddresses:
|
|
30
|
-
inAmounts:
|
|
31
|
-
inRandomizations:
|
|
32
|
-
inH0Ax:
|
|
33
|
-
inH0Ay:
|
|
34
|
-
isNewStyle:
|
|
35
|
-
inTimeStamps:
|
|
36
|
-
inCommitments:
|
|
37
|
-
inNullifiers:
|
|
27
|
+
let C = {
|
|
28
|
+
nullifyingPrivateKey: b,
|
|
29
|
+
spendingPublicKey: x,
|
|
30
|
+
erc20TokenAddresses: S,
|
|
31
|
+
inAmounts: m,
|
|
32
|
+
inRandomizations: g,
|
|
33
|
+
inH0Ax: f.map((e) => e.map((e) => r(e)[0].toString())),
|
|
34
|
+
inH0Ay: f.map((e) => e.map((e) => r(e)[1].toString())),
|
|
35
|
+
isNewStyle: f.map((e) => e.map((e) => !!e.isNewStyle)),
|
|
36
|
+
inTimeStamps: h,
|
|
37
|
+
inCommitments: v,
|
|
38
|
+
inNullifiers: y
|
|
38
39
|
};
|
|
39
|
-
if (!(!
|
|
40
|
-
tokenAddresses:
|
|
41
|
-
inAmounts:
|
|
42
|
-
inTimeStamps:
|
|
43
|
-
inRandomizations:
|
|
44
|
-
inCommitments:
|
|
45
|
-
inNullifiers:
|
|
46
|
-
verifierName: `commitmentCalculator${
|
|
47
|
-
commitmentInput:
|
|
40
|
+
if (!(!d.length || !f[0]?.length)) return {
|
|
41
|
+
tokenAddresses: S,
|
|
42
|
+
inAmounts: m,
|
|
43
|
+
inTimeStamps: h,
|
|
44
|
+
inRandomizations: g,
|
|
45
|
+
inCommitments: v,
|
|
46
|
+
inNullifiers: y,
|
|
47
|
+
verifierName: `commitmentCalculator${d.length}x${f[0].length}`,
|
|
48
|
+
commitmentInput: C
|
|
48
49
|
};
|
|
49
|
-
},
|
|
50
|
+
}, u = (e, t) => {
|
|
50
51
|
if (!(!e || !t)) return {
|
|
51
52
|
tokenAddresses: e.tokenAddresses,
|
|
52
53
|
inAmounts: e.inAmounts,
|
|
@@ -62,4 +63,4 @@ var c = async (c, l, u, d) => {
|
|
|
62
63
|
};
|
|
63
64
|
};
|
|
64
65
|
//#endregion
|
|
65
|
-
export {
|
|
66
|
+
export { l as buildCommitmentValidationData, u as buildCommitmentValidationDataFromProof };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require(`../../constants/protocol.constants.cjs`),t=require(
|
|
1
|
+
const e=require(`../../constants/protocol.constants.cjs`),t=require(`../utils/amounts.utils.cjs`),n=require(`../../types/ethereum-network.types.cjs`),r=require(`../private-wallet/emporium.helpers.cjs`),i=require(`./merge-with-fee-structure.cjs`),a=require(`../web3/getPublicAddressBalance.cjs`);var o=async(o,s,c,l,u,d,f,p)=>{let m=0n,h=p<0n?p:0n,g=await a.getPublicAddressBalance(o,s,f.feeToken,c)+h;m=g<0?f.flatFee:t.maxBigInt(f.flatFee-g,0n),m!==0n&&(await i.mergeWithFeeStructure(s,u,d,{...f,flatFee:m}),l.push(r.createTransferToEmporiumOp(f.feeToken===e.zeroAddress?void 0:o.getContractWithFetcher(s,n.ContractType.ERC20Contract,f.feeToken),c,m,!1)))};exports.mergeWithFeeStructureEmporium=o;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { zeroAddress as e } from "../../constants/protocol.constants.mjs";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { maxBigInt as t } from "../utils/amounts.utils.mjs";
|
|
3
|
+
import { ContractType as n } from "../../types/ethereum-network.types.mjs";
|
|
4
4
|
import { createTransferToEmporiumOp as r } from "../private-wallet/emporium.helpers.mjs";
|
|
5
5
|
import { mergeWithFeeStructure as i } from "./merge-with-fee-structure.mjs";
|
|
6
6
|
import { getPublicAddressBalance as a } from "../web3/getPublicAddressBalance.mjs";
|
|
7
7
|
//#region libs/shared/common/src/functions/pre-transaction/merge-with-fee-structure-emporium.ts
|
|
8
8
|
var o = async (o, s, c, l, u, d, f, p) => {
|
|
9
9
|
let m = 0n, h = p < 0n ? p : 0n, g = await a(o, s, f.feeToken, c) + h;
|
|
10
|
-
m = g < 0 ? f.flatFee :
|
|
10
|
+
m = g < 0 ? f.flatFee : t(f.flatFee - g, 0n), m !== 0n && (await i(s, u, d, {
|
|
11
11
|
...f,
|
|
12
12
|
flatFee: m
|
|
13
|
-
}), l.push(r(f.feeToken === e ? void 0 : o.getContractWithFetcher(s,
|
|
13
|
+
}), l.push(r(f.feeToken === e ? void 0 : o.getContractWithFetcher(s, n.ERC20Contract, f.feeToken), c, m, !1)));
|
|
14
14
|
};
|
|
15
15
|
//#endregion
|
|
16
16
|
export { o as mergeWithFeeStructureEmporium };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../utils/serialize.utils.cjs`),t=require(`../../constants/protocol.constants.cjs`),n=require(`../../data-structures/AccountActions/AccountActions.cjs`),
|
|
2
|
-
`);throw Error(
|
|
1
|
+
require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../utils/serialize.utils.cjs`),t=require(`../../constants/protocol.constants.cjs`),n=require(`../../error-handling/logger.cjs`),r=require(`../../data-structures/AccountActions/AccountActions.cjs`),i=require(`../../types/fee.types.cjs`),a=require(`../web3/getSolanaPriorityFee.cjs`),o=require(`../utils/process.utils.cjs`),s=require(`../../error-handling/retrySolanaError.cjs`);let c=require(`@solana/web3.js`);require(`@solana/spl-token`);var l=5e3,u=6e4,d=async(e,t,n=`confirmed`)=>await o.pollForValue(()=>e.getTransaction(t,{commitment:n,maxSupportedTransactionVersion:0}),{timeoutMs:u,intervalMs:l})??null,f=async(r,i,a,o,s=!1)=>{try{let{blockhash:l}=await r.getLatestBlockhash(),u=new c.VersionedTransaction(new c.TransactionMessage({payerKey:i,recentBlockhash:l,instructions:[c.ComputeBudgetProgram.setComputeUnitLimit({units:t.MAX_COMPUTE_UNIT_LIMIT}),...s?[c.ComputeBudgetProgram.requestHeapFrame({bytes:t.MAX_SOLANA_HEAP_FRAME_BYTES})]:[],...a]}).compileToV0Message(o)),d=await r.simulateTransaction(u,{sigVerify:!1,replaceRecentBlockhash:!0});d.value.err&&n.Logger.error(`Solana compute-unit simulation failed:`,{error:e.safeJsonStringify(d.value.err),logs:d.value.logs});let{unitsConsumed:f}=d.value;if(!f)return t.MAX_COMPUTE_UNIT_LIMIT;let p=Math.ceil(f*(1+t.COMPUTE_UNIT_PADDING_PERCENTAGE));return Math.max(t.MIN_COMPUTE_UNIT_LIMIT,Math.min(p,t.MAX_COMPUTE_UNIT_LIMIT))}catch(e){return n.Logger.error(`Solana compute-unit estimation threw:`,e),t.MAX_COMPUTE_UNIT_LIMIT}},p=(e,t,n,r)=>{let i=new Set;return t&&i.add(t.toBase58()),n?.forEach(e=>i.add(e.toBase58())),e.forEach(e=>{i.add(e.programId.toBase58()),e.keys.forEach(e=>{i.add(e.pubkey.toBase58())})}),r&&r.forEach(e=>{i.add(e.key.toBase58()),e.state.addresses.forEach(e=>{i.add(e.toBase58())})}),[...i].map(e=>new c.PublicKey(e))},m=(t,r)=>{if(!t)throw Error(`Failed to fetch Solana transaction details for signature${r?` ${r}`:``}`);if(t.meta?.err){let i=e.safeJsonStringify(t.meta.err),a=t.meta.logMessages?.join(`
|
|
2
|
+
`);n.Logger.error(`Solana transaction failed on-chain`,{signature:r,error:i,logs:t.meta.logMessages});let o=r?` (signature: ${r})`:``;throw Error(a?`Solana transaction failed on-chain${o}: ${i}\n${a}`:`Solana transaction failed on-chain${o}: ${i}`)}},h=async(e,n,r,i,o,s=!1)=>{if(r.some(e=>e.programId.equals(c.ComputeBudgetProgram.programId)))return r.map(e=>e.programId.equals(c.ComputeBudgetProgram.programId)&&e.data[0]===2?c.ComputeBudgetProgram.setComputeUnitLimit({units:t.MAX_COMPUTE_UNIT_LIMIT}):e);let l=r.filter(e=>!e.programId.equals(c.ComputeBudgetProgram.programId)),u=await f(e,n,l,i,s),d=c.ComputeBudgetProgram.setComputeUnitLimit({units:u}),m=e.rpcEndpoint.includes(`helius`)?await a.getSolanaPriorityFee(p(l,n,[c.ComputeBudgetProgram.programId],i),o):0;return[d,c.ComputeBudgetProgram.setComputeUnitPrice({microLamports:m}),...s?[c.ComputeBudgetProgram.requestHeapFrame({bytes:t.MAX_SOLANA_HEAP_FRAME_BYTES})]:[],...l]},g=async({connection:e,chainId:t,subAccount:n,payerPublicKey:a,instructions:o,lookupTableAccounts:l})=>{let u=r.AccountActions.getPrivateKeyFromSubAccount(t,n);if(!u)throw Error(`Private key is not available`);for(let t=0;t<10;t+=1){let n=t===9;try{let t=await h(e,a,o,l,n?i.SolanaPriorityFeeMode.HIGH:i.SolanaPriorityFeeMode.RECOMMENDED),{blockhash:s,lastValidBlockHeight:f}=await e.getLatestBlockhash(),p=new c.VersionedTransaction(new c.TransactionMessage({payerKey:a,recentBlockhash:s,instructions:t}).compileToV0Message(l)),g=await r.AccountActions.sendAndSignSolanaTransactionFromPrivateKey(e,u,p,!0);return await e.confirmTransaction({signature:g,blockhash:s,lastValidBlockHeight:f},`confirmed`),m(await d(e,g),g),g}catch(e){if(s.shouldRetryForSolanaError(e)&&!n)continue;throw e}}throw Error(`Failed to send proxy v0 transaction due to expired blockheight after all retries`)};exports.estimateComputeUnitLimit=f,exports.fetchSolanaTransaction=d,exports.getAccountsFromInstructions=p,exports.sendProxyV0Transaction=g;
|
|
@@ -1,40 +1,46 @@
|
|
|
1
1
|
import { safeJsonStringify as e } from "../utils/serialize.utils.mjs";
|
|
2
2
|
import { COMPUTE_UNIT_PADDING_PERCENTAGE as t, MAX_COMPUTE_UNIT_LIMIT as n, MAX_SOLANA_HEAP_FRAME_BYTES as r, MIN_COMPUTE_UNIT_LIMIT as i } from "../../constants/protocol.constants.mjs";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
3
|
+
import { Logger as a } from "../../error-handling/logger.mjs";
|
|
4
|
+
import { AccountActions as o } from "../../data-structures/AccountActions/AccountActions.mjs";
|
|
5
|
+
import { SolanaPriorityFeeMode as s } from "../../types/fee.types.mjs";
|
|
6
|
+
import { getSolanaPriorityFee as c } from "../web3/getSolanaPriorityFee.mjs";
|
|
7
|
+
import { pollForValue as l } from "../utils/process.utils.mjs";
|
|
8
|
+
import { shouldRetryForSolanaError as u } from "../../error-handling/retrySolanaError.mjs";
|
|
9
|
+
import { ComputeBudgetProgram as d, PublicKey as f, TransactionMessage as p, VersionedTransaction as m } from "@solana/web3.js";
|
|
9
10
|
import "@solana/spl-token";
|
|
10
11
|
//#region libs/shared/common/src/functions/pre-transaction/sendV0Transaction.ts
|
|
11
|
-
var
|
|
12
|
+
var h = 5e3, g = 6e4, _ = async (e, t, n = "confirmed") => await l(() => e.getTransaction(t, {
|
|
12
13
|
commitment: n,
|
|
13
14
|
maxSupportedTransactionVersion: 0
|
|
14
15
|
}), {
|
|
15
|
-
timeoutMs:
|
|
16
|
-
intervalMs:
|
|
17
|
-
}) ?? null,
|
|
16
|
+
timeoutMs: g,
|
|
17
|
+
intervalMs: h
|
|
18
|
+
}) ?? null, v = async (o, s, c, l, u = !1) => {
|
|
18
19
|
try {
|
|
19
|
-
let { blockhash:
|
|
20
|
-
payerKey:
|
|
21
|
-
recentBlockhash:
|
|
20
|
+
let { blockhash: f } = await o.getLatestBlockhash(), h = new m(new p({
|
|
21
|
+
payerKey: s,
|
|
22
|
+
recentBlockhash: f,
|
|
22
23
|
instructions: [
|
|
23
|
-
|
|
24
|
-
...
|
|
25
|
-
...
|
|
24
|
+
d.setComputeUnitLimit({ units: n }),
|
|
25
|
+
...u ? [d.requestHeapFrame({ bytes: r })] : [],
|
|
26
|
+
...c
|
|
26
27
|
]
|
|
27
|
-
}).compileToV0Message(
|
|
28
|
+
}).compileToV0Message(l)), g = await o.simulateTransaction(h, {
|
|
28
29
|
sigVerify: !1,
|
|
29
30
|
replaceRecentBlockhash: !0
|
|
30
|
-
})
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
31
|
+
});
|
|
32
|
+
g.value.err && a.error("Solana compute-unit simulation failed:", {
|
|
33
|
+
error: e(g.value.err),
|
|
34
|
+
logs: g.value.logs
|
|
35
|
+
});
|
|
36
|
+
let { unitsConsumed: _ } = g.value;
|
|
37
|
+
if (!_) return n;
|
|
38
|
+
let v = Math.ceil(_ * (1 + t));
|
|
39
|
+
return Math.max(i, Math.min(v, n));
|
|
40
|
+
} catch (e) {
|
|
41
|
+
return a.error("Solana compute-unit estimation threw:", e), n;
|
|
36
42
|
}
|
|
37
|
-
},
|
|
43
|
+
}, y = (e, t, n, r) => {
|
|
38
44
|
let i = /* @__PURE__ */ new Set();
|
|
39
45
|
return t && i.add(t.toBase58()), n?.forEach((e) => i.add(e.toBase58())), e.forEach((e) => {
|
|
40
46
|
i.add(e.programId.toBase58()), e.keys.forEach((e) => {
|
|
@@ -44,44 +50,50 @@ var m = 5e3, h = 6e4, g = async (e, t, n = "confirmed") => await c(() => e.getTr
|
|
|
44
50
|
i.add(e.key.toBase58()), e.state.addresses.forEach((e) => {
|
|
45
51
|
i.add(e.toBase58());
|
|
46
52
|
});
|
|
47
|
-
}), [...i].map((e) => new
|
|
48
|
-
},
|
|
49
|
-
if (!t) throw Error(
|
|
53
|
+
}), [...i].map((e) => new f(e));
|
|
54
|
+
}, b = (t, n) => {
|
|
55
|
+
if (!t) throw Error(`Failed to fetch Solana transaction details for signature${n ? ` ${n}` : ""}`);
|
|
50
56
|
if (t.meta?.err) {
|
|
51
|
-
let
|
|
52
|
-
|
|
57
|
+
let r = e(t.meta.err), i = t.meta.logMessages?.join("\n");
|
|
58
|
+
a.error("Solana transaction failed on-chain", {
|
|
59
|
+
signature: n,
|
|
60
|
+
error: r,
|
|
61
|
+
logs: t.meta.logMessages
|
|
62
|
+
});
|
|
63
|
+
let o = n ? ` (signature: ${n})` : "";
|
|
64
|
+
throw Error(i ? `Solana transaction failed on-chain${o}: ${r}\n${i}` : `Solana transaction failed on-chain${o}: ${r}`);
|
|
53
65
|
}
|
|
54
|
-
},
|
|
55
|
-
if (i.some((e) => e.programId.equals(
|
|
56
|
-
let l = i.filter((e) => !e.programId.equals(
|
|
66
|
+
}, x = async (e, t, i, a, o, s = !1) => {
|
|
67
|
+
if (i.some((e) => e.programId.equals(d.programId))) return i.map((e) => e.programId.equals(d.programId) && e.data[0] === 2 ? d.setComputeUnitLimit({ units: n }) : e);
|
|
68
|
+
let l = i.filter((e) => !e.programId.equals(d.programId)), u = await v(e, t, l, a, s), f = d.setComputeUnitLimit({ units: u }), p = e.rpcEndpoint.includes("helius") ? await c(y(l, t, [d.programId], a), o) : 0;
|
|
57
69
|
return [
|
|
58
70
|
f,
|
|
59
|
-
|
|
60
|
-
...
|
|
71
|
+
d.setComputeUnitPrice({ microLamports: p }),
|
|
72
|
+
...s ? [d.requestHeapFrame({ bytes: r })] : [],
|
|
61
73
|
...l
|
|
62
74
|
];
|
|
63
|
-
},
|
|
64
|
-
let c =
|
|
75
|
+
}, S = async ({ connection: e, chainId: t, subAccount: n, payerPublicKey: r, instructions: i, lookupTableAccounts: a }) => {
|
|
76
|
+
let c = o.getPrivateKeyFromSubAccount(t, n);
|
|
65
77
|
if (!c) throw Error("Private key is not available");
|
|
66
78
|
for (let t = 0; t < 10; t += 1) {
|
|
67
79
|
let n = t === 9;
|
|
68
80
|
try {
|
|
69
|
-
let t = await
|
|
81
|
+
let t = await x(e, r, i, a, n ? s.HIGH : s.RECOMMENDED), { blockhash: l, lastValidBlockHeight: u } = await e.getLatestBlockhash(), d = new m(new p({
|
|
70
82
|
payerKey: r,
|
|
71
83
|
recentBlockhash: l,
|
|
72
84
|
instructions: t
|
|
73
|
-
}).compileToV0Message(
|
|
85
|
+
}).compileToV0Message(a)), f = await o.sendAndSignSolanaTransactionFromPrivateKey(e, c, d, !0);
|
|
74
86
|
return await e.confirmTransaction({
|
|
75
|
-
signature:
|
|
87
|
+
signature: f,
|
|
76
88
|
blockhash: l,
|
|
77
89
|
lastValidBlockHeight: u
|
|
78
|
-
}, "confirmed"),
|
|
90
|
+
}, "confirmed"), b(await _(e, f), f), f;
|
|
79
91
|
} catch (e) {
|
|
80
|
-
if (
|
|
92
|
+
if (u(e) && !n) continue;
|
|
81
93
|
throw e;
|
|
82
94
|
}
|
|
83
95
|
}
|
|
84
96
|
throw Error("Failed to send proxy v0 transaction due to expired blockheight after all retries");
|
|
85
97
|
};
|
|
86
98
|
//#endregion
|
|
87
|
-
export {
|
|
99
|
+
export { v as estimateComputeUnitLimit, _ as fetchSolanaTransaction, y as getAccountsFromInstructions, S as sendProxyV0Transaction };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.cjs`),n=require(
|
|
1
|
+
require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.cjs`),n=require(`../utils/caseInsensitive.utils.cjs`),r=require(`../../types/ethereum-network.types.cjs`),i=require(`../../error-handling/logger.cjs`),a=require(`../utils/create-provider.cjs`),o=require(`../../data-structures/AccountActions/AccountActions.cjs`),s=require(`../utils/getContractAddress.cjs`);require(`../utils/index.cjs`);let c=require(`ethers`);var l=e=>{if(typeof e.target==`string`)return e.target;if(e.address)return e.address;throw Error(`Contract address not found`)},u=({contract:e,func:t,args:n,callDataString:r,invokeWallet:i,value:a})=>{let o=new Uint8Array,s=r?c.ethers.getBytesCopy(r):new Uint8Array;if(typeof e==`object`){if(o=c.ethers.getBytesCopy(l(e)),r?.length&&r?.length>0)throw Error(`If function and args are providedm no calldata is needed`);t&&n&&!r&&(s=c.ethers.getBytesCopy(e.interface.encodeFunctionData(t,n)))}else o=c.ethers.getBytesCopy(e);let u=c.ethers.getBytesCopy(new Uint8Array([+!!i])),d=c.ethers.zeroPadValue(c.ethers.toBeHex(a??0n),16),f=c.ethers.concat([o,u,d,s]);return c.ethers.hexlify(f)},d=async(n,r,i,a,s,l)=>{let u=e.getOnchainChainId(n),d=i?await o.AccountActions.signTypedDataFromPrivateKey(u,i,{name:`Emporium`,version:`1.0.0`,chainId:u,verifyingContract:r},{EmporiumSignature:[{name:`message`,type:`uint256`},{name:`ops`,type:`bytes[]`}]},{message:s,ops:a}):void 0,{v:f,r:p,s:m}=d?c.ethers.Signature.from(d):{v:0,r:c.ethers.ZeroHash,s:c.ethers.ZeroHash};return c.ethers.AbiCoder.defaultAbiCoder().encode([`tuple(uint8 v,bytes32 r, bytes32 s, uint256 message, address signerAddress, bytes[] ops)`],[{v:f,r:p,s:m,message:s??0n,signerAddress:l??t.zeroAddress,ops:a}])},f=(e,t,n,r)=>u(e?{contract:e,func:`transfer`,args:[t,n],invokeWallet:r}:{contract:t,value:n,invokeWallet:r}),p=(e,i,a,o,c)=>{let l=e.getContractWithFetcher(i,r.ContractType.HinkalContract);return a.map((a,u)=>f(n.caseInsensitiveEqual(a,t.zeroAddress)?void 0:e.getContractWithFetcher(i,r.ContractType.ERC20Contract,a),c??s.getContractAddress(l),o[u],!0))},m=(e,t,n,r)=>u({contract:e,func:`approve`,args:[t,n],invokeWallet:r}),h=(e,i,a,o,s,c,l,u)=>{let d=[];for(let s=0;s<a.length;s+=1){let c=a[s],u=n.caseInsensitiveEqual(c,t.zeroAddress)?void 0:e.getContractWithFetcher(i,r.ContractType.ERC20Contract,c);d.push(f(u,l,o[s],!1))}if(u)for(let a=0;a<s.length;a+=1){let o=s[a];if(!n.caseInsensitiveEqual(o,t.zeroAddress)){let t=e.getContractWithFetcher(i,r.ContractType.ERC20Contract,o);d.push(m(t,u,c[a],!0))}}return d},g=(e,r,i,a,o,s,c,l)=>{let d=[],f=[o],p=[s];l.nativeFee>0n&&!n.caseInsensitiveEqual(o,t.zeroAddress)&&(f.push(t.zeroAddress),p.push(l.nativeFee));let m=h(e,r,f,p,[o],[c],i,a);d.push(...m);let g=l.nativeFee;return n.caseInsensitiveEqual(o,t.zeroAddress)&&(g+=c),d.push(u({contract:a,callDataString:l.calldata,value:g>0n?g:void 0,invokeWallet:!0})),d},_=`0xef0100`,v=async(e,t)=>{try{let n=a.createJsonRpcProvider(e),r=await n.getCode(t);if(r===`0x`||!r)return{delegated:!1,implementation:void 0,nonce:void 0};if(r.toLowerCase().startsWith(_)&&r.length===48){let e=`0x${r.slice(8)}`,i=await n.getTransactionCount(t);return{delegated:!0,implementation:c.ethers.getAddress(e),nonce:i}}else throw Error(`checkEOAWithDelegation: It is a contract`)}catch(e){throw i.Logger.error(`checkEOAWithDelegation error`,{error:e}),e}},y=r=>{let{hinkalWalletAddress:i}=e.networkRegistry[r].contractData;if(!i||n.caseInsensitiveEqual(i,t.zeroAddress))throw Error(`Hinkal Wallet Address is not set`);return i},b=async(t,r)=>{if(t===e.chainIds.localhost||!r)return;let i=e.getOnchainChainId(t),{delegated:a,implementation:s}=await v(t,o.AccountActions.getSignerAddressFromPrivateKey(t,r)),c=y(t);if(!a||!n.caseInsensitiveEqual(s,c)){let e=await o.AccountActions.authorizeDelegation(i,r,c);return{v:e.signature.v.toString(),r:e.signature.r,s:e.signature.s,nonce:e.nonce.toString(),address:c,chainId:String(i)}}};exports.checkEOAWithDelegation=v,exports.createApproveEmporiumOp=m,exports.createLifiBridgeOps=g,exports.createTransaferEmporiumOpsBatch=p,exports.createTransferToEmporiumOp=f,exports.emporiumOp=u,exports.encodeEmporiumMetadata=d,exports.generateFundAndApproveOps=h,exports.getAuthorizationDataIfNeeded=b;
|