adding chat features, admin features and bug fixes

This commit is contained in:
Matthias Hochmeister
2026-03-12 08:16:34 +01:00
parent 7b14e3d5ba
commit 31f1414e06
43 changed files with 2610 additions and 16 deletions

View File

@@ -0,0 +1,52 @@
export interface MonitoredService {
id: string;
name: string;
url: string;
type: 'internal' | 'custom';
is_active: boolean;
created_at: string;
updated_at: string;
}
export interface PingResult {
name: string;
url: string;
status: 'up' | 'down';
latencyMs: number;
error?: string;
}
export interface StatusSummary {
up: number;
total: number;
}
export interface SystemHealth {
nodeVersion: string;
uptime: number;
memoryUsage: {
heapUsed: number;
heapTotal: number;
rss: number;
external: number;
};
dbStatus: boolean;
dbSize: string;
}
export interface UserOverview {
id: string;
email: string;
name: string;
role: string;
groups: string[];
is_active: boolean;
last_login_at: string | null;
}
export interface BroadcastPayload {
titel: string;
nachricht: string;
schwere?: 'info' | 'warnung' | 'fehler';
targetGroup?: string;
}

View File

@@ -34,3 +34,24 @@ export interface BookStackSearchResponse {
configured: boolean;
data: BookStackSearchResult[];
}
export interface BookStackPageDetail {
id: number;
name: string;
slug: string;
book_id: number;
book_slug: string;
chapter_id: number;
html: string;
created_at: string;
updated_at: string;
url: string;
book?: { name: string };
createdBy?: { name: string };
updatedBy?: { name: string };
}
export interface BookStackPageDetailResponse {
configured: boolean;
data: BookStackPageDetail | null;
}

View File

@@ -0,0 +1,5 @@
export interface ExternalLinks {
nextcloud?: string;
bookstack?: string;
vikunja?: string;
}

View File

@@ -27,3 +27,21 @@ export interface NextcloudConnectData {
export interface NextcloudPollData {
completed: boolean;
}
export interface NextcloudMessage {
id: number;
token: string;
actorType: string;
actorId: string;
actorDisplayName: string;
message: string;
timestamp: number;
messageType: string;
systemMessage: string;
}
export interface NextcloudRoomListData {
connected: boolean;
rooms: NextcloudConversation[];
loginName?: string;
}