1- < div class ="amd-font " *ngIf ="isCreated ">
2- < div *ngIf ="config.core.showUploadDropzone ">
3- < amd-dropzone > </ amd-dropzone >
4- </ div >
5-
6- < div fxLayout ="row " fxLayout.lt-sm ="column " style ="margin-bottom: 10px ">
7- < div fxFlex >
8- < button class ="amd-mr-1 " mat-raised-button *ngIf ="datatransferFacade.showStartButton() " (click) ="datatransferFacade.startAll() ">
9- < mat-icon > play_arrow</ mat-icon > Start
10- </ button >
11- < button class ="amd-mr-1 " mat-raised-button *ngIf ="datatransferFacade.showPauseButton() " (click) ="datatransferFacade.pauseAll() ">
12- < mat-icon > pause</ mat-icon > Pause
13- </ button >
14- < button class ="amd-mr-1 " mat-raised-button *ngIf ="datatransferFacade.showRemoveButton() " (click) ="datatransferFacade.removeAll() ">
15- < mat-icon > close</ mat-icon > Remove all
16- </ button >
17- < button class ="amd-mr-1 " mat-raised-button *ngIf ="datatransferFacade.showRetryButton() " (click) ="datatransferFacade.retryAll() ">
18- < mat-icon > refresh</ mat-icon > Retry ({{datatransferStore.failedCount}})
19- </ button >
20- < mat-menu #exportMenu ="matMenu ">
21- < button mat-menu-item (click) ="datatransferFacade.export('CSV') ">
22- < span > CSV</ span >
23- </ button >
24- < button mat-menu-item (click) ="datatransferFacade.export('JSON') ">
25- < span > JSON</ span >
26- </ button >
27- </ mat-menu >
28- < button mat-raised-button *ngIf ="datatransferFacade.showExportButton() " [matMenuTriggerFor] ="exportMenu ">
29- Export
30- < mat-icon > expand_more</ mat-icon >
31- </ button >
32- < mat-checkbox *ngIf ="datatransferFacade.showPreprocessingCheckbox() "
33- [(ngModel)] ="config.core.preprocessHashChecked " style ="margin-left: 10px; ">
34- Preprocessing < span *ngIf ="datatransferFacade.showPreprocessingTooltip() " class ="amd-vertical-align-middle "
35- [matTooltip] ="config.core.preprocessHashTooltipContent " matTooltipPosition ="right ">
36- < mat-icon > info_outline</ mat-icon >
37- </ span >
38- </ mat-checkbox >
39- </ div >
40- < div fxFlex ="70px " fxFlex.lt-sm ="0px ">
41- </ div >
42- < div fxFlex >
43- < div *ngIf ="uploadProgress.percent > 0 ">
44- < amd-progress [progressContainer] ="uploadProgress "> </ amd-progress >
45- </ div >
46- < div *ngIf ="downloadProgress.percent > 0 ">
47- < amd-progress [progressContainer] ="downloadProgress "> </ amd-progress >
48- </ div >
49- </ div >
50- </ div >
51-
52- < div class ="amd-container ">
53- < div fxLayout ="row " class ="amd-container-header " style ="align-items: center; ">
54- < div fxFlex ="40px ">
55- < mat-checkbox (change) ="datatransferFacade.toggleVisible($event.checked) "> </ mat-checkbox >
56- </ div >
57- < div fxFlex ="50% " fxFlex.lt-sm ="100% ">
58- Filename
59- </ div >
60- < div fxFlex ="50% " style ="padding-left: 40px; " fxHide.lt-sm >
61- Progress
62- </ div >
63- < div fxFlex ="20px ">
64- < mat-menu #batchItemMenu ="matMenu ">
65- < button mat-menu-item (click) ="datatransferFacade.removeSelected() ">
66- < mat-icon > close</ mat-icon >
67- < span > Remove</ span >
68- </ button >
69- </ mat-menu >
70- < button mat-icon-button [matMenuTriggerFor] ="batchItemMenu ">
71- < mat-icon > more_vert</ mat-icon >
72- </ button >
73- </ div >
74- </ div >
75- < ng-template ngFor let-item [ngForOf] ="paginationService.paginatedItems " let-i ="index ">
76- < div *ngIf ="datatransferFacade.showPath(paginationService.paginatedItems, i) ">
77- < div fxLayout ="row " class ="amd-container-headline ">
78- < div fxFlex class ="amd-container-headline-item ">
79- < div class ="amd-container-headline-item-entry ">
80- < div fxFlex ="40px ">
81- < mat-icon > folder_open</ mat-icon >
82- </ div >
83- < div fxFlex >
84- < span >
85- < b > {{item.displayPath}}</ b >
86- </ span >
87- < button mat-icon-button (click) ="datatransferFacade.openEditPathDialog(item) "
88- *ngIf ="datatransferFacade.showEditDialog(item) ">
89- < mat-icon aria-label ="Edit path "> edit</ mat-icon >
90- </ button >
91- </ div >
92- </ div >
93- </ div >
94- </ div >
95- </ div >
96- < div fxLayout ="row " fxLayout.lt-sm ="column " class ="amd-container-row " [ngClass] ="{'selected': item.isSelected} ">
97- < div fxFlex class ="amd-container-row-item ">
98- < div class ="amd-container-row-item-entry ">
99- < div fxFlex ="40px ">
100- < mat-checkbox [(ngModel)] ="item.isSelected "> </ mat-checkbox >
101- </ div >
102- < div fxFlex ="100% ">
103- < div matTooltip ="{{item.name}} " matTooltipPosition ="above ">
104- < span > {{item.name}}</ span >
105- < button mat-icon-button (click) ="datatransferFacade.openEditFilenameDialog(item) "
106- *ngIf ="datatransferFacade.showEditDialog(item) ">
107- < mat-icon aria-label ="Edit filename "> edit</ mat-icon >
108- </ button >
109- </ div >
110- </ div >
111- </ div >
112- </ div >
113- < div fxFlex class ="amd-container-row-item ">
114- < div class ="amd-container-row-item-entry ">
115- < div fxFlex ="40px " matTooltip ="{{item.preprocessContainer.percent}}% "
116- *ngIf ="datatransferFacade.showSpinner(item); else showStatusClass ">
117- < mat-progress-spinner *ngIf ="item.preprocessContainer.percent > 0 " [diameter] ="20 " mode ="determinate "
118- [value] ="item.preprocessContainer.percent "> </ mat-progress-spinner >
119- </ div >
120- < ng-template #showStatusClass >
121- < div fxFlex ="40px ">
122- < mat-icon > {{datatransferFacade.getStatusClass(item.status)}}</ mat-icon >
123- </ div >
124- </ ng-template >
125- < div fxFlex ="100% ">
126- < div *ngIf ="datatransferFacade.showProgressbar(item); else showStatusBlock ">
127- < div class ="amd-container-row-item-entry-stats ">
128- < div fxFlex ="25% " fxFlex.lt-md ="50% ">
129- {{item.progressContainer.displayBitrate}}
130- </ div >
131- < div fxFlex ="25% " fxHide.lt-md style ="text-align: center ">
132- {{item.progressContainer.displayTimeLeft}}
133- </ div >
134- < div fxFlex ="25% " fxHide.lt-md style ="text-align: center ">
135- {{item.progressContainer.percent}}%
136- </ div >
137- < div fxFlex ="25% " fxFlex.lt-md ="50% " style ="text-align: right ">
138- {{item.progressContainer.loadedSizeContainer.displaySize}} / {{item.sizeContainer.displaySize}}
139- {{item.sizeContainer.displayUnit}}
140- </ div >
141- </ div >
142- < mat-progress-bar *ngIf ="item.progressContainer.total > 0 " color ="primary " mode ="determinate "
143- [value] ="item.progressContainer.percent ">
144- </ mat-progress-bar >
145- </ div >
146- < ng-template #showStatusBlock >
147- {{item.getStatusName()}} ({{item.sizeContainer.displaySize}} {{item.sizeContainer.displayUnit}})
148- < div *ngIf ="!!item.message ">
149- < small > {{datatransferFacade.parseMessage(item)}}</ small >
150- </ div >
151- </ ng-template >
152- </ div >
153- < div fxFlex ="20px ">
154- < mat-menu #itemMenu ="matMenu ">
155- < button mat-menu-item (click) ="datatransferFacade.retryItem(item) "
156- *ngIf ="datatransferFacade.showRetryButtonByItem(item) ">
157- < mat-icon > refresh</ mat-icon >
158- < span > Retry</ span >
159- </ button >
160- < button mat-menu-item (click) ="datatransferFacade.removeItem(item) ">
161- < mat-icon > close</ mat-icon >
162- < span > Remove</ span >
163- </ button >
164- </ mat-menu >
165- < button mat-icon-button [matMenuTriggerFor] ="itemMenu ">
166- < mat-icon > more_vert</ mat-icon >
167- </ button >
168- </ div >
169- </ div >
170- </ div >
171- </ div >
172- </ ng-template >
173- </ div >
174-
175- < div style ="font-size: 12px; margin-top: 20px; text-align: right; ">
176- < amd-pagination [paginationService] ="paginationService "> </ amd-pagination >
177- </ div >
178- </ div >
1+ < ng-template amd-host > </ ng-template >
0 commit comments