{"version":3,"sources":["../../../src/sdkCore/metamask/detection.ts"],"sourcesContent":["import type {\n  EIP6963AnnounceProviderEvent,\n  EIP6963ProviderDetail,\n  MetaMaskInpageProvider,\n} from '@metamask/providers'\n\nexport type {MetaMaskInpageProvider} from '@metamask/providers'\n\nexport async function isMetamaskInstalled(): Promise<boolean> {\n  try {\n    return (await getMetaMaskProviderWithEip6963()) != null\n  } catch (err) {\n    return false\n  }\n}\n\n// https://eips.ethereum.org/EIPS/eip-6963\n// Note that the provider returned may not yet be connected\nexport async function getMetaMaskProviderWithEip6963(): Promise<MetaMaskInpageProvider | null> {\n  const metaMaskProviderPromise = new Promise<MetaMaskInpageProvider>(\n    (resolve) => {\n      const onProviderAnnounced = (event: Event) => {\n        const providerDetail: EIP6963ProviderDetail = (\n          event as EIP6963AnnounceProviderEvent\n        ).detail\n\n        if (providerDetail.info.rdns === 'io.metamask') {\n          const provider = providerDetail.provider as MetaMaskInpageProvider\n\n          window.removeEventListener(\n            'eip6963:announceProvider',\n            onProviderAnnounced,\n          )\n\n          resolve(provider)\n        }\n      }\n      window.addEventListener('eip6963:announceProvider', (event) => {\n        onProviderAnnounced(event)\n      })\n\n      window.dispatchEvent(new Event('eip6963:requestProvider'))\n    },\n  )\n\n  return await Promise.race([\n    metaMaskProviderPromise,\n    new Promise<null>((resolve) => setTimeout(() => resolve(null), 1_000)),\n  ])\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,eAAsB,sBAAwC;AAC5D,MAAI;AACF,WAAQ,MAAM,+BAA+B,KAAM;AAAA,EACrD,SAAS,KAAK;AACZ,WAAO;AAAA,EACT;AACF;AAIA,eAAsB,iCAAyE;AAC7F,QAAM,0BAA0B,IAAI;AAAA,IAClC,CAAC,YAAY;AACX,YAAM,sBAAsB,CAAC,UAAiB;AAC5C,cAAM,iBACJ,MACA;AAEF,YAAI,eAAe,KAAK,SAAS,eAAe;AAC9C,gBAAM,WAAW,eAAe;AAEhC,iBAAO;AAAA,YACL;AAAA,YACA;AAAA,UACF;AAEA,kBAAQ,QAAQ;AAAA,QAClB;AAAA,MACF;AACA,aAAO,iBAAiB,4BAA4B,CAAC,UAAU;AAC7D,4BAAoB,KAAK;AAAA,MAC3B,CAAC;AAED,aAAO,cAAc,IAAI,MAAM,yBAAyB,CAAC;AAAA,IAC3D;AAAA,EACF;AAEA,SAAO,MAAM,QAAQ,KAAK;AAAA,IACxB;AAAA,IACA,IAAI,QAAc,CAAC,YAAY,WAAW,MAAM,QAAQ,IAAI,GAAG,GAAK,CAAC;AAAA,EACvE,CAAC;AACH;","names":[]}