session-desktop/stylesheets/_session_conversation.scss

257 lines
4.7 KiB
SCSS

@keyframes toShadow {
from {
opacity: 1;
}
to {
opacity: 0.25;
}
}
@keyframes fromShadow {
from {
opacity: 0.25;
}
to {
opacity: 1;
}
}
.conversation-item__options-pane {
position: absolute;
height: 100%;
right: 0vw;
transition: transform 0.3s ease-in-out;
transform: translateX(100%);
will-change: transform;
width: 25vw;
z-index: 5;
background-color: var(--background-primary-color);
border-left: 1px solid var(--border-color);
&.show {
transform: none;
transition: transform 0.3s ease-in-out;
z-index: 3;
}
}
.conversation-header {
&--items-wrapper {
display: flex;
flex-grow: 1;
align-items: center;
justify-content: center;
width: 100%;
}
.message-selection-overlay {
position: absolute;
display: flex;
left: 0px;
right: 0px;
padding: 0px var(--margins-md);
align-items: center;
justify-content: space-between;
height: var(--main-view-header-height);
background: var(--background-primary-color);
.close-button {
float: left;
}
.session-button.danger {
display: flex;
}
}
.message-selection-overlay div[role='button'] {
display: inline-block;
}
.message-selection-overlay .button-group {
display: flex;
}
}
.session-conversation {
position: relative;
flex-grow: 1;
display: flex;
flex-direction: column;
max-width: calc(100vw - 380px);
height: 100%;
.selection-mode {
.messages-container > *:not(.message-selected) {
animation: toShadow var(--default-duration);
opacity: 0.3;
}
}
}
.conversation-content {
display: flex;
flex-grow: 1;
flex-direction: column;
position: relative;
outline: none;
.conversation-messages {
display: flex;
flex-direction: column;
flex-grow: 1;
width: 100%;
height: 0;
background-color: inherit;
outline: none;
position: relative;
background-color: var(--background-secondary-color);
border-top: 1px solid var(--border-color);
}
.conversation-info-panel {
position: absolute;
justify-content: flex-start;
flex-direction: column;
align-items: center;
height: 100%;
width: 100%;
z-index: 5; // to be sure to hide the borders of images in messages
background-color: inherit;
display: none;
padding: 20px;
&.show {
display: flex;
background: var(--background-primary-color);
}
}
}
.composition-container {
display: flex;
justify-content: center;
align-items: center;
padding: 0px var(--margins-md);
min-height: min-content;
border-top: 1px solid var(--border-color);
z-index: 1;
.session-icon-button {
display: flex;
justify-content: center;
align-items: center;
margin-right: var(--margins-sm);
.send {
padding: var(--margins-xs);
border-radius: 50%;
height: 30px;
width: 30px;
}
}
}
.send-message-button {
animation: fadein var(--default-duration);
&---scale {
animation: scaling 2s ease-in-out;
@keyframes scaling {
0% {
transform: scale(1);
}
80% {
transform: scale(1.3);
}
100% {
transform: scale(1);
}
}
}
}
.session-recording {
height: var(--composition-container-height);
display: flex;
justify-content: space-between;
align-items: center;
flex-grow: 1;
outline: none;
$actions-element-size: 30px;
&--actions {
display: flex;
align-items: center;
width: $actions-element-size;
height: $actions-element-size;
border-radius: 50%;
.session-button {
animation: fadein var(--default-duration);
}
.session-icon-button {
animation: fadein var(--default-duration);
border-radius: 50%;
width: $actions-element-size;
height: $actions-element-size;
.play {
margin-left: 4px;
}
}
}
&--visualisation {
z-index: 2;
width: 100%;
display: flex;
align-items: center;
justify-content: center;
position: relative;
canvas {
position: absolute;
width: 100%;
padding: 0px var(--margins-lg);
}
}
&--timer {
display: inline-flex;
align-items: center;
font-family: var(--font-default);
font-weight: bold;
font-size: 14px;
flex-shrink: 0;
&.playback-timer {
animation: fadein var(--default-duration);
@media (-webkit-min-device-pixel-ratio: 1.6) {
margin-left: auto;
}
}
&-light {
height: var(--margins-sm);
width: var(--margins-sm);
border-radius: 50%;
background-color: var(--danger-color);
margin: 0 var(--margins-sm);
@include pulse-color(var(--danger-color), 1s, infinite);
}
}
}