UNPKG

@buddy-link/react

Version:

Buddy SDK - React components and hooks for wallet integration

44 lines (38 loc) 1.15 kB
"use client"; import BuddyConnect from '../connect/BuddyConnect'; import BuddyState from '../state/BuddyState'; /** * Main Buddy Component * SSR-Safe wrapper that lazy loads client functionality * * @param {Object} props - Component props * @param {string} props.apiKey - App API key * @param {string} props.appId - Application ID * @param {boolean} [props.connect=true] - Whether to show connect wallet functionality * @param {string} [props.baseUrl] - Base URL for API calls * @param {React.ReactNode} [props.children] - Child components * @returns {React.ReactElement} Buddy component */ import { initBuddyState } from '../../../hooks/useBuddyState'; import { initialBuddyState } from '../state/BuddyState'; export default function BuddyClient({ apiKey, appId, connect = true, children, initialState }) { if (!apiKey || !appId) { console.error('[Buddy]: apiKey and appId are required'); } initBuddyState({...initialBuddyState, ...initialState}); return ( <> {connect && ( <BuddyConnect /> )} <BuddyState /> {children} </> ); }