Separate game file downloads and verification with progress timing
This commit is contained in:
@@ -7,10 +7,16 @@ export type GameLibraryState = 'importing' | 'ready' | 'failed';
|
||||
export type LibraryCacheState = 'missing' | 'downloading' | 'verifying' | 'ready' | 'failed' | 'outdated';
|
||||
|
||||
export interface GameFileEntry { path: string; size: number; sha256: string }
|
||||
export interface LibraryTransferProgress {
|
||||
phase: 'downloading' | 'verifying'; startedAt: string;
|
||||
elapsedSeconds: number; phaseElapsedSeconds: number;
|
||||
bytesPerSecond: number | null; etaSeconds: number | null;
|
||||
}
|
||||
export interface HostLibraryCache {
|
||||
hostId: string; libraryVersionId: string; status: LibraryCacheState;
|
||||
bytesDownloaded: number; bytesTotal: number; manifestSha256: string | null;
|
||||
error: string | null; updatedAt: string; operationId: string | null;
|
||||
bytesVerified?: number; transfer?: LibraryTransferProgress;
|
||||
}
|
||||
export interface GameLibraryVersion {
|
||||
id: string; libraryId: string; game: GameLibraryGame; version: string;
|
||||
|
||||
Reference in New Issue
Block a user