]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/+search/search.component.scss
Update menu.component.html
[github/Chocobozzz/PeerTube.git] / client / src / app / +search / search.component.scss
index 64927fa4b317c1ad12ea9b6e0cd551b645e58f9d..cab1d0e8834f973820e514f1748491af0e7e7696 100644 (file)
-@import '_variables';
-@import '_mixins';
+@use 'sass:math';
+@use '_variables' as *;
+@use '_mixins' as *;
+
+@mixin build-channel-img-size ($video-img-width) {
+  $image-size: min(130px, $video-img-width);
+  $margin-size: math.div(($video-img-width - $image-size), 2); // So we have the same width than the video miniature
+
+  @include actor-avatar-size($image-size);
+
+  margin: 0 $margin-size 0 $margin-size;
+}
 
 .search-result {
   padding: 40px;
+}
 
-  .results-header {
-    font-size: 16px;
-    padding-bottom: 20px;
-    margin-bottom: 30px;
-    border-bottom: 1px solid #DADADA;
+.alert-danger {
+  margin-top: 10px;
+}
 
-    .first-line {
-      display: flex;
-      flex-direction: row;
+.results-header {
+  font-size: 16px;
+  padding-bottom: 20px;
+  margin-bottom: 30px;
+  border-bottom: 1px solid #DADADA;
 
-      .results-counter {
-        flex-grow: 1;
+  .first-line {
+    display: flex;
+    flex-direction: row;
+
+    .results-counter {
+      flex-grow: 1;
 
-        .search-value {
-          font-weight: $font-semibold;
-        }
+      .search-value {
+        font-weight: $font-semibold;
       }
+    }
 
-      .results-filter-button {
-        cursor: pointer;
+    .results-filter-button {
+      cursor: pointer;
 
-        .icon.icon-filter {
-          @include icon(20px);
+      .icon.icon-filter {
+        @include icon(20px);
+        @include margin-right(5px);
 
-          position: relative;
-          top: -1px;
-          margin-right: 5px;
-          background-image: url('../../assets/images/feather/filter.svg');
-        }
+        position: relative;
+        top: -1px;
+        background-image: url('../../assets/images/feather/filter.svg');
       }
     }
   }
+}
 
-  .entry {
-    display: flex;
-    min-height: 130px;
-    padding-bottom: 20px;
-    margin-bottom: 20px;
+.entry {
+  display: flex;
+  margin-bottom: 40px;
+  max-width: 800px;
+}
 
-    &.video-channel {
-      img {
-        $image-size: 130px;
-        $margin-size: ($video-thumbnail-width - $image-size) / 2; // So we have the same width than the video miniature
+.video-channel-info {
+  flex-grow: 1;
+  margin: 0 10px;
+  width: fit-content;
+}
 
-        @include avatar($image-size);
+.video-channel-names {
+  @include disable-default-a-behaviour;
 
-        margin: 0 ($margin-size + 10) 0 $margin-size;
-      }
+  display: flex;
+  align-items: baseline;
+  color: pvar(--mainForegroundColor);
+  width: fit-content;
+}
 
-      .video-channel-info {
-        flex-grow: 1;
-        width: fit-content;
-
-        .video-channel-names {
-          @include disable-default-a-behaviour;
-
-          display: flex;
-          align-items: baseline;
-          color: pvar(--mainForegroundColor);
-          width: fit-content;
-
-          .video-channel-display-name {
-            font-weight: $font-semibold;
-            font-size: 18px;
-          }
-
-          .video-channel-name {
-            font-size: 14px;
-            color: $grey-actor-name;
-            margin-left: 5px;
-          }
-        }
-      }
-    }
-  }
+.video-channel-display-name {
+  font-weight: $font-semibold;
+  font-size: $video-miniature-row-name-font-size;
 }
 
-@media screen and (min-width: $small-view) and (max-width: breakpoint(xl)) {
-  .video-channel-info .video-channel-names {
-    flex-direction: column !important;
+.video-channel-name {
+  @include margin-left(5px);
 
-    .video-channel-name {
-      @include ellipsis; // Ellipsis and max-width on channel-name to not break screen
+  font-size: $video-miniature-row-info-font-size;
+  color: pvar(--greyForegroundColor);
+}
 
-      max-width: 250px;
-      margin-left: 0 !important;
-    }
-  }
+// Use the same breakpoints than in video-miniature
+@include on-small-main-col {
+  .video-channel {
+    display: grid;
+    grid-template-columns: auto 1fr;
+    grid-template-rows: auto auto;
 
-  :host-context(.main-col:not(.expanded)) {
-    // Override the min-width: 500px to not break screen
-    ::ng-deep .video-miniature-information {
-      min-width: 300px !important;
-    }
-  }
-}
+    my-actor-avatar {
+      @include build-channel-img-size($video-thumbnail-medium-width);
 
-@media screen and (min-width: $small-view) and (max-width: breakpoint(lg)) {
-  :host-context(.main-col:not(.expanded)) {
-    .video-channel-info .video-channel-names {
-      .video-channel-name {
-        max-width: 160px;
-      }
+      grid-column: 1;
+      grid-row: 1 / -1;
     }
+  }
 
-    // Override the min-width: 500px to not break screen
-    ::ng-deep .video-miniature-information {
-      min-width: $video-thumbnail-width !important;
-    }
+  .video-channel-info {
+    grid-column: 2;
+    grid-row: 1;
   }
 
-  :host-context(.expanded) {
-    // Override the min-width: 500px to not break screen
-    ::ng-deep .video-miniature-information {
-      min-width: 300px !important;
-    }
+  my-subscribe-button {
+    grid-column: 2;
+    grid-row: 2;
+    align-self: end;
   }
 }
 
-@media screen and (max-width: $small-view) {
-  .search-result {
-    .entry.video-channel,
-    .entry.video {
-      flex-direction: column;
-      height: auto;
-      justify-content: center;
-      align-items: center;
-      text-align: center;
-
-      img {
-        margin: 0;
-      }
-
-      img {
-        margin: 0;
-      }
-
-      .video-channel-info .video-channel-names {
-        align-items: center;
-        flex-direction: column !important;
-
-        .video-channel-name {
-          margin-left: 0 !important;
-        }
-      }
-
-      my-subscribe-button {
-        margin-top: 5px;
-      }
-    }
+@include on-mobile-main-col {
+  .video-channel my-actor-avatar {
+    @include build-channel-img-size($video-thumbnail-small-width);
   }
 }
 
     .results-header {
       font-size: 15px !important;
     }
+  }
 
-    .entry {
-      &.video {
-        .video-info-name,
-        .video-info-account {
-          margin: auto;
-        }
-
-        my-video-thumbnail {
-          margin-right: 0 !important;
-
-          ::ng-deep .video-thumbnail {
-            width: 100%;
-            height: auto;
-
-            img {
-              width: 100%;
-              height: auto;
-            }
-          }
-        }
-      }
-    }
+  .video-channel-display-name {
+    font-size: $video-miniature-row-mobile-name-font-size;
+  }
+
+  .video-channel-name {
+    font-size: $video-miniature-row-mobile-info-font-size;
   }
 }