diff --git a/src/components/cards/TorrentCard.vue b/src/components/cards/TorrentCard.vue index 002c005f..2dda925a 100644 --- a/src/components/cards/TorrentCard.vue +++ b/src/components/cards/TorrentCard.vue @@ -81,10 +81,19 @@ async function downloadTorrentFile() { // 获取优惠类型样式 function getPromotionClass(downloadVolumeFactor: number | undefined, uploadVolumeFactor: number | undefined) { - if (!downloadVolumeFactor) return 'free-discount' - if (downloadVolumeFactor === 0) return 'free-discount' - else if (downloadVolumeFactor < 1) return 'percent-discount' - else if (uploadVolumeFactor !== undefined && uploadVolumeFactor > 1) return 'upload-bonus' + if (!downloadVolumeFactor) return 'bg-success' + if (downloadVolumeFactor === 0) return 'bg-success' + else if (downloadVolumeFactor < 1) return 'bg-orange' + else if (uploadVolumeFactor !== undefined && uploadVolumeFactor > 1) return 'bg-purple' + else return '' +} + +// 获取优惠标签类 +function getPromotionChipClass(downloadVolumeFactor: number | undefined, uploadVolumeFactor: number | undefined) { + if (!downloadVolumeFactor) return 'chip-free' + if (downloadVolumeFactor === 0) return 'chip-free' + else if (downloadVolumeFactor < 1) return 'chip-discount' + else if (uploadVolumeFactor !== undefined && uploadVolumeFactor > 1) return 'chip-bonus' else return '' } @@ -108,109 +117,147 @@ onMounted(() => { :width="props.width || '100%'" :variant="downloaded.includes(torrent?.enclosure || '') ? 'outlined' : 'flat'" @click="handleAddDownload(props.torrent)" - class="torrent-card h-full" - :class="{ 'downloaded-card': downloaded.includes(torrent?.enclosure || '') }" + class="h-full cursor-pointer transition-transform hover:-translate-y-1 duration-300 d-flex flex-column overflow-hidden torrent-card" + :class="{ 'border-success border-2 opacity-85': downloaded.includes(torrent?.enclosure || '') }" + hover >
{{ torrent?.volume_factor }}
-
-
- + +
+ {{ media?.title ?? meta?.name }} - {{ meta?.season_episode }} + + {{ meta?.season_episode }} +
-
+
- {{ torrent?.site_name?.substring(0, 1) }} - {{ torrent?.site_name }} + + {{ torrent?.site_name?.substring(0, 1) }} + + {{ torrent?.site_name }}
-
- - {{ torrent?.seeders }} +
+ + + {{ torrent?.seeders }} - - {{ torrent?.peers }} + + + {{ torrent?.peers }}
-
+ -
+ -
+
{{ torrent?.title }}
{{ meta?.subtitle || torrent?.description }}
-
-
{{ meta?.edition }}
-
{{ meta?.resource_pix }}
-
{{ meta?.video_encode }}
-
{{ meta?.resource_team }}
-
{{ label }}
-
H&R
-
{{ torrent?.freedate_diff }}
+
+ + + {{ meta?.edition }} + + + + + {{ meta?.resource_pix }} + + + + + {{ meta?.video_encode }} + + + + + {{ meta?.resource_team }} + + + + {{ label }} + + + H&R + {{ + torrent?.freedate_diff + }}
-
+ -