X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fsass%2Finclude%2F_miniature.scss;h=a1b963400796b85b8275491753939cafc6b73d31;hb=2a6a4e79caa8a81e780d81ba1a9ab3bc65ec7b3a;hp=97b4c690b1dd96d2dad891661f5352c3273af04e;hpb=4572c3d0d92f5b1b79b34dbe2c7b6557a8a5b7e4;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/sass/include/_miniature.scss b/client/src/sass/include/_miniature.scss index 97b4c690b..a1b963400 100644 --- a/client/src/sass/include/_miniature.scss +++ b/client/src/sass/include/_miniature.scss @@ -1,39 +1,39 @@ -@import '_variables'; -@import '_mixins'; +@use '_variables' as *; +@use '_mixins' as *; @mixin miniature-name { @include ellipsis-multiline(1.1em, 2); + @include peertube-word-wrap(false); transition: color 0.2s; font-weight: $font-semibold; color: pvar(--mainForegroundColor); - margin-top: 10px; - margin-bottom: 5px; &:hover { text-decoration: none; } &.blur-filter { + @include padding-left(4px); + filter: blur(3px); - padding-left: 4px; } } -$play-overlay-transition: 0.2s ease; -$play-overlay-height: 26px; -$play-overlay-width: 18px; - @mixin miniature-thumbnail { + $play-overlay-transition: 0.2s ease; + $play-overlay-height: 26px; + $play-overlay-width: 18px; + @include disable-outline; display: flex; flex-direction: column; position: relative; border-radius: 3px; + width: 100%; + height: 100%; overflow: hidden; - width: $video-thumbnail-width; - height: $video-thumbnail-height; background-color: #ececec; transition: filter $play-overlay-transition; @@ -47,12 +47,13 @@ $play-overlay-width: 18px; opacity: 0; background-color: rgba(0, 0, 0, 0.3); - &, .icon { + &, + .icon { transition: all $play-overlay-transition; } .icon { - @include play-icon($play-overlay-height, $play-overlay-width); + @include play-icon($play-overlay-width, $play-overlay-height); } } @@ -79,7 +80,7 @@ $play-overlay-width: 18px; &.blur-filter { filter: blur(20px); - transform : scale(1.03); + transform: scale(1.03); } } } @@ -97,154 +98,64 @@ $play-overlay-width: 18px; color: #fff; } -@mixin miniature-rows { - &:first-child { - padding-top: 30px; - - .section-title { - border-top: none !important; - } - } - - .section-title { - font-size: 24px; - font-weight: $font-semibold; - padding-top: 15px; - margin-bottom: 15px; - display: flex; - justify-content: space-between; - - &:not(h2) { - border-top: 1px solid $separator-border-color; - } - - a { - &:hover, &:focus:not(.focus-visible), &:active { - text-decoration: none; - outline: none; - } - - color: pvar(--mainForegroundColor); - } - } - - &.channel { - .section-title { - a { - display: flex; - width: fit-content; - align-items: center; - - img { - @include avatar(28px); - - margin-right: 8px; - } - } - - .followers { - color: pvar(--greyForegroundColor); - font-weight: normal; - font-size: 14px; - margin-left: 10px; - position: relative; - top: 2px; - } - } - } +// Use margin by default, or padding if $margin is false +@mixin grid-videos-miniature-margins ($margin: true, $min-margin: 0) { + --gridVideosMiniatureMargins: #{pvar(--videosHorizontalMarginContent)}; - .show-more { - position: relative; - top: -5px; - display: inline-block; - font-size: 16px; - text-transform: uppercase; - color: pvar(--greyForegroundColor); - margin-bottom: 10px; - font-weight: $font-semibold; - text-decoration: none; + @if $margin { + @include margin-left(var(--gridVideosMiniatureMargins) !important); + @include margin-right(var(--gridVideosMiniatureMargins) !important); + } @else { + @include padding-left(var(--gridVideosMiniatureMargins) !important); + @include padding-right(var(--gridVideosMiniatureMargins) !important); } @media screen and (max-width: $mobile-view) { - max-height: initial; - overflow: initial; + --gridVideosMiniatureMargins: #{$min-margin}; - .section-title { - font-size: 17px; - margin-left: 10px; - } - } -} - -@mixin fluid-videos-miniature-layout { - margin-left: $not-expanded-horizontal-margins !important; - margin-right: $not-expanded-horizontal-margins !important; - - @media screen and (max-width: $mobile-view) { width: auto; - margin: 0 !important; - - .videos { - text-align: center; - - ::ng-deep .video-miniature { - padding-right: 0; - height: auto; - width: 100%; - margin-bottom: 25px; - - .video-miniature-information { - width: 100% !important; - text-align: left; - - span { - width: 100%; - } - } - - .video-thumbnail { - border-radius: 0; - } - } - } - } - - @media screen and (min-width: #{breakpoint(fhd)}) { - margin-left: 6vw !important; - margin-right: 6vw !important; } +} +@mixin grid-videos-miniature-layout { @media screen and (min-width: $mobile-view) { - - .videos { - --miniature-min-width: #{$video-thumbnail-width - 15px}; - --miniature-max-width: #{$video-thumbnail-width}; + .videos, + .playlists { + --miniatureMinWidth: #{$video-thumbnail-width - 25px}; + --miniatureMaxWidth: #{$video-thumbnail-width}; display: grid; - column-gap: 5px; + column-gap: 30px; grid-template-columns: repeat( auto-fill, - minmax( - var(--miniature-min-width), - 1fr - ) + minmax(var(--miniatureMinWidth), 1fr) ); - @media screen and (min-width: #{breakpoint(fhd)}) { - column-gap: 1%; - --miniature-min-width: #{$video-thumbnail-width}; - } - - .video-wrapper { + .video-wrapper, + .playlist-wrapper { margin: 0 auto; width: 100%; - my-video-miniature { + my-video-miniature, + my-video-playlist-miniature { display: block; - min-width: var(--miniature-min-width); - max-width: var(--miniature-max-width); + min-width: var(--miniatureMinWidth); + max-width: var(--miniatureMaxWidth); } } + + @media screen and (min-width: #{breakpoint(xm)}) { + column-gap: 15px; + } + + @media screen and (min-width: #{breakpoint(fhd)}) { + column-gap: 2%; + } } } } + +@mixin grid-videos-miniature-layout-with-margins { + @include grid-videos-miniature-margins; + @include grid-videos-miniature-layout; +}