From 68b5153139b2f89055d69e3991350ac416bf93d5 Mon Sep 17 00:00:00 2001 From: Leopoldadmin Date: Fri, 3 Jul 2026 20:02:32 +0000 Subject: [PATCH] Problem 3/4: Add usePermissions hook + PermissionItem/PermissionsResponse interfaces --- frontend/src/api/hooks.ts | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/frontend/src/api/hooks.ts b/frontend/src/api/hooks.ts index 517ff60..737c6d3 100644 --- a/frontend/src/api/hooks.ts +++ b/frontend/src/api/hooks.ts @@ -81,6 +81,19 @@ export interface Role { field_permissions?: Record; } +export interface PermissionItem { + key: string; + label: string; + category: string; + plugin_name?: string; +} + +export interface PermissionsResponse { + system: PermissionItem[]; + plugins: PermissionItem[]; + all: PermissionItem[]; +} + export interface Plugin { name: string; display_name?: string; @@ -502,6 +515,13 @@ export function useRoles() { }); } +export function usePermissions() { + return useQuery({ + queryKey: ['permissions'], + queryFn: () => apiGet('/roles/permissions'), + }); +} + export function useCreateRole() { const queryClient = useQueryClient(); return useMutation({