UNPKG

@sky-mavis/tanto-connect

Version:
59 lines (55 loc) 2.99 kB
'use strict'; var connectors = require('../common/connectors.cjs'); var constant = require('../common/constant.cjs'); var eip6963 = require('../providers/eip6963.cjs'); var ronin = require('../providers/ronin.cjs'); var roninWalletConnect = require('../providers/ronin-wallet-connect.cjs'); var safeProvider = require('../providers/safe-provider.cjs'); var waypointProvider = require('../providers/waypoint-provider.cjs'); var InjectedConnector = require('./injected/InjectedConnector.cjs'); var RoninWalletConnector = require('./ronin-wallet/RoninWalletConnector.cjs'); var RoninWalletConnectConnector = require('./ronin-wallet-connect/RoninWalletConnectConnector.cjs'); var SafeConnector = require('./safe/SafeConnector.cjs'); var WaypointConnector = require('./waypoint/WaypointConnector.cjs'); const requestInjectedConnectors = async () => { const providerDetails = await eip6963.requestProviders(); return providerDetails.map(detail => { if (detail.info.rdns === constant.RONIN_WALLET_RDNS) { return new RoninWalletConnector.RoninWalletConnector({ icon: detail.info.icon }, detail.provider); } const configs = { name: detail.info.name, id: detail.info.rdns, icon: detail.info.icon, type: connectors.ConnectorType.WALLET, }; return new InjectedConnector.InjectedConnector(configs, detail.provider); }); }; const requestRoninWalletConnector = async () => { const provider = await ronin.requestRoninProvider(); return new RoninWalletConnector.RoninWalletConnector({}, provider); }; const requestRoninWalletConnectConnector = async ({ connectorConfigs, providerOptions, }) => { const provider = await roninWalletConnect.requestRoninWalletConnectProvider({ projectId: connectors.RONIN_WALLET_CONNECT_PROJECT_ID, chains: constant.WC_SUPPORTED_CHAIN_IDS, optionalChains: constant.WC_SUPPORTED_CHAIN_IDS, showQrModal: false, ...providerOptions, }); return new RoninWalletConnectConnector.RoninWalletConnectConnector({ connectorConfigs, provider, providerOptions }); }; const requestSafeConnector = async (configs, delay = constant.DEFAULT_DELAY_TIME) => { const provider = await safeProvider.requestSafeProvider(delay); return new SafeConnector.SafeConnector(configs, provider); }; const requestWaypointConnector = ({ connectorConfigs, providerConfigs, }) => { const provider = waypointProvider.requestWaypointProvider(providerConfigs); return new WaypointConnector.WaypointConnector({ connectorConfigs, providerConfigs, provider }); }; exports.requestInjectedConnectors = requestInjectedConnectors; exports.requestRoninWalletConnectConnector = requestRoninWalletConnectConnector; exports.requestRoninWalletConnector = requestRoninWalletConnector; exports.requestSafeConnector = requestSafeConnector; exports.requestWaypointConnector = requestWaypointConnector;