Global

Members

(constant) Impressum :Object.<string, TeamCategory>

Definiert die verschiedenen Team-Kategorien und ihre Mitglieder - Gesamtes Team - Frontend - Backend - Teamkoordinator - Systemkoordinator - Projektleitung
Type:
Source:

Methods

AdminDashboard()

State-Hooks der Komponente
Properties:
Name Type Description
users Array.<User> Liste aller Benutzer
editingUser User | null Aktuell bearbeiteter Benutzer
newEmail string Neue E-Mail-Adresse bei Bearbeitung
newPassword string Neues Passwort bei Bearbeitung
dbSessions Array.<DBSession> Aktive Datenbank-Sitzungen
dbStats Array.<DBStats> Datenbankstatistiken
isMonitoringLoading boolean Ladezustand des Monitorings
adminUserIds Set.<number> Set der Admin-Benutzer-IDs
Source:

CreateFolderForm(props) → {JSX.Element}

Formular-Komponente zum Erstellen eines neuen Ordners
Parameters:
Name Type Description
props Object Komponenten-Props
Properties
Name Type Description
parentFolderId string | number ID des übergeordneten Ordners
Source:
Returns:
Die gerenderte CreateFolderForm-Komponente
Type
JSX.Element

Dashboard()

State-Definitionen
Properties:
Name Type Description
folders Array Liste aller Ordner
isLoading boolean Ladezustand
createNewFolder boolean Status des Ordner-Erstellungsdialogs
editingFolderId number | null ID des bearbeiteten Ordners
results Array Suchergebnisse
isCreating boolean Status der Ordnererstellung
isDeleting boolean Status des Löschvorgangs
isDownloading boolean Status des Downloads
contextMenu Object Position und Status des Kontextmenüs
isFileExplorerView boolean Aktuelle Ansichtsart
Source:

(async) DatabaseSetup()

Definiert die Beziehungen zwischen den Datenbank-Modellen
Properties:
Name Type Description
User.hasMany.Folder Object Ein-zu-viele Beziehung zwischen User und Folder
Folder.belongsTo.User Object Viele-zu-eins Beziehung zwischen Folder und User
Folder.hasMany.Folder Object Selbstreferenzierende Beziehung für Unterordner
User.hasMany.File Object Ein-zu-viele Beziehung zwischen User und File
Folder.hasMany.File Object Ein-zu-viele Beziehung zwischen Folder und File
UserRoleMapping Object Verknüpfungstabelle zwischen User und UserRole Datenbank-Initialisierung und Beziehungsdefinition zwischen Models
Source:
Throws:
Wenn die Datenbankverbindung oder Synchronisation fehlschlägt
Type
Error

FileUpload(props) → {JSX.Element}

Formular-Komponente zum Hochladen von Dateien mit Fortschrittsanzeige und Statusmeldungen
Parameters:
Name Type Description
props Object Komponenten-Props
Properties
Name Type Description
folderId string | number ID des Zielordners für den Upload
Source:
Returns:
Die gerenderte FileUpload-Komponente
Type
JSX.Element

Folder() → {JSX.Element}

Hauptkomponente für die Dateiverwaltung mit Ordnerstruktur, Dateivorschau, Upload-Funktionalität und Versionskontrolle
Source:
Returns:
Die gerenderte Folder-Komponente
Type
JSX.Element

FolderElement(props) → {JSX.Element}

Rendert ein einzelnes Ordner-Element mit Interaktionsmöglichkeiten
Parameters:
Name Type Description
props Object Komponenten-Props
Properties
Name Type Description
folderId string | number Eindeutige ID des Ordners
folderName string Name des Ordners
handleFolderDelete function Callback für das Löschen des Ordners
Source:
Returns:
Die gerenderte FolderElement-Komponente
Type
JSX.Element

Home(e)

Behandelt Fehler beim Laden des Hero-Bildes
Parameters:
Name Type Description
e Event Das Error-Event beim Bildladen
Source:

Login() → {JSX.Element}

Login-Komponente die das Anmeldeformular und die Navigation zur Registrierung bereitstellt. Verwaltet den Anmeldeprozess und bietet Optionen für Passwort-Reset.
Source:
Returns:
Die gerenderte Login-Komponente
Type
JSX.Element

Requestpassword() → {JSX.Element}

