@hinkal/common 0.2.21 → 0.2.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/API/API.cjs +1 -1
- package/API/API.d.ts +14 -14
- package/API/API.mjs +88 -87
- package/API/admin-calls.cjs +1 -1
- package/API/admin-calls.d.ts +1 -1
- package/API/admin-calls.mjs +4 -4
- package/API/ai-calls.cjs +1 -0
- package/API/ai-calls.d.ts +17 -0
- package/API/ai-calls.mjs +21 -0
- package/API/callLifiAPI.cjs +1 -1
- package/API/callLifiAPI.d.ts +1 -1
- package/API/callLifiAPI.mjs +5 -5
- package/API/callMonitor.cjs +1 -1
- package/API/callMonitor.d.ts +1 -1
- package/API/callMonitor.mjs +7 -7
- package/API/callOdosAPI.cjs +1 -1
- package/API/callOdosAPI.mjs +11 -11
- package/API/callOkxAPI.cjs +1 -1
- package/API/callOkxAPI.d.ts +1 -1
- package/API/callOkxAPI.mjs +5 -5
- package/API/callOneInchAPI.cjs +1 -1
- package/API/callOneInchAPI.mjs +11 -10
- package/API/callRelayer.cjs +1 -1
- package/API/callRelayer.d.ts +5 -6
- package/API/callRelayer.mjs +11 -11
- package/API/checkRisk.cjs +1 -1
- package/API/checkRisk.d.ts +1 -1
- package/API/checkRisk.mjs +4 -4
- package/API/deposit-and-withdraw-status-calls.cjs +1 -0
- package/API/deposit-and-withdraw-status-calls.d.ts +20 -0
- package/API/deposit-and-withdraw-status-calls.mjs +18 -0
- package/API/duneAPI.cjs +1 -0
- package/API/duneAPI.d.ts +11 -0
- package/API/duneAPI.mjs +25 -0
- package/API/enclaveCalls.cjs +1 -1
- package/API/enclaveCalls.mjs +4 -5
- package/API/fetchCommitmentsCache.cjs +1 -1
- package/API/fetchCommitmentsCache.mjs +9 -9
- package/API/get-token-data.cjs +1 -1
- package/API/get-token-data.d.ts +1 -1
- package/API/get-token-data.mjs +5 -5
- package/API/getBridgeProtocols.cjs +1 -0
- package/API/getBridgeProtocols.d.ts +7 -0
- package/API/getBridgeProtocols.mjs +8 -0
- package/API/getGasEstimates.cjs +1 -1
- package/API/getGasEstimates.mjs +9 -9
- package/API/getLifiStatus.cjs +1 -0
- package/API/getLifiStatus.d.ts +24 -0
- package/API/getLifiStatus.mjs +15 -0
- package/API/getRelayerURL.cjs +1 -0
- package/API/getRelayerURL.d.ts +1 -0
- package/API/getRelayerURL.mjs +10 -0
- package/API/getServerURL.cjs +1 -1
- package/API/getServerURL.d.ts +3 -3
- package/API/getServerURL.mjs +67 -51
- package/API/getTokenPrice.cjs +1 -1
- package/API/getTokenPrice.d.ts +0 -5
- package/API/getTokenPrice.mjs +7 -14
- package/API/index.d.ts +3 -1
- package/API/is-tx-stateless.cjs +1 -1
- package/API/is-tx-stateless.d.ts +1 -1
- package/API/is-tx-stateless.mjs +12 -10
- package/API/kycCalls.cjs +1 -1
- package/API/kycCalls.d.ts +8 -4
- package/API/kycCalls.mjs +26 -23
- package/API/passwordCalls.cjs +1 -0
- package/API/passwordCalls.d.ts +9 -0
- package/API/passwordCalls.mjs +13 -0
- package/API/proxyAccountsCalls.cjs +1 -1
- package/API/proxyAccountsCalls.d.ts +2 -7
- package/API/proxyAccountsCalls.mjs +21 -27
- package/API/relayCalls.cjs +1 -1
- package/API/relayCalls.mjs +4 -4
- package/API/restoreSnapshots.cjs +1 -0
- package/API/restoreSnapshots.d.ts +1 -0
- package/API/restoreSnapshots.mjs +10 -0
- package/API/scheduled-transactions-calls.cjs +1 -1
- package/API/scheduled-transactions-calls.d.ts +9 -1
- package/API/scheduled-transactions-calls.mjs +9 -5
- package/API/simulate-batch-tx.cjs +1 -1
- package/API/simulate-batch-tx.d.ts +2 -2
- package/API/simulate-batch-tx.mjs +6 -7
- package/API/solana-calls.cjs +1 -1
- package/API/solana-calls.d.ts +3 -6
- package/API/solana-calls.mjs +15 -15
- package/API/temporaryWalletCalls.cjs +1 -1
- package/API/temporaryWalletCalls.mjs +19 -13
- package/API/token-calls.cjs +1 -1
- package/API/token-calls.mjs +5 -6
- package/README.md +64 -256
- package/constants/activity.constants.cjs +1 -1
- package/constants/activity.constants.mjs +0 -1
- package/constants/addresses.constants.cjs +1 -1
- package/constants/addresses.constants.mjs +9 -10
- package/constants/chains.constants.cjs +1 -1
- package/constants/chains.constants.d.ts +6 -0
- package/constants/chains.constants.mjs +52 -58
- package/constants/coingecko.constants.cjs +1 -1
- package/constants/coingecko.constants.d.ts +0 -1
- package/constants/coingecko.constants.mjs +10 -11
- package/constants/contracts.constants.cjs +1 -1
- package/constants/contracts.constants.d.ts +3 -3
- package/constants/contracts.constants.mjs +29 -29
- package/constants/deploy-data/deploy-data-solana.json.cjs +1 -1
- package/constants/deploy-data/deploy-data-solana.json.mjs +2 -28
- package/constants/function-signatures.constants.cjs +1 -1
- package/constants/function-signatures.constants.d.ts +1 -0
- package/constants/function-signatures.constants.mjs +4 -3
- package/constants/kyc.constants.cjs +1 -1
- package/constants/kyc.constants.mjs +40 -39
- package/constants/mediaUrls.constants.cjs +1 -1
- package/constants/mediaUrls.constants.d.ts +0 -1
- package/constants/mediaUrls.constants.mjs +1 -2
- package/constants/permit2.constants.cjs +1 -1
- package/constants/permit2.constants.d.ts +1 -0
- package/constants/permit2.constants.mjs +11 -10
- package/constants/server.constants.cjs +1 -1
- package/constants/server.constants.d.ts +123 -19
- package/constants/server.constants.mjs +138 -35
- package/constants/tasks.constants.cjs +1 -1
- package/constants/tasks.constants.mjs +4 -5
- package/constants/vite.constants.cjs +1 -1
- package/constants/vite.constants.mjs +13 -36
- package/crypto/poseidon.cjs +1 -1
- package/crypto/poseidon.mjs +10 -10
- package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.cjs +1 -1
- package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.mjs +86 -83
- package/data-structures/Hinkal/Hinkal.cjs +1 -1
- package/data-structures/Hinkal/Hinkal.d.ts +56 -45
- package/data-structures/Hinkal/Hinkal.mjs +348 -315
- package/data-structures/Hinkal/IHinkal.d.ts +56 -42
- package/data-structures/Hinkal/handleAutoDepositBack.cjs +1 -1
- package/data-structures/Hinkal/handleAutoDepositBack.d.ts +1 -1
- package/data-structures/Hinkal/handleAutoDepositBack.mjs +49 -48
- package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.cjs +1 -0
- package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.d.ts +7 -0
- package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.mjs +42 -0
- package/data-structures/Hinkal/hinkalActionReceive.cjs +1 -1
- package/data-structures/Hinkal/hinkalActionReceive.mjs +24 -29
- package/data-structures/Hinkal/hinkalApprove.cjs +1 -0
- package/data-structures/Hinkal/hinkalApprove.d.ts +3 -0
- package/data-structures/Hinkal/hinkalApprove.mjs +114 -0
- package/data-structures/Hinkal/hinkalCheckTokenRegistry.cjs +1 -1
- package/data-structures/Hinkal/hinkalCheckTokenRegistry.mjs +19 -20
- package/data-structures/Hinkal/hinkalDeposit.cjs +1 -1
- package/data-structures/Hinkal/hinkalDeposit.mjs +84 -89
- package/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -1
- package/data-structures/Hinkal/hinkalDepositAndWithdraw.d.ts +1 -1
- package/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +96 -78
- package/data-structures/Hinkal/hinkalDepositOnChainUtxos.cjs +1 -1
- package/data-structures/Hinkal/hinkalDepositOnChainUtxos.d.ts +4 -1
- package/data-structures/Hinkal/hinkalDepositOnChainUtxos.mjs +79 -75
- package/data-structures/Hinkal/hinkalDepostAndBridge.cjs +1 -1
- package/data-structures/Hinkal/hinkalDepostAndBridge.d.ts +1 -1
- package/data-structures/Hinkal/hinkalDepostAndBridge.mjs +151 -140
- package/data-structures/Hinkal/hinkalGetZkMeProvider.cjs +1 -1
- package/data-structures/Hinkal/hinkalGetZkMeProvider.mjs +5 -4
- package/data-structures/Hinkal/hinkalInsideTransact.cjs +1 -0
- package/data-structures/Hinkal/hinkalInsideTransact.d.ts +4 -0
- package/data-structures/Hinkal/hinkalInsideTransact.mjs +120 -0
- package/data-structures/Hinkal/hinkalPrivateWallet.cjs +1 -1
- package/data-structures/Hinkal/hinkalPrivateWallet.d.ts +2 -2
- package/data-structures/Hinkal/hinkalPrivateWallet.mjs +118 -115
- package/data-structures/Hinkal/hinkalProoflessDeposit.cjs +1 -1
- package/data-structures/Hinkal/hinkalProoflessDeposit.mjs +29 -30
- package/data-structures/Hinkal/hinkalProxySwap.cjs +1 -1
- package/data-structures/Hinkal/hinkalProxySwap.mjs +36 -40
- package/data-structures/Hinkal/hinkalProxyToPrivate.cjs +1 -1
- package/data-structures/Hinkal/hinkalProxyToPrivate.mjs +32 -37
- package/data-structures/Hinkal/hinkalSignSubAccount.cjs +1 -1
- package/data-structures/Hinkal/hinkalSignSubAccount.d.ts +2 -1
- package/data-structures/Hinkal/hinkalSignSubAccount.mjs +15 -17
- package/data-structures/Hinkal/hinkalSolanaDeposit.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaDeposit.d.ts +3 -4
- package/data-structures/Hinkal/hinkalSolanaDeposit.mjs +95 -84
- package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.d.ts +1 -2
- package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +180 -154
- package/data-structures/Hinkal/hinkalSolanaProxySend.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaProxySend.d.ts +3 -2
- package/data-structures/Hinkal/hinkalSolanaProxySend.mjs +40 -43
- package/data-structures/Hinkal/hinkalSolanaProxyShield.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaProxyShield.mjs +67 -71
- package/data-structures/Hinkal/hinkalSolanaProxySwap.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaProxySwap.d.ts +1 -1
- package/data-structures/Hinkal/hinkalSolanaProxySwap.mjs +59 -63
- package/data-structures/Hinkal/hinkalSolanaSwap.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaSwap.mjs +46 -50
- package/data-structures/Hinkal/hinkalSolanaTransfer.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaTransfer.mjs +50 -52
- package/data-structures/Hinkal/hinkalSolanaWithdraw.cjs +1 -1
- package/data-structures/Hinkal/hinkalSolanaWithdraw.d.ts +1 -2
- package/data-structures/Hinkal/hinkalSolanaWithdraw.mjs +65 -69
- package/data-structures/Hinkal/hinkalSwap.cjs +1 -1
- package/data-structures/Hinkal/hinkalSwap.mjs +77 -71
- package/data-structures/Hinkal/hinkalTransfer.cjs +1 -1
- package/data-structures/Hinkal/hinkalTransfer.mjs +70 -72
- package/data-structures/Hinkal/hinkalWithdraw.cjs +1 -1
- package/data-structures/Hinkal/hinkalWithdraw.mjs +78 -81
- package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.cjs +1 -1
- package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.mjs +103 -106
- package/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
- package/data-structures/Hinkal/resetMerkleTrees.d.ts +1 -1
- package/data-structures/Hinkal/resetMerkleTrees.mjs +54 -108
- package/data-structures/IndexedDB/activity-db.cjs +1 -1
- package/data-structures/IndexedDB/activity-db.d.ts +0 -1
- package/data-structures/IndexedDB/activity-db.mjs +79 -97
- package/data-structures/IndexedDB/balances-db.cjs +1 -1
- package/data-structures/IndexedDB/balances-db.mjs +39 -43
- package/data-structures/IndexedDB/contact-db.cjs +1 -1
- package/data-structures/IndexedDB/contact-db.mjs +31 -36
- package/data-structures/IndexedDB/signatures-db.cjs +1 -1
- package/data-structures/IndexedDB/signatures-db.mjs +40 -26
- package/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
- package/data-structures/TokenDBs/EventsPublicTokensDB.mjs +82 -82
- package/data-structures/TokenDBs/token-visibility-db.cjs +1 -1
- package/data-structures/TokenDBs/token-visibility-db.mjs +36 -22
- package/data-structures/crypto-keys/decodeUTXO.cjs +1 -1
- package/data-structures/crypto-keys/decodeUTXO.mjs +45 -45
- package/data-structures/crypto-keys/encryptDecryptUtxo.cjs +1 -1
- package/data-structures/crypto-keys/encryptDecryptUtxo.mjs +28 -27
- package/data-structures/crypto-keys/keys.cjs +1 -1
- package/data-structures/crypto-keys/keys.d.ts +10 -0
- package/data-structures/crypto-keys/keys.mjs +106 -47
- package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.cjs +1 -1
- package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.d.ts +2 -3
- package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.mjs +9 -9
- package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.cjs +1 -1
- package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.d.ts +2 -3
- package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.mjs +5 -5
- package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.cjs +1 -1
- package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.d.ts +2 -3
- package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.mjs +6 -6
- package/data-structures/event-service/evm/AbstractEventService.cjs +1 -1
- package/data-structures/event-service/evm/AbstractEventService.d.ts +2 -4
- package/data-structures/event-service/evm/AbstractEventService.mjs +13 -13
- package/data-structures/event-service/evm/AbstractNullifierSnapshotService.cjs +1 -1
- package/data-structures/event-service/evm/AbstractNullifierSnapshotService.d.ts +2 -3
- package/data-structures/event-service/evm/AbstractNullifierSnapshotService.mjs +3 -3
- package/data-structures/event-service/evm/AbstractSnapshotService.cjs +1 -1
- package/data-structures/event-service/evm/AbstractSnapshotService.d.ts +2 -1
- package/data-structures/event-service/evm/AbstractSnapshotService.mjs +6 -2
- package/data-structures/event-service/evm/BlockchainEventEmitter.cjs +1 -1
- package/data-structures/event-service/evm/BlockchainEventEmitter.d.ts +5 -10
- package/data-structures/event-service/evm/BlockchainEventEmitter.mjs +40 -40
- package/data-structures/event-service/index.d.ts +0 -4
- package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.cjs +1 -1
- package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.d.ts +2 -3
- package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.mjs +6 -6
- package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.cjs +1 -1
- package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.d.ts +3 -4
- package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.mjs +8 -8
- package/data-structures/event-service/solana/AbstractSolanaEventService.cjs +1 -1
- package/data-structures/event-service/solana/AbstractSolanaEventService.d.ts +10 -4
- package/data-structures/event-service/solana/AbstractSolanaEventService.mjs +7 -10
- package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.cjs +1 -1
- package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.d.ts +2 -3
- package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.mjs +2 -2
- package/data-structures/event-service/solana/AbstractSolanaSnapshotService.cjs +1 -1
- package/data-structures/event-service/solana/AbstractSolanaSnapshotService.d.ts +2 -1
- package/data-structures/event-service/solana/AbstractSolanaSnapshotService.mjs +2 -1
- package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.cjs +1 -1
- package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.d.ts +16 -11
- package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.mjs +66 -64
- package/data-structures/index.d.ts +0 -3
- package/data-structures/presale/PresaleContractWrapper.cjs +1 -1
- package/data-structures/presale/PresaleContractWrapper.d.ts +3 -3
- package/data-structures/presale/PresaleContractWrapper.mjs +10 -10
- package/data-structures/provider-adapter/IProviderAdapter.d.ts +16 -11
- package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.cjs +1 -1
- package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.mjs +18 -18
- package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.cjs +1 -1
- package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.mjs +9 -9
- package/data-structures/snapshot/evm-snapshots/ClientCommitmentsSnapshotService.cjs +1 -1
- package/data-structures/snapshot/evm-snapshots/ClientCommitmentsSnapshotService.mjs +4 -6
- package/data-structures/snapshot/evm-snapshots/ClientNullifierSnapshotService.cjs +1 -1
- package/data-structures/snapshot/evm-snapshots/ClientNullifierSnapshotService.mjs +4 -6
- package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.cjs +1 -1
- package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.mjs +4 -6
- package/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.cjs +1 -1
- package/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.mjs +4 -5
- package/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.cjs +1 -1
- package/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.mjs +4 -6
- package/error-handling/error-codes.constants.cjs +1 -1
- package/error-handling/error-codes.constants.d.ts +0 -1
- package/error-handling/error-codes.constants.mjs +3 -4
- package/error-handling/get-error.message.cjs +1 -1
- package/error-handling/get-error.message.mjs +27 -22
- package/error-handling/handleErrorRestore.cjs +1 -0
- package/error-handling/handleErrorRestore.d.ts +2 -0
- package/error-handling/handleErrorRestore.mjs +11 -0
- package/error-handling/index.d.ts +1 -0
- package/functions/kyc/authentoHelper.cjs +1 -0
- package/functions/kyc/authentoHelper.d.ts +12 -0
- package/functions/kyc/authentoHelper.mjs +30 -0
- package/functions/kyc/zkMeHelper.cjs +1 -1
- package/functions/kyc/zkMeHelper.mjs +16 -17
- package/functions/pre-transaction/constructAdminData.cjs +1 -1
- package/functions/pre-transaction/constructAdminData.d.ts +2 -2
- package/functions/pre-transaction/constructAdminData.mjs +18 -12
- package/functions/pre-transaction/getExternalSwapAddress.cjs +1 -1
- package/functions/pre-transaction/getExternalSwapAddress.d.ts +2 -1
- package/functions/pre-transaction/getExternalSwapAddress.mjs +8 -8
- package/functions/pre-transaction/getFlatFees.cjs +1 -1
- package/functions/pre-transaction/getFlatFees.mjs +2 -3
- package/functions/pre-transaction/getSolanaCalldataHash.cjs +1 -1
- package/functions/pre-transaction/getSolanaCalldataHash.mjs +21 -21
- package/functions/pre-transaction/getVolatileTransferAmount.cjs +1 -1
- package/functions/pre-transaction/getVolatileTransferAmount.mjs +36 -22
- package/functions/pre-transaction/interaction-to-action.cjs +1 -1
- package/functions/pre-transaction/interaction-to-action.mjs +2 -3
- package/functions/pre-transaction/merge-with-fee-structure-emporium.cjs +1 -1
- package/functions/pre-transaction/merge-with-fee-structure-emporium.d.ts +1 -1
- package/functions/pre-transaction/merge-with-fee-structure-emporium.mjs +17 -17
- package/functions/pre-transaction/outputApprovalDataProcessing.cjs +1 -1
- package/functions/pre-transaction/outputApprovalDataProcessing.d.ts +9 -1
- package/functions/pre-transaction/outputApprovalDataProcessing.mjs +34 -19
- package/functions/pre-transaction/sendV0Transaction.cjs +1 -1
- package/functions/pre-transaction/sendV0Transaction.mjs +50 -53
- package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.cjs +1 -1
- package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.d.ts +1 -1
- package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.mjs +4 -4
- package/functions/private-wallet/emporium.helpers.cjs +1 -1
- package/functions/private-wallet/emporium.helpers.d.ts +12 -10
- package/functions/private-wallet/emporium.helpers.mjs +139 -102
- package/functions/private-wallet/emporium.swap.helpers.cjs +1 -1
- package/functions/private-wallet/emporium.swap.helpers.d.ts +4 -1
- package/functions/private-wallet/emporium.swap.helpers.mjs +106 -103
- package/functions/private-wallet/opProducer.cjs +1 -1
- package/functions/private-wallet/opProducer.mjs +1 -1
- package/functions/snarkjs/common.snarkjs.cjs +1 -1
- package/functions/snarkjs/common.snarkjs.mjs +21 -18
- package/functions/snarkjs/constructEmporiumProof.cjs +1 -1
- package/functions/snarkjs/constructEmporiumProof.mjs +49 -49
- package/functions/snarkjs/constructSolanaZkProof.cjs +1 -1
- package/functions/snarkjs/constructSolanaZkProof.mjs +11 -10
- package/functions/snarkjs/fetchMerkleTreeSiblings.cjs +1 -1
- package/functions/snarkjs/fetchMerkleTreeSiblings.mjs +10 -11
- package/functions/utils/addresses.cjs +1 -1
- package/functions/utils/addresses.d.ts +0 -1
- package/functions/utils/addresses.mjs +11 -12
- package/functions/utils/cacheFunctions.cjs +1 -1
- package/functions/utils/cacheFunctions.d.ts +1 -1
- package/functions/utils/cacheFunctions.mjs +55 -54
- package/functions/utils/convertEmporiumOpToCallInfo.cjs +1 -1
- package/functions/utils/convertEmporiumOpToCallInfo.mjs +5 -5
- package/functions/utils/create-provider.cjs +1 -1
- package/functions/utils/create-provider.d.ts +2 -2
- package/functions/utils/create-provider.mjs +7 -11
- package/functions/utils/encryptInputForEnclave.cjs +1 -1
- package/functions/utils/encryptInputForEnclave.mjs +9 -9
- package/functions/utils/ethers-formatter.utils.d.ts +1 -1
- package/functions/utils/external-action.utils.cjs +1 -1
- package/functions/utils/external-action.utils.mjs +2 -2
- package/functions/utils/get-hinkal-approvals.cjs +1 -0
- package/functions/utils/get-hinkal-approvals.d.ts +3 -0
- package/functions/utils/get-hinkal-approvals.mjs +38 -0
- package/functions/utils/getContractAddress.cjs +1 -0
- package/functions/utils/getContractAddress.d.ts +2 -0
- package/functions/utils/getContractAddress.mjs +9 -0
- package/functions/utils/getDataFromTransaction.cjs +1 -1
- package/functions/utils/getDataFromTransaction.d.ts +0 -11
- package/functions/utils/getDataFromTransaction.mjs +26 -50
- package/functions/utils/getRecipientInfoFromUserKeys.cjs +1 -1
- package/functions/utils/getRecipientInfoFromUserKeys.mjs +1 -1
- package/functions/utils/getSignerFromContract.cjs +1 -0
- package/functions/utils/getSignerFromContract.d.ts +3 -0
- package/functions/utils/getSignerFromContract.mjs +16 -0
- package/functions/utils/getUtxosFromReceipt.utils.cjs +1 -1
- package/functions/utils/getUtxosFromReceipt.utils.d.ts +1 -1
- package/functions/utils/getUtxosFromReceipt.utils.mjs +14 -15
- package/functions/utils/inLogicMetadata.cjs +1 -1
- package/functions/utils/inLogicMetadata.mjs +2 -2
- package/functions/utils/index.d.ts +1 -0
- package/functions/utils/involves-permit2-op.cjs +1 -1
- package/functions/utils/involves-permit2-op.d.ts +1 -0
- package/functions/utils/involves-permit2-op.mjs +6 -4
- package/functions/utils/mutexes.utils.cjs +1 -1
- package/functions/utils/mutexes.utils.d.ts +1 -1
- package/functions/utils/mutexes.utils.mjs +3 -3
- package/functions/utils/nftTokenFunctions.cjs +1 -1
- package/functions/utils/nftTokenFunctions.mjs +23 -9
- package/functions/utils/prepareHinkal.cjs +1 -1
- package/functions/utils/prepareHinkal.d.ts +13 -6
- package/functions/utils/prepareHinkal.mjs +72 -45
- package/functions/utils/publicBalance.utils.cjs +1 -1
- package/functions/utils/publicBalance.utils.d.ts +1 -1
- package/functions/utils/publicBalance.utils.mjs +62 -57
- package/functions/utils/replaceAddressInCalldata.cjs +1 -0
- package/functions/utils/replaceAddressInCalldata.d.ts +1 -0
- package/functions/utils/replaceAddressInCalldata.mjs +7 -0
- package/functions/utils/rpc-int-encode.cjs +1 -1
- package/functions/utils/rpc-int-encode.d.ts +1 -2
- package/functions/utils/rpc-int-encode.mjs +3 -6
- package/functions/utils/solanaMint.utils.cjs +1 -1
- package/functions/utils/solanaMint.utils.mjs +6 -6
- package/functions/utils/string.utils.cjs +1 -1
- package/functions/utils/string.utils.d.ts +0 -1
- package/functions/utils/string.utils.mjs +14 -18
- package/functions/utils/token-check.utils.cjs +1 -1
- package/functions/utils/token-check.utils.d.ts +0 -3
- package/functions/utils/token-check.utils.mjs +7 -18
- package/functions/utils/upToDateState.cjs +1 -1
- package/functions/utils/upToDateState.d.ts +1 -1
- package/functions/utils/upToDateState.mjs +4 -4
- package/functions/utils/walletBalances.utils.cjs +1 -1
- package/functions/utils/walletBalances.utils.d.ts +17 -2
- package/functions/utils/walletBalances.utils.mjs +36 -5
- package/functions/web3/EIP-712.cjs +1 -1
- package/functions/web3/EIP-712.d.ts +4 -4
- package/functions/web3/EIP-712.mjs +1 -1
- package/functions/web3/etherFunctions.cjs +1 -1
- package/functions/web3/etherFunctions.mjs +32 -29
- package/functions/web3/events/balanceChangedCustomHandler.cjs +1 -1
- package/functions/web3/events/balanceChangedCustomHandler.mjs +4 -5
- package/functions/web3/events/balanceChangedHandler.cjs +1 -1
- package/functions/web3/events/balanceChangedHandler.mjs +2 -3
- package/functions/web3/events/getApprovedBalance.cjs +1 -1
- package/functions/web3/events/getApprovedBalance.d.ts +4 -3
- package/functions/web3/events/getApprovedBalance.mjs +44 -39
- package/functions/web3/events/getInputUtxoAndBalance.cjs +1 -1
- package/functions/web3/events/getInputUtxoAndBalance.d.ts +3 -3
- package/functions/web3/events/getInputUtxoAndBalance.mjs +150 -129
- package/functions/web3/events/getInputUtxosEnclave.cjs +1 -1
- package/functions/web3/events/getInputUtxosEnclave.mjs +20 -20
- package/functions/web3/events/getShieldedBalance.cjs +2 -2
- package/functions/web3/events/getShieldedBalance.d.ts +1 -1
- package/functions/web3/events/getShieldedBalance.mjs +75 -73
- package/functions/web3/events/getTransactionLogEvents.cjs +1 -1
- package/functions/web3/events/getTransactionLogEvents.d.ts +3 -3
- package/functions/web3/events/getTransactionLogEvents.mjs +41 -40
- package/functions/web3/events/index.d.ts +0 -1
- package/functions/web3/fetchSolanaMerkleTreeRootHash.cjs +1 -1
- package/functions/web3/fetchSolanaMerkleTreeRootHash.d.ts +1 -2
- package/functions/web3/fetchSolanaMerkleTreeRootHash.mjs +12 -16
- package/functions/web3/functionCalls/accessTokenCalls.cjs +1 -1
- package/functions/web3/functionCalls/accessTokenCalls.d.ts +6 -1
- package/functions/web3/functionCalls/accessTokenCalls.mjs +20 -12
- package/functions/web3/functionCalls/approveToken.cjs +1 -1
- package/functions/web3/functionCalls/approveToken.d.ts +1 -1
- package/functions/web3/functionCalls/approveToken.mjs +68 -69
- package/functions/web3/functionCalls/approveTokensToHinkal.cjs +1 -1
- package/functions/web3/functionCalls/approveTokensToHinkal.d.ts +1 -1
- package/functions/web3/functionCalls/approveTokensToHinkal.mjs +6 -6
- package/functions/web3/functionCalls/constructBatchCall.cjs +1 -1
- package/functions/web3/functionCalls/constructBatchCall.d.ts +2 -2
- package/functions/web3/functionCalls/constructBatchCall.mjs +10 -9
- package/functions/web3/functionCalls/estimateGasRelayer.cjs +1 -1
- package/functions/web3/functionCalls/estimateGasRelayer.d.ts +2 -1
- package/functions/web3/functionCalls/estimateGasRelayer.mjs +10 -10
- package/functions/web3/functionCalls/inHinkalApprovalCalls.cjs +1 -0
- package/functions/web3/functionCalls/inHinkalApprovalCalls.d.ts +5 -0
- package/functions/web3/functionCalls/inHinkalApprovalCalls.mjs +29 -0
- package/functions/web3/functionCalls/recoverTransactionFromError.d.ts +1 -1
- package/functions/web3/functionCalls/transactCallDirect.cjs +1 -1
- package/functions/web3/functionCalls/transactCallDirect.d.ts +1 -1
- package/functions/web3/functionCalls/transactCallDirect.mjs +47 -39
- package/functions/web3/functionCalls/transactCallRelayer.cjs +1 -1
- package/functions/web3/functionCalls/transactCallRelayer.d.ts +3 -3
- package/functions/web3/functionCalls/transactCallRelayer.mjs +54 -56
- package/functions/web3/getContractMetadata.cjs +1 -1
- package/functions/web3/getContractMetadata.d.ts +1 -1
- package/functions/web3/getContractMetadata.mjs +21 -16
- package/functions/web3/getPublicAddressBalance.cjs +1 -1
- package/functions/web3/getPublicAddressBalance.d.ts +1 -1
- package/functions/web3/getPublicAddressBalance.mjs +7 -6
- package/functions/web3/getTokenHolder.cjs +1 -1
- package/functions/web3/getTokenHolder.mjs +32 -31
- package/functions/web3/index.d.ts +0 -1
- package/functions/web3/lifiAPI.cjs +1 -1
- package/functions/web3/lifiAPI.d.ts +1 -1
- package/functions/web3/lifiAPI.mjs +12 -12
- package/functions/web3/odosAPI.cjs +1 -1
- package/functions/web3/odosAPI.mjs +15 -3
- package/functions/web3/okxAPI.cjs +1 -1
- package/functions/web3/okxAPI.mjs +13 -13
- package/functions/web3/oneInchAPI.cjs +1 -1
- package/functions/web3/oneInchAPI.mjs +20 -8
- package/functions/web3/runContractFunction.cjs +1 -1
- package/functions/web3/runContractFunction.d.ts +6 -5
- package/functions/web3/runContractFunction.mjs +60 -46
- package/functions/web3/uniswapAPI.cjs +1 -1
- package/functions/web3/uniswapAPI.d.ts +2 -2
- package/functions/web3/uniswapAPI.mjs +49 -38
- package/index.cjs +1 -1
- package/index.mjs +912 -914
- package/package.json +4 -6
- package/providers/CustomEthersProvider.d.ts +1 -1
- package/providers/EthersProviderAdapter.cjs +1 -1
- package/providers/EthersProviderAdapter.d.ts +21 -14
- package/providers/EthersProviderAdapter.mjs +86 -53
- package/providers/SolanaProviderAdapter.cjs +1 -1
- package/providers/SolanaProviderAdapter.d.ts +12 -8
- package/providers/SolanaProviderAdapter.mjs +31 -16
- package/providers/WagmiProviderAdapter.cjs +1 -1
- package/providers/WagmiProviderAdapter.d.ts +20 -14
- package/providers/WagmiProviderAdapter.mjs +126 -91
- package/providers/prepareEthersHinkal.cjs +1 -1
- package/providers/prepareEthersHinkal.d.ts +2 -2
- package/providers/prepareEthersHinkal.mjs +9 -16
- package/providers/prepareWagmiHinkal.cjs +1 -1
- package/providers/prepareWagmiHinkal.mjs +9 -17
- package/types/TransactionSimulator.types.d.ts +9 -2
- package/types/activities.types.d.ts +2 -5
- package/types/admin.types.cjs +1 -1
- package/types/admin.types.d.ts +6 -0
- package/types/admin.types.mjs +2 -2
- package/types/balances.types.d.ts +1 -0
- package/types/big-intable.types.d.ts +3 -2
- package/types/bridging.types.d.ts +29 -0
- package/types/cache.types.cjs +1 -1
- package/types/cache.types.d.ts +3 -6
- package/types/cache.types.mjs +1 -1
- package/types/coingecko.types.d.ts +0 -5
- package/types/duneAPI.types.d.ts +9 -0
- package/types/ethereum-network.types.d.ts +10 -11
- package/types/hinkal.types.cjs +1 -1
- package/types/hinkal.types.d.ts +1 -1
- package/types/hinkal.types.mjs +18 -18
- package/types/index.d.ts +2 -2
- package/types/proxy.types.d.ts +3 -6
- package/types/sandbox.types.cjs +1 -1
- package/types/sandbox.types.d.ts +39 -10
- package/types/sandbox.types.mjs +2 -2
- package/types/scheduled-transactions.types.cjs +1 -1
- package/types/scheduled-transactions.types.d.ts +6 -0
- package/types/scheduled-transactions.types.mjs +3 -2
- package/types/session.types.d.ts +0 -2
- package/types/solana.types.d.ts +0 -9
- package/types/token-prices.types.cjs +1 -1
- package/types/token-prices.types.d.ts +0 -7
- package/types/token-prices.types.mjs +2 -4
- package/types/transactions.types.cjs +1 -1
- package/types/transactions.types.d.ts +2 -3
- package/types/transactions.types.mjs +6 -7
- package/webworker/snarkjsWorker/snarkjsWorkerLauncher.cjs +1 -1
- package/webworker/snarkjsWorker/snarkjsWorkerLauncher.mjs +1 -1
- package/webworker/utxoWorker/utxoWorkerLauncher.cjs +1 -1
- package/webworker/utxoWorker/utxoWorkerLauncher.mjs +1 -1
- package/webworker/utxoWorker/utxoWorkerLogic.cjs +1 -1
- package/webworker/utxoWorker/utxoWorkerLogic.mjs +1 -1
- package/webworker/viteWorkerURL.constant.cjs +3 -3
- package/webworker/viteWorkerURL.constant.mjs +3 -3
- package/webworker/zkProofWorker/zkProofWorkerLauncher.cjs +1 -1
- package/webworker/zkProofWorker/zkProofWorkerLauncher.mjs +1 -1
- package/API/get-token-price-chart-data.cjs +0 -1
- package/API/get-token-price-chart-data.d.ts +0 -16
- package/API/get-token-price-chart-data.mjs +0 -13
- package/API/onrampCalls.cjs +0 -1
- package/API/onrampCalls.d.ts +0 -20
- package/API/onrampCalls.mjs +0 -15
- package/API/unspent-utxos-calls.cjs +0 -1
- package/API/unspent-utxos-calls.d.ts +0 -26
- package/API/unspent-utxos-calls.mjs +0 -26
- package/data-structures/AccountActions/AccountActions.cjs +0 -1
- package/data-structures/AccountActions/AccountActions.d.ts +0 -18
- package/data-structures/AccountActions/AccountActions.mjs +0 -78
- package/data-structures/AccountActions/index.d.ts +0 -1
- package/data-structures/BlockchainEvent/BlockchainEvent.cjs +0 -1
- package/data-structures/BlockchainEvent/BlockchainEvent.d.ts +0 -14
- package/data-structures/BlockchainEvent/BlockchainEvent.mjs +0 -41
- package/data-structures/PublicBalance/PublicBalanceWatcher.cjs +0 -1
- package/data-structures/PublicBalance/PublicBalanceWatcher.d.ts +0 -20
- package/data-structures/PublicBalance/PublicBalanceWatcher.mjs +0 -124
- package/data-structures/PublicBalance/SolanaPublicBalancerWatcher.cjs +0 -1
- package/data-structures/PublicBalance/SolanaPublicBalancerWatcher.d.ts +0 -15
- package/data-structures/PublicBalance/SolanaPublicBalancerWatcher.mjs +0 -64
- package/data-structures/PublicBalance/index.d.ts +0 -2
- package/data-structures/event-service/evm/ClientBlockchainEventEmitter.cjs +0 -1
- package/data-structures/event-service/evm/ClientBlockchainEventEmitter.d.ts +0 -11
- package/data-structures/event-service/evm/ClientBlockchainEventEmitter.mjs +0 -21
- package/data-structures/event-service/evm/PollingBlockchainEventEmitter.cjs +0 -1
- package/data-structures/event-service/evm/PollingBlockchainEventEmitter.d.ts +0 -6
- package/data-structures/event-service/evm/PollingBlockchainEventEmitter.mjs +0 -16
- package/data-structures/event-service/helpers/ClientEventHelper.cjs +0 -1
- package/data-structures/event-service/helpers/ClientEventHelper.d.ts +0 -11
- package/data-structures/event-service/helpers/ClientEventHelper.mjs +0 -26
- package/data-structures/event-service/helpers/PollingEventHelper.cjs +0 -1
- package/data-structures/event-service/helpers/PollingEventHelper.d.ts +0 -5
- package/data-structures/event-service/helpers/PollingEventHelper.mjs +0 -14
- package/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.cjs +0 -1
- package/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.d.ts +0 -11
- package/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.mjs +0 -22
- package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.cjs +0 -1
- package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.d.ts +0 -6
- package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.mjs +0 -16
- package/functions/utils/enum.utils.cjs +0 -1
- package/functions/utils/enum.utils.mjs +0 -14
- package/functions/utils/socket.utils.cjs +0 -1
- package/functions/utils/socket.utils.d.ts +0 -1
- package/functions/utils/socket.utils.mjs +0 -12
- package/functions/web3/crypto.cjs +0 -1
- package/functions/web3/crypto.d.ts +0 -1
- package/functions/web3/crypto.mjs +0 -7
- package/functions/web3/events/web3RetrieveEvents.cjs +0 -1
- package/functions/web3/events/web3RetrieveEvents.d.ts +0 -14
- package/functions/web3/events/web3RetrieveEvents.mjs +0 -9
- package/types/events.types.cjs +0 -1
- package/types/events.types.d.ts +0 -9
- package/types/events.types.mjs +0 -5
- package/types/onramp.types.cjs +0 -1
- package/types/onramp.types.d.ts +0 -58
- package/types/onramp.types.mjs +0 -4
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hinkal/common",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.23",
|
|
4
4
|
"homepage": "hinkal.io",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Hinkal Protocol"
|
|
@@ -62,21 +62,19 @@
|
|
|
62
62
|
"buffer": "6.0.3",
|
|
63
63
|
"circomlibjs-hinkal-fork": "^0.0.3",
|
|
64
64
|
"dotenv": "^16.4.5",
|
|
65
|
-
"ethers
|
|
65
|
+
"ethers": "^6.15.0",
|
|
66
66
|
"idb-keyval": "6.2.1",
|
|
67
67
|
"multiformats": "^9.4.2",
|
|
68
68
|
"snarkjs": "0.7.5",
|
|
69
|
-
"libsodium-wrappers": "^0.
|
|
69
|
+
"libsodium-wrappers": "^0.8.2",
|
|
70
70
|
"tweetnacl": "^1.0.3",
|
|
71
71
|
"process": "0.11.10",
|
|
72
72
|
"ua-parser-js": "^1.0.37",
|
|
73
73
|
"uuid": "^9.0.1",
|
|
74
|
-
"node-forge": "^1.3.1"
|
|
75
|
-
"socket.io-client": "^4.8.3"
|
|
74
|
+
"node-forge": "^1.3.1"
|
|
76
75
|
},
|
|
77
76
|
"peerDependencies": {
|
|
78
77
|
"wagmi": "2.13.3",
|
|
79
|
-
"ethers": "5.x",
|
|
80
78
|
"@walletconnect/utils": "^2.17.2"
|
|
81
79
|
},
|
|
82
80
|
"peerDependenciesMeta": {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ethers } from 'ethers';
|
|
2
|
-
export declare class CustomEthersProvider implements ethers.
|
|
2
|
+
export declare class CustomEthersProvider implements ethers.Eip1193Provider {
|
|
3
3
|
private rpcUrl;
|
|
4
4
|
private nextId;
|
|
5
5
|
constructor(rpcUrl: string);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("../constants/chains.constants.cjs"),n=require("../error-handling/error-codes.constants.cjs"),h=require("ethers"),o=require("../functions/web3/getContractMetadata.cjs"),d=require("../functions/utils/create-provider.cjs");class s{signer;chainId;originalProvider;fetchProvider;chainEventListener;initConnector(){}initSigner(r){this.signer=r}requireSigner(){if(!this.signer)throw Error("No Connector In Provider Adapter")}async init(r){this.requireSigner(),r&&(this.chainId=r);const e=this.signer.provider,t=this.createFetchProvider();t?(this.originalProvider=t,this.fetchProvider=t):(this.originalProvider=e??void 0,this.fetchProvider=t??e??void 0),this.fetchProvider===e&&console.warn("fetchProvider not available, falling back to signer provider")}async disconnectFromConnector(){}async connectToConnector(){return 0}async waitForTransaction(r,e){if((await this.fetchProvider?.waitForTransaction(r,e))?.status)return!0;throw Error(n.transactionErrorCodes.TRANSACTION_NOT_CONFIRMED)}async signMessage(r){this.requireSigner();const e=await this.signer.signMessage(r);if(!e)throw new Error(n.transactionErrorCodes.SIGNING_FAILED);if(e.includes("error"))throw new Error(n.transactionErrorCodes.SIGNATURE_UNSUPPORTED_PERSONAL_SIGN);return e}async signTypedData(r,e,t){return this.signer.signTypedData(r,e,t)}getSelectedNetwork=()=>{if(!this.chainId)throw new Error("Illegal state: no chaindId");return i.networkRegistry[this.chainId]};async switchNetwork(r){if(this.originalProvider=this.createFetchProvider(r)??this.originalProvider,!this.originalProvider)throw new Error("switchNetwork illegal state: no provider");this.signer=this.signer?.connect(this.originalProvider),this.chainEventListener?.onChainChanged(r.chainId)}async switchAccount(r){const e=this.createFetchProvider();if(!e)throw new Error("can't create new fetch provider");this.signer=r.connect(e),await this.onAccountChanged(),this.chainEventListener?.onAccountChanged()}createFetchProvider(r){try{const t=(r??i.networkRegistry[this.chainId])?.fetchRpcUrl;return t?d.createCustomRpcProvider(t):void 0}catch(e){console.log("create Fetch Provider error",e);return}}async getAddress(){this.requireSigner();const r=await this.signer.getAddress();if(!r)throw new Error("IllegalState");return h.ethers.getAddress(r)}setChainEventListener(r){this.chainEventListener=r}onAccountChanged(){return this.init()}onChainChanged(r){return this.init(r)}release(){this.removeListeners()}removeListeners(){this.chainEventListener=void 0}parseChainIdParam(r){const e=r??this.chainId;if(!e)throw new Error("No chainId provided in context");return e}getContractMetadata(r,e){const t=this.parseChainIdParam(e);return o.getContractMetadata(r,t)}getContract(r,e=void 0,t,a){const c=this.parseChainIdParam(t);return o.getContract(r,c,e,a)}getContractWithSigner(r,e=void 0){if(!this.signer)throw new Error("IllegalState: no signer");return this.getContract(r,e,void 0,this.signer)}getContractWithFetcher(r,e=void 0){if(!this.fetchProvider)throw new Error("fetchProvider not initialized");return this.getContract(r,e,void 0,this.fetchProvider)}getContractWithFetcherForEthereum(r,e=void 0){const t=this.chainId===i.chainIds.localhost&&i.localhostNetwork===i.chainIds.ethMainnet?i.chainIds.localhost:i.chainIds.ethMainnet;return o.getContractWithFetcherByChainId(t,r,e)}async sendTransaction(r){if(!this.signer)throw new Error("IllegalState: no signer");return await this.signer.sendTransaction(r)}async connectAndPatchProvider(){this.requireSigner();const{chainId:r}=await this.signer.provider.getNetwork();return Number(r)}isPermitterAvailable(){return!1}async getGasPrice(){const r=(await this.fetchProvider?.getFeeData())?.gasPrice;if(!r)throw Error("Could not fetch gas price in getGasPrice");return r}}const g=new s,v=()=>new s;exports.EthersProviderAdapter=s;exports.default=v;exports.ethersProvierAdapter=g;
|
|
@@ -1,34 +1,41 @@
|
|
|
1
1
|
import { ChainEventListener, IProviderAdapter } from '../data-structures/provider-adapter/IProviderAdapter';
|
|
2
|
-
import { ContractType, EthereumNetwork } from '../types/ethereum-network.types';
|
|
3
|
-
import { ethers
|
|
4
|
-
export declare class EthersProviderAdapter implements IProviderAdapter<Signer> {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
private
|
|
2
|
+
import { ContractMetadata, ContractType, EthereumNetwork } from '../types/ethereum-network.types';
|
|
3
|
+
import { ethers } from 'ethers';
|
|
4
|
+
export declare class EthersProviderAdapter implements IProviderAdapter<ethers.Signer> {
|
|
5
|
+
signer: ethers.Signer | undefined;
|
|
6
|
+
chainId: number | undefined;
|
|
7
|
+
private originalProvider;
|
|
8
|
+
private fetchProvider;
|
|
8
9
|
protected chainEventListener?: ChainEventListener;
|
|
9
|
-
constructor();
|
|
10
10
|
initConnector(): void;
|
|
11
|
-
initSigner(signer: Signer): void;
|
|
11
|
+
initSigner(signer: ethers.Signer): void;
|
|
12
|
+
requireSigner(): void;
|
|
12
13
|
init(chainId?: number): Promise<void>;
|
|
13
14
|
disconnectFromConnector(): Promise<void>;
|
|
14
15
|
connectToConnector(): Promise<number>;
|
|
15
|
-
waitForTransaction(
|
|
16
|
+
waitForTransaction(transactionHash: string, confirmations: number): Promise<boolean>;
|
|
16
17
|
signMessage(message: string): Promise<string>;
|
|
17
18
|
signTypedData(domain: ethers.TypedDataDomain, types: Record<string, ethers.TypedDataField[]>, value: Record<string, unknown>): Promise<string>;
|
|
19
|
+
getSelectedNetwork: () => EthereumNetwork | undefined;
|
|
18
20
|
switchNetwork(network: EthereumNetwork): Promise<void>;
|
|
21
|
+
switchAccount(newSigner: ethers.Signer): Promise<void>;
|
|
22
|
+
private createFetchProvider;
|
|
19
23
|
getAddress(): Promise<string>;
|
|
20
24
|
setChainEventListener(chainEventListener: ChainEventListener): void;
|
|
21
25
|
onAccountChanged(): Promise<unknown>;
|
|
22
26
|
onChainChanged(chainId?: number): Promise<unknown>;
|
|
23
27
|
release(): void;
|
|
24
28
|
private removeListeners;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
+
private parseChainIdParam;
|
|
30
|
+
getContractMetadata(contractType: ContractType, chainId?: number): ContractMetadata;
|
|
31
|
+
getContract(contractType: ContractType, contractAddress?: undefined, chainId?: number, runner?: ethers.ContractRunner): ethers.Contract;
|
|
32
|
+
getContractWithSigner(contract: ContractType, contractAddress?: undefined): ethers.Contract;
|
|
33
|
+
getContractWithFetcher(contract: ContractType, contractAddress?: undefined): ethers.Contract;
|
|
34
|
+
getContractWithFetcherForEthereum(contract: ContractType, contractAddress?: undefined): ethers.Contract;
|
|
35
|
+
sendTransaction(tx: ethers.TransactionRequest): Promise<ethers.TransactionResponse>;
|
|
29
36
|
connectAndPatchProvider(): Promise<number>;
|
|
30
37
|
isPermitterAvailable(): boolean;
|
|
31
|
-
getGasPrice(
|
|
38
|
+
getGasPrice(): Promise<bigint>;
|
|
32
39
|
}
|
|
33
40
|
export declare const ethersProvierAdapter: EthersProviderAdapter;
|
|
34
41
|
declare const _default: <T = unknown>() => IProviderAdapter<T>;
|
|
@@ -1,63 +1,81 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { transactionErrorCodes as
|
|
3
|
-
import {
|
|
4
|
-
import { getContract as
|
|
5
|
-
import { createCustomRpcProvider as
|
|
6
|
-
class
|
|
1
|
+
import { networkRegistry as o, chainIds as i, localhostNetwork as h } from "../constants/chains.constants.mjs";
|
|
2
|
+
import { transactionErrorCodes as n } from "../error-handling/error-codes.constants.mjs";
|
|
3
|
+
import { ethers as d } from "ethers";
|
|
4
|
+
import { getContractMetadata as g, getContract as v, getContractWithFetcherByChainId as l } from "../functions/web3/getContractMetadata.mjs";
|
|
5
|
+
import { createCustomRpcProvider as w } from "../functions/utils/create-provider.mjs";
|
|
6
|
+
class s {
|
|
7
7
|
signer;
|
|
8
8
|
chainId;
|
|
9
|
-
|
|
9
|
+
originalProvider;
|
|
10
|
+
fetchProvider;
|
|
10
11
|
chainEventListener;
|
|
11
|
-
constructor() {
|
|
12
|
-
s.forEach((r) => {
|
|
13
|
-
o(r) || (this.fetchProviders[r] = h(r));
|
|
14
|
-
});
|
|
15
|
-
}
|
|
16
12
|
initConnector() {
|
|
17
13
|
}
|
|
18
14
|
initSigner(r) {
|
|
19
15
|
this.signer = r;
|
|
20
16
|
}
|
|
17
|
+
requireSigner() {
|
|
18
|
+
if (!this.signer)
|
|
19
|
+
throw Error("No Connector In Provider Adapter");
|
|
20
|
+
}
|
|
21
21
|
async init(r) {
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
this.requireSigner(), r && (this.chainId = r);
|
|
23
|
+
const e = this.signer.provider, t = this.createFetchProvider();
|
|
24
|
+
t ? (this.originalProvider = t, this.fetchProvider = t) : (this.originalProvider = e ?? void 0, this.fetchProvider = t ?? e ?? void 0), this.fetchProvider === e && console.warn("fetchProvider not available, falling back to signer provider");
|
|
24
25
|
}
|
|
25
26
|
async disconnectFromConnector() {
|
|
26
27
|
}
|
|
27
28
|
async connectToConnector() {
|
|
28
29
|
return 0;
|
|
29
30
|
}
|
|
30
|
-
async waitForTransaction(r,
|
|
31
|
-
if ((await this.
|
|
31
|
+
async waitForTransaction(r, e) {
|
|
32
|
+
if ((await this.fetchProvider?.waitForTransaction(r, e))?.status)
|
|
32
33
|
return !0;
|
|
33
|
-
throw Error(
|
|
34
|
+
throw Error(n.TRANSACTION_NOT_CONFIRMED);
|
|
34
35
|
}
|
|
35
36
|
async signMessage(r) {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
37
|
+
this.requireSigner();
|
|
38
|
+
const e = await this.signer.signMessage(r);
|
|
39
|
+
if (!e)
|
|
40
|
+
throw new Error(n.SIGNING_FAILED);
|
|
41
|
+
if (e.includes("error"))
|
|
42
|
+
throw new Error(n.SIGNATURE_UNSUPPORTED_PERSONAL_SIGN);
|
|
43
|
+
return e;
|
|
44
|
+
}
|
|
45
|
+
async signTypedData(r, e, t) {
|
|
46
|
+
return this.signer.signTypedData(r, e, t);
|
|
47
|
+
}
|
|
48
|
+
getSelectedNetwork = () => {
|
|
49
|
+
if (!this.chainId)
|
|
50
|
+
throw new Error("Illegal state: no chaindId");
|
|
51
|
+
return o[this.chainId];
|
|
52
|
+
};
|
|
48
53
|
async switchNetwork(r) {
|
|
49
|
-
|
|
50
|
-
if (!t)
|
|
54
|
+
if (this.originalProvider = this.createFetchProvider(r) ?? this.originalProvider, !this.originalProvider)
|
|
51
55
|
throw new Error("switchNetwork illegal state: no provider");
|
|
52
|
-
this.signer = this.signer?.connect(
|
|
56
|
+
this.signer = this.signer?.connect(this.originalProvider), this.chainEventListener?.onChainChanged(r.chainId);
|
|
57
|
+
}
|
|
58
|
+
async switchAccount(r) {
|
|
59
|
+
const e = this.createFetchProvider();
|
|
60
|
+
if (!e)
|
|
61
|
+
throw new Error("can't create new fetch provider");
|
|
62
|
+
this.signer = r.connect(e), await this.onAccountChanged(), this.chainEventListener?.onAccountChanged();
|
|
63
|
+
}
|
|
64
|
+
createFetchProvider(r) {
|
|
65
|
+
try {
|
|
66
|
+
const t = (r ?? o[this.chainId])?.fetchRpcUrl;
|
|
67
|
+
return t ? w(t) : void 0;
|
|
68
|
+
} catch (e) {
|
|
69
|
+
console.log("create Fetch Provider error", e);
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
53
72
|
}
|
|
54
73
|
async getAddress() {
|
|
55
|
-
|
|
56
|
-
throw new Error("IllegalState: no signer");
|
|
74
|
+
this.requireSigner();
|
|
57
75
|
const r = await this.signer.getAddress();
|
|
58
76
|
if (!r)
|
|
59
77
|
throw new Error("IllegalState");
|
|
60
|
-
return
|
|
78
|
+
return d.getAddress(r);
|
|
61
79
|
}
|
|
62
80
|
setChainEventListener(r) {
|
|
63
81
|
this.chainEventListener = r;
|
|
@@ -74,18 +92,33 @@ class n {
|
|
|
74
92
|
removeListeners() {
|
|
75
93
|
this.chainEventListener = void 0;
|
|
76
94
|
}
|
|
77
|
-
|
|
78
|
-
|
|
95
|
+
parseChainIdParam(r) {
|
|
96
|
+
const e = r ?? this.chainId;
|
|
97
|
+
if (!e)
|
|
98
|
+
throw new Error("No chainId provided in context");
|
|
99
|
+
return e;
|
|
100
|
+
}
|
|
101
|
+
getContractMetadata(r, e) {
|
|
102
|
+
const t = this.parseChainIdParam(e);
|
|
103
|
+
return g(r, t);
|
|
79
104
|
}
|
|
80
|
-
|
|
105
|
+
getContract(r, e = void 0, t, a) {
|
|
106
|
+
const c = this.parseChainIdParam(t);
|
|
107
|
+
return v(r, c, e, a);
|
|
108
|
+
}
|
|
109
|
+
getContractWithSigner(r, e = void 0) {
|
|
81
110
|
if (!this.signer)
|
|
82
111
|
throw new Error("IllegalState: no signer");
|
|
83
|
-
return this.getContract(r,
|
|
112
|
+
return this.getContract(r, e, void 0, this.signer);
|
|
84
113
|
}
|
|
85
|
-
getContractWithFetcher(r,
|
|
86
|
-
if (!this.
|
|
114
|
+
getContractWithFetcher(r, e = void 0) {
|
|
115
|
+
if (!this.fetchProvider)
|
|
87
116
|
throw new Error("fetchProvider not initialized");
|
|
88
|
-
return this.getContract(r,
|
|
117
|
+
return this.getContract(r, e, void 0, this.fetchProvider);
|
|
118
|
+
}
|
|
119
|
+
getContractWithFetcherForEthereum(r, e = void 0) {
|
|
120
|
+
const t = this.chainId === i.localhost && h === i.ethMainnet ? i.localhost : i.ethMainnet;
|
|
121
|
+
return l(t, r, e);
|
|
89
122
|
}
|
|
90
123
|
async sendTransaction(r) {
|
|
91
124
|
if (!this.signer)
|
|
@@ -93,23 +126,23 @@ class n {
|
|
|
93
126
|
return await this.signer.sendTransaction(r);
|
|
94
127
|
}
|
|
95
128
|
async connectAndPatchProvider() {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
return
|
|
129
|
+
this.requireSigner();
|
|
130
|
+
const { chainId: r } = await this.signer.provider.getNetwork();
|
|
131
|
+
return Number(r);
|
|
99
132
|
}
|
|
100
133
|
isPermitterAvailable() {
|
|
101
134
|
return !1;
|
|
102
135
|
}
|
|
103
|
-
async getGasPrice(
|
|
104
|
-
const
|
|
105
|
-
if (!
|
|
136
|
+
async getGasPrice() {
|
|
137
|
+
const r = (await this.fetchProvider?.getFeeData())?.gasPrice;
|
|
138
|
+
if (!r)
|
|
106
139
|
throw Error("Could not fetch gas price in getGasPrice");
|
|
107
|
-
return
|
|
140
|
+
return r;
|
|
108
141
|
}
|
|
109
142
|
}
|
|
110
|
-
const
|
|
143
|
+
const E = new s(), m = () => new s();
|
|
111
144
|
export {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
145
|
+
s as EthersProviderAdapter,
|
|
146
|
+
m as default,
|
|
147
|
+
E as ethersProvierAdapter
|
|
115
148
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../constants/chains.constants.cjs"),n=require("../error-handling/error-codes.constants.cjs"),o=require("@coral-xyz/anchor");class c{chainId;connection;wallet;ethereumAddress;chainEventListener;anchorProvider;constructor(r,t,e,i){this.connection=r,this.chainId=t,this.wallet=e,this.ethereumAddress=i,this.initializeAnchorProvider()}initConnector(r){this.wallet=r}async init(r){r&&(this.chainId=r)}async connectToConnector(){return 0}async disconnectFromConnector(){}async connectAndPatchProvider(){if(!this.chainId)throw new Error("No Chain Id In Provider Adapter");return this.chainId}async waitForTransaction(r,t){try{return(await this.connection.confirmTransaction(r,"confirmed")).value.err===null}catch{throw Error(n.transactionErrorCodes.TRANSACTION_NOT_CONFIRMED)}}async signMessage(r){if(!this.wallet?.signMessage)throw new Error(n.transactionErrorCodes.SIGNING_FAILED);const t=typeof r=="string"?new TextEncoder().encode(r):r,{signature:e}=await this.wallet.signMessage(t,"utf8");if(!e)throw new Error(n.transactionErrorCodes.SIGNING_FAILED);return`0x${Buffer.from(e).toString("hex")}`}async getAddress(){const r=this.ethereumAddress??this.wallet?.publicKey.toString();if(!r)throw new Error("IllegalState");return r}getSelectedNetwork(){if(!this.chainId)throw new Error("Illegal state: no chainId");return a.networkRegistry[this.chainId]}setChainEventListener(r){this.chainEventListener=r}async switchNetwork(r){this.chainEventListener?.onChainChanged(r.chainId)}async switchAccount(){await this.onAccountChanged(),this.chainEventListener?.onAccountChanged()}async signTypedData(r,t,e){throw new Error("Typed data signing not supported on Solana")}async onAccountChanged(){return this.init()}async onChainChanged(r){return this.init(r)}release(){this.chainEventListener=void 0}getContractMetadata(r,t){throw new Error("Not implemented from SolanaProviderAdapter")}getContract(r,t,e){throw new Error("Not implemented from SolanaProviderAdapter")}getContractWithSigner(r,t){throw new Error("Not implemented from SolanaProviderAdapter")}getContractWithFetcher(r,t){throw new Error("Not implemented from SolanaProviderAdapter")}getContractWithFetcherForEthereum(r,t){throw new Error("Not implemented from SolanaProviderAdapter")}async sendTransaction(r){throw new Error("Not implemented from SolanaProviderAdapter")}async getGasPrice(){throw new Error("Not implemented from SolanaProviderAdapter")}isPermitterAvailable(){return!1}getConnection(){return this.connection}initializeAnchorProvider(){if(!this.wallet)throw new Error("No wallet provided");return this.anchorProvider=new o.AnchorProvider(this.connection,this.wallet,{}),this.anchorProvider}getAnchorProvider(){return this.anchorProvider??this.initializeAnchorProvider()}getSolanaProgram(r){return new o.Program(r,this.getAnchorProvider())}getSolanaPublicKey(){if(!this.wallet)throw new Error("No wallet provided");return this.wallet.publicKey}}exports.SolanaProviderAdapter=c;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { Connection, PublicKey } from '@solana/web3.js';
|
|
2
2
|
import { ChainEventListener, IProviderAdapter } from '../data-structures/provider-adapter/IProviderAdapter';
|
|
3
|
-
import { ContractType, EthereumNetwork } from '../types/ethereum-network.types';
|
|
3
|
+
import { ContractMetadata, ContractType, EthereumNetwork } from '../types/ethereum-network.types';
|
|
4
4
|
import { ethers } from 'ethers';
|
|
5
5
|
import { AnchorProvider, Idl, Program } from '@coral-xyz/anchor';
|
|
6
6
|
import { SolanaWallet } from '../types/solana.types';
|
|
7
7
|
export declare class SolanaProviderAdapter implements IProviderAdapter<SolanaWallet> {
|
|
8
|
-
|
|
8
|
+
chainId: number | undefined;
|
|
9
9
|
private connection;
|
|
10
10
|
private wallet;
|
|
11
11
|
private ethereumAddress;
|
|
@@ -17,20 +17,24 @@ export declare class SolanaProviderAdapter implements IProviderAdapter<SolanaWal
|
|
|
17
17
|
connectToConnector(): Promise<number>;
|
|
18
18
|
disconnectFromConnector(): Promise<void>;
|
|
19
19
|
connectAndPatchProvider(): Promise<number>;
|
|
20
|
-
waitForTransaction(
|
|
20
|
+
waitForTransaction(transactionHash: string, _confirmations: number): Promise<boolean>;
|
|
21
21
|
signMessage(message: string | Uint8Array): Promise<string>;
|
|
22
22
|
getAddress(): Promise<string>;
|
|
23
|
+
getSelectedNetwork(): EthereumNetwork | undefined;
|
|
23
24
|
setChainEventListener(chainEventListener: ChainEventListener): void;
|
|
24
25
|
switchNetwork(network: EthereumNetwork): Promise<void>;
|
|
26
|
+
switchAccount(): Promise<void>;
|
|
25
27
|
signTypedData(_domain: ethers.TypedDataDomain, _types: Record<string, ethers.TypedDataField[]>, _value: Record<string, unknown>): Promise<string>;
|
|
26
28
|
onAccountChanged(): Promise<unknown>;
|
|
27
29
|
onChainChanged(chainId?: number): Promise<unknown>;
|
|
28
30
|
release(): void;
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
getContractMetadata(_contractType: ContractType, _chainId?: number): ContractMetadata;
|
|
32
|
+
getContract(_contractType: ContractType, _contractAddress?: string, _chainId?: number): ethers.Contract;
|
|
33
|
+
getContractWithSigner(_contractType: ContractType, _contractAddress?: string): ethers.Contract;
|
|
34
|
+
getContractWithFetcher(_contractType: ContractType, _contractAddress?: string): ethers.Contract;
|
|
35
|
+
getContractWithFetcherForEthereum(_contractType: ContractType, _contractAddress?: string): ethers.Contract;
|
|
36
|
+
sendTransaction(_tx: ethers.TransactionRequest): Promise<ethers.TransactionResponse>;
|
|
37
|
+
getGasPrice(): Promise<bigint>;
|
|
34
38
|
isPermitterAvailable(): boolean;
|
|
35
39
|
getConnection(): Connection;
|
|
36
40
|
private initializeAnchorProvider;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
1
|
+
import { networkRegistry as i } from "../constants/chains.constants.mjs";
|
|
2
|
+
import { transactionErrorCodes as n } from "../error-handling/error-codes.constants.mjs";
|
|
3
|
+
import { AnchorProvider as a, Program as c } from "@coral-xyz/anchor";
|
|
4
|
+
class w {
|
|
4
5
|
chainId;
|
|
5
6
|
connection;
|
|
6
7
|
wallet;
|
|
@@ -8,8 +9,8 @@ class d {
|
|
|
8
9
|
// it is necessary because we are storing everything with ethereum address in db
|
|
9
10
|
chainEventListener;
|
|
10
11
|
anchorProvider;
|
|
11
|
-
constructor(r, t, e,
|
|
12
|
-
this.connection = r, this.chainId = t, this.wallet = e, this.ethereumAddress =
|
|
12
|
+
constructor(r, t, e, o) {
|
|
13
|
+
this.connection = r, this.chainId = t, this.wallet = e, this.ethereumAddress = o, this.initializeAnchorProvider();
|
|
13
14
|
}
|
|
14
15
|
initConnector(r) {
|
|
15
16
|
this.wallet = r;
|
|
@@ -27,19 +28,19 @@ class d {
|
|
|
27
28
|
throw new Error("No Chain Id In Provider Adapter");
|
|
28
29
|
return this.chainId;
|
|
29
30
|
}
|
|
30
|
-
async waitForTransaction(r, t
|
|
31
|
+
async waitForTransaction(r, t) {
|
|
31
32
|
try {
|
|
32
|
-
return (await this.connection.confirmTransaction(
|
|
33
|
+
return (await this.connection.confirmTransaction(r, "confirmed")).value.err === null;
|
|
33
34
|
} catch {
|
|
34
|
-
throw Error(
|
|
35
|
+
throw Error(n.TRANSACTION_NOT_CONFIRMED);
|
|
35
36
|
}
|
|
36
37
|
}
|
|
37
38
|
async signMessage(r) {
|
|
38
39
|
if (!this.wallet?.signMessage)
|
|
39
|
-
throw new Error(
|
|
40
|
+
throw new Error(n.SIGNING_FAILED);
|
|
40
41
|
const t = typeof r == "string" ? new TextEncoder().encode(r) : r, { signature: e } = await this.wallet.signMessage(t, "utf8");
|
|
41
42
|
if (!e)
|
|
42
|
-
throw new Error(
|
|
43
|
+
throw new Error(n.SIGNING_FAILED);
|
|
43
44
|
return `0x${Buffer.from(e).toString("hex")}`;
|
|
44
45
|
}
|
|
45
46
|
async getAddress() {
|
|
@@ -48,12 +49,20 @@ class d {
|
|
|
48
49
|
throw new Error("IllegalState");
|
|
49
50
|
return r;
|
|
50
51
|
}
|
|
52
|
+
getSelectedNetwork() {
|
|
53
|
+
if (!this.chainId)
|
|
54
|
+
throw new Error("Illegal state: no chainId");
|
|
55
|
+
return i[this.chainId];
|
|
56
|
+
}
|
|
51
57
|
setChainEventListener(r) {
|
|
52
58
|
this.chainEventListener = r;
|
|
53
59
|
}
|
|
54
60
|
async switchNetwork(r) {
|
|
55
61
|
this.chainEventListener?.onChainChanged(r.chainId);
|
|
56
62
|
}
|
|
63
|
+
async switchAccount() {
|
|
64
|
+
await this.onAccountChanged(), this.chainEventListener?.onAccountChanged();
|
|
65
|
+
}
|
|
57
66
|
async signTypedData(r, t, e) {
|
|
58
67
|
throw new Error("Typed data signing not supported on Solana");
|
|
59
68
|
}
|
|
@@ -66,19 +75,25 @@ class d {
|
|
|
66
75
|
release() {
|
|
67
76
|
this.chainEventListener = void 0;
|
|
68
77
|
}
|
|
78
|
+
getContractMetadata(r, t) {
|
|
79
|
+
throw new Error("Not implemented from SolanaProviderAdapter");
|
|
80
|
+
}
|
|
69
81
|
getContract(r, t, e) {
|
|
70
82
|
throw new Error("Not implemented from SolanaProviderAdapter");
|
|
71
83
|
}
|
|
72
|
-
getContractWithSigner(r, t
|
|
84
|
+
getContractWithSigner(r, t) {
|
|
85
|
+
throw new Error("Not implemented from SolanaProviderAdapter");
|
|
86
|
+
}
|
|
87
|
+
getContractWithFetcher(r, t) {
|
|
73
88
|
throw new Error("Not implemented from SolanaProviderAdapter");
|
|
74
89
|
}
|
|
75
|
-
|
|
90
|
+
getContractWithFetcherForEthereum(r, t) {
|
|
76
91
|
throw new Error("Not implemented from SolanaProviderAdapter");
|
|
77
92
|
}
|
|
78
93
|
async sendTransaction(r) {
|
|
79
94
|
throw new Error("Not implemented from SolanaProviderAdapter");
|
|
80
95
|
}
|
|
81
|
-
async getGasPrice(
|
|
96
|
+
async getGasPrice() {
|
|
82
97
|
throw new Error("Not implemented from SolanaProviderAdapter");
|
|
83
98
|
}
|
|
84
99
|
isPermitterAvailable() {
|
|
@@ -91,13 +106,13 @@ class d {
|
|
|
91
106
|
initializeAnchorProvider() {
|
|
92
107
|
if (!this.wallet)
|
|
93
108
|
throw new Error("No wallet provided");
|
|
94
|
-
return this.anchorProvider = new
|
|
109
|
+
return this.anchorProvider = new a(this.connection, this.wallet, {}), this.anchorProvider;
|
|
95
110
|
}
|
|
96
111
|
getAnchorProvider() {
|
|
97
112
|
return this.anchorProvider ?? this.initializeAnchorProvider();
|
|
98
113
|
}
|
|
99
114
|
getSolanaProgram(r) {
|
|
100
|
-
return new
|
|
115
|
+
return new c(r, this.getAnchorProvider());
|
|
101
116
|
}
|
|
102
117
|
getSolanaPublicKey() {
|
|
103
118
|
if (!this.wallet)
|
|
@@ -106,5 +121,5 @@ class d {
|
|
|
106
121
|
}
|
|
107
122
|
}
|
|
108
123
|
export {
|
|
109
|
-
|
|
124
|
+
w as SolanaProviderAdapter
|
|
110
125
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("../constants/chains.constants.cjs"),a=require("../error-handling/error-codes.constants.cjs"),f=require("wagmi"),o=require("wagmi/actions"),l=require("../functions/web3/getContractMetadata.cjs"),d=require("../types/eip5792.types.cjs"),v=require("../error-handling/logger.cjs"),c=require("ethers");class g{connector;chainId;originalProvider;fetchProvider;signer;chainEventListener;config;unsubscribeFns=[];initConnector(t){this.connector=t}requireConnector(){if(!this.connector)throw Error("No Connector In Provider Adapter")}initConfig(t){this.config=t}async init(t){this.requireConnector(),t&&(this.chainId=t);const r=await this.connector.getProvider();this.originalProvider=new c.ethers.BrowserProvider(r),this.fetchProvider=this.createFetchProvider()??this.originalProvider,this.fetchProvider===this.originalProvider&&console.warn("fetchProvider not available");const e=await this.connector.getAccounts();this.signer=await this.walletClientToSigner({transport:r,account:e[0]},this.chainId)}async disconnectFromConnector(){if(!this.config)throw new Error("No Config In Provider Adapter");this.release(),await o.disconnect(this.config)}async connectToConnector(t){if(!this.config)throw new Error("No Config In Provider Adapter");if(t.id==="walletConnect")try{await o.reconnect(this.config,{connectors:[t]}),await o.disconnect(this.config)}catch{}try{return(await o.connect(this.config,{connector:t})).chainId}catch(r){if(r instanceof f.ConnectorAlreadyConnectedError)return t.getChainId();let e=a.transactionErrorCodes.CONNECTION_FAILED;throw r?.code===4001&&(e=a.UserFriendlyErrorCodes.YOU_CANCELED_REQUEST),new Error(e)}}async waitForTransaction(t,r){if((await this.fetchProvider?.waitForTransaction(t,r))?.status)return!0;throw Error(a.transactionErrorCodes.TRANSACTION_NOT_CONFIRMED)}async signMessage(t){if(!this.config)throw new Error("No Config In Provider Adapter");const r=await o.signMessage(this.config,{message:t});if(!r)throw new Error(a.transactionErrorCodes.SIGNING_FAILED);if(r.includes("error"))throw new Error(a.transactionErrorCodes.SIGNATURE_UNSUPPORTED_PERSONAL_SIGN);return r}async signTypedData(t,r,e){return this.signer.signTypedData(t,r,e)}getSelectedNetwork=()=>{if(!this.chainId)throw new Error("Illegal state: no chaindId");return s.networkRegistry[this.chainId]};async switchNetwork(t){if(!this.config)throw new Error("No Config In Provider Adapter");return o.switchChain(this.config,{chainId:t.chainId})}createFetchProvider(){try{const r=s.networkRegistry[this.chainId]?.fetchRpcUrl;return r?r.includes("wss")?new c.ethers.WebSocketProvider(r):new c.ethers.JsonRpcProvider(r,void 0,{staticNetwork:!0}):void 0}catch(t){console.log("create Fetch Provider error",t);return}}async getAddress(){if(!this.config)throw new Error("No Config In Provider Adapter");const{address:t}=o.getAccount(this.config);if(!t)throw new Error("IllegalState");return c.ethers.getAddress(t)}setChainEventListener(t){if(!this.config)throw new Error("No Config In Provider Adapter");this.chainEventListener=t,this.chainEventListener&&(this.unsubscribeFns.push(o.watchAccount(this.config,{onChange:({address:r},{address:e})=>{if(!this.chainEventListener){console.warn("chainEventListener is not set");return}console.log("Account changed"),r!==e&&(console.log("Account changed"),this.chainEventListener.onAccountChanged())}})),this.unsubscribeFns.push(o.watchChainId(this.config,{onChange:r=>{if(!this.chainEventListener){console.warn("chainEventListener is not set");return}console.log("Chain ID changed!",r),this.chainEventListener.onChainChanged(r)}})))}onAccountChanged(){return this.init()}onChainChanged(t){return this.init(t)}release(){this.removeListeners()}removeListeners(){this.unsubscribeFns.forEach(t=>t()),this.unsubscribeFns=[]}parseChainIdParam(t){const r=t??this.chainId;if(!r)throw new Error("No chainId provided in context");return r}getContractMetadata(t,r){const e=this.parseChainIdParam(r);return l.getContractMetadata(t,e)}getContract(t,r=void 0,e,n){const i=this.parseChainIdParam(e);return l.getContract(t,i,r,n)}getContractWithSigner(t,r=void 0){if(!this.signer)throw new Error("IllegalState: no signer");return this.getContract(t,r,void 0,this.signer)}getContractWithFetcher(t,r=void 0){if(!this.fetchProvider)throw new Error("fetchProvider not initialized");return this.getContract(t,r,void 0,this.fetchProvider)}getContractWithFetcherForEthereum(t,r=void 0){const e=this.chainId===s.chainIds.localhost&&s.localhostNetwork===s.chainIds.ethMainnet?s.chainIds.localhost:s.chainIds.ethMainnet;return l.getContractWithFetcherByChainId(e,t,r)}async sendTransaction(t){if(!this.signer)throw new Error("IllegalState: no signer");return await this.signer.sendTransaction(t)}async connectAndPatchProvider(t){return await this.connectToConnector(t)}isPermitterAvailable(){return!!this.getSelectedNetwork()?.contractData?.permitterAddress}async getGasPrice(){const t=(await this.fetchProvider?.getFeeData())?.gasPrice;if(!t)throw Error("Could not fetch gas price in getGasPrice");return t}async walletClientToSigner(t,r){const{account:e,transport:n}=t,i={chainId:r,name:""};return new c.ethers.BrowserProvider(n,i).getSigner(e)}switchAccount(){throw new Error("Method not implemented.")}async supportsBatchCall(){if(!this.originalProvider||!this.chainId)return!1;try{const t=await this.getAddress(),r=`0x${this.chainId.toString(16)}`,e=await this.originalProvider.send("wallet_getCapabilities",[t,[r]]),n=e?.[r]||e?.["0x0"];if(!n?.atomic)return!1;const i=typeof n.atomic=="string"?n.atomic:n.atomic?.status;return i==="supported"||i==="ready"}catch{return!1}}async waitForBatchTransactionStatus(t){if(!this.originalProvider)throw new Error("WagmiProviderAdapter: Provider not initialized");const r=1e3,e=60;for(let n=0;n<e;n+=1){await new Promise(i=>{setTimeout(()=>i(),r)});try{const i=await this.originalProvider.send("wallet_getCallsStatus",[t]);if(i.status===d.CallsStatus.Confirmed&&i.receipts?.[0]?.transactionHash)return i.receipts[0].transactionHash;if(i.status===d.CallsStatus.OffchainFailure||i.status===d.CallsStatus.ChainFailure||i.status===d.CallsStatus.PartialFailure)break}catch(i){v.Logger.log("waitForBatchTransactionStatus:",i)}}throw new Error("Batch transaction timed out or failed")}async sendBatchCallsTransaction(t){if(!this.chainId)throw new Error("WagmiProviderAdapter: chainId not initialized");if(!this.fetchProvider)throw new Error("WagmiProviderAdapter: fetchProvider not initialized");if(!this.originalProvider)throw new Error("WagmiProviderAdapter: Provider not initialized");const r=await this.getAddress(),n={version:"2.0.0",chainId:`0x${this.chainId.toString(16)}`,from:r,atomicRequired:!0,calls:t},i=await this.originalProvider.send("wallet_sendCalls",[n]),h=i?.id||i;if(!h||typeof h!="string")throw new Error("Invalid batch ID received from wallet_sendCalls");const w=await this.waitForBatchTransactionStatus(h),u=await this.fetchProvider.getTransaction(w);if(!u)throw new Error("Transaction not found");return u}}const C=new g,P=()=>new g;exports.WagmiProviderAdapter=g;exports.default=P;exports.wagmiProviderAdapter=C;
|
|
@@ -1,44 +1,50 @@
|
|
|
1
1
|
import { ChainEventListener, IProviderAdapter } from '../data-structures/provider-adapter/IProviderAdapter';
|
|
2
|
-
import { ContractType, EthereumNetwork } from '../types/ethereum-network.types';
|
|
3
|
-
import { ethers } from 'ethers';
|
|
2
|
+
import { ContractMetadata, ContractType, EthereumNetwork } from '../types/ethereum-network.types';
|
|
4
3
|
import { type Connector } from 'wagmi';
|
|
5
4
|
import { Call } from '../types/eip5792.types';
|
|
5
|
+
import { ethers } from 'ethers';
|
|
6
6
|
export declare class WagmiProviderAdapter implements IProviderAdapter<Connector> {
|
|
7
7
|
private connector;
|
|
8
|
-
|
|
8
|
+
chainId: number | undefined;
|
|
9
9
|
private originalProvider;
|
|
10
|
-
private
|
|
10
|
+
private fetchProvider;
|
|
11
11
|
private signer;
|
|
12
12
|
private chainEventListener?;
|
|
13
13
|
private config?;
|
|
14
14
|
private unsubscribeFns;
|
|
15
|
-
constructor();
|
|
16
15
|
initConnector(connector: Connector): void;
|
|
16
|
+
requireConnector(): void;
|
|
17
17
|
initConfig(config: any): void;
|
|
18
18
|
init(chainId?: number): Promise<void>;
|
|
19
19
|
disconnectFromConnector(): Promise<void>;
|
|
20
20
|
connectToConnector(connector: Connector): Promise<number>;
|
|
21
|
-
waitForTransaction(
|
|
21
|
+
waitForTransaction(transactionHash: string, confirmations: number): Promise<boolean>;
|
|
22
22
|
signMessage(message: string): Promise<string>;
|
|
23
23
|
signTypedData(domain: ethers.TypedDataDomain, types: Record<string, ethers.TypedDataField[]>, value: Record<string, unknown>): Promise<string>;
|
|
24
|
+
getSelectedNetwork: () => EthereumNetwork | undefined;
|
|
24
25
|
switchNetwork(network: EthereumNetwork): Promise<import("viem").Chain>;
|
|
26
|
+
private createFetchProvider;
|
|
25
27
|
getAddress(): Promise<string>;
|
|
26
28
|
setChainEventListener(chainEventListener: ChainEventListener): void;
|
|
27
29
|
onAccountChanged(): Promise<unknown>;
|
|
28
30
|
onChainChanged(chainId?: number): Promise<unknown>;
|
|
29
31
|
release(): void;
|
|
30
32
|
private removeListeners;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
private parseChainIdParam;
|
|
34
|
+
getContractMetadata(contractType: ContractType, chainId?: number): ContractMetadata;
|
|
35
|
+
getContract(contractType: ContractType, contractAddress?: undefined, chainId?: number, runner?: ethers.ContractRunner): ethers.Contract;
|
|
36
|
+
getContractWithSigner(contract: ContractType, contractAddress?: undefined): ethers.Contract;
|
|
37
|
+
getContractWithFetcher(contract: ContractType, contractAddress?: undefined): ethers.Contract;
|
|
38
|
+
getContractWithFetcherForEthereum(contract: ContractType, contractAddress?: undefined): ethers.Contract;
|
|
39
|
+
sendTransaction(tx: ethers.TransactionRequest): Promise<ethers.TransactionResponse>;
|
|
35
40
|
connectAndPatchProvider(connector: Connector): Promise<number>;
|
|
36
41
|
isPermitterAvailable(): boolean;
|
|
37
|
-
getGasPrice(
|
|
38
|
-
walletClientToSigner(walletClient: any, chainId: number): Promise<ethers.
|
|
39
|
-
|
|
42
|
+
getGasPrice(): Promise<bigint>;
|
|
43
|
+
walletClientToSigner(walletClient: any, chainId: number): Promise<ethers.JsonRpcSigner>;
|
|
44
|
+
switchAccount(): Promise<void>;
|
|
45
|
+
supportsBatchCall(): Promise<boolean>;
|
|
40
46
|
private waitForBatchTransactionStatus;
|
|
41
|
-
sendBatchCallsTransaction(
|
|
47
|
+
sendBatchCallsTransaction(calls: Call[]): Promise<ethers.TransactionResponse>;
|
|
42
48
|
}
|
|
43
49
|
export declare const wagmiProviderAdapter: WagmiProviderAdapter;
|
|
44
50
|
declare const _default: <T = unknown>() => IProviderAdapter<T>;
|