@0xsequence/connect
Version:
Connect package for Sequence Web SDK
30 lines • 1.26 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.publicClientToProvider = exports.walletClientToSigner = void 0;
const ethers_1 = require("ethers");
const walletClientToSigner = async (walletClient) => {
const { account, chain, transport } = walletClient;
const network = {
chainId: chain.id,
name: chain.name,
ensAddress: chain.contracts?.ensRegistry?.address
};
const provider = new ethers_1.ethers.BrowserProvider(transport, network);
const signer = await provider.getSigner(account.address);
return signer;
};
exports.walletClientToSigner = walletClientToSigner;
const publicClientToProvider = (publicClient) => {
const { chain, transport } = publicClient;
const network = {
chainId: chain.id,
name: chain.name,
ensAddress: chain.contracts?.ensRegistry?.address
};
if (transport.type === 'fallback') {
return new ethers_1.ethers.FallbackProvider(transport.transports.map(({ value }) => new ethers_1.ethers.JsonRpcProvider(value?.url, network)));
}
return new ethers_1.ethers.JsonRpcProvider(transport.url, network);
};
exports.publicClientToProvider = publicClientToProvider;
//# sourceMappingURL=adapters.js.map