feat: add WalletProviders with connector + react-query

This commit is contained in:
thesn10
2026-06-24 23:23:56 +02:00
parent 2f11bf2d62
commit d61a225764

View File

@@ -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 (
<AppProvider connectorConfig={connectorConfig} mobile={mobile}>
<QueryClientProvider client={queryClient}>{children}</QueryClientProvider>
</AppProvider>
)
}