Komponente zur Anforderung eines Passwort-Resets. Sendet eine Anfrage an den Server und verarbeitet die Antwort.
Source:
Returns:
Die gerenderte Requestpassword-Komponente
Type
JSX.Element

ServerStart(PORT)

Server-Start Konfiguration
Parameters:
Name Type Description
PORT number Der Port auf dem der Server läuft
Source:
Listens to Events:
  • event:{number} PORT

Setpassword() → {JSX.Element}

Komponente zur Eingabe eines neuen Passworts nach erfolgreicher Verifizierung. Ermöglicht die Eingabe von E-Mail, Verifizierungscode und neuem Passwort.
Source:
Returns:
Die gerenderte Setpassword-Komponente
Type
JSX.Element

Signup() → {JSX.Element}

Registrierungskomponente mit Formularvalidierung. Prüft Passwortanforderungen und Übereinstimmung der Eingaben. Nach erfolgreicher Registrierung erfolgt Weiterleitung zur Verifizierung.
Source:
Returns:
Die gerenderte Signup-Komponente
Type
JSX.Element

Verification() → {JSX.Element}

Komponente zur E-Mail-Verifizierung. Verarbeitet den über react-router-dom übergebenen Location-State für die E-Mail-Adresse und ermöglicht die Eingabe des Verifizierungscodes.
Source:
Returns:
Die gerenderte Verification-Komponente
Type
JSX.Element

(async) assignAdmin(id)

Weist einem Benutzer Admin-Rechte zu
Parameters:
Name Type Description
id number ID des Benutzers, der Admin-Rechte erhalten soll
Source:
Throws:
Wenn die Rechtezuweisung fehlschlägt
Type
Error

(async) assignFolder(req, res) → {Promise.<void>}

Weist einer hochgeladenen Datei einen Ordner zu.
Parameters:
Name Type Description
req Object Das Request-Objekt mit Datei- und Ordner-ID.
res Object Das Response-Objekt mit der Bestätigung der Ordnerzuweisung.
Source:
Throws:
Falls ein Fehler beim Zuweisen des Ordners auftritt.
Type
Error
Returns:
Antwort mit der erfolgreichen Zuweisung.
Type
Promise.<void>

authenticateMiddleware(req, res, next) → {void}

Authentifizierungs-Middleware zur Überprüfung der Benutzeranmeldung
Parameters:
Name Type Description
req express.Request Express Request Objekt
res express.Response Express Response Objekt
next express.NextFunction Express Next Middleware Funktion
Source:
Returns:
Type
void

calculateCosineSimilarity(vec1, vec2) → {number}

Berechnet die Kosinus-Ähnlichkeit zwischen zwei Vektoren.
Parameters:
Name Type Description
vec1 Array.<number> Der erste Vektor.
vec2 Array.<number> Der zweite Vektor.
Source:
Returns:
Ein Wert zwischen -1 und 1, der die Ähnlichkeit der beiden Vektoren beschreibt.
Type
number

(async) checkKeywordStatus(req, res) → {Promise.<void>}

Überprüft, ob für eine Datei bereits Schlüsselwörter generiert wurden.
Parameters:
Name Type Description
req Object Das Request-Objekt mit der Datei-ID.
res Object Das Response-Objekt mit dem Keyword-Status.
Source:
Returns:
Antwort mit den Keywords oder Status "pending".
Type
Promise.<void>

(async) createFolder(req, res) → {Promise.<void>}

Erstellt einen neuen Ordner für den Benutzer.
Parameters:
Name Type Description
req Object Das Request-Objekt mit dem neuen Ordnernamen und optional einer Parent-Folder-ID.
res Object Das Response-Objekt für die Serverantwort.
Source:
Throws:
Falls die Erstellung fehlschlägt.
Type
Error
Returns:
Antwort mit der ID des neu erstellten Ordners.
Type
Promise.<void>

(async) createFolder(folderName, id)

Erstellt einen neuen Ordner über die API
Parameters:
Name Type Description
folderName string Name des zu erstellenden Ordners
id number Optional: ID des übergeordneten Ordners
Source:

(async) createFolder(folderName)

Erstellt einen neuen Ordner mit dem angegebenen Namen.
Parameters:
Name Type Description
folderName string Der Name des neuen Ordners.
Source:
Throws:
Falls das Erstellen des Ordners fehlschlägt.
Type
Error

(async) deleteFile(req, res)

