Files
tytd2025/Tesses.YouTubeDownloader.Server/src/components/downloaded-entry.tcross

60 lines
2.7 KiB
Plaintext

func Components.DownloadedVideo(item)
{
return
<div class="row">
<div class="min">
<img src={$"./api/v1/video-thumbnail?v={Net.Http.UrlEncode(item.videoId)}"} width="144" width="120">
</div>
<div class="max">
<div class="col">
<div class="min">
<a hx-get={$"./watch?v={Net.Http.UrlEncode(item.videoId)}"} hx-target="body" hx-push-url="true" href={$"./watch?v={Net.Http.UrlEncode(item.videoId)}"}>{item.title}</a>
</div>
<div class="min">
<span>{item.viewCountStr} (when downloaded)</span>
</div>
<div class="min">
<a hx-get={$"./channel?id={Net.Http.UrlEncode(item.channelId)}"} href={$"./channel?id={Net.Http.UrlEncode(item.channelId)}"} hx-target="body" hx-push-url="true">{item.author}</a>
</div>
</div>
</div>
</div>;
}
func Components.DownloadedPlaylist(item)
{
var res = <div class="row">
<div class="min">
<img src={$"./api/v1/playlist-thumbnail?id={Net.Http.UrlEncode(item.playlistId)}"} width="144" width="120">
</div>
<div class="max">
<div class="col">
<div class="min">
<a hx-get={$"./playlist?list={Net.Http.UrlEncode(item.playlistId)}"} href={$"./playlist?list={Net.Http.UrlEncode(item.playlistId)}"} hx-target="body" hx-push-url="true">{item.title}</a>
</div>
<div class="min">
<a hx-get={$"./channel?id={Net.Http.UrlEncode(item.channelId)}"} href={$"./channel?id={Net.Http.UrlEncode(item.channelId)}"} hx-target="body" hx-push-url="true">{item.channelTitle}</a>
</div>
</div>
</div>
</div>;
return res;
}
func Components.DownloadedChannel(item)
{
var res = <div class="row">
<div class="min">
<img src={$"./api/v1/channel-thumbnail?id={Net.Http.UrlEncode(item.channelId)}"} width="144" width="120">
</div>
<div class="max">
<a hx-get={$"./channel?id={Net.Http.UrlEncode(item.channelId)}"} href={$"./channel?id={Net.Http.UrlEncode(item.channelId)}"} hx-target="body" hx-push-url="true">{item.title}</a>
</div>
</div>;
return res;
}