UNPKG

@abstract-foundation/agw-react

Version:
46 lines 2.02 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.AbstractPrivyProvider = exports.agwAppLoginMethod = void 0; const agw_client_1 = require("@abstract-foundation/agw-client"); const react_auth_1 = require("@privy-io/react-auth"); const react_query_1 = require("@tanstack/react-query"); const react_1 = require("react"); const wagmi_1 = require("wagmi"); const constants_js_1 = require("../constants.js"); const injectWagmiConnector_js_1 = require("./injectWagmiConnector.js"); exports.agwAppLoginMethod = `privy:${constants_js_1.AGW_APP_ID}`; const AbstractPrivyProvider = ({ chain, transport, queryClient = new react_query_1.QueryClient(), ...props }) => { if (!agw_client_1.validChains[chain.id]) { throw new Error(`Chain ${chain.id} is not supported`); } const wagmiConfig = (0, wagmi_1.createConfig)({ chains: [chain], ssr: true, connectors: [], transports: { [chain.id]: transport ?? (0, wagmi_1.http)(undefined, { batch: true, }), }, multiInjectedProviderDiscovery: false, }); if (!props.config) { props.config = { loginMethodsAndOrder: { primary: [exports.agwAppLoginMethod], }, }; } else if (!props.config.loginMethodsAndOrder) { props.config.loginMethodsAndOrder = { primary: [exports.agwAppLoginMethod], }; } return (react_1.default.createElement(react_auth_1.PrivyProvider, { ...props }, react_1.default.createElement(wagmi_1.WagmiProvider, { config: wagmiConfig }, react_1.default.createElement(react_query_1.QueryClientProvider, { client: queryClient }, react_1.default.createElement(injectWagmiConnector_js_1.InjectWagmiConnector, { chain: chain, transport: transport }, props.children))))); }; exports.AbstractPrivyProvider = AbstractPrivyProvider; //# sourceMappingURL=abstractPrivyProvider.js.map