mirror of
https://github.com/prowler-cloud/prowler.git
synced 2025-12-19 05:17:47 +00:00
32 lines
717 B
TypeScript
32 lines
717 B
TypeScript
import { useSession } from "next-auth/react";
|
|
|
|
export function useAuth() {
|
|
const { data: session, status } = useSession();
|
|
|
|
const isLoading = status === "loading";
|
|
const isAuthenticated = !!session?.user;
|
|
|
|
const permissions = session?.user?.permissions || {
|
|
manage_users: false,
|
|
manage_account: false,
|
|
manage_providers: false,
|
|
manage_scans: false,
|
|
manage_integrations: false,
|
|
manage_billing: false,
|
|
unlimited_visibility: false,
|
|
};
|
|
|
|
const hasPermission = (permission: keyof typeof permissions) => {
|
|
return permissions[permission] === true;
|
|
};
|
|
|
|
return {
|
|
session,
|
|
isLoading,
|
|
isAuthenticated,
|
|
user: session?.user,
|
|
permissions,
|
|
hasPermission,
|
|
};
|
|
}
|