UNPKG

@sky-mavis/tanto-connect

Version:
17 lines 952 B
import {DEFAULT_DELAY_TIME}from'../common/constant.mjs';import {EIP6963EventNames}from'../types/eip6963.mjs';const injectedProviders = []; const requestProviders = async (delay = DEFAULT_DELAY_TIME) => { if (typeof window === 'undefined') { return []; } const handlerAnnouncement = (event) => { const isAnnounced = injectedProviders.some(detail => detail.info.uuid === event.detail.info.uuid || detail.info.rdns === event.detail.info.rdns); if (!isAnnounced) { injectedProviders.push(event.detail); } }; window.addEventListener(EIP6963EventNames.AnnounceProvider, handlerAnnouncement); window.dispatchEvent(new CustomEvent(EIP6963EventNames.RequestProvider)); await new Promise(resolve => setTimeout(resolve, delay)); window.removeEventListener(EIP6963EventNames.AnnounceProvider, handlerAnnouncement); return injectedProviders; };export{requestProviders};