Löscht eine Datei aus der Datenbank.
Parameters:
Name Type Description
req Object Das Request-Objekt mit der Datei-ID.
res Object Das Response-Objekt mit der Löschbestätigung.
Source:
Throws:
Falls die Datei nicht gefunden wird oder ein Löschfehler auftritt.
Type
Error

(async) deleteFolder(req, res) → {Promise.<void>}

Löscht einen Ordner und alle untergeordneten Ordner sowie die darin enthaltenen Dateien.
Parameters:
Name Type Description
req Object Das Request-Objekt mit der ID des zu löschenden Ordners.
res Object Das Response-Objekt für die Serverantwort.
Source:
Throws:
Falls das Löschen des Ordners fehlschlägt.
Type
Error
Returns:
Antwort mit einer Erfolgsmeldung oder einer Fehlermeldung.
Type
Promise.<void>

(async) deleteUser(id)

Löscht einen Benutzer nach Bestätigung
Parameters:
Name Type Description
id number ID des zu löschenden Benutzers
Source:
Throws:
Wenn das Löschen fehlschlägt
Type
Error

(async) downloadFile(req, res)

Ermöglicht das Herunterladen einer Datei aus der Datenbank.
Parameters:
Name Type Description
req Object Das Request-Objekt mit der Datei-ID.
res Object Das Response-Objekt mit der Datei als Anhang.
Source:
Throws:
Falls die Datei nicht gefunden wird oder ein Download-Fehler auftritt.
Type
Error

(async) fetchAdminUserIds()

Ruft die IDs aller Admin-Benutzer vom Server ab
Source:
Throws:
Wenn die Anfrage fehlschlägt
Type
Error

(async) fetchDbSessions()

Ruft aktuelle Datenbank-Sitzungsinformationen ab
Source:
Throws:
Wenn die Abfrage fehlschlägt
Type
Error

(async) fetchDbStats()

Ruft Datenbankstatistiken ab
Source:
Throws:
Wenn die Abfrage fehlschlägt
Type
Error

(async) fetchVersionHistory(fileId) → {Promise.<void>}

Ruft den Versionsverlauf einer Datei vom Server ab
Parameters:
Name Type Description
fileId string | number ID der Datei
Source:
Throws:
Bei fehlgeschlagener Server-Anfrage
Type
Error
Returns:
Aktualisiert den versionHistory-State
Type
Promise.<void>

(async) generateKeywordsInBackground(textContent, file_id) → {Promise.<void>}

Generiert Schlüsselwörter für eine Datei im Hintergrund und speichert sie in der Datenbank.
Parameters:
Name Type Description
textContent string Der extrahierte Text aus der Datei.
file_id number Die ID der Datei.
Source:
Returns:
Speichert die Keywords in der Datenbank.
Type
Promise.<void>

