UNPKG

@particle-network/connectkit

Version:
114 lines (110 loc) 3.35 kB
"use client"; import { Icons_default, init_Icons } from "./chunk-FU5MHCAN.mjs"; import { init_useLastConnectorId, useLastConnectorId } from "./chunk-XV4TVGGP.mjs"; import { init_useWalletsProps, useWalletsProps_default } from "./chunk-3L3TDB2A.mjs"; import { init_context, init_useAccount, init_useConnections, useAccount, useConnections, useContext } from "./chunk-TYWUWWWK.mjs"; import { __esm } from "./chunk-Y7A564BU.mjs"; // src/hooks/useChains.ts import { useMemo } from "react"; var useChains; var init_useChains = __esm({ "src/hooks/useChains.ts"() { "use strict"; init_context(); init_useAccount(); useChains = () => { const { config } = useContext(); const { connector } = useAccount(); const chains = useMemo(() => { const walletConnectorType = connector?.walletConnectorType; if (walletConnectorType) { const walletConnector = config.getWalletConnector(walletConnectorType); if (walletConnector) { return walletConnector.chains; } } return config.chains; }, [connector, config]); return chains; }; } }); // src/hooks/useWalletConnections.tsx import { useMemo as useMemo2 } from "react"; import { jsx } from "react/jsx-runtime"; var useWalletConnections; var init_useWalletConnections = __esm({ "src/hooks/useWalletConnections.tsx"() { "use strict"; init_Icons(); init_context(); init_useConnections(); init_useLastConnectorId(); init_useWalletsProps(); useWalletConnections = () => { const connections = useConnections(); const wallets = useWalletsProps_default(); const { config } = useContext(); const { lastConnectorId } = useLastConnectorId(); const walletConnections = useMemo2(() => { const props = []; for (const connection of connections) { const id = connection.connector.id; const wallet = wallets.find( (wallet2) => wallet2.id === id || wallet2.groupId?.split(",").map((item) => item.trim()).includes(id) ); if (!wallet) { continue; } if (connection.connector.type === "particleAuth") { const authType = config.getWalletConnector("particleAuth")?.auth.getLatestAuthType(); if (authType) { wallet.icon = /* @__PURE__ */ jsx(Icons_default, { authType }); } } else { if (wallet.connector.id === "walletConnect" && lastConnectorId && lastConnectorId !== wallet.connector.id) { const lastWallet = wallets.find( (wallet2) => wallet2.id === lastConnectorId || wallet2.groupId?.split(",").map((item) => item.trim()).includes(lastConnectorId) ); if (lastWallet?.icon) { wallet.icon = lastWallet.icon; } } } props.push({ accounts: connection.accounts, chainId: connection.chainId, walletProps: wallet }); } return props; }, [connections, wallets, config, lastConnectorId]); return walletConnections; }; } }); export { useChains, init_useChains, useWalletConnections, init_useWalletConnections }; //# sourceMappingURL=chunk-4KLCPKCQ.mjs.map