feat: Freigaben-Aenderung live + "Ordner nicht mehr verfuegbar"-Handling

Backend:
set_permission und remove_permission feuern jetzt ein SSE-Event vom
Typ 'permission' an Target-User + Owner + weitere Share-Empfaenger.
Damit aktualisieren sich die Dateilisten aller Beteiligten in
Echtzeit - auch beim Betroffenen, der gerade seinen Zugriff
verliert.

Frontend:
FilesView wrapped loadFiles in safeLoadCurrentFolder(). Bei
403/404 erscheint ein Toast "Dieser Ordner wurde geloescht oder
die Freigabe wurde entfernt" und nach 600ms wird zurueck zum
Root navigiert. Greift beim Direktaufruf, beim Ordnerwechsel und
bei durch SSE ausgeloesten Auto-Reloads.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Stefan Hacker
2026-04-12 12:00:15 +02:00
parent 9369c851a0
commit 9b135e42b7
3 changed files with 38 additions and 3 deletions
+7
View File
@@ -17,6 +17,13 @@ export const useFilesStore = defineStore('files', () => {
const response = await apiClient.get('/files', { params })
files.value = response.data.files
breadcrumb.value = response.data.breadcrumb
} catch (err) {
// Let the caller handle access/deletion errors - just clear the list
if (err.response && (err.response.status === 403 || err.response.status === 404)) {
files.value = []
breadcrumb.value = []
}
throw err
} finally {
loading.value = false
}