]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/menu/menu.component.scss
Ask password reset/email verif error handling
[github/Chocobozzz/PeerTube.git] / client / src / app / menu / menu.component.scss
index d0edd820eab7e4bc757f30119b4771955d8ded5b..6cfe2643118ca210225778cb919e3748f885290c 100644 (file)
@@ -1,5 +1,6 @@
-@import '_variables';
-@import '_mixins';
+@use 'sass:math';
+@use '_variables' as *;
+@use '_mixins' as *;
 
 $menu-link-icon-size: 22px;
 $menu-link-icon-margin-right: 18px;
@@ -7,16 +8,16 @@ $footer-links-base-opacity: .8;
 
 .menu-link {
   @include disable-default-a-behaviour;
+  @include padding-left($menu-lateral-padding);
+  @include padding-right(20px);
 
   display: flex;
   align-items: center;
-  padding-left: $menu-lateral-padding;
+
   color: pvar(--menuForegroundColor);
   cursor: pointer;
-  font-size: 16px;
   white-space: normal;
   word-break: break-word;
-  padding-right: 20px;
   transition: background-color .1s ease-in-out;
   line-height: $line-height-normal;
 
@@ -31,11 +32,11 @@ $footer-links-base-opacity: .8;
 
   my-global-icon {
     @include apply-svg-color(#808080);
+    @include margin-right($menu-link-icon-margin-right);
 
     display: flex;
     width: $menu-link-icon-size;
     height: $menu-link-icon-size;
-    margin-right: $menu-link-icon-margin-right;
   }
 }
 
@@ -99,11 +100,12 @@ menu {
 }
 
 my-notification {
-  margin-left: auto;
-  margin-right: 15px;
+  @include margin-left(auto);
+  @include margin-right(15px);
 }
 
 .logged-in-more {
+
   @mixin display-hints($is-mobile: false) {
     background-color: rgba(255, 255, 255, 0.15);
 
@@ -111,17 +113,17 @@ my-notification {
       .dropdown-toggle-indicator {
         display: inherit !important;
       }
-      .dropdown-toggle:first-child {
-        padding-right: 30px !important;
+
+      > .dropdown-toggle {
+        max-width: 88% !important;
       }
     }
   }
 
-  $main-radius: 25px;
+  @include margin-left(13px);
 
   flex: 1;
-  margin-left: 13px;
-  border-radius: $main-radius;
+  border-radius: 25px;
   transition: all .1s ease-in-out;
   cursor: pointer;
   line-height: 1;
@@ -153,7 +155,6 @@ my-notification {
 
   .dropdown-toggle-indicator {
     position: relative;
-    width: 0;
     display: none;
 
     span {
@@ -161,26 +162,22 @@ my-notification {
       right: -35px;
       top: -8px;
       color: #808080;
-      width: $main-radius;
     }
   }
 
-  .dropdown-toggle {
-    &::after {
-      border: 0;
-    }
+  .dropdown-toggle::after {
+    border: 0;
   }
 
-  .dropdown-toggle:first-child {
+  .dropdown-toggle:first-child {
     display: flex;
     align-items: center;
     padding: 5px 7px;
-    border-radius: $main-radius;
   }
 }
 
 my-actor-avatar {
-  margin-right: 10px;
+  @include margin-right(10px);
 }
 
 .logged-in-info {
@@ -197,7 +194,6 @@ my-actor-avatar {
 .logged-in-display-name {
   @include disable-default-a-behaviour;
 
-  font-size: 16px;
   font-weight: $font-semibold;
   color: pvar(--menuForegroundColor);
 }
@@ -217,18 +213,18 @@ my-actor-avatar {
 
   a {
     $icon-size: 13px;
-    $additional-margin: ($menu-link-icon-size - $icon-size) / 2;
+    $additional-margin: math.div($menu-link-icon-size - $icon-size, 2);
 
     font-size: 14px;
     width: 100%;
     min-height: 35px;
 
     my-global-icon {
+      // Keep aligned with other icons
+      @include margin-left($additional-margin);
+
       width: $icon-size;
       height: $icon-size;
-
-      // Keep aligned with other icons
-      margin-left: $additional-margin;
     }
 
     &.active,
@@ -246,7 +242,7 @@ my-actor-avatar {
       border-left: $border-left-width solid var(--mainColor);
 
       my-global-icon {
-        margin-left: $additional-margin - $border-left-width;
+        @include margin-left($additional-margin - $border-left-width);
       }
     }
   }
@@ -259,7 +255,7 @@ my-actor-avatar {
     display: block;
     width: 100%;
 
-    :not(:last-child) {
+    &:not(:last-child) {
       margin-bottom: 10px;
     }
   }
@@ -274,20 +270,19 @@ my-actor-avatar {
   }
 }
 
-.in-my-library,
-.on-instance,
+.menu-block,
 .footer-block {
   margin-bottom: 15px;
 
   .block-title {
     @include ellipsis;
+    @include margin-left(26px);
+    @include margin-right(30px);
 
     text-transform: uppercase;
     font-weight: $font-bold; // Bold
     font-size: 13px;
     margin-bottom: 25px;
-    margin-left: 26px;
-    margin-right: 30px;
   }
 
   a {
@@ -296,18 +291,14 @@ my-actor-avatar {
 }
 
 .footer {
-  width: $menu-width;
   padding-bottom: 15px;
 }
 
 .footer-bottom {
-  display: flex;
-  flex-direction: column;
   padding: 0 $menu-lateral-padding;
 }
 
 .footer-links {
-  &,
   > div {
     display: flex;
     flex-wrap: wrap;
@@ -315,23 +306,32 @@ my-actor-avatar {
 
   a,
   span[role=button] {
-    display: inline-block;
-    text-decoration: none;
+    @include margin-right(8px);
+    @include disable-default-a-behaviour;
+
     color: pvar(--menuForegroundColor);
     opacity: $footer-links-base-opacity;
     white-space: nowrap;
-    font-size: 90%;
-    font-weight: 500;
+    font-size: 0.75rem;
     line-height: 1.4rem;
-    margin-right: 8px;
+    font-weight: $font-semibold;
+
+    &:hover {
+      opacity: $footer-links-base-opacity + .2;
+    }
   }
 }
 
-.footer-copyleft small a {
+.footer-copyleft a {
   @include disable-default-a-behaviour;
 
   color: pvar(--menuForegroundColor);
   opacity: $footer-links-base-opacity - .2;
+  font-size: 0.85rem;
+
+  &:hover {
+    opacity: $footer-links-base-opacity;
+  }
 }
 
 .dropdown {
@@ -340,6 +340,11 @@ my-actor-avatar {
 
 .dropdown-menu {
   width: calc(100% + 40px);
+
+  // Prevent weird display issue on firefox when global style is not loaded yet
+  &:not(.show) {
+    display: none;
+  }
 }
 
 .dropdown-item {
@@ -349,10 +354,6 @@ my-actor-avatar {
   display: flex;
   align-items: center;
 
-  i.glyphicon-menu-right {
-    opacity: .4;
-  }
-
   &:hover {
     .hover-display-toggle {
       display: none;
@@ -387,36 +388,20 @@ my-actor-avatar {
   .dropdown-menu {
     width: calc(100vw - 30px);
   }
-
-  .dropdown-item:hover,
-  .dropdown-item:active {
-    &.settings-sensitive my-global-icon ::ng-deep svg {
-      margin-top: 0 !important;
-    }
-  }
 }
 
 my-global-icon {
-  &[iconName=playlists] {
-    height: 24px;
-    width: 24px;
-
-    margin-right: 16px;
-  }
+  position: relative;
+  top: -1px;
 
-  &[iconName=videos] {
-    position: relative;
-    right: -1px;
-  }
+  .playlist-icon {
+    @include margin-right(16px);
 
-  &[iconName=channel] {
-    margin-top: -2px;
+    height: 24px;
+    width: 24px;
   }
 
-  &[iconName='sign-out'] {
-    position: relative;
-    right: -2px;
-    height: 20px;
-    width: 20px;
+  &.channel-icon {
+   top: -2px;
   }
 }