167 lines
2.6 KiB
SCSS
Executable File
167 lines
2.6 KiB
SCSS
Executable File
@import '../../stylesheets/variables/_all';
|
|
@import '../../stylesheets/mixins/_scrollable';
|
|
|
|
/* Variables
|
|
* ==========
|
|
*/
|
|
$unread-messages-bg: $color-danger;
|
|
|
|
$user-list-bg: $color-white;
|
|
$user-list-text: $color-gray-dark;
|
|
|
|
$list-item-bg-hover: darken($user-list-bg, 7%);
|
|
|
|
$user-thumbnail-border: $color-gray-light;
|
|
$user-thumbnail-text: $user-thumbnail-border;
|
|
|
|
$voice-user-bg: $color-success;
|
|
$voice-user-text: $color-white;
|
|
|
|
$moderator-text: $color-white;
|
|
$moderator-bg: $color-primary;
|
|
|
|
$sub-name-color: $color-gray-light;
|
|
|
|
$user-icons-color: $color-gray-light;
|
|
$user-icons-color-hover: $color-gray;
|
|
|
|
|
|
/* classes for extending
|
|
* ==========
|
|
*/
|
|
%flex-column {
|
|
display: flex;
|
|
flex-flow: column;
|
|
}
|
|
|
|
%no-margin {
|
|
margin: 0;
|
|
}
|
|
|
|
%list-item {
|
|
display: flex;
|
|
flex-flow: row;
|
|
padding-left: $sm-padding-x / 2;
|
|
margin-left: $sm-padding-x / 2;
|
|
padding-right: $sm-padding-x;
|
|
padding-top: $sm-padding-y;
|
|
padding-bottom: $sm-padding-y;
|
|
margin-top: $sm-padding-y * 2;
|
|
transition: all 0.3s;
|
|
border-top-left-radius: 5px;
|
|
border-bottom-left-radius: 5px;
|
|
cursor: pointer;
|
|
|
|
&:hover,
|
|
&:focus {
|
|
background-color: $list-item-bg-hover;
|
|
outline: none;
|
|
}
|
|
|
|
&:first-child {
|
|
margin-top: 0;
|
|
}
|
|
}
|
|
|
|
/* Styling
|
|
* ==========
|
|
*/
|
|
|
|
.userList {
|
|
@extend %flex-column;
|
|
justify-content: flex-start;
|
|
background-color: $user-list-bg;
|
|
color: $user-list-text;
|
|
height: 100vh;
|
|
}
|
|
|
|
.header {
|
|
@extend %flex-column;
|
|
justify-content: center;
|
|
flex-grow: 0;
|
|
}
|
|
|
|
.headerTitle {
|
|
font-size: 1.05rem;
|
|
font-weight: 600;
|
|
padding: 0 $sm-padding-x;
|
|
margin: $lg-padding-x 0;
|
|
}
|
|
|
|
.content {
|
|
@extend %flex-column;
|
|
flex-grow: 9;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.lists {
|
|
@extend %flex-column;
|
|
@extend %no-margin;
|
|
padding: 0;
|
|
outline: none;
|
|
}
|
|
|
|
.participantsList,
|
|
.chatsList {
|
|
@extend .lists;
|
|
overflow-x: hidden;
|
|
flex-shrink: 1;
|
|
}
|
|
|
|
.smallTitle {
|
|
color: $color-text;
|
|
font-size: 0.9rem;
|
|
font-weight: 700;
|
|
text-transform: uppercase;
|
|
padding: 0 $sm-padding-x;
|
|
margin: 0 0 ($lg-padding-x / 2) 0;
|
|
}
|
|
|
|
.scrollableList {
|
|
@include scrollbox-vertical($user-list-bg);
|
|
}
|
|
|
|
.participants, .messages {
|
|
flex-grow: 0;
|
|
display: flex;
|
|
flex-flow: column;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.messages {
|
|
margin-bottom: $lg-padding-x;
|
|
}
|
|
|
|
.participants {
|
|
flex-basis: 31rem;
|
|
flex-grow: 1;
|
|
flex-shrink: 1;
|
|
overflow-x: hidden;
|
|
overflow-y: auto;
|
|
}
|
|
|
|
.separator {
|
|
margin: 1rem auto;
|
|
width: 2.2rem;
|
|
border: 0;
|
|
border-top: 1px solid $color-gray-lighter;
|
|
}
|
|
|
|
.enter, .appear {
|
|
opacity: 0.01;
|
|
}
|
|
|
|
.enterActive, .appearActive {
|
|
opacity: 1;
|
|
transition: all 600ms;
|
|
}
|
|
|
|
.leave {
|
|
opacity: 1;
|
|
}
|
|
|
|
.leaveActive {
|
|
opacity: 0;
|
|
transition: all 600ms;
|
|
}
|