Files
portabase/src/lib/auth/auth-client.ts
T
2025-05-16 15:54:17 +02:00

31 lines
843 B
TypeScript

import { createAuthClient } from "better-auth/react";
import { adminClient, organizationClient } from "better-auth/client/plugins";
import { env } from "@/env.mjs";
import { ac, user, admin as adminRole, pending, superadmin, orgAdmin, orgMember, orgOwner } from "./permissions";
export const authClient = createAuthClient({
baseURL: env.NEXT_PUBLIC_PROJECT_URL,
plugins: [
organizationClient({
ac,
roles: {
orgOwner,
orgAdmin,
orgMember,
},
}),
adminClient({
ac,
roles: {
adminRole,
user,
pending,
superadmin,
},
}),
],
});
export const { signIn, signOut, signUp, useSession, listAccounts, admin } = authClient;