PeerTube/client/src/app/menu/menu.component.scss

267 lines
4.9 KiB
SCSS

@import '_variables';
@import '_mixins';
.menu-wrapper {
position: fixed;
height: calc(100vh - #{$header-height});
padding: 0;
width: $menu-width;
z-index: 10000;
}
menu {
@include ellipsis;
background-color: var(--menuBackgroundColor);
margin: 0;
padding: 0;
height: 100%;
overflow-x: hidden;
color: var(--menuForegroundColor);
display: flex;
flex-direction: column;
width: 100%;
&:focus, &:hover {
overflow-y: auto;
}
&.logged-in {
.panel-block {
margin-bottom: 25px;
}
.block-title {
margin-bottom: 15px;
}
}
.top-menu {
flex-grow: 1;
width: $menu-width;
}
.logged-in-block {
height: 100px;
background-color: rgba(255, 255, 255, 0.15);
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 20px;
.logged-in-info {
@include ellipsis;
flex-grow: 1;
.logged-in-display-name {
font-size: 16px;
font-weight: $font-semibold;
color: var(--menuForegroundColor);
cursor: pointer;
@include disable-default-a-behaviour;
}
.logged-in-username {
@include ellipsis;
font-size: 13px;
color: #C6C6C6;
max-width: 140px;
cursor: pointer;
}
}
.logged-in-more {
margin-right: 20px;
my-global-icon.dropdown-toggle {
cursor: pointer;
&::after {
border: none;
}
::ng-deep {
@include apply-svg-color(var(--menuForegroundColor));
}
}
.dropdown-item {
@include dropdown-with-icon-item;
my-global-icon {
width: 22px;
height: 22px;
&[iconName="sign-out"] {
position: relative;
right: -1px;
height: 21px;
width: 21px;
}
}
}
}
}
.button-block {
margin: 30px 25px 35px 25px;
.login-button {
@include peertube-button-link;
@include orange-button;
display: block;
width: 100%;
margin-bottom: 10px;
}
.create-account-button {
@include peertube-button-link;
display: block;
width: 100%;
color: #fff;
background-color: rgba(255, 255, 255, 0.25);
&:hover {
background-color: rgba(255, 255, 255, 0.28);
}
}
}
.block-title {
text-transform: uppercase;
font-weight: $font-bold; // Bold
font-size: 13px;
margin-bottom: 25px;
margin-left: 26px;
}
.panel-block {
margin-bottom: 45px;
a {
@include disable-default-a-behaviour;
display: flex;
align-items: center;
padding-left: $menu-lateral-padding;
color: var(--menuForegroundColor);
cursor: pointer;
min-height: 40px;
font-size: 16px;
transition: background-color .1s ease-in-out;
white-space: normal;
word-break: break-word;
padding-right: 20px;
&.active {
background-color: rgba(255, 255, 255, 0.15);
}
&:hover, &.focus-visible {
background-color: rgba(255, 255, 255, 0.10);
}
my-global-icon {
@include apply-svg-color(#808080);
display: flex;
width: 22px;
height: 22px;
margin-right: 18px;
&[iconName="playlists"] {
height: 24px;
width: 24px;
margin-right: 16px;
}
&[iconName="videos"] {
position: relative;
right: -1px;
}
}
.icon {
@include icon(22px);
margin-right: 18px;
}
}
}
.footer {
padding-bottom: 15px;
padding-left: $menu-lateral-padding;
padding-right: $menu-lateral-padding;
width: $menu-width;
.language, .shortcuts, .color-palette {
display: inline-block;
color: $menu-bottom-color;
cursor: pointer;
font-size: 12px;
font-weight: $font-semibold;
.icon {
@include disable-outline;
@include icon(28px);
opacity: 0.9;
&.icon-language {
position: relative;
top: -1px;
width: 28px;
height: 24px;
background-image: url('../../assets/images/menu/language.png');
}
&.icon-shortcuts {
position: relative;
top: -1px;
width: 24px;
height: 24px;
background-image: url('../../assets/images/menu/keyboard.png');
filter: invert(100%);
}
&.icon-moonsun {
margin-left: 10px;
position: relative;
top: -1px;
width: 24px;
height: 24px;
background-image: url('../../assets/images/menu/moonsun.svg');
}
&:hover {
opacity: 1;
}
}
}
}
}
@media screen and (max-width: $mobile-view) {
.menu-wrapper {
width: 100% !important;
menu {
overflow-y: auto;
}
}
.top-menu, .footer {
width: 100% !important;
}
}