43 lines
926 B
TypeScript
Executable File
43 lines
926 B
TypeScript
Executable File
import { createAuthClient } from "better-auth/client";
|
|
import {
|
|
organizationClient,
|
|
passkeyClient,
|
|
twoFactorClient,
|
|
adminClient,
|
|
multiSessionClient,
|
|
oneTapClient,
|
|
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_AUTH_URL || "http://localhost:3001", // 可以通过环境变量配置
|
|
plugins: [
|
|
organizationClient(),
|
|
usernameClient()
|
|
],
|
|
fetchOptions: {
|
|
onError(e) {
|
|
if (e.error.status === 429) {
|
|
toast.error("Too many requests. Please try again later.");
|
|
}
|
|
// 添加更详细的错误日志
|
|
console.error("Auth client error:", e);
|
|
},
|
|
|
|
},
|
|
});
|
|
|
|
export const {
|
|
signUp,
|
|
signIn,
|
|
signOut,
|
|
useSession,
|
|
organization,
|
|
useListOrganizations,
|
|
useActiveOrganization,
|
|
} = client; |