2023-11-07 18:25:17 +00:00
|
|
|
import ModelBase from 'App/ModelBase';
|
2024-07-21 16:34:26 +00:00
|
|
|
import DownloadProtocol from 'DownloadClient/DownloadProtocol';
|
2023-11-07 18:25:17 +00:00
|
|
|
import Language from 'Language/Language';
|
|
|
|
import { QualityModel } from 'Quality/Quality';
|
|
|
|
import CustomFormat from 'typings/CustomFormat';
|
|
|
|
|
|
|
|
export type QueueTrackedDownloadStatus = 'ok' | 'warning' | 'error';
|
|
|
|
|
|
|
|
export type QueueTrackedDownloadState =
|
|
|
|
| 'downloading'
|
2024-07-21 16:34:26 +00:00
|
|
|
| 'importBlocked'
|
2023-11-07 18:25:17 +00:00
|
|
|
| 'importPending'
|
|
|
|
| 'importing'
|
|
|
|
| 'imported'
|
|
|
|
| 'failedPending'
|
|
|
|
| 'failed'
|
|
|
|
| 'ignored';
|
|
|
|
|
|
|
|
export interface StatusMessage {
|
|
|
|
title: string;
|
|
|
|
messages: string[];
|
|
|
|
}
|
|
|
|
|
|
|
|
interface Queue extends ModelBase {
|
|
|
|
languages: Language[];
|
|
|
|
quality: QualityModel;
|
|
|
|
customFormats: CustomFormat[];
|
2024-07-21 16:34:26 +00:00
|
|
|
customFormatScore: number;
|
2023-11-07 18:25:17 +00:00
|
|
|
size: number;
|
|
|
|
title: string;
|
|
|
|
sizeleft: number;
|
|
|
|
timeleft: string;
|
|
|
|
estimatedCompletionTime: string;
|
2024-01-16 05:28:28 +00:00
|
|
|
added?: string;
|
2023-11-07 18:25:17 +00:00
|
|
|
status: string;
|
|
|
|
trackedDownloadStatus: QueueTrackedDownloadStatus;
|
|
|
|
trackedDownloadState: QueueTrackedDownloadState;
|
|
|
|
statusMessages: StatusMessage[];
|
|
|
|
errorMessage: string;
|
|
|
|
downloadId: string;
|
2024-07-21 16:34:26 +00:00
|
|
|
protocol: DownloadProtocol;
|
2023-11-07 18:25:17 +00:00
|
|
|
downloadClient: string;
|
|
|
|
outputPath: string;
|
|
|
|
movieHasFile: boolean;
|
|
|
|
movieId?: number;
|
2024-07-21 16:34:26 +00:00
|
|
|
downloadClientHasPostImportCategory: boolean;
|
2023-11-07 18:25:17 +00:00
|
|
|
}
|
|
|
|
export default Queue;
|