rights system

This commit is contained in:
Matthias Hochmeister
2026-03-23 10:07:53 +01:00
parent f976f36cbc
commit 2bb22850f4
35 changed files with 1565 additions and 282 deletions

View File

@@ -0,0 +1,27 @@
import { api } from './api';
import type { MyPermissions, PermissionMatrix } from '../types/permissions.types';
export const permissionsApi = {
getMyPermissions: async (): Promise<MyPermissions> => {
const r = await api.get('/api/permissions/me');
return r.data.data;
},
getMatrix: async (): Promise<PermissionMatrix> => {
const r = await api.get('/api/permissions/admin/matrix');
return r.data.data;
},
getGroups: async (): Promise<string[]> => {
const r = await api.get('/api/permissions/admin/groups');
return r.data.data;
},
setGroupPermissions: async (group: string, permissions: string[]): Promise<void> => {
await api.put(`/api/permissions/admin/group/${encodeURIComponent(group)}`, { permissions });
},
setMaintenanceFlag: async (featureGroup: string, active: boolean): Promise<void> => {
await api.put(`/api/permissions/admin/maintenance/${encodeURIComponent(featureGroup)}`, { active });
},
};