Members
(constant) Impressum :Object.<string, TeamCategory>
Definiert die verschiedenen Team-Kategorien und ihre Mitglieder
- Gesamtes Team
- Frontend
- Backend
- Teamkoordinator
- Systemkoordinator
- Projektleitung
Type:
- Object.<string, TeamCategory>
- 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 |
CreateFolderForm(props) → {JSX.Element}
Formular-Komponente zum Erstellen eines neuen Ordners
Parameters:
Name | Type | Description | ||||||
---|---|---|---|---|---|---|---|---|
props |
Object | Komponenten-Props
Properties
|
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 |
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
|
Returns:
Die gerenderte FileUpload-Komponente
- Type
- JSX.Element
Folder() → {JSX.Element}
Hauptkomponente für die Dateiverwaltung mit Ordnerstruktur,
Dateivorschau, Upload-Funktionalität und Versionskontrolle
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
|
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.
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 |
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.
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.
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 |
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. |
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 |
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. |
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. |
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. |
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. |
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. |
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. |
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 |
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. |
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
Throws:
-
Wenn die Anfrage fehlschlägt
- Type
- Error
(async) fetchDbSessions()
Ruft aktuelle Datenbank-Sitzungsinformationen ab
Throws:
-
Wenn die Abfrage fehlschlägt
- Type
- Error
(async) fetchDbStats()
Ruft Datenbankstatistiken ab
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 |
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. |
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 |
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 |
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. |
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. |
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. |
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
|
|||||||||||||||
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. |
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ü.
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ü. |
(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 |
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.
handleFileClick(file) → {void}
Verarbeitet Klicks auf Dateien und zeigt Vorschau an
Parameters:
Name | Type | Description |
---|---|---|
file |
Object | Die angeklickte Datei |
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. |
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. |
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. |
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. |
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. |
handleFolderClickbg(folder)
Setzt den aktuell ausgewählten Ordner.
Parameters:
Name | Type | Description |
---|---|---|
folder |
Object | Der ausgewählte Ordner. |
(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 |
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 |
Returns:
- Type
- void
handleGoBack()
Navigiert zurück zur vorherigen Seite.
handleGoBackClick()
Entfernt den letzten Eintrag aus dem Ordnerverlauf.
handlePathClick(index)
Navigiert zu einem bestimmten Ordner in der Breadcrumb-Navigation.
Parameters:
Name | Type | Description |
---|---|---|
index |
number | Der Index des Ordners im Pfad. |
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 |
Returns:
- Type
- void
(async) handleRenameFolder() → {Promise.<void>}
Verarbeitet die Umbenennung eines Ordners
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 |
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 |
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. |
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 |
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 |
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 |
Throws:
-
Bei fehlgeschlagener Server-Anfrage oder fehlenden Eingaben
- Type
- Error
Returns:
- Type
- void
(async) handleVerification() → {Promise.<void>}
Verarbeitet die Verifizierung des eingegebenen Codes
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.
Throws:
-
Falls ein Fehler bei der Initialisierung des Transporters auftritt.
- Type
- Error
isEmailConfigured() → {boolean}
Überprüft, ob die erforderlichen E-Mail-Konfigurationswerte gesetzt sind.
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 |
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 |
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. |
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. |
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. |
(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. |
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. |
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. |
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
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. |
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. |
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 |
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 |
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 |
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 |
FileUploadState
Type:
- Object
Properties:
Name | Type | Description |
---|---|---|
isUploading |
boolean | Status des Upload-Vorgangs |
selectedFile |
File | null | Die ausgewählte Datei für den Upload |
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 |
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 |
LoginState
Type:
- Object
Properties:
Name | Type | Description |
---|---|---|
email |
string | Die E-Mail-Adresse des Benutzers |
password |
string | Das Passwort des Benutzers |
- Source:
NavigationLinks
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 |
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 |
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 |
VerificationState
Type:
- Object
Properties:
Name | Type | Description |
---|---|---|
email |
string | E-Mail-Adresse aus dem Router-State |
verificationCode |
string | Eingabewert des Verifizierungscodes |