Add detailed preparation labels and dash separator for post-process status

- Show "Entpacken vorbereiten..." while scanning archives and checking disk space
- Show "Archive scannen..." and "Speicherplatz prüfen..." phases from extractor
- Use dash separator in UI: "[10/10 - Done] - Entpacken 45% (3/6)"
- Handle new "preparing" phase in both hybrid and full extraction progress handlers

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Sucukdeluxe
2026-03-05 02:57:23 +01:00
co-authored by Claude Opus 4.6
parent 8839080069
commit 2a528a126c
4 changed files with 18 additions and 5 deletions
+3 -1
View File
@@ -99,7 +99,7 @@ export interface ExtractProgressUpdate {
archiveName: string;
archivePercent?: number;
elapsedMs?: number;
phase: "extracting" | "done";
phase: "extracting" | "done" | "preparing";
passwordAttempt?: number;
passwordTotal?: number;
passwordFound?: boolean;
@@ -1862,6 +1862,7 @@ export async function extractPackageArchives(options: ExtractOptions): Promise<{
if (options.signal?.aborted) {
throw new Error("aborted:extract");
}
options.onProgress?.({ current: 0, total: 0, percent: 0, archiveName: "Archive scannen...", phase: "preparing" });
const allCandidates = await findArchiveCandidates(options.packageDir);
const candidates = options.onlyArchives
? allCandidates.filter((archivePath) => {
@@ -1873,6 +1874,7 @@ export async function extractPackageArchives(options: ExtractOptions): Promise<{
// Disk space pre-check
if (candidates.length > 0) {
options.onProgress?.({ current: 0, total: candidates.length, percent: 0, archiveName: "Speicherplatz prüfen...", phase: "preparing" });
try {
await fs.promises.mkdir(options.targetDir, { recursive: true });
} catch { /* ignore */ }