|
@@ -6,12 +6,12 @@
|
|
|
[Parameter] public EventCallback<Guid> DeletePlaylist { get; set; } = EventCallback<Guid>.Empty;
|
|
|
|
|
|
private bool IsExpand;
|
|
|
+ private DiscDialog dlgDisc;
|
|
|
}
|
|
|
|
|
|
<div class="table-responsive">
|
|
|
<table class="table w-100">
|
|
|
<tbody>
|
|
|
-
|
|
|
@if (Playlist != null)
|
|
|
{
|
|
|
var arr = PlaylistHelper[Playlist.Value.Key];
|
|
@@ -48,6 +48,7 @@
|
|
|
</button>
|
|
|
</td>
|
|
|
<td class="align-middle text-nowrap">
|
|
|
+
|
|
|
<button type="button" class="btn btn-danger p-2" @onclick="()=>DeletePlaylist.InvokeAsync(Playlist.Value.Key)">
|
|
|
<i class="bi bi-trash"></i>
|
|
|
</button>
|
|
@@ -63,51 +64,31 @@
|
|
|
var track = DataSet.AllTracks.FirstOrDefault(p => p.Path == item.item);
|
|
|
if (track != null)
|
|
|
{
|
|
|
- <tr class="mouse-hilight">
|
|
|
- <td colspan="2" style="width:0">
|
|
|
- <img src="@track.Disc.CoverPath" style="height:50px" />
|
|
|
- </td>
|
|
|
- <td class="align-middle" style="width:250px">
|
|
|
- <FileIcon Track="@track" ShowParam="true"></FileIcon>
|
|
|
- </td>
|
|
|
- <td class="align-middle w-100">
|
|
|
- <div class="text-nowrap">@track.GetTitleOrFilename()</div>
|
|
|
- <div class="text-nowrap text-muted"> @track.Tag?.Artist</div>
|
|
|
- </td>
|
|
|
- <td class="text-center" colspan="2">
|
|
|
- <div class="text-nowrap">@track.Tag?.Duration.SecondToDur()</div>
|
|
|
- <div class="text-nowrap text-muted"> @track.Tag?.Length.BytesToFileSize()</div>
|
|
|
- </td>
|
|
|
- <td>
|
|
|
- <button type="button" class="btn btn-danger p-2" @onclick="()=>Remove(Playlist.Value.Key, item.index,item.item)">
|
|
|
- <i class="bi bi-folder-minus"></i>
|
|
|
- </button>
|
|
|
- </td>
|
|
|
- </tr>
|
|
|
+ <PlaylistTableItemTrack Track="track" RemoveClick="()=>Remove(Playlist.Value.Key, item.index,item.item)"></PlaylistTableItemTrack>
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
var uri = new Uri(item.item);
|
|
|
var paths = uri.AbsolutePath.Split('/').Skip(2).ToArray();
|
|
|
<tr>
|
|
|
- <td></td>
|
|
|
<td><img src="blazor-192.png" style="height:50px" /></td>
|
|
|
- <td class="align-middle w-100">
|
|
|
+ <td colspan="5" class="align-middle w-100">
|
|
|
<div class="text-nowrap">- broken reference -</div>
|
|
|
@foreach (var p in paths)
|
|
|
{
|
|
|
- <div class="text-nowrap text-muted">@Uri.UnescapeDataString(p)</div>
|
|
|
+ <span style="display:inline-block" class="text-nowrap text-muted border border-1 m-1 p-1 rounded">@Uri.UnescapeDataString(p)</span>
|
|
|
}
|
|
|
</td>
|
|
|
- <td></td>
|
|
|
- <td></td>
|
|
|
<td>
|
|
|
- <button type="button" class="btn btn-primary p-2" @onclick="()=>Remove(Playlist.Value.Key, item.index,item.item)">
|
|
|
- <i class="bi bi-trash"></i>
|
|
|
- </button>
|
|
|
+ <div class="dropstart">
|
|
|
+ <button type="button" class="btn btn-danger p-2" data-bs-toggle="dropdown">
|
|
|
+ <i class="bi bi-folder-minus"></i>
|
|
|
+ </button>
|
|
|
+ <ul class="dropdown-menu mx-2">
|
|
|
+ <li><button class="dropdown-item text-danger" @onclick="()=>Remove(Playlist.Value.Key, item.index,item.item)">Confirm Remove</button></li>
|
|
|
+ </ul>
|
|
|
+ </div>
|
|
|
</td>
|
|
|
- <td></td>
|
|
|
- <td></td>
|
|
|
</tr>
|
|
|
}
|
|
|
}
|
|
@@ -115,13 +96,9 @@
|
|
|
{
|
|
|
<tr>
|
|
|
<td></td>
|
|
|
- <td></td>
|
|
|
- <td class="align-middle w-100">
|
|
|
+ <td colspan="6" class="align-middle w-100">
|
|
|
<div class="text-nowrap">- empty -</div>
|
|
|
</td>
|
|
|
- <td></td>
|
|
|
- <td></td>
|
|
|
- <td></td>
|
|
|
</tr>
|
|
|
}
|
|
|
}
|