@coin-voyage/paykit
Version:
Seamless crypto payments. Onboard users from any chain, any coin into your app with one click.
60 lines • 1.55 kB
JavaScript
import { useConnectors as useWagmiConnectors } from "wagmi";
export function useConnectors() {
const connectors = useWagmiConnectors();
return connectors ?? [];
}
export function useConnector(id, uuid) {
const connectors = useConnectors();
if (id === "injected" && uuid) {
return connectors.find((c) => c.id === id && c.name === uuid);
}
if (id === "injected") {
return connectors.find((c) => c.id === id && c.name.includes("Injected"));
}
return connectors.find((c) => c.id === id);
}
export function useInjectedConnector(uuid) {
/*
options: {
shimDisconnect: true,
name: (
detectedName: string | string[] // Detects the name of the injected wallet
) =>
`Injected (${
typeof detectedName === 'string'
? detectedName
: detectedName.join(', ')
})`,
}
*/
return useConnector("injected", uuid);
}
export function useWalletConnectConnector() {
/*
options: {
qrcode: false,
// or
showQrModal: false,
}
*/
return useConnector("walletConnect");
}
export function useCoinbaseWalletConnector() {
/*
options: {
headlessMode: true,
}
*/
return useConnector("coinbaseWalletSDK");
}
export function useMetaMaskConnector() {
/*
options: {
shimDisconnect: true,
shimChainChangedDisconnect: true,
UNSTABLE_shimOnConnectSelectAccount: true,
}
*/
return useConnector("metaMask");
}
//# sourceMappingURL=useConnectors.js.map