mirror of
https://github.com/cryptpad/cryptpad.git
synced 2026-09-14 11:05:41 +05:00
429 lines
13 KiB
Plaintext
429 lines
13 KiB
Plaintext
/*
|
|
* SPDX-FileCopyrightText: 2023 XWiki CryptPad Team <contact@cryptpad.org> and contributors
|
|
*
|
|
* SPDX-License-Identifier: AGPL-3.0-or-later
|
|
*/
|
|
|
|
@import (reference) './avatar.less';
|
|
@import (reference) './badges.less';
|
|
@import (reference) "./colortheme-all.less";
|
|
|
|
.messenger_vars (
|
|
@bg-color: @cp_messenger-bg,
|
|
) {
|
|
@msg-color: @cryptpad_text_col;
|
|
@msg-color-hover: contrast(@msg-color, lighten(@msg-color, 10%), darken(@msg-color, 10%));
|
|
|
|
@msg-bg-color: @cp_app-bg;
|
|
@msg-bg-color-dark: @cp_toolbar-bg2;
|
|
@msg-bg-color-darker: @cp_toolbar-bg3;
|
|
@msg-bg-color-light: @cp_toolbar-bg2;
|
|
@msg-bg-color-lighter: @cp_toolbar-bg3;
|
|
};
|
|
.messenger_main(
|
|
@bg-color: @cp_messenger-bg,
|
|
) {
|
|
--LessLoader_require: LessLoader_currentFile();
|
|
.messenger_vars(@bg-color);
|
|
--msg-color: @msg-color;
|
|
--msg-bg-color: @msg-bg-color;
|
|
--msg-bg-color-light: @msg-bg-color-light;
|
|
--msg-bg-color-lighter: @msg-bg-color-lighter;
|
|
--msg-bg-color-dark: @msg-bg-color-dark;
|
|
--msg-bg-color-darker: @msg-bg-color-darker;
|
|
};
|
|
& {
|
|
@keyframes notif {
|
|
0% {
|
|
background: fade(@cp_messenger-notif, 10%);
|
|
}
|
|
50% {
|
|
background: fade(@cp_messenger-notif, 30%);
|
|
}
|
|
100% {
|
|
background: fade(@cp_messenger-notif, 10%);
|
|
}
|
|
}
|
|
|
|
.messenger_vars();
|
|
@button-border: 2px;
|
|
@room-height: 48px;
|
|
|
|
#cp-app-contacts-container {
|
|
flex: 1;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
min-height: 0;
|
|
color: @cp_messenger-fg;
|
|
&.ready {
|
|
background-size: cover;
|
|
background-position: center;
|
|
}
|
|
}
|
|
|
|
.cp-app-contacts-spinner {
|
|
display: none;
|
|
}
|
|
|
|
.cp-app-contacts-initializing {
|
|
svg.cp-app-contacts-spinner {
|
|
color: @cp_messenger-fg;
|
|
display: block;
|
|
}
|
|
.cp-app-contacts-info {
|
|
display: none;
|
|
}
|
|
#cp-app-contacts-friendlist,
|
|
#cp-app-contacts-messaging {
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
}
|
|
}
|
|
|
|
#cp-app-contacts-friendlist {
|
|
width: 200px;
|
|
height: 100%;
|
|
background-color: @msg-bg-color;
|
|
background-color: var(--msg-bg-color);
|
|
color: @msg-color;
|
|
color: var(--msg-color);
|
|
overflow-y: auto;
|
|
display: flex;
|
|
flex-flow: column;
|
|
.cp-app-contacts-friend {
|
|
background-color: @msg-bg-color-dark;
|
|
background-color: var(--msg-bg-color-dark);
|
|
padding: 5px;
|
|
margin: 10px;
|
|
margin-bottom: 0;
|
|
cursor: pointer;
|
|
position: relative;
|
|
height: @room-height;
|
|
.cp-app-contacts-right-col {
|
|
margin-left: 5px;
|
|
display: flex;
|
|
flex-flow: column;
|
|
flex: 1;
|
|
min-width: 0;
|
|
.cp-app-contacts-name {
|
|
white-space: nowrap;
|
|
overflow: hidden;
|
|
}
|
|
.cp-app-contacts-icons {
|
|
text-align: right;
|
|
& > span:hover {
|
|
color: @msg-color-hover;
|
|
}
|
|
svg {
|
|
margin-right: 0.1rem;
|
|
}
|
|
}
|
|
}
|
|
span.cp-badge {
|
|
color: var(--msg-bg-color-dark);
|
|
border-color: var(--msg-bg-color-dark);
|
|
}
|
|
&:hover {
|
|
background-color: @msg-bg-color-darker;
|
|
background-color: var(--msg-bg-color-darker);
|
|
span.cp-badge {
|
|
color: var(--msg-bg-color-darker);
|
|
border-color: var(--msg-bg-color-darker);
|
|
}
|
|
}
|
|
&.cp-app-contacts-notify {
|
|
animation: notif 2s ease-in-out infinite;
|
|
}
|
|
}
|
|
.cp-app-contacts-remove {
|
|
cursor: pointer;
|
|
width: 20px;
|
|
text-align: center;
|
|
&:hover {
|
|
color: @msg-color-hover;
|
|
}
|
|
}
|
|
|
|
.cp-app-contacts-category {
|
|
display: flex;
|
|
flex-flow: column;
|
|
flex-grow: 0;
|
|
flex-shrink: 0;
|
|
.cp-app-contacts-category-title {
|
|
order: 1;
|
|
font-size: 18px;
|
|
margin: 0px 5px;
|
|
text-align: center;
|
|
background-color: @msg-bg-color-dark;
|
|
background-color: var(--msg-bg-color-dark);
|
|
font-weight: bold;
|
|
height: 22px;
|
|
line-height: 22px;
|
|
}
|
|
.cp-app-contacts-category-content {
|
|
order: 2;
|
|
display: flex;
|
|
flex-flow: column-reverse;
|
|
padding-bottom: 10px;
|
|
&:empty {
|
|
display: none;
|
|
& ~ .cp-app-contacts-category-title {
|
|
display: none;
|
|
}
|
|
}
|
|
}
|
|
.cp-app-contacts-muted-button {
|
|
margin: 10px;
|
|
display: none;
|
|
order: 3;
|
|
}
|
|
}
|
|
}
|
|
|
|
.cp-contacts-muted-table {
|
|
.cp-contacts-muted-user {
|
|
margin-bottom: 5px;
|
|
.cp-avatar {
|
|
margin-right: 10px;
|
|
}
|
|
button {
|
|
margin-right: 0px;
|
|
}
|
|
}
|
|
}
|
|
|
|
#cp-app-contacts-container.cp-app-contacts-inapp {
|
|
#cp-app-contacts-friendlist {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
#cp-app-contacts-friendlist .cp-app-contacts-friend, #cp-app-contacts-messaging .cp-avatar {
|
|
.avatar_main(35px);
|
|
&.cp-avatar {
|
|
display: flex;
|
|
}
|
|
cursor: pointer;
|
|
color: @msg-color;
|
|
media-tag {
|
|
img {
|
|
color: #000;
|
|
}
|
|
}
|
|
media-tag, .cp-avatar-default {
|
|
//margin-right: 5px;
|
|
flex-shrink: 0;
|
|
z-index: 1;
|
|
}
|
|
.cp-app-contacts-status {
|
|
display: inline-block;
|
|
position: absolute;
|
|
width: 10px;
|
|
height: 10px;
|
|
top: 0;
|
|
right: 0;
|
|
border-bottom-left-radius: 100%;
|
|
|
|
&.cp-app-contacts-online {
|
|
background-color: @cp_messenger-online;
|
|
}
|
|
&.cp-app-contacts-offline {
|
|
display: none;
|
|
}
|
|
}
|
|
}
|
|
|
|
#cp-app-contacts-messaging {
|
|
flex: 1;
|
|
height: 100%;
|
|
background-color: @msg-bg-color-light;
|
|
background-color: var(--msg-bg-color-light);
|
|
min-width: 0;
|
|
|
|
.cp-app-contacts-info {
|
|
padding: 20px;
|
|
}
|
|
.cp-app-contacts-header {
|
|
background-color: @msg-bg-color-lighter;
|
|
background-color: var(--msg-bg-color-lighter);
|
|
span.cp-badge {
|
|
color: var(--msg-bg-color-lighter);
|
|
border-color: var(--msg-bg-color-lighter);
|
|
}
|
|
padding: 0;
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
height: 50px;
|
|
svg {
|
|
margin-right: 0;
|
|
}
|
|
|
|
.hover () {
|
|
cursor: pointer;
|
|
height: 100%;
|
|
line-height: 30px;
|
|
padding: 10px;
|
|
&:hover {
|
|
background-color: @msg-bg-color-darker;
|
|
background-color: var(--msg-color-darker);
|
|
}
|
|
}
|
|
|
|
.cp-avatar-container,
|
|
.cp-app-contacts-right-col {
|
|
flex: 1 1 auto;
|
|
text-align: center;
|
|
}
|
|
.cp-app-contacts-remove-history {
|
|
.hover;
|
|
}
|
|
.cp-avatar-container {
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
.cp-avatar {
|
|
margin: 0 10px;
|
|
}
|
|
.cp-app-contacts-more-history {
|
|
//display: none;
|
|
.hover;
|
|
&.cp-app-contacts-faded {
|
|
color: @cryptpad_text_col;
|
|
}
|
|
}
|
|
|
|
.cp-app-contacts-header-title {
|
|
padding: 10px;
|
|
flex: 1;
|
|
}
|
|
}
|
|
.cp-app-contacts-tips {
|
|
margin: 1em;
|
|
background-color: @msg-bg-color-dark;
|
|
background-color: var(--msg-bg-color-dark);
|
|
font-size: 14px;
|
|
padding: 10px;
|
|
position: relative;
|
|
.cp-app-contacts-tips-close {
|
|
cursor: pointer;
|
|
position: absolute;
|
|
top: 2px;
|
|
right: 2px;
|
|
margin: 0;
|
|
}
|
|
}
|
|
.cp-app-contacts-chat {
|
|
height: 100%;
|
|
display: flex;
|
|
flex-flow: column;
|
|
.cp-app-contacts-messages {
|
|
padding: 0 20px;
|
|
margin: 10px 0;
|
|
flex: 1;
|
|
overflow-x: auto;
|
|
.cp-app-contacts-message {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
& > div {
|
|
padding: 0 10px;
|
|
}
|
|
.cp-app-contacts-content {
|
|
overflow: hidden;
|
|
word-wrap: break-word;
|
|
&> * {
|
|
margin: 0;
|
|
}
|
|
flex: 1;
|
|
min-width: 70%;
|
|
position: relative;
|
|
}
|
|
.cp-app-contacts-date {
|
|
display: none;
|
|
font-style: italic;
|
|
}
|
|
.cp-app-contacts-sender {
|
|
margin-top: 10px;
|
|
font-weight: bold;
|
|
background-color: rgba(0,0,0,0.1);
|
|
display: flex;
|
|
justify-content: space-between;
|
|
border-radius: @variables_radius_L;
|
|
width: 100%;
|
|
}
|
|
.cp-app-contacts-time {
|
|
display: none;
|
|
font-size: 0.8em;
|
|
align-items: center;
|
|
color: @msg-color;
|
|
font-weight: bold;
|
|
position: absolute;
|
|
right: 0;
|
|
top: 0;
|
|
bottom: 0;
|
|
background: rgba(0,0,0,0.1);
|
|
border-radius: @variables_radius_L;
|
|
padding: 0 10px;
|
|
}
|
|
&:hover {
|
|
.cp-app-contacts-time {
|
|
display: flex;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
.cp-app-contacts-input {
|
|
background-color: @msg-bg-color-lighter;
|
|
background-color: var(--msg-bg-color-lighter);
|
|
height: auto;
|
|
min-height: 50px;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
padding: 0 5%;
|
|
textarea {
|
|
margin: 5px 0;
|
|
padding: 5px 10px;
|
|
border: none;
|
|
height: 54px; // 2 lines (22px height) + 2 margins (5px)
|
|
flex: 1;
|
|
background-color: @cp_forms-bg;
|
|
color: @cp_forms-fg;
|
|
resize: none;
|
|
overflow-y: auto;
|
|
.tools_placeholder-color();
|
|
&[disabled="true"] {
|
|
.tools_placeholder-color();
|
|
}
|
|
&:focus-visible {
|
|
outline: @variables_focus_style;
|
|
border-radius: @variables_radius;
|
|
}
|
|
}
|
|
button {
|
|
height: 54px !important;
|
|
border-radius: 0;
|
|
border: none;
|
|
color: @cp_messenger-fg;
|
|
background-color: @msg-bg-color-darker;
|
|
background-color: var(--msg-bg-color-darker);
|
|
border-radius: @variables_radius;
|
|
&:hover {
|
|
background-color: @msg-bg-color-dark;
|
|
background-color: var(--msg-bg-color-dark);
|
|
}
|
|
&:focus-visible {
|
|
outline: @variables_focus_style;
|
|
border-radius: @variables_radius;
|
|
}
|
|
svg {
|
|
margin: 0;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|