UNPKG

@venly/web3-provider

Version:

Venly enabled Web3 Provider for the web

36 lines (35 loc) 1.83 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const json_rpc_engine_1 = require("@metamask/json-rpc-engine"); const eth_json_rpc_middleware_1 = require("@metamask/eth-json-rpc-middleware"); const pending_1 = require("./pending"); const accounts_1 = require("./accounts"); function createVenlyMiddleware({ getAccounts, processDecryptMessage, processEncryptionPublicKey, processEthSignMessage, processPersonalMessage, processTransaction, processSignTransaction, processTypedMessage, processTypedMessageV3, processTypedMessageV4, getPendingNonce, getTransactionByHash, getPendingTransactions, changeSecretType }) { const venlyMiddleware = (0, json_rpc_engine_1.mergeMiddleware)([ (0, json_rpc_engine_1.createScaffoldMiddleware)({ web3_clientVersion: 'VenlyProvider/v3.0.0', eth_hashrate: '0x00', eth_mining: false, eth_syncing: false }), (0, eth_json_rpc_middleware_1.createWalletMiddleware)({ getAccounts, processDecryptMessage, processEncryptionPublicKey, processEthSignMessage, processPersonalMessage, processTransaction, processSignTransaction, processTypedMessage, processTypedMessageV3, processTypedMessageV4, }), (0, accounts_1.createRequestAccountsMiddleware)({ getAccounts }), (0, pending_1.createPendingNonceMiddleware)({ getPendingNonce }), (0, pending_1.createTransactionByHashMiddleware)({ getTransactionByHash }), (0, pending_1.createPendingTransactionsMiddleware)({ getPendingTransactions }), (0, accounts_1.createSwitchEthereumChainMiddleware)({ changeSecretType }), ]); return venlyMiddleware; } exports.default = createVenlyMiddleware;