webapp/src/styles/Inbox.scss
2022-11-27 08:49:48 +03:00

281 lines
4.3 KiB
SCSS

main {
display: flex;
height: 100vh;
flex-direction: column;
position: relative;
}
.messages {
top: 74px;
height: calc(100% - 74px);
left: 0;
right: 0;
padding-left: 42px;
padding-right: 26px;
background: #fff;
display: flex;
flex: 1;
flex-direction: column;
position: fixed;
z-index: 900;
.row {
flex: 1;
}
.author__name {
font-weight: 500;
}
.author {
position: relative;
}
}
// список диалогов и юзеров
.chat-list {
display: flex;
flex-direction: column;
padding: 10px;
height: calc(100% - 10px);
$fade-height: 10px;
.sidebar-header {
display: flex;
align-items: center;
gap: 10px;
}
.holder {
overflow: hidden;
flex: 1;
position: relative;
padding: $fade-height 0;
&::before,
&::after {
content: '';
position: absolute;
width: 100%;
right: 10px;
z-index: 1;
height: $fade-height;
}
&::before {
top: 0;
background: linear-gradient(white, transparent $fade-height);
}
&::after {
bottom: 0;
background: linear-gradient(transparent, white $fade-height);
}
.dialogs {
scroll-behavior: smooth;
display: flex;
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
height: 100%;
overflow: auto;
flex-direction: column;
box-sizing: border-box;
}
}
}
.chat-list__search,
.interlocutor {
border-bottom: 3px solid #141414;
padding: 1em 0;
}
// табы выбора списка
.chat-list__types {
@include font-size(1.7rem);
margin: 16px 0;
ul {
display: flex;
flex-wrap: wrap;
list-style: none;
margin: 0;
padding: 0;
}
li {
margin-right: 1em;
color: #696969;
}
strong {
border-bottom: 3px solid;
font-weight: normal;
color: #000;
}
}
.interlocutor {
height: 56px;
box-sizing: content-box;
.circlewrap {
height: 56px;
max-width: 56px;
width: 56px;
}
.author {
margin-bottom: 0;
&::before {
left: 40px !important;
height: 8px !important;
width: 8px !important;
}
}
.author__name {
@include font-size(1.7rem);
margin: 0.4em 0 0;
}
.author__details,
.user-status {
margin-left: 6.8rem;
}
.user-status {
@include font-size(1.2rem);
color: #ccc;
}
}
.conversation {
display: flex;
flex-direction: column;
}
.conversation__messages {
flex: 1;
overflow: auto;
position: relative;
}
.message-form {
background: #fff;
padding: 2px 0 12px 0;
.wrapper {
border: 2px solid #cccccc;
border-radius: 16px;
padding: 4px;
display: flex;
flex-direction: row;
align-items: center;
.grow-wrap {
display: grid;
width: 100%;
&::after {
content: attr(data-replicated-value) ' ';
white-space: pre-wrap;
visibility: hidden;
transition: height 1.3s ease-in-out;
}
& textarea {
margin-bottom: 0;
font-family: inherit;
border: none;
resize: none;
overflow: hidden;
&:focus,
&:focus-visible,
&:active {
border: none;
outline: none;
box-shadow: none;
}
}
&::after,
& textarea {
/* Identical styling required!! */
font-weight: 400;
font-size: 14px;
line-height: 20px;
padding: 8px;
grid-area: 1 / 1 / 2 / 2;
width: 100%;
}
}
button {
border: none;
cursor: pointer;
text-align: center;
width: 20px;
height: 20px;
margin: auto 8px 8px 0;
&:hover {
.icon {
opacity: 0.5;
}
}
.icon {
width: 100%;
height: 100%;
opacity: 0.2;
transition: opacity 0.3s;
}
}
}
}
.conversation__messages-container {
left: 0;
height: 100%;
overflow: auto;
position: absolute;
top: 0;
width: 100%;
scroll-behavior: smooth;
}
.conversation__date {
position: relative;
text-align: center;
&::before {
background: #141414;
content: '';
height: 1px;
left: 0;
position: absolute;
top: 0.8em;
width: 100%;
z-index: -1;
}
time {
background: #fff;
@include font-size(1.5rem);
color: #9fa1a7;
padding: 0 0.5em;
}
}