From d61a2257642450e1fe5db1165be36ce75ef3ae9e Mon Sep 17 00:00:00 2001 From: thesn10 <38666407+thesn10@users.noreply.github.com> Date: Wed, 24 Jun 2026 23:23:56 +0200 Subject: [PATCH] feat: add WalletProviders with connector + react-query --- app/src/providers/WalletProviders.tsx | 44 +++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 app/src/providers/WalletProviders.tsx diff --git a/app/src/providers/WalletProviders.tsx b/app/src/providers/WalletProviders.tsx new file mode 100644 index 0000000..1c6e472 --- /dev/null +++ b/app/src/providers/WalletProviders.tsx @@ -0,0 +1,44 @@ +'use client' + +import type { ReactNode } from 'react' +import { useMemo } from 'react' +import { AppProvider, getDefaultConfig, getDefaultMobileConfig } from '@solana/connector/react' +import { QueryClientProvider } from '@tanstack/react-query' +import { queryClient } from '@/lib/queryClient' + +function getOrigin() { + if (typeof window !== 'undefined') return window.location.origin + return 'http://localhost:3000' +} + +export function WalletProviders({ children }: { children: ReactNode }) { + const connectorConfig = useMemo( + () => + getDefaultConfig({ + appName: 'Solisting Explorer', + appUrl: getOrigin(), + autoConnect: true, + clusters: [ + { id: 'solana:localnet' as const, label: 'Localnet', url: 'http://localhost:8899' }, + { id: 'solana:devnet' as const, label: 'Devnet', url: 'https://api.devnet.solana.com' }, + { + id: 'solana:mainnet' as const, + label: 'Mainnet', + url: 'https://api.mainnet-beta.solana.com', + }, + ], + }), + [], + ) + + const mobile = useMemo( + () => getDefaultMobileConfig({ appName: 'Solisting Explorer', appUrl: getOrigin() }), + [], + ) + + return ( + + {children} + + ) +}