19 lines
675 B
TypeScript
19 lines
675 B
TypeScript
import { createAuthClient } from 'better-auth/client'
|
|
import { apiUrl } from './env'
|
|
|
|
// Better Auth mounts at /api/auth (default basePath); the client appends the
|
|
// endpoint verbatim to baseURL, so the base must include /auth — otherwise it
|
|
// emits /api/sign-in/email and 404s on both sandbox and deploy.
|
|
export const authClient = createAuthClient({
|
|
baseURL: `${apiUrl()}/auth`,
|
|
})
|
|
|
|
export async function signIn(email: string, password: string): Promise<void> {
|
|
const { error } = await authClient.signIn.email({ email, password })
|
|
if (error) throw new Error('Invalid credentials')
|
|
}
|
|
|
|
export async function signOut(): Promise<void> {
|
|
await authClient.signOut()
|
|
}
|