@pushchain/ui-kit
Version:
Push Chain is a true universal L1 that is 100% EVM compatible. It allows developers to deploy once and make their apps instantly compatible with users from all other L1s (Ethereum, Solana, etc) with zero on-chain code change.
27 lines • 961 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.startEIP6963Listener = startEIP6963Listener;
exports.getEIP6963ProviderByRdns = getEIP6963ProviderByRdns;
exports.getAllEIP6963Providers = getAllEIP6963Providers;
const providers = new Map();
let isListening = false;
function startEIP6963Listener() {
if (isListening || typeof window === "undefined")
return;
isListening = true;
window.addEventListener("eip6963:announceProvider", ((event) => {
const detail = event.detail;
if (!detail?.info?.rdns)
return;
providers.set(detail.info.rdns, detail);
}));
const requestEvent = new CustomEvent("eip6963:requestProvider");
window.dispatchEvent(requestEvent);
}
function getEIP6963ProviderByRdns(rdns) {
return providers.get(rdns)?.provider;
}
function getAllEIP6963Providers() {
return Array.from(providers.values());
}
//# sourceMappingURL=eip6963.js.map