import { createAuthClient } from "better-auth/client"; import { organizationClient, oidcClient, genericOAuthClient, usernameClient, } from "better-auth/client/plugins"; import { ssoClient } from "@better-auth/sso/client"; import { toast } from "@nice/ui/components/sonner"; export const client = createAuthClient({ baseURL: process.env.NEXT_PUBLIC_API_URL, // 可以通过环境变量配置 plugins: [ organizationClient(), oidcClient(), genericOAuthClient(), ssoClient(), usernameClient() ], fetchOptions: { onError(e) { if (e.error.status === 429) { toast.error("Too many requests. Please try again later."); } }, }, }); export const { signUp, signIn, signOut, useSession, organization, useListOrganizations, useActiveOrganization, } = client;