refactor(frontend): PdfViewer und FileBrowser aufteilen, Tests dazu
FileBrowser 1177 -> 712 Zeilen, PdfViewer 1193 -> 848. Herausgeloest wurde, was fuer sich zusammenhaengt: hooks/useUploads Warteschlange, Ordnerbaeume, Ablage components/files/ Werkzeugleiste, Dialoge, Menues, Reihenfolge components/pdf/ Werkzeugleiste, Zoomstufen, Seitenmasse, Suche src/format.ts formatBytes -- lag in einer *Seite* Dabei gefundene und behobene Fehler: * Ordner-Upload haengte Fortschritt und Fehler an die falsche Zeile, sobald in einem Ordner Dateien *nach* einem Unterordner lagen: Die Zeilen standen in Fundreihenfolge, hochgeladen wurde nach Ordnern gruppiert, und ein mitlaufender Zaehler verband beides falsch. * formatBytes gab es zweimal, zeichengleich (Dateibrowser + Admin). * Beide Sortierungen liefen bei *jedem* Bild -- der Rahmen beim Ziehen ist eines je Mausbewegung. Jetzt gemerkt. * Die Suche im PDF las bei jedem Tastendruck den Text aller Seiten neu. Jetzt 160 ms Wartezeit; "Searching..." bleibt auch bei einem Fehler nicht mehr stehen. * Seitenmasse werden in Buendeln statt streng nacheinander geholt. Pruefinfrastruktur: vitest stand auf 'jsdom', ohne dass jsdom je installiert war -- "npm test" brach ab, bevor es etwas ausfuehrte. Jetzt 'node' und 32 Tests fuer die herausgeloesten reinen Funktionen. Das Abbild baut nur noch mit gruenen Tests. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
8e27c703d2
commit
ea90f43e77
28 files changed
+1904
-1260
No files matched your search
@@ -137,7 +137,14 @@ export default defineConfig({
|
||||
},
|
||||
},
|
||||
test: {
|
||||
environment: 'jsdom',
|
||||
// **node, nicht jsdom.** Die Einstellung stand auf 'jsdom', ohne dass
|
||||
// jsdom je installiert war – `npm test` brach deshalb ab, bevor es
|
||||
// irgendetwas ausführte. Geprüft wird hier, was sich ohne Browser prüfen
|
||||
// lässt: Reihenfolgen, Zoomstufen, Suche im Text, Einheiten.
|
||||
//
|
||||
// Wer eine Komponente prüfen will, schreibt `// @vitest-environment jsdom`
|
||||
// an den Anfang seiner Datei und nimmt jsdom in die devDependencies auf.
|
||||
environment: 'node',
|
||||
globals: true,
|
||||
setupFiles: './src/test-setup.ts',
|
||||
},
|
||||
|
||||
Reference in new issue
Block a user