Telegram Web K with changes to work inside I2P https://web.telegram.i2p/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2778 lines
56 KiB

3 years ago
/*
* https://github.com/morethanwords/tweb
* Copyright (C) 2019-2021 Eduard Kuzmenko
* https://github.com/morethanwords/tweb/blob/master/LICENSE
*/
@use "sass:math";
3 years ago
$bubble-margin: .25rem;
3 years ago
$bubble-beside-button-width: 38px;
3 years ago
@keyframes bubbleSelected {
0% {
opacity: 0;
}
25% {
opacity: 1;
}
to {
opacity: 0;
}
}
.bubbles-date-group {
position: relative;
/* .sticky_sentinel {
visibility: visible;
background: #000;
} */
.sticky_sentinel--top {
/* Adjust the height and top values based on your on your sticky top position.
e.g. make the height bigger and adjust the top so observeHeaders()'s
IntersectionObserver fires as soon as the bottom of the sentinel crosses the
top of the intersection container. */
height: $bubble-margin;
top: 0;
}
// .sticky_sentinel--bottom {
// /* Height should match the top of the header when it's at the bottom of the
// intersection container. */
// height: 1px;
// bottom: 0;
// }
}
.bubble {
position: relative;
z-index: 1;
margin: 0 auto $bubble-margin;
user-select: none;
display: flex;
flex-wrap: wrap;
//flex-direction: column; // fix 'Unread messages', still need to refactor it
3 years ago
&.is-gesturing-reply {
transform: translateX(0);
&.animating.backwards {
transition: transform var(--transition-standard-out);
}
.bubble-gesture-reply-icon {
width: var(--message-beside-button-size);
height: var(--message-beside-button-size);
position: absolute;
top: 50%;
right: var(--message-beside-button-margin);
transform: translateY(-50%);
color: #fff;
border-radius: 50%;
background-color: var(--message-highlightning-color);
opacity: 0;
display: flex;
align-items: center;
justify-content: center;
transform: translateY(-50%) scale(0.6);
visibility: hidden;
&:before {
font-size: 1.125rem !important;
}
@include animation-level(2) {
transition: transform .1s ease-in-out;
}
&.is-visible {
visibility: visible;
// opacity: 1;
transform: translateY(-50%) scale(1);
}
}
}
&.is-highlighted,
&.is-selected,
/* .bubbles.is-selecting */ & {
3 years ago
&:after {
position: absolute;
left: -50%;
/* top: 0;
bottom: 0; */
top: -#{$bubble-margin / 2};
bottom: -#{$bubble-margin / 2};
3 years ago
content: " ";
z-index: -1;
}
}
/* &.is-highlighted, &.is-selected {
&:not(.is-group-last):after {
height: calc(100% + #{$bubble-margin / 2}) !important;
3 years ago
}
& + &:not(.is-group-last) {
&:after {
top: .125rem !important;
height: calc(100% - #{$bubble-margin / 2}) !important;
3 years ago
}
}
} */
// ! if turn this on, there will be an empty space
/* &.is-highlighted, &.is-selected {
&.is-group-last:after {
bottom: #{$bubble-margin / 2} !important;
3 years ago
}
} */
&.is-highlighted:after {
//background-color: rgba(0, 132, 255, .3);
background-color: var(--message-highlightning-color);
body:not(.animation-level-0) & {
animation: bubbleSelected 2s linear;
}
}
&.is-first-unread {
@include respond-to(handhelds) {
max-width: unset;
}
&:before {
content: "Unread messages";
height: 30px;
margin-bottom: $bubble-margin;
margin-left: -50%;
margin-right: -50%;
text-align: center;
color: var(--primary-color);
line-height: 2.1;
font-weight: 500;
font-size: 15px;
background-color: var(--surface-color);
z-index: 2;
position: relative;
}
&.is-highlighted, &.is-selected {
&:after {
top: calc(#{$bubble-margin / 2} + 30px);
3 years ago
}
}
}
&.is-selected {
&:after {
background-color: var(--message-highlightning-color);
}
body:not(.animation-level-0) & {
&:after {
animation: fade-in-opacity .2s linear forwards;
}
&.backwards:after {
animation: fade-in-backwards-opacity .2s linear forwards;
}
}
}
//&.is-highlighted:after, &.is-first-unread:before, &.is-selected:after {
&:after,
&:before {
3 years ago
width: 200%;
display: block;
}
&.is-multiple-documents {
&:before,
&:after {
3 years ago
display: none;
}
.user-avatar {
z-index: 2;
}
}
3 years ago
.replies-footer + .poll-message .poll-footer-button {
border-radius: 0 !important;
}
/* &.channel-post {
3 years ago
.message.poll-message {
.time {
position: unset;
}
}
poll-element .poll-footer {
height: auto;
}
3 years ago
} */
3 years ago
&-select-checkbox {
z-index: 3;
position: absolute;
left: 0;
display: flex;
margin: 0;
.checkbox-box-border {
border-color: var(--message-checkbox-border-color);
}
.checkbox-box-background {
background-color: var(--message-checkbox-color);
}
.checkbox-box-check {
use {
stroke-width: 3.5;
}
}
}
& > &-select-checkbox {
//bottom: .75rem; // * by avatar
bottom: .3125rem; // * by middle of one-line message
/* left: 0;
top: 50%;
transform: translateY(-50%); */
.checkbox-box {
box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, .4);
}
}
.bubbles.is-selecting &:not(.is-album) {
.audio,
.document,
.attachment,
poll-element {
3 years ago
pointer-events: none !important;
}
}
// ! hide context menu for media on android
.bubbles.is-selecting & {
img,
video,
a {
3 years ago
pointer-events: none;
}
}
&-content {
//min-width: 60px;
min-width: 56px;
max-width: 100%;
border-radius: 12px;
box-shadow: 0 1px 2px 0 rgba(16, 35, 47, .15);
position: relative;
display: flex;
flex-direction: column-reverse;
// align-items: flex-start;
3 years ago
z-index: 2;
user-select: none;
background-color: var(--message-background-color);
body.animation-level-0 & {
transition: none;
}
/* html.no-touch .bubbles:not(.is-selecting) &,
html.is-touch .bubbles.is-selecting:not(.no-select) & {
user-select: text;
} */
html.no-touch .chat:not(.no-forwards) .bubbles:not(.is-selecting) &,
html.is-touch body:not(.no-select) .chat:not(.no-forwards) .bubbles.is-selecting & { // * need no-select on body because chat-input transforms in channels
3 years ago
user-select: text;
}
}
2 years ago
&-hover-reaction {
--size: 1.875rem;
--offset: calc(var(--size) * -.75);
position: absolute;
right: var(--offset);
bottom: -.125rem;
width: var(--size);
height: 1.625rem;
border-radius: var(--size);
z-index: 2;
background-color: var(--surface-color);
cursor: pointer;
opacity: 0;
transform: scale(.8);
display: flex;
align-items: center;
justify-content: center;
box-shadow: var(--menu-box-shadow);
@include animation-level(2) {
transition: opacity var(--btn-corner-transition), transform var(--btn-corner-transition);
}
&.is-visible {
&:not(.backwards) {
transform: scale(1);
opacity: 1;
}
}
&-sticker {
width: 1.125rem;
height: 1.125rem;
position: relative;
}
}
3 years ago
/* &.with-beside-button &-content {
@include respond-to(handhelds) {
max-width: calc(100% - var(--message-handhelds-margin)) !important;
}
} */
2 years ago
/* &.with-beside-button &-content {
margin-right: calc(var(--message-beside-button-margin) * -1);
} */
3 years ago
&.service {
//padding: 1rem 0;
//padding: $bubble-margin 0;
max-width: var(--messages-container-width);
.bubble-content {
/* justify-self: center; */
margin: 0 auto;
max-width: 100%;
box-shadow: none;
}
}
&.is-date {
position: sticky;
top: $bubble-margin;
padding-bottom: $bubble-margin;
//z-index: 3;
z-index: 2;
transition: opacity .3s ease;
opacity: .99999; // for safari
pointer-events: none;
&:before,
&:after {
3 years ago
display: none;
}
body.animation-level-0 & {
transition: none;
}
&.is-sticky {
opacity: .00001; // for safari
// position: sticky;
3 years ago
.bubbles-inner:not(.is-scrolling) & {
//transition-delay: 1.35s;
.bubble-content {
cursor: default;
}
}
/* .bubbles-inner.is-scrolling & {
transition-delay: 0;
} */
}
.chat.type-chat & .bubble-content,
.chat.type-discussion & .bubble-content {
cursor: pointer;
pointer-events: all;
}
}
&-beside-button {
//opacity: 0;
//transition: .2s opacity;
position: absolute;
3 years ago
right: var(--message-beside-button-margin);
3 years ago
bottom: 0;
3 years ago
width: var(--message-beside-button-size);
height: var(--message-beside-button-size);
3 years ago
font-size: 1.5rem;
align-items: center;
display: flex;
justify-content: center;
color: var(--badge-text-color);
border-radius: 50%;
//background: rgba(0, 0, 0, .16);
background: var(--message-highlightning-color);
cursor: pointer;
html.no-touch & {
opacity: 0;
3 years ago
}
html.no-touch body.animation-level-2 & {
3 years ago
transition: opacity .2s ease-in-out;
}
}
&-view-button {
border-radius: 6px;
border: 1px solid var(--primary-color);
height: 2rem;
margin: 0 0.5625rem .5rem;
width: auto;
}
3 years ago
@include hover() {
.bubble-beside-button {
opacity: 1;
}
}
.forward {
svg {
width: 22px;
height: 22px;
}
}
/* &.is-group-first {
padding-top: 10px;
} */
&.is-group-last {
margin-bottom: #{$bubble-margin * 2};
&:after {
bottom: -#{$bubble-margin};
}
/* > .bubble-select-checkbox {
bottom: .3125rem;
} */
.bubbles-inner.is-chat &.is-in {
> .bubble-select-checkbox {
bottom: .1875rem;
}
}
}
&.is-group-first {
&:after {
top: -#{$bubble-margin};
}
}
&:not(.forwarded):not(.must-have-name) {
3 years ago
&:not(.is-group-first) {
.name {
// .bubble-content > .name,
// .document-wrapper > .name {
3 years ago
display: none;
}
&:not(.is-message-empty):not(.is-reply) .message {
padding-top: 6px;
}
}
}
&:not(.is-group-last) .bubble-content-wrapper > .user-avatar {
display: none;
}
/* &:not(.hide-name) {
.audio {
margin: 4px 0;
}
} */
/* .goto-original {
opacity: 1;
} */
&.photo,
&.video {
3 years ago
.bubble-content {
width: min-content;
}
.web {
/* width: max-content; */ // commented 10.02.2020
/* width: min-content; */
max-width: 100%;
}
.message {
max-width: 420px;
}
}
&.webpage {
.preview-with-document {
margin-bottom: 0 !important;
}
.document {
height: 3.375rem;
@include respond-to(handhelds) {
padding-left: 44px;
}
}
}
.preview-resizer {
display: flex;
}
img.emoji {
height: 18px;
width: 18px;
3 years ago
// margin: 0 .05rem;
3 years ago
vertical-align: bottom;
}
.thumbnail {
position: absolute;
}
&.emoji-big {
font-size: 0;
.bubble-content {
line-height: 1;
}
&:not(.sticker) {
.attachment {
padding-top: .5rem;
padding-bottom: 1.5rem;
//max-width: fit-content!important;
max-height: fit-content!important;
span.emoji {
height: auto;
width: auto;
}
}
.chat:not(.no-forwards) & {
2 years ago
.attachment {
cursor: text;
user-select: text;
}
}
.message {
margin-top: -1.125rem;
3 years ago
}
}
2 years ago
/* &.sticker .bubble-content {
3 years ago
max-width: 140px !important;
max-height: 140px !important;
user-select: none !important;
2 years ago
} */
3 years ago
}
&.emoji-1x .attachment {
font-size: 96px;
img.emoji {
height: 64px;
width: 64px;
}
}
&.emoji-2x .attachment {
font-size: 64px;
img.emoji {
height: 48px;
width: 48px;
}
}
&.emoji-3x .attachment {
font-size: 52px;
img.emoji {
height: 32px;
width: 32px;
}
}
&.just-media {
3 years ago
.bubble-content {
// cursor: pointer;
3 years ago
background: none!important;
box-shadow: none;
/* max-width: 300px;
max-height: 300px; */
}
img {
object-fit: contain;
}
&.is-message-empty .message {
//background-color: rgba(0, 0, 0, .23);
background: var(--message-highlightning-color);
}
/* &.is-message-empty .message {
display: none;
}
&.is-message-empty:hover .message {
display: block;
} */
}
2 years ago
&.sticker,
&.emoji-big:not(.sticker) {
.bubble-content {
align-self: flex-start;
}
.message {
position: relative !important;
// align-self: flex-start;
margin-left: auto;
right: 0 !important;
}
}
3 years ago
&.sticker {
.attachment {
2 years ago
position: absolute;
3 years ago
border-radius: 0;
z-index: 1;
}
2 years ago
/* .bubble-content {
3 years ago
max-width: 200px !important;
max-height: 200px !important;
2 years ago
} */
3 years ago
}
&.round {
.attachment {
max-width: var(--round-video-size) !important;
max-height: var(--round-video-size) !important;
width: var(--round-video-size) !important;
height: var(--round-video-size) !important;
}
3 years ago
.media-photo,
.media-video {
border-radius: 50%;
pointer-events: none;
3 years ago
}
}
&:not(.is-message-empty) .attachment/* ,
&:not(.is-message-empty).is-reply .attachment */ {
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
}
&:not(.emoji-big) .attachment {
font-size: 0;
}
.attachment {
max-width: 100%;
border-radius: inherit;
overflow: hidden;
user-select: none;
//-webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%); // fix safari overflow
display: flex; // lol
justify-content: center;
position: relative;
cursor: pointer;
img,
video {
3 years ago
max-width: 100%;
}
.download {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
cursor: pointer;
display: flex;
justify-content: center;
align-items: center;
span {
background-color: var(--message-time-background);
font-size: 23px;
color: #fff;
text-align: center;
}
}
.download,
.preloader-container {
3 years ago
& ~ .video-play {
display: none;
}
}
}
.media-container {
&-aspecter {
position: relative;
margin: 0 auto;
z-index: 1;
}
&-fitted {
background-color: transparent !important;
> .thumbnail {
3 years ago
opacity: .8;
3 years ago
&.fade-in {
animation: thumbnail-fade-in-opacity .2s ease-in-out forwards;
}
3 years ago
}
}
}
.preloader-container {
z-index: 2;
}
&:not(.sticker) {
.attachment {
max-width: unquote('min(420px, 100%)');
max-height: unquote('min(340px, 100%)');
width: max-content;
}
}
img:not(.emoji),
video {
3 years ago
/* object-fit: contain; */
object-fit: cover;
width: 100%;
height: 100%;
}
html.is-safari &:not(.round) {
img:not(.emoji),
video {
3 years ago
border-radius: inherit;
}
}
&.is-album {
.attachment {
max-width: unquote('min(451px, 100%)');
max-height: none;
//overflow: hidden;
}
}
.album-item {
background-color: var(--message-highlightning-color);
max-width: 100%;
cursor: pointer;
position: absolute;
overflow: hidden;
3 years ago
@include animation-level(0) {
transition: none !important;
}
3 years ago
/* .bubbles.is-selecting & {
-webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%); // fix safari overflow
} */
img, video {
border-radius: inherit;
}
&-media { // * fix overflow for handhelds
border-radius: inherit;
3 years ago
@include animation-level(0) {
transition: none !important;
}
3 years ago
}
.bubble-select-checkbox {
bottom: auto !important;
left: auto;
right: .5rem;
top: .5rem;
}
&.is-selected {
border-radius: 0;
.album-item-media {
transform: scale(1);
}
&.animating {
transition: border-radius var(--transition-standard-out);
.album-item-media {
transition: transform var(--transition-standard-out), border-radius var(--transition-standard-out);
}
}
&:not(.backwards) {
transition: border-radius var(--transition-standard-in);
.album-item-media {
transition: transform var(--transition-standard-in), border-radius var(--transition-standard-in);
transform: scale(.883333);
}
&, .album-item-media {
//border-radius: .5rem;
border-radius: 0;
}
}
}
}
a {
@include hover() {
text-decoration: underline;
}
}
&-first {
order: -1;
margin-top: .5rem;
justify-content: center;
align-items: center;
max-width: 100%;
@include animation-level(0) {
flex: 1 1 auto;
}
3 years ago
.bubble-content-wrapper {
max-width: 100%;
}
&.empty-bubble-placeholder {
position: absolute;
top: 50%;
transform: translateY(-50%);
// left: 50%;
// transform: translate(-50%, -50%);
3 years ago
&.has-description {
.service-msg {
flex-direction: column;
align-items: flex-start !important;
padding: .75rem 1rem .875rem !important;
}
.center {
align-self: center;
}
.empty-bubble-placeholder-title {
font-weight: 500;
font-size: 1rem !important;
}
.bubble-content {
border-radius: 1.5rem !important;
}
}
.empty-bubble-placeholder-line {
color: #fff;
}
.empty-bubble-placeholder-line + .empty-bubble-placeholder-line {
margin-top: .5rem;
}
.tgico-check {
margin-right: .25rem;
font-size: 1.25rem;
vertical-align: bottom;
margin-left: -.1875rem;
}
.empty-bubble-placeholder-list-bullet {
margin-right: .3125rem;
}
&:not(:first-child:last-child) {
.bubble-content-wrapper {
transform: scale3d(.8, .8, 1) translateX(0);
//transform: scale(.8) translateX(0);
opacity: 0;
pointer-events: none;
}
}
&.empty-bubble-placeholder-group {
.empty-bubble-placeholder-list-item {
margin-top: .4375rem !important;
}
}
&.empty-bubble-placeholder-greeting {
.service-msg {
max-width: 232px;
}
.empty-bubble-placeholder-subtitle {
margin-top: .25rem !important;
}
}
.empty-bubble-placeholder-sticker {
margin-top: .75rem !important;
position: relative;
width: 200px;
height: 200px;
cursor: pointer;
}
}
.time {
display: none !important;
}
&:before, &:after {
display: none;
}
}
.web {
// margin: .125rem 0;
2 years ago
margin: .125rem 0 0;
3 years ago
max-width: 100%;
overflow: hidden;
line-height: var(--line-height);
2 years ago
& + .time {
display: block;
}
3 years ago
.preview {
max-width: unquote('min(420px, 100%)');
max-height: unquote('min(340px, 100%)');
border-radius: 4px;
overflow: hidden;
user-select: none;
cursor: pointer;
position: relative;
width: max-content;
img, video {
max-width: 100%;
}
&-resizer {
&:first-child {
margin: 3px 0;
&:last-child {
margin-bottom: 2px;
}
}
}
&.is-round {
.media-photo,
.media-video {
border-radius: 50%;
}
}
}
&.no-text {
margin-bottom: .75rem;
3 years ago
}
.title {
&:not(:first-child) {
margin-top: 1px;
}
3 years ago
}
.webpage-name,
.text,
.title {
font-size: var(--messages-secondary-text-size);
line-height: var(--messages-secondary-line-height);
}
3 years ago
.webpage-name {
text-decoration: none;
3 years ago
@include hover() {
text-decoration: underline;
}
}
.text {
3 years ago
word-break: break-word;
margin-top: 1px;
3 years ago
}
.quote {
max-width: 100%;
overflow: hidden;
width: 100%;
display: flex;
&-text {
width: 100%;
// max-width: calc(100% - .625rem); // left border
max-width: 100%;
padding-left: .625rem;
margin-left: -.625rem;
}
&:before {
flex: 0 0 auto;
width: .125rem;
border-radius: .125rem;
background-color: var(--primary-color);
margin: .1875rem .5rem .125rem 0;
content: " ";
}
3 years ago
}
}
.reply {
3 years ago
font-size: var(--messages-secondary-text-size);
}
&.is-square-photo {
.bubble-content {
width: fit-content;
}
.web {
.webpage-name {
margin-right: 1rem;
}
3 years ago
.preview-resizer {
margin: 0;
width: 3rem;
height: 3rem;
float: right;
margin-left: .625rem;
margin-top: .1875rem;
3 years ago
}
.preview {
max-width: unquote('min(3rem, 100%)');
max-height: unquote('min(3rem, 100%)');
margin: 0;
3 years ago
}
}
}
/* &.is-vertical-photo {
.bubble-content {
width: fit-content;
}
} */
.reply {
3 years ago
padding: .25rem;
margin: 0 .25rem .375rem .375rem;
3 years ago
cursor: pointer;
3 years ago
border-radius: .25rem;
3 years ago
min-width: 10rem;
3 years ago
width: auto;
3 years ago
&-media {
top: .125rem;
}
3 years ago
&-content {
//max-width: 300px;
position: absolute;
max-width: calc(100% - 1.25rem);
3 years ago
height: auto;
min-height: 32px;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
3 years ago
}
3 years ago
}
// &:not(.just-media):not(.is-message-empty) .reply {
.message + .reply {
3 years ago
// margin-bottom: .125rem; // ! JS2 mockup
margin-bottom: 0; // ! same margin as between name and message
3 years ago
}
&:not(.just-media) {
.reply {
@include hover() {
background-color: var(--light-filled-message-primary-color);
}
}
}
&.just-media {
.reply,
.name {
padding: 10px;
border-radius: 12px;
position: absolute;
top: 0;
margin-bottom: 0;
background-color: var(--message-highlightning-color);
white-space: nowrap;
max-width: 15rem;
@include respond-to(handhelds) {
max-width: calc(100vw - #{$chat-padding-handhelds * 2} - 10px - 100%);
}
}
3 years ago
.name {
color: #fff !important;
padding: .3125rem .625rem;
line-height: var(--line-height);
3 years ago
.peer-title {
font-weight: 400 !important;
// pointer-events: none;
3 years ago
}
}
.reply {
height: 54px;
max-height: 54px;
@include respond-to(handhelds) {
padding: 8px 6px 8px 8px;
}
&-content {
margin-top: 0;
position: relative;
max-width: none !important;
}
&-title,
&-subtitle,
i {
color: #fff !important;
}
&-border {
background: #fff;
}
3 years ago
}
}
/* &.photo, &.video {
&:not(.hide-name) {
.attachment {
border-top-left-radius: 0;
border-top-right-radius: 0;
}
}
} */
&.forwarded .attachment,
&.is-reply .attachment,
&:not(.hide-name)/* .is-message-empty */ .attachment/* ,
&:not(.hide-name):not(.sticker) .attachment */ {
border-top-left-radius: 0;
border-top-right-radius: 0;
}
3 years ago
.message {
font-size: var(--messages-text-size);
padding: 0 .5rem .375rem .625rem;
max-width: 100%;
color: var(--primary-text-color);
2 years ago
line-height: var(--line-height); // 21 / 16
3 years ago
word-break: break-word;
white-space: pre-wrap; // * fix spaces on line begin
position: relative;
&:last-child {
padding-top: 6px;
}
}
@include respond-to(handhelds) {
.document,
.audio {
2 years ago
--icon-size: 2.25rem;
3 years ago
}
}
.audio {
$parent: ".audio";
#{$parent} {
&-title {
font-weight: 500;
}
&-ico {
font-size: 0;
}
}
@include respond-to(handhelds) {
height: 2.375rem;
2 years ago
--icon-margin: .6875rem;
3 years ago
.audio-details {
margin-top: 2px;
margin-bottom: 0;
}
.audio-subtitle {
margin-top: -1px;
}
2 years ago
/* &.corner-download .audio-download {
margin: 1.375rem 1.375rem 0;
2 years ago
} */
3 years ago
}
}
// all for audio (not voice)
.message.audio-message {
3 years ago
width: 335px;
max-width: unquote("min(100%, 335px)") !important;
3 years ago
@include respond-to(handhelds) {
3 years ago
width: 280px;
max-width: unquote("min(100%, 300px)") !important;
3 years ago
}
}
.message.voice-message {
.document-message {
max-width: fit-content;
}
}
.message.audio-message,
.message.voice-message {
3 years ago
padding: 8px !important;
//padding: 4px 6px 4px 8px !important;
}
.message.contact-message,
.message.call-message {
3 years ago
min-width: 200px;
padding-left: 8px;
}
3 years ago
.message.contact-message {
3 years ago
.contact {
display: flex;
padding: 2px 0;
cursor: pointer;
user-select: none;
3 years ago
&-avatar {
color: #fff;
}
&-details {
padding-left: 12px;
margin-top: 8px;
display: flex;
flex-direction: column;
}
&-name {
font-size: 1rem;
font-weight: 500;
}
&-number {
font-size: 14px;
line-height: 1.4;
}
}
}
.message.poll-message {
max-width: 400px;
}
.message.document-message {
max-width: 325px !important;
.document {
2 years ago
--icon-margin: .75rem;
3 years ago
height: 58px;
@include respond-to(handhelds) {
2 years ago
--icon-margin: .5rem;
3 years ago
height: 44px;
.document-size {
font-size: .75rem;
}
&:not(.document-with-thumb) .document-ico {
2 years ago
padding: 1.125rem 0 0 0;
3 years ago
}
}
&-name {
line-height: 1.4;
margin-top: 1px;
overflow: hidden;
text-overflow: ellipsis;
}
}
}
&-call {
cursor: pointer;
padding: .125rem 0;
padding-left: 2.5625rem;
display: flex;
flex-direction: column;
justify-content: center;
position: relative;
user-select: none;
&:before {
position: absolute;
left: .3125rem;
font-size: 1.5rem;
}
&-title {
font-weight: 500;
}
&-subtitle {
font-size: var(--messages-secondary-text-size);
color: var(--secondary-text-color);
display: flex;
align-items: center;
margin-top: .0625rem;
margin-left: -.1875rem;
line-height: var(--messages-secondary-line-height);
&.is-reason:before {
margin-right: .0625rem;
}
&:before {
content: $tgico-arrow-next;
display: inline-block;
transform: rotate(135deg);
font-size: 1rem;
}
&.arrow-red:before {
color: var(--danger-color);
}
&.arrow-green:before {
color: var(--message-out-primary-color);
}
}
}
3 years ago
.document-wrapper {
display: flex;
flex-direction: column-reverse;
.document-message {
margin-top: .25rem;
}
}
2 years ago
/* .document,
.audio {
.time.tgico {
position: relative !important;
height: 0px !important;
3 years ago
visibility: hidden !important;
2 years ago
float: none;
.inner {
visibility: hidden !important;
}
}
} */
.document-message {
& + .document,
& + .audio {
.time {
display: none !important;
}
3 years ago
}
}
&.is-multiple-documents {
/* .bubble-content {
position: unset;
} */
.message {
padding: 0 !important;
border-radius: inherit;
}
.document-container {
position: relative;
border-radius: inherit;
.document-selection {
position: absolute;
top: 0;
bottom: 0;
z-index: -1;
width: 200vw;
left: -75vw;
}
&.is-highlighted,
&.is-selected {
3 years ago
.document-wrapper {
&:before {
content: " ";
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: rgba(0, 0, 0, .06);
border-radius: inherit;
}
}
}
&.is-highlighted {
.document-selection {
background-color: var(--message-highlightning-color);
}
body:not(.animation-level-0) & {
.document-selection,
.document-wrapper:before {
3 years ago
animation: bubbleSelected 2s linear;
}
}
}
&.is-selected {
.document-selection {
background-color: var(--message-highlightning-color);
}
body:not(.animation-level-0) & {
.document-selection,
.document-wrapper:before {
3 years ago
animation: fade-in-opacity .2s linear forwards;
}
&.backwards {
.document-selection,
.document-wrapper:before {
3 years ago
animation: fade-in-backwards-opacity .2s linear forwards;
}
}
}
}
.bubble-select-checkbox {
2 years ago
--margin-top: .25rem;
--margin-left: .125rem;
left: auto;
top: auto;
3 years ago
background: #fff;
border-radius: 50%;
2 years ago
margin-left: calc(var(--padding-left) * -1 + var(--icon-size) - var(--size) + var(--margin-left));
margin-top: calc(var(--icon-size) - var(--size) + var(--margin-top));
3 years ago
@include respond-to(handhelds) {
--size: 1.125rem;
2 years ago
// left: 20px;
// top: 25px;
3 years ago
}
&:before {
--inner-size: .125rem;
content: " ";
position: absolute;
width: calc(var(--size) - (var(--inner-size) * 2));
height: calc(var(--size) - (var(--inner-size) * 2));
left: var(--inner-size);
top: var(--inner-size);
border: 2px solid var(--secondary-color);
border-radius: inherit;
}
}
&:first-of-type {
.document-selection {
top: -#{$bubble-margin / 2}; // * padding inner + half padding outer
3 years ago
}
.document-wrapper {
padding-top: .5rem;
border-top-left-radius: inherit;
border-top-right-radius: inherit;
}
}
&:last-of-type {
.document-selection {
bottom: -#{$bubble-margin / 2};
3 years ago
}
.document-wrapper {
padding-bottom: .5rem;
border-bottom-left-radius: inherit;
border-bottom-right-radius: inherit;
}
}
}
&.is-group-first .document-container {
&:first-of-type {
.document-selection {
top: -$bubble-margin;
}
}
}
&.is-group-last .document-container {
&:last-of-type {
.document-selection {
bottom: -$bubble-margin;
}
}
}
.document {
height: 54px !important;
@include respond-to(handhelds) {
height: 38px !important;
}
}
.document-wrapper {
background-color: var(--message-background-color);
padding: .25rem .5rem;
> .name {
// padding: .0625rem 0 .375rem;
3 years ago
padding: 0 0 .25rem 0;
margin-top: -.1875rem;
3 years ago
}
}
// * if have name
/* .bubbles-inner.is-chat &.is-in.is-group-first {
.document-container:first-of-type {
.document-selection {
top: -30px;
}
.document-wrapper {
border-top-left-radius: 0;
border-top-right-radius: 0;
&:before {
top: -26px;
border-top-left-radius: $border-radius-big;
border-top-right-radius: $border-radius-big;
}
}
}
} */
}
.message {
2 years ago
// &.document-message,
// &.audio-message,
// &.voice-message,
.audio,
&.poll-message,
&.contact-message {
3 years ago
.time {
position: absolute;
right: 0;
bottom: 0;
}
}
}
// ! SAFARI FIX BLINK ON SELECTION TRANSFORM !
html:not(.is-safari) & {
.message.voice-message {
overflow: hidden;
}
}
&.is-message-empty {
.message {
position: absolute;
/* position: relative;
width: max-content; */
bottom: .1875rem;
right: .1875rem;
border-radius: .75rem;
3 years ago
background-color: var(--message-time-background);
padding: 0 .3125rem;
3 years ago
z-index: 2;
.time {
margin-left: 0;
display: flex;
align-items: center;
padding: 0;
margin: 0;
3 years ago
white-space: nowrap;
height: 18px;
.inner {
right: unset;
bottom: unset;
3 years ago
color: #fff;
margin: inherit;
3 years ago
&:after {
color: #fff;
}
3 years ago
}
}
}
&.with-replies:not(.sticker) .message {
bottom: 55px;
}
&.sticker,
&.with-replies.round,
&.emoji-big {
3 years ago
.message {
bottom: 0;
}
}
2 years ago
&:not(.emoji-big) {
.reactions-block {
max-width: fit-content;
}
}
.reaction-block {
--chosen-background-color: var(--primary-color);
}
3 years ago
}
&.with-reply-markup {
.bubble-content {
min-width: 100%;
}
}
&.with-replies .attachment {
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
}
.time {
visibility: hidden; // * can't use color transparent here, because in name can be emoji
font-size: 12px;
user-select: none;
line-height: 1;
vertical-align: middle;
pointer-events: none; // do not show title
display: inline-flex;
z-index: 1;
/* display: inline-flex;
align-items: center; */
height: 12px;
direction: ltr;
float: right; // * rtl fix
cursor: pointer;
3 years ago
i {
font-size: 1.125rem;
margin-right: .375rem;
3 years ago
}
&-icon {
pointer-events: none;
2 years ago
&:not(:first-child) {
margin-left: 2px;
}
3 years ago
}
i.edited {
overflow: visible;
font-size: inherit;
3 years ago
}
.inner {
pointer-events: all;
position: absolute;
bottom: 0;
right: 0;
display: flex;
align-items: center;
line-height: 1;
padding: inherit;
white-space: nowrap;
height: 12px; // * as font-size
visibility: visible;
}
.tgico-pinnedchat {
margin-right: .125rem;
}
}
&.webpage .time {
float: none;
}
.video-time,
.video-play {
pointer-events: none;
}
3 years ago
.video-time {
position: absolute;
top: 3px;
left: 3px;
border-radius: 12px;
background-color: var(--message-time-background);
padding: 0px 6px 0px 6px;
z-index: 2;
font-size: 12px;
color: white;
display: flex;
align-items: center;
user-select: none;
height: 1.125rem;
line-height: 1;
3 years ago
&.can-autoplay:after {
content: $tgico-nosound;
// * same as .iconVolume
padding: 0 1px 0 3px;
font-size: 1.25rem;
color: #fff;
}
}
pre {
display: inline;
margin: 0;
}
.anchor-url {
text-decoration: underline;
}
.video-play {
background-color: var(--message-time-background);
color: #fff;
text-align: center;
font-size: 2.125rem;
display: flex;
align-items: center;
justify-content: center;
2 years ago
z-index: 2;
3 years ago
}
.ckin__player.circle {
z-index: 1;
}
&:not(.forwarded).hide-name {
3 years ago
.name {
display: none;
}
}
.name {
user-select: none;
}
.peer-title {
cursor: pointer;
}
.name {
// &-content > .name,
// .document-wrapper > .name {
padding: .3125rem .625rem 0 .625rem;
3 years ago
font-weight: 500 !important;
/* padding-bottom: 4px; */
color: var(--primary-color);
font-size: .875rem;
line-height: 1.25rem;
3 years ago
max-width: 100%;
overflow: hidden;
text-overflow: ellipsis;
// order: 1;
3 years ago
//width: max-content;
//white-space: nowrap;
}
/* &:not(.is-group-first) .bubble-content > .name .name {
3 years ago
display: none;
} */
3 years ago
&:not(.webpage) {
&.photo,
&.video {
3 years ago
.bubble-content > .name {
//padding-bottom: .2675rem;
padding-bottom: 6px;
}
&:not(.is-message-empty) .message {
//padding-top: .2675rem;
padding-top: 6px;
}
}
}
&:not(.webpage):not(.is-album):not(.sticker):not(.round):not(.emoji-big) .attachment {
background-color: #000;
}
&.hide-name:not(.is-reply):not(.is-message-empty) .message {
//padding-top: .2675rem;
padding-top: 6px;
}
&:not(.sticker):not(.emoji-big) {
&.hide-name,
&:not(.is-group-first)/* , &.is-out */ {
3 years ago
.reply {
margin-top: 6px;
}
}
}
.bubble-tail {
display: none;
}
//&.can-have-tail.is-group-last .bubble-content:after {
&.can-have-tail.is-group-last .bubble-tail {
position: absolute;
//bottom: 0;
width: 11px;
height: 20px;
//background-repeat: no-repeat no-repeat;
//content: '';
//background-size: 11px 20px;
//background-position-y: 1px;
z-index: -2;
display: block;
fill: var(--message-background-color);
transform: translateY(1px);
}
&.photo,
&.video {
3 years ago
&.is-message-empty.is-group-last:not(.with-replies) {
//.bubble-content:after {
.bubble-tail {
display: none;
}
}
}
&.is-message-empty.is-group-last.with-media-tail {
//.bubble-content:after {
.bubble-tail {
display: none;
}
.attachment {
overflow: visible;
}
}
&__media-container {
cursor: pointer;
border-radius: inherit;
}
audio-element,
poll-element {
3 years ago
white-space: normal; // * fix due to .message white-space prewrap
}
.replies {
user-select: none;
.c-ripple__circle {
background-color: var(--light-primary-color);
}
3 years ago
.rp {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
overflow: hidden;
border-radius: inherit;
cursor: pointer;
}
&-beside {
flex-direction: column;
width: 36px;
min-height: 36px;
height: auto;
max-height: 52px;
bottom: 47px; // * forward button + 9px margin
border-radius: 2rem;
right: -44px; // * because not 38px, as forward button
padding: .375rem 0 .5rem;
3 years ago
&-text {
font-size: .75rem;
margin-top: .125rem;
3 years ago
}
}
&-footer {
height: 3.1875rem;
border-top: .0625rem solid var(--border-color);
3 years ago
position: relative;
display: flex;
align-items: center;
padding: 0 .5rem;
border-bottom-left-radius: inherit;
border-bottom-right-radius: inherit;
color: var(--primary-color);
min-width: 15rem;
.tgico-comments,
.tgico-next {
font-size: 1.5rem;
}
.tgico-comments {
margin-left: .125rem;
margin-right: .375rem;
3 years ago
}
&-text {
font-weight: 500;
font-size: .9375rem;
margin-left: .5rem;
3 years ago
display: flex;
align-items: center;
color: var(--primary-color);
line-height: 1.125rem;
3 years ago
}
&-avatars {
--margin-right: -.875rem;
--border-size: 2px;
3 years ago
}
.tgico-next {
position: absolute;
right: .1875rem;
3 years ago
}
&.is-unread {
.replies-footer-text {
&:after {
content: " ";
background-color: var(--primary-color);
width: .5rem;
height: .5rem;
margin-left: .75rem;
border-radius: 50%;
}
}
}
}
}
&.is-thread-starter {
.user-avatar {
display: none;
}
&.is-in .bubble-content-wrapper {
margin-left: 0;
}
}
2 years ago
.message {
.reaction {
--background-color: var(--light-filled-message-primary-color);
&:not(.is-chosen),
&.is-chosen.backwards {
--counter-color: var(--message-primary-color);
.stacked-avatars {
--border-color: var(--background-color);
}
}
}
.reactions-block {
.time {
position: unset !important;
right: auto !important;
bottom: auto !important;
order: 100;
}
}
}
3 years ago
}
// * fix scroll with only 1 bubble
.bubbles-date-group:last-of-type {
.bubble:last-of-type {
margin-bottom: $bubble-margin;
/* &:after, .document-container:last-of-type .document-selection {
bottom: 0 !important;
} */
}
}
.bubble-content-wrapper {
transform: scale(1) translateX(0);
transform-origin: center;
opacity: 1;
2 years ago
display: flex;
flex-direction: column;
3 years ago
@include animation-level(2) {
transition: transform var(--transition-standard-out), opacity var(--transition-standard-out);
}
.bubbles-inner.zoom-fading & {
transition: transform var(--transition-standard-in), opacity var(--transition-standard-in);
//transition: transform 10s ease-in-out, opacity 10s ease-in-out;
}
&.zoom-fade /* .bubble-content */ {
transform: scale3d(.8, .8, 1) translateX(0);
//transform: scale(.8) translateX(0);
opacity: 0;
}
.bubble:not(.service) & {
@include respond-to(not-handhelds) {
max-width: 85%;
}
}
@include respond-to(handhelds) {
max-width: calc(100% - var(--message-handhelds-margin));
}
> .user-avatar {
position: absolute;
margin-left: -45px;
//left: -3rem; # DO JS3
bottom: 0;
cursor: pointer;
.bubbles.is-selecting & {
transform: scale3d(1, 1, 1);
transform-origin: bottom;
transition: transform var(--transition-standard-out);
body.animation-level-0 & {
transition: none;
}
}
.bubbles.is-selecting:not(.backwards) & {
transform: scale3d(.76, .76, 1);
transition: transform var(--transition-standard-in);
}
// @include respond-to(handhelds) {
// left: -45px;
// }
}
}
.bubble.service {
align-self: center;
justify-content: center;
b {
color: inherit;
}
.bubble-content {
background-color: transparent;
border-radius: .875rem;
&-wrapper {
max-width: 100%;
padding: 0 2rem;
}
3 years ago
}
.service-msg {
color: #fff;
//background-color: rgba(0, 0, 0, .24);
background-color: var(--message-highlightning-color);
font-size: .9375rem;
padding: .28125rem .625rem;
// line-height: var(--line-height);
line-height: 1.25rem;
3 years ago
border-radius: inherit;
user-select: none;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
word-break: break-word;
i {
font-style: normal;
}
a {
color: #fff;
}
a,
.peer-title,
[data-saved-from] {
3 years ago
&:hover {
text-decoration: underline;
3 years ago
cursor: pointer;
3 years ago
}
}
.peer-title {
cursor: pointer;
//margin-right: 5px;
}
img.emoji {
margin-bottom: 3px;
}
}
}
.bubble.is-in {
.bubble-content {
&,
.poll-footer-button {
3 years ago
border-radius: 6px 12px 12px 6px;
}
}
&.is-group-first {
.bubble-content,
.poll-footer-button {
3 years ago
border-top-left-radius: 12px;
}
}
&.is-group-last {
&.can-have-tail {
.bubble-content,
.poll-footer-button {
3 years ago
border-bottom-left-radius: 0;
}
.bubble-tail {
margin-left: -8.4px;
}
/* .bubble-content:after {
margin-left: -8.4px;
background-image: url('assets/img/msg-tail-left.svg');
} */
}
&:not(.can-have-tail) {
.bubble-content,
.poll-footer-button {
3 years ago
border-bottom-left-radius: 12px;
}
}
}
&.just-media {
.reply,
.name {
left: calc(100% + 10px);
3 years ago
@include respond-to(handhelds) {
left: calc(100% + 1px);
3 years ago
}
}
}
.quote .webpage-name,
.reply-title
/* , .reply i */ {
3 years ago
color: var(--primary-color);
}
.time {
margin-left: -3px;
padding-right: 8px;
.inner {
color: var(--secondary-text-color);
margin-bottom: 4px;
}
}
&.is-message-empty.is-group-last {
/* &:not(.with-media-tail):not(.with-replies) {
&.photo, &.video {
.bubble-content {
border-bottom-left-radius: 6px;
}
}
} */
&.with-media-tail {
.attachment {
border-bottom-left-radius: 0;
}
.bubble__media-container {
margin-left: -9px;
}
}
}
.audio-subtitle,
.contact-number,
.audio-time {
3 years ago
color: var(--secondary-text-color) !important;
}
/* .poll {
&-answer-selected {
&:before {
margin-left: -1px;
}
}
} */
}
.bubble.is-out {
flex-direction: row-reverse;
--message-background-color: var(--message-out-background-color);
--light-message-background-color: var(--light-message-out-background-color);
--dark-message-background-color: var(--dark-message-out-background-color);
--link-color: var(--message-out-link-color);
2 years ago
--message-primary-color: var(--message-out-primary-color);
--light-filled-message-primary-color: var(--light-filled-message-out-primary-color);
3 years ago
.bubble-content {
2 years ago
margin-left: auto;
&,
.poll-footer-button {
3 years ago
border-radius: 12px 6px 6px 12px;
}
.name {
color: var(--message-out-primary-color);
}
/* html:not(.is-firefox) */ &-wrapper {
3 years ago
@include respond-to(medium-screens) {
transform: scale(1) translateX(calc((var(--chat-input-size) + #{$btn-send-margin}) * -1));
&.zoom-fade {
transform: scale3d(.8, .8, 1) translateX(calc((var(--chat-input-size) + #{$btn-send-margin}) * -1));
}
//@include respond-to(no-floating-left-sidebar) {
body.is-right-column-shown & {
transform: scale(1) translateX(0);
3 years ago
@include animation-level(2) {
transition: transform var(--transition-standard-in), opacity var(--transition-standard-in);
}
3 years ago
&.zoom-fade {
transform: scale3d(.8, .8, 1) translateX(0);
}
}
//}
}
}
}
/* .bubble-content-wrapper {
> .user-avatar {
left: auto;
right: -2.5rem;
}
} */
&.is-group-first {
.bubble-content,
.poll-footer-button {
3 years ago
border-top-right-radius: 12px;
}
}
&.is-group-last {
&.can-have-tail {
.bubble-content,
.poll-footer-button {
3 years ago
border-bottom-right-radius: 0;
}
.bubble-tail {
right: -8.4px;
transform: translateY(1px) scaleX(-1);
}
/* .bubble-content:after {
right: -8.4px;
background-image: url('assets/img/msg-tail-right.svg');
} */
}
&:not(.can-have-tail) {
.bubble-content,
.poll-footer-button {
3 years ago
border-bottom-right-radius: 12px;
}
}
}
&.just-media {
.reply,
.name {
right: calc(100% + 10px);
}
.message {
right: 0;
}
3 years ago
}
&:not(.just-media) {
.reply {
&-border {
background-color: var(--message-out-primary-color);
}
&-title,
i {
color: var(--message-out-primary-color);
3 years ago
}
}
}
.quote:before {
3 years ago
background-color: var(--message-out-primary-color);
}
.quote .webpage-name {
3 years ago
color: var(--message-out-primary-color);
}
.time {
padding-right: 5px;
margin-left: -4px;
.inner {
color: var(--message-out-status-color);
bottom: 4px;
}
&:after,
.inner:after {
3 years ago
font-size: 19px;
//vertical-align: middle;
margin-left: 1px;
line-height: 16px; // of message
color: var(--message-out-primary-color);
}
}
/* &.is-message-empty .time:after {
margin-bottom: 1px;
} */
&.forwarded {
.name {
color: var(--message-out-primary-color);
}
}
&.is-read {
.time:after,
.time .inner:after {
3 years ago
content: $tgico-checks;
}
}
&.is-sent {
.time:after,
.time .inner:after {
3 years ago
content: $tgico-check;
}
}
&.is-sending {
.time:after,
.time .inner:after {
3 years ago
content: $tgico-sending;
}
}
/* &.is-reply .name {
display: none;
} */
.document-ico:after {
border-top-color: var(--message-background-color);
border-right-color: var(--message-background-color);
}
.audio {
&-waveform {
rect {
fill: var(--message-out-primary-color);
&.active {
fill: var(--message-out-primary-color) !important;
}
}
}
&-time,
&-subtitle {
3 years ago
color: var(--message-out-status-color);
}
&-toggle,
&-download,
&.corner-download .preloader-container {
3 years ago
background-color: var(--message-out-primary-color);
}
&-download:empty {
display: none;
}
&.is-unread {
rect {
fill: var(--message-out-primary-color);
}
.audio-time:after {
background-color: var(--message-out-primary-color);
}
}
&-toggle {
.part {
background-color: var(--message-out-audio-play-button-color);
}
}
}
&.is-message-empty.is-group-last {
/* &:not(.with-media-tail) {
&.photo, &.video {
.bubble-content {
border-bottom-right-radius: 6px;
}
}
} */
&.with-media-tail {
.attachment {
border-bottom-right-radius: 0;
}
.bubble__media-container {
margin-right: -9px;
}
}
}
2 years ago
&.is-message-empty {
.reactions-block {
justify-content: flex-end;
}
.reaction-block {
margin-right: .25rem;
&:last-child {
margin-right: 0;
}
&.is-chosen {
--chosen-background-color: var(--surface-color);
}
}
&:not(.emoji-big) {
.reactions-block {
margin-left: auto;
}
}
}
.contact-number,
.document-size,
.bubble-call-subtitle {
3 years ago
color: var(--message-out-status-color);
}
.bubble-call-subtitle:before {
transform: rotate(-45deg);
}
3 years ago
poll-element {
.poll {
&-desc,
&-votes-count {
3 years ago
color: var(--message-out-primary-color);
}
&-line use {
stroke: var(--message-out-primary-color);
}
&-answer-selected {
background-color: var(--message-out-primary-color);
color: var(--message-out-background-color);
}
html.no-touch &-answer:hover {
.animation-ring {
background-color: var(--message-out-primary-color);
opacity: .08;
}
}
&-footer-button,
&-hint {
3 years ago
color: var(--message-out-primary-color);
}
}
.progress-ring__circle {
stroke: var(--message-out-primary-color);
}
3 years ago
.c-ripple__circle {
background-color: var(--message-out-primary-color);
&:not(.hiding) {
opacity: .08;
}
3 years ago
}
3 years ago
}
&.is-sending poll-element {
pointer-events: none;
}
.audio {
.progress-line {
--color: var(--message-out-primary-color);
&:before,
&__loaded {
3 years ago
background-color: var(--message-out-primary-color);
}
}
.preloader-container {
--color: var(--message-background-color);
}
}
.bubble-beside-button {
right: auto;
3 years ago
left: var(--message-beside-button-margin);
3 years ago
//transform: scaleX(-1);
&.goto-original {
transform: rotate(180deg);
}
}
&.is-multiple-documents {
.document-container {
.bubble-select-checkbox {
background-color: var(--message-background-color);
&:before {
border-color: var(--dark-message-background-color);
}
.checkbox-box-border {
border-color: var(--message-background-color);
}
}
/* &:after {
left: -50vw;
} */
}
.document-wrapper {
background-color: var(--message-background-color);
}
}
2 years ago
.bubble-hover-reaction {
right: auto;
left: var(--offset);
}
/* &.sticker {
.message {
margin-right: 0;
margin-left: auto;
}
} */
3 years ago
}
.reply-markup {
width: 100%;
&-row {
margin-top: .3125rem;
overflow: hidden;
min-height: 2.5rem;
display: flex;
&:last-child {
border-bottom-left-radius: $border-radius-big;
border-bottom-right-radius: $border-radius-big;
}
}
&-button {
padding: .5625rem 0;
border-radius: 6px;
z-index: 2;
font-size: .875rem;
user-select: none;
text-align: center;
color: #fff !important;
outline: none;
border: none;
width: 100%;
cursor: pointer;
position: relative;
overflow: hidden;
//line-height: var(--line-height);
background: var(--message-highlightning-color);
&.anchor-url {
text-decoration: none !important;
}
3 years ago
&:after {
content: " ";
display: block;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
border-radius: inherit;
opacity: 0;
z-index: -1;
background-color: #fff;
@include animation-level(2) {
transition: opacity .35s ease;
}
}
@include hover() {
&:after {
opacity: var(--hover-alpha);
}
}
& + & {
margin-left: .3125rem;
}
&.tgico:before,
.forward-icon {
position: absolute;
right: .125rem;
top: .125rem;
display: block;
}
&.is-link:before {
content: $tgico-arrow-next;
transform: rotate(-45deg);
}
3 years ago
&.is-switch-inline:before {
content: $tgico-forward_filled;
3 years ago
}
}
}