'use client' import { useConfig } from '../contexts/AuthContext' import { useAllauthAPI } from '../contexts/APIContext' import { useStyles } from '../contexts/StylesContext' interface Provider { id: string name: string } interface ProviderListProps { callbackUrl: string process?: 'login' | 'connect' } export function ProviderList({ callbackUrl, process = 'login' }: ProviderListProps) { const config = useConfig() const api = useAllauthAPI() const styles = useStyles() const providers: Provider[] = config?.data?.socialaccount?.providers || [] if (providers.length === 0) { return null } const handleProviderClick = (providerId: string) => { const provider = api.oauth.provider(providerId) if (process === 'connect') { provider.connect.withRedirect(callbackUrl) } else { provider.login.withRedirect(callbackUrl) } } return (
or continue with
{providers.map((provider) => ( ))}
) }