elselogger.warn(`Failed to convert file with name ${fileName} to its UID while converting playlist ${playlist['name']} to the new UID-based schema. The original file is likely missing/deleted and it will be skipped.`);
elselogger.warn(`Failed to convert file with name ${fileName} to its UID while converting playlist ${playlist['name']} to the new UID-based schema. The original file is likely missing/deleted and it will be skipped.`);
<ng-container*ngIf="filesToSelectFrom"><mat-option*ngFor="let file of filesToSelectFrom"[value]="file.uid">{{file.id}}</mat-option></ng-container>
<ng-container*ngIf="filesToSelectFrom"><mat-option*ngFor="let file of filesToSelectFrom"[value]="file.uid">{{file.id}}</mat-option></ng-container>
<ng-container*ngIf="audiosToSelectFrom && type === 'audio'"><mat-option*ngFor="let file of audiosToSelectFrom"[value]="file.id">{{file.id}}</mat-option></ng-container>
<ng-container*ngIf="audiosToSelectFrom && type === 'audio'"><mat-option*ngFor="let file of audiosToSelectFrom"[value]="file.uid">{{file.id}}</mat-option></ng-container>
<ng-container*ngIf="videosToSelectFrom && type === 'video'"><mat-option*ngFor="let file of videosToSelectFrom"[value]="file.id">{{file.id}}</mat-option></ng-container>
<ng-container*ngIf="videosToSelectFrom && type === 'video'"><mat-option*ngFor="let file of videosToSelectFrom"[value]="file.uid">{{file.id}}</mat-option></ng-container>
<!-- The following for loop can be optimized but it requires a pipe https://stackoverflow.com/a/35703364/8088021 -->
<!-- The following for loop can be optimized but it requires a pipe https://stackoverflow.com/a/35703364/8088021 -->
<mat-button-toggleclass="media-box"cdkDrag*ngFor="let playlist_item of (reverse_order ? playlist.fileNames.slice().reverse() : playlist.fileNames); let i = index" [checked]="false"><div><divclass="playlist-item-text">{{playlist_item}}</div><button(click)="removeContent(i)"class="remove-item-button"mat-icon-button><mat-icon>cancel</mat-icon></button></div></mat-button-toggle>
<mat-button-toggleclass="media-box"cdkDrag*ngFor="let playlist_item of (reverse_order ? playlist_file_objs.slice().reverse() : playlist_file_objs); let i = index" [checked]="false"><div><divclass="playlist-item-text">{{playlist_item.title}}</div><button(click)="removeContent(i)"class="remove-item-button"mat-icon-button><mat-icon>cancel</mat-icon></button></div></mat-button-toggle>
</mat-button-toggle-group>
</mat-button-toggle-group>
<mat-menu#menu="matMenu">
<mat-menu#menu="matMenu">
<button*ngFor="let file of available_files"(click)="addContent(file)"mat-menu-item>{{file}}</button>
<button*ngFor="let file of available_files"(click)="addContent(file)"mat-menu-item>{{file.title}}</button>