@abstract-foundation/agw-react
Version:
Abstract Global Wallet React Components
36 lines • 1.61 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AbstractWalletProvider = void 0;
const agw_client_1 = require("@abstract-foundation/agw-client");
const react_query_1 = require("@tanstack/react-query");
const react_1 = require("react");
const viem_1 = require("viem");
const wagmi_1 = require("wagmi");
const abstractWalletConnector_js_1 = require("./abstractWalletConnector.js");
const AbstractWalletProvider = ({ chain, transport, queryClient = new react_query_1.QueryClient(), customPaymasterHandler, children, }) => {
if (!agw_client_1.validChains[chain.id]) {
throw new Error(`Chain ${chain.id} is not supported`);
}
const wagmiConfig = (0, react_1.useMemo)(() => {
return (0, wagmi_1.createConfig)({
chains: [chain],
ssr: true,
connectors: [
(0, abstractWalletConnector_js_1.abstractWalletConnector)({
customPaymasterHandler,
}),
],
transports: {
[chain.id]: transport ??
(0, viem_1.http)(undefined, {
batch: true,
}),
},
multiInjectedProviderDiscovery: false,
});
}, [chain, transport, customPaymasterHandler]);
return (react_1.default.createElement(wagmi_1.WagmiProvider, { config: wagmiConfig },
react_1.default.createElement(react_query_1.QueryClientProvider, { client: queryClient }, children)));
};
exports.AbstractWalletProvider = AbstractWalletProvider;
//# sourceMappingURL=agwProvider.js.map