turash/bugulma/frontend/hooks/useAdmin.ts

27 lines
937 B
TypeScript

import { useAdmin as useAdminContext } from '@/contexts/AdminContext';
import { useAuth } from '@/contexts/AuthContext';
import { usePermissions } from '@/hooks/usePermissions';
/**
* Enhanced admin hook combining admin context with auth and permissions
*/
export const useAdmin = () => {
const adminContext = useAdminContext();
const { user } = useAuth();
const permissions = usePermissions();
return {
...adminContext,
...permissions,
user,
// Convenience methods
canManageOrganizations: permissions.checkPermission('organizations:update'),
canManageUsers: permissions.checkPermission('users:update'),
canManageContent: permissions.checkPermission('content:update'),
canManageLocalization: permissions.checkPermission('localization:update'),
canAccessSettings: permissions.checkPermission('settings:read'),
canAccessAnalytics: permissions.checkPermission('analytics:read'),
};
};