get/*(req, res)

Catch-all Route für Client-seitiges Routing
Parameters:
Name Type Description
req express.Request Express Request Objekt
res express.Response Express Response Objekt
Source:

get/api/current-user(req, res) → {Object}

Route zum Abrufen der aktuellen Benutzerinformationen
Parameters:
Name Type Description
req express.Request Express Request Objekt
res express.Response Express Response Objekt
Source:
Returns:
Objekt mit userId und isAdmin Status
Type
Object

(async) getFolderSuggestions(req, res) → {Promise.<void>}

Berechnet Vorschläge für Ordner basierend auf dem hochgeladenen Dokument.
Parameters:
Name Type Description
req Object Das Request-Objekt mit Text- und Embedding-Daten.
res Object Das Response-Objekt mit den Ordner-Vorschlägen.
Source:
Throws:
Falls die Berechnung fehlschlägt.
Type
Error
Returns:
Antwort mit passenden Ordnern oder ähnlichen existierenden Ordnern.
Type
Promise.<void>

(async) getFolderTree(req, res) → {Promise.<void>}

Ruft die vollständige Ordnerstruktur eines Benutzers ab, einschließlich untergeordneter Ordner und enthaltener Dateien.
Parameters:
Name Type Description
req Object Das Request-Objekt mit der Benutzer-Session.
res Object Das Response-Objekt für die Serverantwort.
Source:
Throws:
Falls ein Fehler beim Abrufen der Ordner auftritt.
Type
Error
Returns:
Antwort mit der hierarchischen Ordnerstruktur und nicht zugewiesenen Dateien.
Type
Promise.<void>

(async) getFolders(req, res) → {Promise.<void>}

Ruft alle Ordner eines Benutzers ab.
Parameters:
Name Type Description
req Object Das Request-Objekt mit der Benutzer-Session.
res Object Das Response-Objekt für die Serverantwort.
Source:
Throws:
Falls das Abrufen der Ordner fehlschlägt.
Type
Error
Returns:
Antwort mit einer Liste der Ordner.
Type
Promise.<void>

(async) getVersionHistory(req, res) → {Promise.<Object>}

Ruft die komplette Versionshistorie eines Dokuments basierend auf einer beliebigen Version ab. Die Funktion arbeitet folgendermaßen: 1. Sucht das ursprüngliche Dokument anhand der bereitgestellten fileId. 2. Verwendet den Dateinamen, um alle Versionen des Dokuments zu ermitteln. 3. Gibt eine sortierte Liste aller Versionen mit Metadaten zurück.
Parameters:
Name Type Description
req Object Das Request-Objekt.
Properties
Name Type Description
params.fileId string Die ID einer beliebigen Version der Datei.
session Object Sitzungsinformationen des Benutzers.
Properties
Name Type Description
userId string Benutzer-ID für die Autorisierung.
res Object Das Response-Objekt.
Properties:
Name Type Description
fileName string Der ursprüngliche Name der Datei.
versions Array.<Object> Eine Liste von Versionen des Dokuments.
versions[].file_id string Eindeutiger Bezeichner für jede Version.
versions[].version number Versionsnummer (beginnend bei 1).
versions[].created_at Date Zeitstempel der Versionserstellung.
Author:
  • Lennart
Source:
Throws:
Falls die Datei nicht gefunden wird oder ein Serverfehler auftritt.
Type
Error
Returns:
Ein Objekt mit der Versionshistorie.
Type
Promise.<Object>
Example
// API-Aufruf im Frontend
const response = await fetch(`/api/versions/${fileId}`);
const versionHistory = await response.json();

// Beispielhafte API-Antwort:
{
  fileName: "document.pdf",
  versions: [
    {
      file_id: "123",
      version: 2,
      created_at: "2024-11-07T14:30:00Z"
    },
    {
      file_id: "122",
      version: 1,
      created_at: "2024-11-07T12:00:00Z"
    }
  ]
}

handleCloseContextMenu()

Schließt das Kontextmenü.
Source:

handleContextMenu(event, folder)

Verarbeitet Rechtsklick-Events für das Kontextmenü
Parameters:
Name Type Description
event Event Das auslösende Event
folder Object Der Ordner, für den das Kontextmenü geöffnet wird
Source:

handleContextMenu(event, folder)

Öffnet das Kontextmenü für einen Ordner.
Parameters:
Name Type Description
event Event Das Kontextmenü-Event.
folder Object Das Ordner-Objekt für das Kontextmenü.
Source:

(async) handleCreateFolder(e) → {Promise.<void>}

Verarbeitet die Formular-Übermittlung zum Erstellen eines neuen Ordners
Parameters:
Name Type Description
e Event Das Submit-Event des Formulars
Source:
Throws:
Bei fehlgeschlagener Server-Anfrage
Type
Error
Returns:
Type
Promise.<void>

(async) handleCreateFolderSwal(id)

Öffnet einen SweetAlert2-Dialog zur Erstellung eines neuen Ordners
Parameters:
Name Type Description
id number Optional: ID des übergeordneten Ordners
Source:

(async) handleCreateFolderSwal()

Öffnet eine SweetAlert-Eingabe zum Erstellen eines neuen Ordners.
Source:

handleFileClick(file) → {void}

Verarbeitet Klicks auf Dateien und zeigt Vorschau an
Parameters:
Name Type Description
file Object Die angeklickte Datei
Source:
Returns:
Type
void

(async) handleFileDelete(fileId)

Löscht eine Datei nach Bestätigung
Parameters:
Name Type Description
fileId number ID der zu löschenden Datei
Source:

(async) handleFileDelete(fileId)

Löscht eine Datei nach Bestätigung durch den Benutzer.
Parameters:
Name Type Description
fileId string Die ID der zu löschenden Datei.
Source:
Throws:
Falls die Datei nicht gelöscht werden kann.
Type
Error

(async) handleFileDownload(fileName)

Lädt eine Datei über die API herunter
Parameters:
Name Type Description
fileName string Name der herunterzuladenden Datei
Source:

(async) handleFileDownload(fileName)

Lädt eine Datei vom Server herunter.
Parameters:
Name Type Description
fileName string Der Name der Datei, die heruntergeladen werden soll.
Source:
Throws:
Falls ein Fehler beim Download auftritt.
Type
Error

(async) handleFilePreview(fileName)

Zeigt eine Vorschau der ausgewählten Datei an
Parameters:
Name Type Description
fileName string Name der anzuzeigenden Datei
Source:

(async) handleFilePreview(fileName)

Zeigt eine Vorschau für verschiedene Dateiformate an.
Parameters:
Name Type Description
fileName string Der Name der Datei, die angezeigt werden soll.
Source:
Throws:
Falls die Datei nicht geladen werden kann.
Type
Error

(async) handleFileUploadSwal(id)

Öffnet eine SweetAlert-Eingabe zum Hochladen einer Datei.
Parameters:
Name Type Description
id string Die ID des Zielordners für den Upload.
Source:

handleFolderClick(folder, levelIndex)

Navigiert zu einem angeklickten Unterordner.
Parameters:
Name Type Description
folder Object Das angeklickte Ordner-Objekt.
levelIndex number Der Index des Ordners in der Hierarchie.
Source:

handleFolderClickbg(folder)

Setzt den aktuell ausgewählten Ordner.
Parameters:
Name Type Description
folder Object Der ausgewählte Ordner.
Source:

(async) handleFolderDelete(folderId)

Löscht einen Ordner und seinen Inhalt nach Bestätigung
Parameters:
Name Type Description
folderId number ID des zu löschenden Ordners
Source:

(async) handleFolderDelete(folderId) → {Promise.<void>}

Verarbeitet das Löschen eines Ordners mit Bestätigung
Parameters:
Name Type Description
folderId string | number ID des zu löschenden Ordners
Source:
Throws:
Bei fehlgeschlagener Server-Anfrage
Type
Error
Returns:
Type
Promise.<void>

handleFolderSelect(folder, level) → {void}

Verarbeitet die Auswahl eines Ordners und aktualisiert die Navigation
Parameters:
Name Type Description
folder Object Der ausgewählte Ordner
level number Die Ebene in der Ordnerhierarchie
Source:
Returns:
Type
void

handleGoBack()

Navigiert zurück zur vorherigen Seite.
Source:

handleGoBackClick()

Entfernt den letzten Eintrag aus dem Ordnerverlauf.
Source:

handlePathClick(index)

Navigiert zu einem bestimmten Ordner in der Breadcrumb-Navigation.
Parameters:
Name Type Description
index number Der Index des Ordners im Pfad.
Source:

handlePopoverToggle(fileId) → {void}

Schaltet die Sichtbarkeit des Popovers für eine spezifische Datei um
Parameters:
Name Type Description
fileId string | number ID der Datei, für die das Popover angezeigt werden soll
Source:
Returns:
Type
void

(async) handleRenameFolder() → {Promise.<void>}

Verarbeitet die Umbenennung eines Ordners
Source:
Throws:
Bei fehlgeschlagener Server-Anfrage
Type
Error
Returns:
Type
Promise.<void>

handleRenameFolderInput(e) → {void}

Validiert die Eingabe beim Umbenennen eines Ordners
Parameters:
Name Type Description
e Event Das Change-Event des Eingabefelds
Source:
Returns:
Type
void

handleRenameFolderInput(e) → {void}

Validiert die Eingabe beim Umbenennen und setzt entsprechende Fehlermeldungen
Parameters:
Name Type Description
e Event Change-Event des Input-Feldes
Source:
Returns:
Type
void

(async) handleRenameSubmit(folderId, newFolderName)

Sendet eine Anfrage zum Umbenennen eines Ordners.
Parameters:
Name Type Description
folderId string Die ID des umzubenennenden Ordners.
newFolderName string Der neue Name des Ordners.
Source:
Throws:
Falls ein Fehler beim Umbenennen auftritt.
Type
Error

handleSubmit(e) → {void}

Verarbeitet die Formular-Übermittlung für den Login-Prozess
Parameters:
Name Type Description
e Event Das Submit-Event des Formulars
Source:
Returns:
Type
void

(async) handleSubmit(event) → {Promise.<void>}

Verarbeitet die Formular-Übermittlung für die Passwort-Reset-Anfrage
Parameters:
Name Type Description
event Event Das Submit-Event des Formulars
Source:
Throws:
Wenn die Server-Anfrage fehlschlägt
Type
Error
Returns:
Type
Promise.<void>

(async) handleSubmit(event) → {Promise.<void>}

Verarbeitet die Formular-Übermittlung für das Setzen des neuen Passworts
Parameters:
Name Type Description
event Event Das Submit-Event des Formulars
Source:
Throws:
Wenn die Server-Anfrage fehlschlägt
Type
Error
Returns:
Type
Promise.<void>

handleSubmit(e) → {void}

Verarbeitet die Formular-Übermittlung mit Validierung
Parameters:
Name Type Description
e Event Das Submit-Event des Formulars
Source:
Throws:
  • Bei nicht erfüllten Passwortanforderungen
    Type
    Alert
  • Bei nicht übereinstimmenden Passwörtern
    Type
    Alert
Returns:
Type
void

handleSubmit(e) → {void}

Verarbeitet die Formular-Übermittlung für den Datei-Upload
Parameters:
Name Type Description
e Event Das Submit-Event des Formulars
Source:
Throws:
Bei fehlgeschlagener Server-Anfrage oder fehlenden Eingaben
Type
Error
Returns:
Type
void

(async) handleVerification() → {Promise.<void>}

Verarbeitet die Verifizierung des eingegebenen Codes
Source:
Throws:
Bei fehlgeschlagener API-Anfrage
Type
Error
Returns:
Type
Promise.<void>

initializeApp() → {void}

Initialisiert und rendert die React-Anwendung
Source:
Returns:
Type
void
Example
// Die Anwendung wird wie folgt initialisiert:
createRoot(document.getElementById('root')).render(
  <StrictMode>
    <BrowserRouter>
      <App />
    </BrowserRouter>
  </StrictMode>
)

initializeTransporter()

Initialisiert den Nodemailer-Transporter für den E-Mail-Versand. Falls die Konfiguration unvollständig ist, wird der Transporter nicht erstellt.
Source:
Throws:
Falls ein Fehler bei der Initialisierung des Transporters auftritt.
Type
Error

isEmailConfigured() → {boolean}

Überprüft, ob die erforderlichen E-Mail-Konfigurationswerte gesetzt sind.
Source:
Returns:
Gibt `true` zurück, wenn die E-Mail-Konfiguration vollständig ist, andernfalls `false`.
Type
boolean
Example
if (isEmailConfigured()) {
  console.log("E-Mail-Versand ist konfiguriert.");
}

(async) post/api/verify-code(req, res)

Verifizierungsroute für Benutzer-Codes
Parameters:
Name Type Description
req express.Request Express Request Objekt mit email und verificationCode im Body
res express.Response Express Response Objekt
Source:
Throws:
Wenn die Verifizierung fehlschlägt
Type
Error

(async) post/register(req, res)

Registrierungsroute für neue Benutzer
Parameters:
Name Type Description
req express.Request Express Request Objekt mit username, email und password im Body
res express.Response Express Response Objekt
Source:
Throws:
Wenn die Registrierung fehlschlägt
Type
Error

processSuggestions(clusteringResults, docEmbedding, folderVectors, config) → {Array.<Object>}

Verarbeitet die Clustering-Ergebnisse und berechnet die besten Ordner-Vorschläge.
Parameters:
Name Type Description
clusteringResults Object Das Ergebnis des Clustering-Prozesses.
docEmbedding Array.<number> Das Embedding des Dokuments.
folderVectors Array.<Object> Eine Liste von Ordnern mit ihren Embeddings.
config Object Konfigurationsoptionen für die Berechnung.
Source:
Returns:
Eine sortierte Liste von Ordner-Vorschlägen mit Metadaten.
Type
Array.<Object>

(async) renameFolder(req, res) → {Promise.<void>}

Ändert den Namen eines vorhandenen Ordners.
Parameters:
Name Type Description
req Object Das Request-Objekt mit der Ordner-ID und dem neuen Namen.
res Object Das Response-Objekt für die Serverantwort.
Source:
Throws:
Falls das Umbenennen fehlschlägt.
Type
Error
Returns:
Antwort mit der aktualisierten Ordnerinformation.
Type
Promise.<void>

renderUploadForm(req, res)

Rendert das Upload-Formular für Dokumente.
Parameters:
Name Type Description
req Object Das Request-Objekt.
res Object Das Response-Objekt.
Source:

(async) sendResetEmail(email, verification_Key, user_name)

Sendet eine E-Mail zum Zurücksetzen des Passworts mit einem Verifizierungscode.
Parameters:
Name Type Description
email string Die E-Mail-Adresse des Empfängers.
verification_Key string Der Verifizierungscode.
user_name string Der Name des Benutzers.
Source:
Throws:
Falls ein Fehler beim Senden der E-Mail auftritt.
Type
Error
Returns:
Example
const result = await sendResetEmail("test@example.com", "654321", "Max Mustermann");
if (result.success) {
  console.log("Passwort-Reset-E-Mail gesendet:", result.messageId);
} else {
  console.error("Fehler beim Senden:", result.message);
}

(async) sendVerificationEmail(email, verification_Key, user_name)

Sendet eine Bestätigungs-E-Mail mit einem Verifizierungscode an einen Benutzer.
Parameters:
Name Type Description
email string Die E-Mail-Adresse des Empfängers.
verification_Key string Der Verifizierungscode.
user_name string Der Name des Benutzers.
Source:
Throws:
Falls ein Fehler beim Senden der E-Mail auftritt.
Type
Error
Returns:
Example
const result = await sendVerificationEmail("test@example.com", "123456", "Max Mustermann");
if (result.success) {
  console.log("Bestätigungs-E-Mail gesendet:", result.messageId);
} else {
  console.error("Fehler beim Senden:", result.message);
}

(async) smartUploadFile(req, res) → {Promise.<void>}

Führt den "Smart Upload" durch: Die Datei wird hochgeladen, verarbeitet und erhält anschließend Ordnervorschläge.
Parameters:
Name Type Description
req Object Das Request-Objekt mit Datei- und Benutzerinformationen.
res Object Das Response-Objekt für die Serverantwort.
Source:
Throws:
Falls ein Fehler während der Verarbeitung auftritt.
Type
Error
Returns:
Antwort mit Upload-Ergebnissen und Ordnervorschlägen.
Type
Promise.<void>

toggleView()

Wechselt zwischen Listen- und Kachelansicht
Source:

(async) updateUser()

Aktualisiert die Benutzerdaten des ausgewählten Benutzers
Source:
Throws:
Wenn die Aktualisierung fehlschlägt
Type
Error

(async) uploadFile(req, res) → {Promise.<void>}

Verarbeitet den Upload einer Datei, extrahiert Text, generiert Embeddings und führt Clustering durch.
Parameters:
Name Type Description
req Object Das Request-Objekt mit Datei- und Benutzerinformationen.
res Object Das Response-Objekt für die Serverantwort.
Source:
Throws:
Falls ein Fehler beim Hochladen oder Verarbeiten der Datei auftritt.
Type
Error
Returns:
Antwort mit Upload- und Clustering-Ergebnissen.
Type
Promise.<void>

useQuery() → {URLSearchParams}

Custom Hook für URL-Suchparameter
Source:
Returns:
Aktuelle URL-Suchparameter
Type
URLSearchParams

(async) viewFile(req, res)

Zeigt eine Datei im Browser an, falls sie ein unterstütztes Format hat.
Parameters:
Name Type Description
req Object Das Request-Objekt mit der Datei-ID.
res Object Das Response-Objekt mit der Datei.
Source:
Throws:
Falls die Datei nicht gefunden wird oder ein Anzeige-Fehler auftritt.
Type
Error

Type Definitions

CreateFolderState

Type:
  • Object
Properties:
Name Type Description
isCreating boolean Status des Erstellungsvorgangs
folderName string Name des zu erstellenden Ordners
message string Statusnachricht für den Benutzer
Source:

DBSession

Type:
  • Object
Properties:
Name Type Description
datname string Name der Datenbank
usename string Datenbankbenutzer
state string Aktueller Status
query string Aktuelle Abfrage
query_start string Startzeitpunkt der Abfrage
Source:

DBStats

Type:
  • Object
Properties:
Name Type Description
datname string Name der Datenbank
active_connections number Anzahl aktiver Verbindungen
committed_transactions number Anzahl erfolgreich abgeschlossener Transaktionen
rolledback_transactions number Anzahl zurückgerollter Transaktionen
blocks_read number Anzahl gelesener Blöcke
blocks_hit number Cache-Treffer
Source:

FilePreviewState

Type:
  • Object
Properties:
Name Type Description
currentlyPreviewedFile Object | null Aktuell angezeigte Datei
filePreviewContent string Inhalt der Vorschau
versionHistory Array Versionsverlauf der Datei
popoverOpen Object Zustand der Popover-Anzeigen
Source:

FileUploadState

Type:
  • Object
Properties:
Name Type Description
isUploading boolean Status des Upload-Vorgangs
selectedFile File | null Die ausgewählte Datei für den Upload
Source:

FolderElementState

Type:
  • Object
Properties:
Name Type Description
showFolderOptions boolean Steuert die Anzeige des Optionsmenüs
isPopupVisible boolean Steuert die Anzeige des Umbenennen-Popups
newFolderName string Neuer Name für den Ordner
isLoading boolean Status des Umbenennungsvorgangs
inputError string Validierungsfehler für die Eingabe
errorMessage string Allgemeine Fehlermeldungen
Source:

FolderState

Type:
  • Object
Properties:
Name Type Description
loading boolean Ladezustand der Komponente
folders Array Array der Ordnerstruktur
keywords string Suchbegriffe für Filterung
selectedFolders Array Ausgewählte Ordner für Navigation
isDeleting boolean Status des Löschvorgangs
isDownloading boolean Status des Downloads
contextMenu Object Zustand des Kontextmenüs
selectedFolderId string | null ID des ausgewählten Ordners
selectedFileId string | null ID der ausgewählten Datei
Source:

LoginState

Type:
  • Object
Properties:
Name Type Description
email string Die E-Mail-Adresse des Benutzers
password string Das Passwort des Benutzers
Source:
Type:
  • Object
Properties:
Name Type Description
signup string Link zur Registrierungsseite
login string Link zur Anmeldeseite
impressum string Link zum Impressum
Source:

PageSections

Type:
  • Object
Properties:
Name Type Description
header JSX.Element Enthält Navigation und Logo
heroSection JSX.Element Hauptbereich mit Call-to-Action
featuresSection JSX.Element Bereich für Produktmerkmale
footer JSX.Element Fußbereich mit Kontaktinformationen
Source:

PageStructure

Type:
  • Object
Properties:
Name Type Description
header JSX.Element Navigation und Logo
impressumContent JSX.Element Hauptinhalt mit Team-Informationen
footer JSX.Element Fußbereich mit Kontaktinformationen
Source:

PasswordRequirements

Type:
  • Object
Properties:
Name Type Description
minLength number Minimale Passwortlänge (8 Zeichen)
uppercase RegExp Regex für Großbuchstaben-Validierung
Source:

ProtectedRouteProps

Props für die ProtectedRoute-Komponente
Type:
  • Object
Properties:
Name Type Attributes Description
shouldBeAuthenticated boolean Gibt an, ob der Benutzer authentifiziert sein muss
isAdminRoute boolean <optional>
Optional: Gibt an, ob es sich um eine Admin-Route handelt
children React.ReactNode Die zu rendernden Kind-Komponenten
Source:

RequestPasswordState

Type:
  • Object
Properties:
Name Type Description
email string E-Mail-Adresse des Benutzers
message string Statusnachricht für den Benutzer
Source:

SetPasswordState

Type:
  • Object
Properties:
Name Type Description
email string E-Mail-Adresse des Benutzers
verificationcode string Verifizierungscode aus der E-Mail
newPassword string Neues Passwort des Benutzers
message string Statusnachricht für den Benutzer
Source:

SignupState

Type:
  • Object
Properties:
Name Type Description
username string Benutzername
email string E-Mail-Adresse
password string Passwort
password2 string Passwort-Bestätigung
Source:

TeamCategory

Type:
  • Object
Properties:
Name Type Description
title string Name der Team-Kategorie
members Array.<TeamMember> Array der Teammitglieder in dieser Kategorie
Source:

TeamMember

Type:
  • Object
Properties:
Name Type Description
name string Vollständiger Name des Teammitglieds
roles Array.<string> Array der Rollen des Teammitglieds
Source:

User

Type:
  • Object
Properties:
Name Type Description
user_id number Eindeutige Benutzer-ID
user_name string Benutzername
email string E-Mail-Adresse des Benutzers
is_verified boolean Verifizierungsstatus
registered_at Date Registrierungsdatum
Source:

VerificationState

Type:
  • Object
Properties:
Name Type Description
email string E-Mail-Adresse aus dem Router-State
verificationCode string Eingabewert des Verifizierungscodes
Source: