Playlist page improvements (#2281)
* Add hover visual on thumbnails * Fix white-space issues on playlist description * Fix playlist issues with scrolling * Fix end of file new lines * Fix dropdown not visible issue * Fix mobile styling * Clean up using flex * Fix lint issue
This commit is contained in:
parent
492c48dcf8
commit
fd46b22f91
|
@ -1 +1,4 @@
|
||||||
@use "../../sass-partials/_ft-list-item"
|
@use "../../sass-partials/_ft-list-item"
|
||||||
|
|
||||||
|
.thumbnailLink:hover
|
||||||
|
outline: 3px solid var(--side-nav-hover-color)
|
||||||
|
|
|
@ -3,32 +3,44 @@
|
||||||
|
|
||||||
.playlistThumbnail img
|
.playlistThumbnail img
|
||||||
width: 100%
|
width: 100%
|
||||||
|
|
||||||
cursor: pointer
|
cursor: pointer
|
||||||
|
|
||||||
|
@media only screen and (max-width: 800px)
|
||||||
|
display: none
|
||||||
|
|
||||||
|
.playlistStats
|
||||||
|
font-size: 15px
|
||||||
|
|
||||||
|
.playlistStats p
|
||||||
|
color: var(--secondary-text-color)
|
||||||
|
margin: 0
|
||||||
|
|
||||||
|
.playlistTitle
|
||||||
|
margin-bottom: 0.1em
|
||||||
|
|
||||||
.playlistDescription
|
.playlistDescription
|
||||||
max-height: 20vh
|
max-height: 20vh
|
||||||
overflow-y: auto
|
overflow-y: auto
|
||||||
|
white-space: break-spaces
|
||||||
|
|
||||||
@media only screen and (max-width: 500px)
|
@media only screen and (max-width: 500px)
|
||||||
max-height: 10vh
|
max-height: 10vh
|
||||||
|
|
||||||
.playlistChannel
|
.playlistChannel
|
||||||
height: 70px
|
display: flex
|
||||||
|
align-items: center
|
||||||
|
gap: 8px
|
||||||
|
height: 40px
|
||||||
|
|
||||||
/* Indicates the box can be clicked to navigate */
|
/* Indicates the box can be clicked to navigate */
|
||||||
cursor: pointer
|
cursor: pointer
|
||||||
|
|
||||||
.channelThumbnail
|
.channelThumbnail
|
||||||
width: 70px
|
width: 40px
|
||||||
float: left
|
float: left
|
||||||
border-radius: 200px 200px 200px 200px
|
border-radius: 200px 200px 200px 200px
|
||||||
-webkit-border-radius: 200px 200px 200px 200px
|
-webkit-border-radius: 200px 200px 200px 200px
|
||||||
|
|
||||||
.channelName
|
.channelName
|
||||||
float: left
|
margin: 0
|
||||||
position: relative
|
|
||||||
width: 200px
|
|
||||||
margin-left: 10px
|
|
||||||
top: 5px
|
|
||||||
font-size: 15px
|
font-size: 15px
|
||||||
|
|
|
@ -8,22 +8,27 @@
|
||||||
@click="playFirstVideo"
|
@click="playFirstVideo"
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
<h2>
|
|
||||||
{{ title }}
|
<div class="playlistStats">
|
||||||
</h2>
|
<h2 class="playlistTitle">
|
||||||
<p>
|
{{ title }}
|
||||||
{{ videoCount }} {{ $t("Playlist.Videos") }} - <span v-if="!hideViews">{{ viewCount }} {{ $t("Playlist.Views") }} -</span>
|
</h2>
|
||||||
<span v-if="infoSource !== 'local'">
|
<p>
|
||||||
{{ $t("Playlist.Last Updated On") }}
|
{{ videoCount }} {{ $t("Playlist.Videos") }} - <span v-if="!hideViews">{{ viewCount }} {{ $t("Playlist.Views") }} -</span>
|
||||||
</span>
|
<span v-if="infoSource !== 'local'">
|
||||||
{{ lastUpdated }}
|
{{ $t("Playlist.Last Updated On") }}
|
||||||
</p>
|
</span>
|
||||||
|
{{ lastUpdated }}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
<p
|
<p
|
||||||
class="playlistDescription"
|
class="playlistDescription"
|
||||||
>
|
v-text="description"
|
||||||
{{ description }}
|
/>
|
||||||
</p>
|
|
||||||
<hr>
|
<hr>
|
||||||
|
|
||||||
<div
|
<div
|
||||||
class="playlistChannel"
|
class="playlistChannel"
|
||||||
@click="goToChannel"
|
@click="goToChannel"
|
||||||
|
@ -38,7 +43,9 @@
|
||||||
{{ channelName }}
|
{{ channelName }}
|
||||||
</h3>
|
</h3>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
<ft-list-dropdown
|
<ft-list-dropdown
|
||||||
:title="$t('Playlist.Share Playlist.Share Playlist')"
|
:title="$t('Playlist.Share Playlist.Share Playlist')"
|
||||||
:label-names="shareHeaders"
|
:label-names="shareHeaders"
|
||||||
|
|
|
@ -1,18 +1,42 @@
|
||||||
|
.routerView {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
.playlistInfo {
|
.playlistInfo {
|
||||||
background-color: var(--card-bg-color);
|
background-color: var(--card-bg-color);
|
||||||
padding: 10px;
|
box-sizing: border-box;
|
||||||
float: left;
|
height: calc(100vh - 96px);
|
||||||
position: fixed;
|
margin-right: 1em;
|
||||||
top: 60px;
|
|
||||||
width: 30%;
|
|
||||||
height: 100%;
|
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
|
padding: 10px;
|
||||||
|
position: sticky;
|
||||||
|
top: 78px;
|
||||||
|
width: 30%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.playlistItems {
|
.playlistItems {
|
||||||
float: right;
|
|
||||||
width: 60%;
|
|
||||||
padding: 10px;
|
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-gap: 10px;
|
grid-gap: 10px;
|
||||||
|
margin: 0;
|
||||||
|
padding: 10px;
|
||||||
|
width: 60%;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (max-width: 800px) {
|
||||||
|
.routerView {
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
|
||||||
|
.playlistInfo {
|
||||||
|
box-sizing: border-box;
|
||||||
|
position: relative;
|
||||||
|
top: 0;
|
||||||
|
height: auto;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.playlistItems {
|
||||||
|
box-sizing: border-box;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,11 +4,13 @@
|
||||||
v-if="isLoading"
|
v-if="isLoading"
|
||||||
:fullscreen="true"
|
:fullscreen="true"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<playlist-info
|
<playlist-info
|
||||||
v-if="!isLoading"
|
v-if="!isLoading"
|
||||||
:data="infoData"
|
:data="infoData"
|
||||||
class="playlistInfo"
|
class="playlistInfo"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<ft-card
|
<ft-card
|
||||||
v-if="!isLoading"
|
v-if="!isLoading"
|
||||||
class="playlistItems"
|
class="playlistItems"
|
||||||
|
|
Loading…
Reference in New Issue