diff --git a/ui/src/app/app.html b/ui/src/app/app.html index f613b4b..e6e67d2 100644 --- a/ui/src/app/app.html +++ b/ui/src/app/app.html @@ -690,403 +690,424 @@ Connecting to server... } -
Downloading
-
- - -
-
- - - - - - - - - - - - - @for (download of downloads.queue | keyvalue: asIsOrder; track download.key) { - - - - - - - - - } - -
- - VideoFormatSpeedETA
- - -
-
- {{ download.value.title }} - @if (download.value.live_status === 'is_live' && download.value.status !== 'scheduled') { - LIVE - } -
- @if (download.value.status === 'scheduled') { - - - Waiting for stream - @if (liveCountdownSeconds(download.value); as secs) { - - starts in {{ secs | eta }} - } - - } @else { - - @if (download.value.status === 'postprocessing') { - Post-processing - } - - } -
-
{{ formatLabel(download.value) }}{{ download.value.speed | speed }}{{ download.value.eta | eta }} -
- @if (download.value.status === 'pending' || download.value.status === 'scheduled') { - - } - - -
-
-
- -
Completed
-
- - - - - - -
-
- - - - - - - - - - - - - - - @for (entry of cachedSortedDone; track entry[0]) { - - - - - - - - - - - @if (entry[1].chapter_files && entry[1].chapter_files.length > 0) { - @for (chapterFile of entry[1].chapter_files; track chapterFile.filename) { - - - - - - - - - - - } - } - } - -
- - VideoTypeQualityCodec / FormatFile SizeDownloaded
- - -
- @if (entry[1].status === 'finished') { - - } - @if (entry[1].status === 'error') { - - } -
- @if (!!entry[1].filename) { - {{ entry[1].title }} - } @else { - @if (entry[1].status === 'error') { - - } @else { - {{entry[1].title}} - } - } - @if (entry[1].status === 'error' && isErrorExpanded(entry[0])) { -
-
-
- @if (entry[1].msg) { -
Message: {{entry[1].msg}}
- } - @if (entry[1].error) { -
Error: {{entry[1].error}}
- } -
URL: {{entry[1].url}}
-
- -
-
- } -
- {{ downloadTypeLabel(entry[1]) }} - - {{ formatQualityLabel(entry[1]) }} - - {{ formatCodecLabel(entry[1]) }} - - @if (entry[1].size) { - {{ entry[1].size | fileSize }} - } - - @if (entry[1].timestamp) { - {{ entry[1].timestamp / 1000000 | date:'yyyy-MM-dd HH:mm' }} - } - -
- @if (entry[1].status === 'error') { - - } - @if (entry[1].filename) { - - } - @if (entry[1].filename && canShareDownloads()) { - - } - - -
-
- - - @if (chapterFile.size) { - {{ chapterFile.size | fileSize }} - } - -
- -
-
-
- -
Subscriptions
-
- @if (checkingAllSubscriptions) { - - } @else { - - } - @if (checkingSelectedSubscriptions) { - - } @else { - - } -
-
- - - - - - - - - - - - - - - @for (entry of cachedSubs; track entry[0]) { + @if (!downloadingCollapsed) { +
+ + +
+
+
- - NameURLFilterInterval (min)Last checkedStatus
+ - - - - - - - - + + + + + + + + + @for (download of downloads.queue | keyvalue: asIsOrder; track download.key) { + + + + + + + + + } + +
- - - @if (editingNameId === entry[0]) { -
- - - -
- } @else { -
- {{ entry[1].name }} - -
- } -
{{ entry[1].url }} - @if (editingTitleRegexId === entry[0]) { -
- - - -
- } @else { -
- {{ entry[1].title_regex || '—' }} - -
- } -
{{ entry[1].check_interval_minutes }} - @if (entry[1].last_checked !== null) { - {{ entry[1].last_checked! * 1000 | date:'yyyy-MM-dd HH:mm:ss' }} - } @else { - - } - - @if (entry[1].error) { - {{ entry[1].error }} - } @else if (entry[1].enabled) { - Active - } @else { - Paused - } - -
- @if (isSubscriptionChecking(entry[0])) { - - } @else { - - } -
+ + VideoFormatSpeedETA
+ + +
+
+ {{ download.value.title }} + @if (download.value.live_status === 'is_live' && download.value.status !== 'scheduled') { + LIVE + } +
+ @if (download.value.status === 'scheduled') { + + + Waiting for stream + @if (liveCountdownSeconds(download.value); as secs) { + - starts in {{ secs | eta }} + } + } @else { - + + @if (download.value.status === 'postprocessing') { + Post-processing + } + } - - +
+
{{ formatLabel(download.value) }}{{ download.value.speed | speed }}{{ download.value.eta | eta }} +
+ @if (download.value.status === 'pending' || download.value.status === 'scheduled') { + + } + + +
+
+
+ } + +
+ +
+ @if (!completedCollapsed) { +
+ + + + + + +
+
+ + + + + + + + + + + + + + + @for (entry of cachedSortedDone; track entry[0]) { + + + + + + + + + + + @if (entry[1].chapter_files && entry[1].chapter_files.length > 0) { + @for (chapterFile of entry[1].chapter_files; track chapterFile.filename) { + + + + + + + + + + } } - -
+ + VideoTypeQualityCodec / FormatFile SizeDownloaded
+ + +
+ @if (entry[1].status === 'finished') { + + } + @if (entry[1].status === 'error') { + + } +
+ @if (!!entry[1].filename) { + {{ entry[1].title }} + } @else { + @if (entry[1].status === 'error') { + + } @else { + {{entry[1].title}} + } + } + @if (entry[1].status === 'error' && isErrorExpanded(entry[0])) { +
+
+
+ @if (entry[1].msg) { +
Message: {{entry[1].msg}}
+ } + @if (entry[1].error) { +
Error: {{entry[1].error}}
+ } +
URL: {{entry[1].url}}
+
+ +
+
+ } +
+ {{ downloadTypeLabel(entry[1]) }} + + {{ formatQualityLabel(entry[1]) }} + + {{ formatCodecLabel(entry[1]) }} + + @if (entry[1].size) { + {{ entry[1].size | fileSize }} + } + + @if (entry[1].timestamp) { + {{ entry[1].timestamp / 1000000 | date:'yyyy-MM-dd HH:mm' }} + } + +
+ @if (entry[1].status === 'error') { + + } + @if (entry[1].filename) { + + } + @if (entry[1].filename && canShareDownloads()) { + + } + + +
+
+ + + @if (chapterFile.size) { + {{ chapterFile.size | fileSize }} + } + +
+
+ } + + +
+ } + +
+
+ @if (!subscriptionsCollapsed) { +
+ @if (checkingAllSubscriptions) { + + } @else { + + } + @if (checkingSelectedSubscriptions) { + + } @else { + + } + +
+
+ + + + + + + + + + + + + + + @for (entry of cachedSubs; track entry[0]) { + + + + + + + + + + + } + +
+ + NameURLFilterInterval (min)Last checkedStatus
+ + + @if (editingNameId === entry[0]) { +
+ + + +
+ } @else { +
+ {{ entry[1].name }} + +
+ } +
{{ entry[1].url }} + @if (editingTitleRegexId === entry[0]) { +
+ + + +
+ } @else { +
+ {{ entry[1].title_regex || '—' }} + +
+ } +
{{ entry[1].check_interval_minutes }} + @if (entry[1].last_checked !== null) { + {{ entry[1].last_checked! * 1000 | date:'yyyy-MM-dd HH:mm:ss' }} + } @else { + + } + + @if (entry[1].error) { + {{ entry[1].error }} + } @else if (entry[1].enabled) { + Active + } @else { + Paused + } + +
+ @if (isSubscriptionChecking(entry[0])) { + + } @else { + + } + + +
+
+
+ }