UNPKG

@sky-mavis/tanto-connect

Version:
21 lines 1.14 kB
import {RONIN_WALLET_RDNS,DEFAULT_DELAY_TIME}from'../common/constant.mjs';import {ConnectorError,ConnectorErrorType}from'../types/connector-error.mjs';import {checkRoninInstalled}from'../utils/index.mjs';import {requestProviders}from'./eip6963.mjs';const requestRoninProvider = async (delay = DEFAULT_DELAY_TIME) => { const providersDetail = await requestProviders(delay); const roninProvider = providersDetail.find(({ info }) => info.rdns === RONIN_WALLET_RDNS)?.provider; if (roninProvider) { return roninProvider; } else { throw new ConnectorError(ConnectorErrorType.PROVIDER_NOT_FOUND); } }; const requestLegacyRoninProvider = async (delay = DEFAULT_DELAY_TIME) => { if (checkRoninInstalled()) { return window.ronin?.provider; } // Wait for the provider to be injected if it's not available yet await new Promise(resolve => setTimeout(resolve, delay)); if (checkRoninInstalled()) { return window.ronin?.provider; } throw new ConnectorError(ConnectorErrorType.NOT_INSTALLED); };export{requestLegacyRoninProvider,requestRoninProvider};