polish video item and change grid layout

This commit is contained in:
Léo Galley 2022-10-28 11:30:01 +02:00
parent f9813a07f7
commit db536f6093
2 changed files with 39 additions and 39 deletions

View file

@ -1,5 +1,5 @@
<template> <template>
<div class="w-full min-h-screen px-1vw reset" :class="[theme]"> <div class="w-full min-h-screen px-1vw reset antialiased" :class="[theme]">
<NavBar /> <NavBar />
<router-view v-slot="{ Component }"> <router-view v-slot="{ Component }">
@ -120,7 +120,7 @@ b {
} }
.video-grid { .video-grid {
@apply grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5 xl:grid-cols-6 col-auto lt-md:gap-x-2.5 md:gap-x-1vw gap-y-1.5; @apply grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 xl:grid-cols-5 col-auto lt-md:gap-x-3 md:gap-6 gap-6;
} }
.btn { .btn {

View file

@ -1,6 +1,7 @@
<template> <template>
<div v-if="showVideo"> <div v-if="showVideo">
<router-link <router-link
class="focus:underline hover:underline inline-block w-full"
:to="{ :to="{
path: '/watch', path: '/watch',
query: { query: {
@ -39,14 +40,47 @@
<div> <div>
<p <p
style="display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical" style="display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical"
class="my-2 overflow-hidden flex link" class="pt-2 overflow-hidden flex link font-bold"
:title="video.title" :title="video.title"
v-text="video.title" v-text="video.title"
/> />
</div> </div>
</router-link> </router-link>
<div class="flex">
<router-link :to="video.uploaderUrl">
<img
v-if="video.uploaderAvatar"
:src="video.uploaderAvatar"
loading="lazy"
:alt="video.uploaderName"
class="rounded-full mr-0.5 mt-0.5 w-32px h-32px"
width="68"
height="68"
/>
</router-link>
<div class="float-right m-0 inline-block children:px-1"> <div class="px-2 flex-1">
<router-link
v-if="video.uploaderUrl && video.uploaderName && !hideChannel"
class="link-secondary overflow-hidden block text-sm"
:to="video.uploaderUrl"
:title="video.uploaderName"
>
<span v-text="video.uploaderName" />
<font-awesome-icon class="ml-1.5" v-if="video.uploaderVerified" icon="check" />
</router-link>
<div v-if="video.views >= 0 || video.uploadedDate" class="text-xs font-normal text-gray-300 mt-1">
<span v-if="video.views >= 0">
<font-awesome-icon icon="eye" />
<span class="pl-1" v-text="`${numberFormat(video.views)} •`" />
</span>
<span v-if="video.uploaded > 0" class="pl-0.5" v-text="timeAgo(video.uploaded)" />
<span v-else-if="video.uploadedDate" class="pl-0.5" v-text="video.uploadedDate" />
</div>
</div>
<div>
<router-link <router-link
:to="{ :to="{
path: '/watch', path: '/watch',
@ -75,40 +109,6 @@
</button> </button>
<PlaylistAddModal v-if="showModal" :video-id="video.url.substr(-11)" @close="showModal = !showModal" /> <PlaylistAddModal v-if="showModal" :video-id="video.url.substr(-11)" @close="showModal = !showModal" />
</div> </div>
<div class="flex">
<router-link :to="video.uploaderUrl">
<img
v-if="video.uploaderAvatar"
:src="video.uploaderAvatar"
loading="lazy"
:alt="video.uploaderName"
class="rounded-full mr-0.5 mt-0.5 w-32px h-32px"
width="68"
height="68"
/>
</router-link>
<div class="w-[calc(100%-32px-1rem)]">
<router-link
v-if="video.uploaderUrl && video.uploaderName && !hideChannel"
class="link-secondary overflow-hidden block"
:to="video.uploaderUrl"
:title="video.uploaderName"
>
<span v-text="video.uploaderName" />
<font-awesome-icon class="ml-1.5" v-if="video.uploaderVerified" icon="check" />
</router-link>
<strong v-if="video.views >= 0 || video.uploadedDate" class="text-sm">
<span v-if="video.views >= 0">
<font-awesome-icon icon="eye" />
<span class="pl-0.5" v-text="`${numberFormat(video.views)} •`" />
</span>
<span v-if="video.uploaded > 0" class="pl-0.5" v-text="timeAgo(video.uploaded)" />
<span v-else-if="video.uploadedDate" class="pl-0.5" v-text="video.uploadedDate" />
</strong>
</div>
</div> </div>
</div> </div>
</template> </template>