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.
1893 lines
34 KiB
1893 lines
34 KiB
$bubble-margin: .25rem; |
|
|
|
@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 { |
|
padding-top: $bubble-margin; |
|
max-width: unquote("min(calc(100% - 48px), #{$chat-max-width})"); |
|
position: relative; |
|
z-index: 1; |
|
|
|
//@include respond-to(not-handhelds) { |
|
margin: 0 auto; |
|
//} |
|
|
|
@include respond-to(handhelds) { |
|
max-width: unquote("min(100%, #{$chat-max-width - 16px})"); |
|
|
|
html.is-mac & { |
|
-webkit-user-select: none; |
|
-webkit-touch-callout: none; |
|
} |
|
} |
|
|
|
&.is-selected { |
|
&:after { |
|
position: absolute; |
|
left: -50%; |
|
top: 0; |
|
height: 100%; |
|
content: " "; |
|
background-color: rgba(0, 132, 255, .3); |
|
animation: bubbleSelected 2s linear; |
|
z-index: 1; |
|
} |
|
|
|
&:not(.is-group-last):after { |
|
height: calc(100% + $bubble-margin); |
|
} |
|
} |
|
|
|
&.is-first-unread { |
|
@include respond-to(handhelds) { |
|
max-width: unset; |
|
} |
|
|
|
&:before { |
|
content: "Unread messages"; |
|
height: 30px; |
|
margin-bottom: $bubble-margin; |
|
margin-left: -50%; |
|
text-align: center; |
|
color: #538BCC; |
|
line-height: 2.1; |
|
font-weight: 500; |
|
font-size: 15px; |
|
background-color: rgba(255, 255, 255, 0.95); |
|
} |
|
} |
|
|
|
&.is-selected:after, &.is-first-unread:before { |
|
width: 200%; |
|
display: block; |
|
} |
|
|
|
&.is-date { |
|
position: sticky; |
|
top: $bubble-margin; |
|
//z-index: 3; |
|
z-index: 2; |
|
transition: opacity .3s ease; |
|
opacity: 0.99999; // for safari |
|
|
|
&.is-sticky { |
|
opacity: 0.00001; // for safari |
|
|
|
#bubbles-inner:not(.is-scrolling) & { |
|
//transition-delay: 1.35s; |
|
|
|
.bubble__container { |
|
cursor: default; |
|
} |
|
} |
|
|
|
/* #bubbles-inner.is-scrolling & { |
|
transition-delay: 0; |
|
} */ |
|
} |
|
|
|
.bubble__container { |
|
cursor: pointer; |
|
} |
|
} |
|
|
|
&__container { |
|
//min-width: 60px; |
|
min-width: 56px; |
|
max-width: 100%; |
|
border-radius: 12px; |
|
box-shadow: 0 1px 2px 0 rgba(16, 35, 47, 0.15); |
|
position: relative; |
|
display: flex; |
|
flex-direction: column-reverse; |
|
/* font-size: 0; */ |
|
width: max-content; |
|
height: fit-content; |
|
z-index: 2; |
|
|
|
@include respond-to(not-handhelds) { |
|
max-width: 85%; |
|
} |
|
|
|
@include respond-to(handhelds) { |
|
max-width: calc(100% - #{$handhelds-margin}); |
|
} |
|
|
|
> .user-avatar { |
|
position: absolute; |
|
left: -45px; |
|
//left: -3rem; # DO JS3 |
|
width: 40px; |
|
height: 40px; |
|
line-height: 40px; |
|
bottom: 0; |
|
font-size: 1rem; |
|
cursor: pointer; |
|
|
|
// @include respond-to(handhelds) { |
|
// left: -45px; |
|
// } |
|
} |
|
} |
|
|
|
/* &.with-beside-button &__container { |
|
@include respond-to(handhelds) { |
|
max-width: calc(100% - #{$handhelds-margin}) !important; |
|
} |
|
} */ |
|
|
|
&.service { |
|
//padding: 1rem 0; |
|
padding: $bubble-margin 0; |
|
max-width: $chat-max-width; |
|
|
|
.bubble__container { |
|
/* justify-self: center; */ |
|
margin: 0 auto; |
|
max-width: 100%; |
|
} |
|
} |
|
|
|
&-beside-button { |
|
//opacity: 0; |
|
//transition: .2s opacity; |
|
position: absolute; |
|
right: -46px; |
|
bottom: 0; |
|
width: 38px; |
|
height: 38px; |
|
font-size: 1.5rem; |
|
align-items: center; |
|
display: flex; |
|
justify-content: center; |
|
color: #fff; |
|
border-radius: 50%; |
|
background: rgba(0, 0, 0, 0.16); |
|
cursor: pointer; |
|
} |
|
|
|
.forward { |
|
svg { |
|
width: 20px; |
|
height: 20px; |
|
} |
|
} |
|
|
|
.message strong { |
|
font-weight: 500 !important; |
|
} |
|
|
|
/* &.is-group-first { |
|
padding-top: 10px; |
|
} */ |
|
|
|
&.is-group-last { |
|
padding-bottom: $bubble-margin; |
|
} |
|
|
|
&:not(.forwarded) { |
|
&:not(.is-group-first) { |
|
.bubble__container > .name { |
|
display: none; |
|
} |
|
|
|
&:not(.is-message-empty):not(.is-reply) .message { |
|
padding-top: 6px; |
|
} |
|
} |
|
} |
|
|
|
&:not(.is-group-last) .bubble__container > .user-avatar { |
|
display: none; |
|
} |
|
|
|
&:not(.hide-name) { |
|
.audio { |
|
margin: 4px 0; |
|
} |
|
} |
|
|
|
/* .goto-original { |
|
opacity: 1; |
|
} */ |
|
|
|
.reply { |
|
width: auto; |
|
|
|
.reply-content { |
|
height: auto; |
|
min-height: 32px; |
|
} |
|
} |
|
|
|
&.photo, &.video { |
|
.bubble__container { |
|
width: min-content; |
|
} |
|
|
|
.box.web { |
|
/* width: max-content; */ // commented 10.02.2020 |
|
/* width: min-content; */ |
|
max-width: 100%; |
|
} |
|
} |
|
|
|
&.webpage { |
|
.time { |
|
float: none; |
|
width: 0; |
|
} |
|
} |
|
|
|
.preview-resizer { |
|
display: flex; |
|
} |
|
|
|
img.emoji { |
|
height: 18px; |
|
width: 18px; |
|
margin: 0 .05rem; |
|
vertical-align: bottom; |
|
} |
|
|
|
span.emoji { |
|
height: auto; |
|
width: auto; |
|
overflow: visible; |
|
vertical-align: unset; |
|
} |
|
|
|
.thumbnail { |
|
position: absolute; |
|
} |
|
|
|
&.emoji-big { |
|
font-size: 0; |
|
|
|
.bubble__container { |
|
background: none!important; |
|
box-shadow: none; |
|
line-height: 1; |
|
user-select: none; |
|
} |
|
|
|
&: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; |
|
} |
|
} |
|
|
|
&.sticker .bubble__container { |
|
max-width: 140px !important; |
|
max-height: 140px !important; |
|
} |
|
} |
|
|
|
&.emoji-1x .attachment { |
|
font-size: 96px; |
|
|
|
img.emoji { |
|
height: 64px; |
|
width: 64px; |
|
/* height: 96px; |
|
width: 96px; */ |
|
} |
|
} |
|
|
|
&.emoji-2x .attachment { |
|
font-size: 64px; |
|
|
|
img.emoji { |
|
height: 48px; |
|
width: 48px; |
|
/* height: 64px; |
|
width: 64px; */ |
|
} |
|
} |
|
|
|
&.emoji-3x .attachment { |
|
font-size: 52px; |
|
|
|
img.emoji { |
|
height: 32px; |
|
width: 32px; |
|
/* height: 48px; |
|
width: 48px; */ |
|
} |
|
} |
|
|
|
&.sticker, &.round, &.emoji-big { |
|
.bubble__container { |
|
cursor: pointer; |
|
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); |
|
} |
|
|
|
/* &.is-message-empty .message { |
|
display: none; |
|
} |
|
|
|
&.is-message-empty:hover .message { |
|
display: block; |
|
} */ |
|
} |
|
|
|
&.sticker { |
|
.attachment { |
|
border-radius: 0; |
|
} |
|
|
|
.bubble__container { |
|
max-width: 200px !important; |
|
max-height: 200px !important; |
|
} |
|
} |
|
|
|
&.round { |
|
.attachment { |
|
max-width: 200px !important; |
|
max-height: 200px !important; |
|
|
|
img { |
|
border-radius: 50%; |
|
} |
|
} |
|
} |
|
|
|
&: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; |
|
|
|
display: flex; // lol |
|
justify-content: center; |
|
position: relative; |
|
|
|
img, video { |
|
max-width: 100%; |
|
cursor: pointer; |
|
opacity: 1; |
|
transition: opacity .3s ease; |
|
} |
|
|
|
.download { |
|
position: absolute; |
|
left: 0; |
|
top: 0; |
|
height: 100%; |
|
width: 100%; |
|
cursor: pointer; |
|
display: flex; |
|
justify-content: center; |
|
align-items: center; |
|
|
|
span { |
|
background-color: $time-background; |
|
font-size: 23px; |
|
color: #fff; |
|
text-align: center; |
|
} |
|
} |
|
|
|
.download, .preloader-container { |
|
& ~ .video-play { |
|
display: none; |
|
} |
|
} |
|
} |
|
|
|
&:not(.sticker) { |
|
.attachment { |
|
max-width: unquote('min(480px, 100%)'); |
|
max-height: unquote('min(480px, 100%)'); |
|
|
|
width: max-content; |
|
} |
|
} |
|
|
|
img:not(.emoji), video { |
|
/* object-fit: contain; */ |
|
object-fit: cover; |
|
width: 100%; |
|
height: 100%; |
|
} |
|
|
|
&.is-album { |
|
.attachment { |
|
max-width: unquote('min(451px, 100%)'); |
|
max-height: none; |
|
|
|
.album-item { |
|
background-color: #000; |
|
background-size: cover; |
|
/* background-position: center center; */ |
|
/* flex: 1 0 auto; */ |
|
max-width: 100%; |
|
cursor: pointer; |
|
position: absolute; |
|
overflow: hidden; |
|
|
|
img, video { |
|
border-radius: inherit; |
|
} |
|
} |
|
} |
|
} |
|
|
|
//&.video { |
|
//.attachment { |
|
//max-height: fit-content; |
|
|
|
/*img { |
|
width: 100%; |
|
height: 100%; |
|
}*/ |
|
//} |
|
//} |
|
|
|
&.round { |
|
.attachment { |
|
max-height: 200px; |
|
max-width: 200px; |
|
//max-height: fit-content; |
|
//-webkit-clip-path: ellipse(100px 100px at center); |
|
//clip-path: ellipse(100px 100px at center); |
|
} |
|
} |
|
|
|
.box, .reply { |
|
font-size: .95rem; |
|
// margin: .25rem; |
|
margin: 4px 4px 4px 6px; |
|
//padding: .25rem; |
|
padding: 4px; |
|
margin-bottom: -5px; |
|
border-radius: 4px; |
|
//transition: anim(background-color); |
|
|
|
/* &:hover { |
|
cursor: pointer; |
|
} */ |
|
|
|
&.web { |
|
margin-top: -6px; |
|
// margin-bottom: 5px; |
|
max-width: 100%; |
|
overflow: hidden; |
|
|
|
.preview { |
|
max-height: unquote('min(400px, 100%)'); |
|
max-width: unquote('min(480px, 100%)'); |
|
/* max-height: 100%; |
|
max-width: 100%; */ |
|
border-radius: 4px; |
|
margin-bottom: 3px; |
|
overflow: hidden; |
|
user-select: none; |
|
cursor: pointer; |
|
position: relative; |
|
|
|
width: max-content; |
|
|
|
img, video { |
|
max-width: 100%; |
|
/* width: 100%; |
|
height: 100%; */ |
|
} |
|
} |
|
|
|
.title { |
|
letter-spacing: -0.2px; |
|
line-height: 1.2; |
|
font-weight: 500 !important; |
|
} |
|
|
|
.name { |
|
letter-spacing: -0.3px; |
|
display: block; |
|
|
|
html.no-touch &:hover { |
|
text-decoration: underline; |
|
} |
|
} |
|
|
|
.text { |
|
overflow: hidden; |
|
text-overflow: ellipsis; |
|
line-height: 1.2; |
|
letter-spacing: -0.3px; |
|
margin-top: 2px; |
|
font-size: 0.965rem; |
|
} |
|
} |
|
|
|
.quote { |
|
// padding-left: .5rem; |
|
padding-left: 0.55rem; |
|
max-width: 100%; |
|
overflow: hidden; |
|
width: 100%; |
|
} |
|
|
|
.text/* , .reply-subtitle */ { |
|
line-height: 1.2; |
|
} |
|
|
|
.name, .reply-title { |
|
font-weight: 500 !important; |
|
display: inline!important; |
|
} |
|
} |
|
|
|
&.is-square-photo { |
|
.bubble__container { |
|
width: fit-content; |
|
} |
|
|
|
.box.web { |
|
.quote { |
|
display: flex; |
|
} |
|
|
|
.preview-resizer { |
|
order: 2; |
|
flex-shrink: 0; |
|
max-width: 5rem; |
|
max-height: 5rem; |
|
|
|
.preview { |
|
max-width: unquote('min(5rem, 100%)'); |
|
max-height: unquote('min(5rem, 100%)'); |
|
} |
|
} |
|
|
|
.quote-text { |
|
order: 1; |
|
padding-right: 1rem; |
|
} |
|
} |
|
} |
|
|
|
&.is-vertical-photo { |
|
.bubble__container { |
|
width: fit-content; |
|
} |
|
} |
|
|
|
.reply { |
|
max-width: 300px; |
|
margin-bottom: 6px; |
|
margin-top: 0; |
|
cursor: pointer; |
|
} |
|
|
|
&.is-reply { |
|
&.emoji-big, &.sticker { |
|
.reply { |
|
padding: 10px; |
|
border-radius: 12px; |
|
border: 1px solid #ccc; |
|
max-width: 300px; |
|
height: 54px; |
|
max-height: 54px; |
|
white-space: nowrap; |
|
position: absolute; |
|
top: 0; |
|
margin-bottom: 0; |
|
|
|
@include respond-to(handhelds) { |
|
padding: 8px 6px 8px 8px; |
|
max-width: 94px; |
|
} |
|
|
|
.reply-content { |
|
margin-top: 0; |
|
} |
|
} |
|
} |
|
|
|
.reply-content { |
|
white-space: nowrap; |
|
text-overflow: ellipsis; |
|
overflow: hidden; |
|
} |
|
} |
|
|
|
.message { |
|
font-size: 16px; |
|
//padding: 0 .6rem .2675rem .6rem; |
|
padding: 0 .6rem 6px .6rem; |
|
overflow: hidden; |
|
text-overflow: ellipsis; |
|
max-width: 100%; |
|
color: #000; |
|
line-height: 21px; |
|
word-break: break-word; |
|
|
|
/* * { |
|
overflow: hidden; |
|
text-overflow: ellipsis; |
|
} */ |
|
|
|
&:last-child { |
|
//padding-top: .2675rem; |
|
padding-top: 6px; |
|
} |
|
|
|
.emoji { |
|
font-size: 1.2rem; |
|
} |
|
|
|
pre, code { |
|
white-space: pre-wrap; /* css-3 */ |
|
white-space: -moz-pre-wrap; /* Mozilla, since 1999 */ |
|
white-space: -pre-wrap; /* Opera 4-6 */ |
|
white-space: -o-pre-wrap; /* Opera 7 */ |
|
word-wrap: break-word; /* Internet Explorer 5.5+ */ |
|
} |
|
} |
|
|
|
// all for audio (not voice) |
|
.message.audio-message { |
|
|
|
.audio { |
|
justify-content: unset; |
|
max-width: none; |
|
|
|
|
|
@include respond-to(handhelds) { |
|
height: 59px; |
|
padding-left: 47px; |
|
} |
|
|
|
// .preloader-container { |
|
// @include respond-to(handhelds) { |
|
// width: 30px; |
|
// height: 30px; |
|
// // left: 2px; |
|
// } |
|
// } |
|
|
|
&-time { |
|
padding-bottom: 7px; |
|
} |
|
|
|
&-time, &-subtitle { |
|
color: #4fae4e; |
|
line-height: 1.45; |
|
margin-top: 0; |
|
} |
|
|
|
&-title { |
|
font-weight: 500; |
|
margin-left: -1px; |
|
} |
|
|
|
&-details { |
|
margin-top: 8px; |
|
|
|
@include respond-to(handhelds) { |
|
margin-top: -1px; |
|
} |
|
} |
|
|
|
&-ico { |
|
font-size: 2.15rem; |
|
|
|
@include respond-to(handhelds) { |
|
margin-top: 1px; |
|
margin-left: 2px; |
|
} |
|
} |
|
} |
|
|
|
.progress-line { |
|
/* width: calc(100% + 50px); */ |
|
width: 191px; |
|
margin: 9px 0 9px; |
|
|
|
@include respond-to(handhelds) { |
|
width: unset; |
|
} |
|
|
|
&__filled { |
|
background-color: #47aa41; |
|
transform-origin: left; |
|
height: 2px; |
|
} |
|
|
|
&__seek { |
|
height: 2px; |
|
overflow: visible !important; |
|
background: rgba(124, 195, 107, 0.52); |
|
|
|
&::-webkit-slider-thumb { |
|
height: 12px; |
|
width: 12px; |
|
background: #47aa41; |
|
border: none; |
|
} |
|
} |
|
} |
|
|
|
//&.audio-message { |
|
min-width: 275px; |
|
//max-width: 380px !important; |
|
max-width: 275px !important; |
|
padding-top: 8px !important; |
|
padding-left: 8px !important; |
|
|
|
/* .audio-details * { |
|
overflow: visible; |
|
} */ |
|
//} |
|
|
|
.tgico-largeplay:before { |
|
content: $tgico-largeplay; |
|
margin-right: -2px; |
|
} |
|
|
|
.time { |
|
width: unset; |
|
} |
|
|
|
/* @include respond-to(handhelds) { |
|
.preloader-container .you-spin-me-round { |
|
margin-top: 1px; |
|
margin-left: 2px; |
|
} |
|
} */ |
|
} |
|
|
|
.message.contact-message { |
|
min-width: 200px; |
|
padding-left: 8px; |
|
|
|
.contact { |
|
display: flex; |
|
padding: 2px 0; |
|
cursor: pointer; |
|
|
|
&-avatar { |
|
color: #fff; |
|
} |
|
|
|
&-details { |
|
padding-left: 12px; |
|
margin-top: 8px; |
|
} |
|
|
|
&-name { |
|
font-size: 1rem; |
|
font-weight: 500; |
|
} |
|
|
|
&-number { |
|
font-size: 14px; |
|
line-height: 1.4; |
|
} |
|
} |
|
|
|
.time { |
|
width: unset; |
|
} |
|
} |
|
|
|
.message.document-message { |
|
max-width: 325px !important; |
|
|
|
.time { |
|
width: unset; |
|
} |
|
|
|
.document { |
|
padding-left: 66px; |
|
height: 58px; |
|
|
|
@include respond-to(handhelds) { |
|
padding-left: 44px; |
|
} |
|
|
|
&-name { |
|
line-height: 1.4; |
|
margin-top: 1px; |
|
overflow: hidden; |
|
text-overflow: ellipsis; |
|
} |
|
} |
|
} |
|
|
|
&.is-message-empty { |
|
.message { |
|
position: absolute; |
|
bottom: .1rem; |
|
right: .2rem; |
|
border-radius: 12px; |
|
background-color: $time-background; |
|
padding: 0 .2rem; |
|
z-index: 2; |
|
|
|
.time { |
|
color: #fff; |
|
padding: 0; |
|
display: flex; |
|
align-items: center; |
|
width: auto !important; |
|
|
|
.inner { |
|
margin-bottom: 0; |
|
position: relative; |
|
padding: 0 2.5px; |
|
bottom: 0; |
|
} |
|
} |
|
} |
|
} |
|
|
|
.time { |
|
font-size: .8rem; |
|
user-select: none; |
|
float: right; |
|
user-select: none; |
|
height: 20px; |
|
line-height: 20px; |
|
|
|
.inner { |
|
position: absolute; |
|
bottom: 0; |
|
right: 0; |
|
font-size: 12px; |
|
display: flex; |
|
align-items: center; |
|
line-height: 1; |
|
|
|
i { |
|
font-size: 1.15rem; |
|
margin-right: .4rem; |
|
/* margin-left: .1rem; */ |
|
} |
|
|
|
i.edited { |
|
overflow: visible; |
|
font-size: .8rem; |
|
} |
|
} |
|
} |
|
|
|
span.video-time { |
|
position: absolute; |
|
top: 3px; |
|
left: 3px; |
|
border-radius: 12px; |
|
background-color: $time-background; |
|
padding: 0px 6px 0px 6px; |
|
z-index: 2; |
|
font-size: 12px; |
|
color: white; |
|
display: flex; |
|
align-items: center; |
|
cursor: pointer; |
|
user-select: none; |
|
} |
|
|
|
span.video-play { |
|
background-color: $time-background; |
|
color: #fff; |
|
text-align: center; |
|
font-size: 34px; |
|
line-height: 60px; |
|
cursor: pointer; |
|
} |
|
|
|
&.is-edited.channel-post .time { |
|
min-width: calc(5rem + 46px); |
|
} |
|
|
|
&.channel-post .time { |
|
width: 5rem; |
|
} |
|
|
|
&.is-edited { |
|
.time { |
|
width: 78px !important; |
|
} |
|
|
|
&.emoji-big, &.sticker { |
|
.time { |
|
/* width: 81px !important; */ |
|
min-width: unset; |
|
} |
|
} |
|
} |
|
|
|
&:not(.forwarded).hide-name, &.emoji-big { |
|
.name { |
|
display: none; |
|
} |
|
} |
|
|
|
.name { |
|
cursor: pointer; |
|
user-select: none; |
|
} |
|
|
|
&__container > .name { |
|
/* padding: .2675rem .6rem 0 .6rem; */ |
|
/* padding: .32rem .6rem 0 .6rem; */ |
|
padding: 5px .6rem 0 .6rem; |
|
font-weight: 500 !important; |
|
/* padding-bottom: 4px; */ |
|
color: $color-blue; |
|
font-size: .9rem; |
|
max-width: 100%; |
|
overflow: hidden; |
|
text-overflow: ellipsis; |
|
//width: max-content; |
|
//white-space: nowrap; |
|
} |
|
|
|
&:not(.webpage) { |
|
&.photo, &.video { |
|
.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, .album-item { |
|
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 { |
|
.reply { |
|
margin-top: 6px; |
|
} |
|
} |
|
} |
|
|
|
&:not(.sticker):not(.emoji-big):not(.round).is-group-last .bubble__container:after { |
|
position: absolute; |
|
bottom: 0; |
|
width: 11px; |
|
height: 20px; |
|
background-repeat: no-repeat no-repeat; |
|
content: ''; |
|
background-size: 11px 20px; |
|
background-position-y: 1px; |
|
} |
|
|
|
&.photo, &.video { |
|
&.is-message-empty.is-group-last { |
|
.bubble__container:after { |
|
display: none; |
|
} |
|
} |
|
} |
|
|
|
&.is-message-empty.is-group-last.with-media-tail { |
|
.bubble__container:after { |
|
display: none; |
|
} |
|
|
|
.attachment { |
|
overflow: visible; |
|
} |
|
} |
|
|
|
&__media-container { |
|
cursor: pointer; |
|
} |
|
} |
|
|
|
.bubble.service { |
|
align-self: center; |
|
|
|
.service-msg { |
|
color: #fff; |
|
background-color: rgba(0, 0, 0, 0.24); |
|
font-size: 14px; |
|
padding: 0 8px; |
|
line-height: 24px; |
|
border-radius: 12px; |
|
user-select: none; |
|
display: flex; |
|
align-items: center; |
|
justify-content: center; |
|
text-align: center; |
|
|
|
.name { |
|
cursor: pointer; |
|
margin-right: 5px; |
|
} |
|
|
|
img.emoji { |
|
margin-bottom: 3px; |
|
} |
|
} |
|
} |
|
|
|
.bubble-audio .time { |
|
width: unset !important; |
|
} |
|
|
|
.bubble.is-in { |
|
.bubble__container { |
|
margin-right: auto; |
|
background-color: #ffffff; |
|
|
|
&, .poll-footer-button { |
|
border-radius: 6px 12px 12px 6px; |
|
} |
|
} |
|
|
|
&.is-group-first { |
|
.bubble__container, .poll-footer-button { |
|
border-radius: 12px 12px 12px 6px; |
|
} |
|
} |
|
|
|
&.is-group-last { |
|
.bubble__container, .poll-footer-button { |
|
border-radius: 6px 12px 12px 0px; |
|
//border-radius: 12px 12px 12px 0px; |
|
} |
|
|
|
.bubble__container:after { |
|
left: -8.4px; |
|
background-image: url('assets/img/msg-tail-left.svg'); |
|
} |
|
} |
|
|
|
&.is-group-first.is-group-last { |
|
.bubble__container, .poll-footer-button { |
|
border-radius: 12px 12px 12px 0px; |
|
} |
|
} |
|
|
|
&.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; |
|
} |
|
|
|
a { |
|
color: $color-blue; |
|
} |
|
|
|
.quote { |
|
html.no-touch &:hover { |
|
background-color: $light; |
|
} |
|
} |
|
|
|
&.is-reply { |
|
&.emoji-big, &.sticker { |
|
.reply { |
|
left: calc(100% + 10px); |
|
background-color: #fff; |
|
|
|
@include respond-to(handhelds) { |
|
left: calc(100% + 1px); |
|
} |
|
} |
|
} |
|
} |
|
|
|
.quote { |
|
border-left: 2px $color-blue solid; |
|
|
|
* { |
|
overflow: hidden; |
|
text-overflow: ellipsis; |
|
} |
|
} |
|
|
|
.quote .name, .reply-title { |
|
color: $color-blue; |
|
} |
|
|
|
.time { |
|
color: #a3adb6; |
|
/* width: 36px; */ |
|
padding-left: 36px; |
|
|
|
.inner { |
|
padding: 0 7px 0 5px; |
|
margin-bottom: 4px; |
|
} |
|
} |
|
|
|
&.is-message-empty.is-group-last { |
|
&:not(.with-media-tail) { |
|
&.photo, &.video { |
|
.bubble__container { |
|
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 { |
|
color: #707579 !important; |
|
} |
|
|
|
.message.audio-message { |
|
.progress-line { |
|
&__seek { |
|
background: rgba(193, 207, 220, 0.39); |
|
} |
|
|
|
&__filled { |
|
background-color: #0089ff; |
|
} |
|
|
|
&__loaded { |
|
background-color: #cacaca; |
|
} |
|
|
|
input::-webkit-slider-thumb { |
|
background: #63a2e3; |
|
border: none; |
|
} |
|
} |
|
} |
|
|
|
/* .poll { |
|
&-answer-selected { |
|
&:before { |
|
margin-left: -1px; |
|
} |
|
} |
|
} */ |
|
} |
|
|
|
/* @include respond-to(handhelds) { |
|
.bubble.is-in { |
|
margin-right: auto; |
|
} |
|
|
|
.bubble.is-out { |
|
margin-left: auto; |
|
} |
|
} */ |
|
|
|
.bubble.is-out { |
|
.bubble__container { |
|
margin-left: auto; |
|
background-color: #eeffde; |
|
|
|
> .user-avatar { |
|
left: auto; |
|
right: -2.5rem; |
|
} |
|
|
|
&, .poll-footer-button { |
|
border-radius: 12px 6px 6px 12px; |
|
} |
|
} |
|
|
|
&.is-group-first { |
|
.bubble__container, .poll-footer-button { |
|
border-radius: 12px 12px 6px 12px; |
|
} |
|
} |
|
|
|
&.is-group-last { |
|
.bubble__container, .poll-footer-button { |
|
border-radius: 12px 6px 0px 12px; |
|
} |
|
|
|
.bubble__container:after { |
|
right: -8.4px; |
|
background-image: url('assets/img/msg-tail-right.svg'); |
|
} |
|
} |
|
|
|
&.is-group-first.is-group-last { |
|
.bubble__container, .poll-footer-button { |
|
border-radius: 12px 12px 0px 12px; |
|
} |
|
} |
|
|
|
&.forwarded .attachment, |
|
&.is-reply .attachment { |
|
border-top-left-radius: 0; |
|
border-top-right-radius: 0; |
|
} |
|
|
|
.quote { |
|
html.no-touch &:hover { |
|
background-color: rgba($color-green, 0.12); |
|
} |
|
} |
|
|
|
&.is-reply { |
|
&.emoji-big, &.sticker { |
|
.box, .reply { |
|
background-color: #eeffde; |
|
right: calc(100% + 10px); |
|
border-color: rgba($color-green, .12); |
|
} |
|
} |
|
} |
|
|
|
.quote { |
|
border-left: 2px $darkgreen solid; |
|
} |
|
|
|
.reply-border { |
|
background-color: $darkgreen; |
|
} |
|
|
|
.quote .name, .reply-title { |
|
color: $darkgreen; |
|
} |
|
|
|
.time { |
|
color: $darkgreen; |
|
width: 50px; |
|
display: inline-block; |
|
|
|
.inner { |
|
padding: 0 4px 0 4px; |
|
bottom: 1px; |
|
} |
|
|
|
.tgico:after { |
|
font-size: 19px; |
|
vertical-align: middle; |
|
margin-left: 1px; |
|
} |
|
} |
|
|
|
&.forwarded { |
|
.name { |
|
color: $darkgreen; |
|
} |
|
} |
|
|
|
&.is-read { |
|
.time .tgico:after { |
|
content: $tgico-checks; |
|
} |
|
} |
|
|
|
&.is-sent { |
|
.time .tgico:after { |
|
content: $tgico-check; |
|
} |
|
} |
|
|
|
&.is-sending { |
|
.time .tgico:after { |
|
content: $tgico-sending; |
|
} |
|
} |
|
|
|
&.is-reply .name { |
|
display: none; |
|
} |
|
|
|
&.is-edited .time { |
|
/* width: 85px; */ |
|
width: 90px !important; |
|
} |
|
|
|
.document-ico:after { |
|
border-top-color: #eeffde; |
|
border-right-color: #eeffde; |
|
} |
|
|
|
.audio { |
|
&-waveform { |
|
rect { |
|
fill: #B8DDA9; |
|
|
|
&.active { |
|
fill: #68AB5A; |
|
} |
|
} |
|
} |
|
|
|
&-time, &-subtitle { |
|
color: #68AB5A; |
|
} |
|
|
|
&-toggle, &-download { |
|
background-color: #4FAE4E; |
|
} |
|
|
|
&-download:empty { |
|
display: none; |
|
} |
|
} |
|
|
|
&.is-message-empty.is-group-last { |
|
&:not(.with-media-tail) { |
|
&.photo, &.video { |
|
.bubble__container { |
|
border-bottom-right-radius: 6px; |
|
} |
|
} |
|
} |
|
|
|
&.with-media-tail { |
|
.attachment { |
|
border-bottom-right-radius: 0; |
|
} |
|
|
|
.bubble__media-container { |
|
margin-right: -9px; |
|
} |
|
} |
|
} |
|
|
|
.audio-subtitle, .contact-number, .document-size { |
|
color: #4FAE4E; |
|
} |
|
|
|
poll-element { |
|
.poll { |
|
&-desc, &-votes-count { |
|
color: $color-text-green; |
|
} |
|
|
|
&-line use { |
|
stroke: #4fae4e; |
|
} |
|
|
|
&-answer-selected { |
|
background-color: #4fae4e; |
|
} |
|
|
|
html.no-touch &-answer:hover { |
|
.animation-ring { |
|
background-color: rgba(79, 174, 78, 0.08); |
|
} |
|
} |
|
|
|
&-footer-button { |
|
color: #4fae4e; |
|
} |
|
} |
|
|
|
.progress-ring__circle { |
|
stroke: #4fae4e; |
|
} |
|
} |
|
|
|
&.is-sending poll-element { |
|
pointer-events: none; |
|
} |
|
|
|
.progress-line { |
|
&__loaded { |
|
background-color: #90e18d !important; |
|
} |
|
} |
|
|
|
.bubble-beside-button { |
|
right: auto; |
|
left: -46px; |
|
transform: scaleX(-1); |
|
} |
|
} |
|
|
|
.reply-markup { |
|
position: absolute; |
|
width: 100%; |
|
|
|
&-row { |
|
margin-top: 5px; |
|
overflow: hidden; |
|
height: 40px; |
|
display: flex; |
|
|
|
&:last-child { |
|
border-bottom-left-radius: $border-radius-big; |
|
border-bottom-right-radius: $border-radius-big; |
|
} |
|
} |
|
|
|
&-button { |
|
display: flex; |
|
justify-content: center; |
|
align-items: center; |
|
border-radius: 6px; |
|
background-color: rgba(0, 0, 0, 0.23); |
|
z-index: 2; |
|
font-size: 14px; |
|
user-select: none; |
|
text-align: center; |
|
color: white !important; |
|
outline: none; |
|
border: none; |
|
width: 100%; |
|
cursor: pointer; |
|
position: relative; |
|
transition: background-color 0.35s ease; |
|
|
|
html.no-touch &:hover { |
|
background-color: rgba(0, 0, 0, 0.06); |
|
} |
|
|
|
& + & { |
|
margin-left: 5px; |
|
} |
|
|
|
&.is-link:before { |
|
content: $tgico-next; |
|
position: absolute; |
|
right: 2px; |
|
top: 2px; |
|
display: block; |
|
transform: rotate(-45deg); |
|
} |
|
|
|
/* img.emoji { |
|
vertical-align: middle !important; |
|
} */ |
|
} |
|
} |
|
|
|
poll-element { |
|
margin-top: -1px; |
|
display: block; |
|
//min-width: 280px; |
|
min-width: 330px; |
|
|
|
@include respond-to(handhelds) { |
|
min-width: 240px; |
|
} |
|
|
|
&:not(.is-closed):not(.is-voted) .poll-answer { |
|
cursor: pointer; |
|
} |
|
|
|
.poll { |
|
&-title { |
|
font-weight: 500; |
|
user-select: none; |
|
|
|
@include respond-to(handhelds) { |
|
max-width: 88%; |
|
} |
|
} |
|
|
|
&-desc { |
|
font-size: 14px; |
|
color: #707579; |
|
margin-top: 2px; |
|
margin-bottom: 7px; |
|
user-select: none; |
|
display: flex; |
|
position: relative; |
|
|
|
// @include respond-to(handhelds) { |
|
// max-width: 280px; |
|
// } |
|
} |
|
|
|
&-hint { |
|
position: absolute; |
|
font-size: 1.5rem; |
|
top: -4px; |
|
right: 2px; |
|
color: #50a2e9; |
|
cursor: pointer; |
|
transform: scale(1); |
|
transition: transform .2s ease; |
|
|
|
// @include respond-to(handhelds) { |
|
// right: 16px; |
|
// } |
|
|
|
&.active { |
|
transform: scale(0); |
|
pointer-events: none; |
|
} |
|
} |
|
|
|
&-send-vote { |
|
cursor: default; |
|
} |
|
|
|
&-avatars { |
|
display: flex; |
|
margin-left: 18px; |
|
} |
|
|
|
&-answer { |
|
display: flex; |
|
position: relative; |
|
padding-bottom: 20px; |
|
padding-left: 28px; |
|
margin-top: 1px; |
|
|
|
&-text { |
|
margin-top: 6px; |
|
margin-left: 12px; |
|
user-select: none; |
|
} |
|
|
|
&-percents { |
|
position: absolute; |
|
left: 0; |
|
top: 0; |
|
opacity: 0; |
|
font-weight: 500; |
|
margin-top: 7px; |
|
font-size: 14px; |
|
transition: .34s opacity; |
|
margin-left: -9px; |
|
text-align: right; |
|
width: 40px; |
|
user-select: none; |
|
} |
|
|
|
&-selected { |
|
position: absolute; |
|
bottom: 1px; |
|
left: 15px; |
|
color: #fff; |
|
background: #50a2e9; |
|
border-radius: 50%; |
|
height: 16px; |
|
width: 16px; |
|
font-weight: bold; |
|
font-size: 14px; |
|
line-height: 1.4; |
|
opacity: 0; |
|
animation: fadeIn .1s ease forwards; |
|
animation-direction: reverse; |
|
animation-delay: .24s; |
|
text-align: center; |
|
|
|
&:before { |
|
content: $tgico-check; |
|
//margin-left: 1px; |
|
font-weight: bold; |
|
} |
|
} |
|
|
|
html.no-touch &:hover { |
|
.animation-ring { |
|
visibility: visible; |
|
transform: scale(1); |
|
} |
|
} |
|
|
|
&.is-voting { |
|
.progress-ring__circle { |
|
stroke-dashoffset: -19.792; |
|
animation: pollAnswerRotate 0.65s linear infinite; |
|
} |
|
} |
|
|
|
&:not(.is-correct):not(.is-chosen) { |
|
.poll-answer-selected { |
|
display: none; |
|
} |
|
} |
|
|
|
// Multiple answers |
|
&.is-chosing { |
|
.poll-answer-selected { |
|
opacity: 1; |
|
} |
|
|
|
& ~ .poll-footer { |
|
.poll-send-vote { |
|
cursor: pointer; |
|
} |
|
} |
|
} |
|
} |
|
|
|
&-votes-count { |
|
color: #707579; |
|
font-size: 14px; |
|
user-select: none; |
|
padding-top: 1px; |
|
} |
|
|
|
&-line { |
|
height: 35px; |
|
position: absolute; |
|
left: 10px; |
|
bottom: 2px; |
|
transition: stroke-dashoffset .34s linear, stroke-dasharray .34s linear; |
|
stroke-dashoffset: 0; |
|
stroke-dasharray: 0, 485.9; |
|
|
|
use { |
|
stroke-width: 4px; |
|
stroke-linecap: round; |
|
stroke: #50a2e9; |
|
fill: none; |
|
} |
|
} |
|
|
|
&-footer { |
|
text-align: center; |
|
margin-top: 7px; |
|
height: 21px; |
|
} |
|
|
|
&-footer-button { |
|
cursor: pointer; |
|
position: absolute; |
|
left: 0; |
|
margin-top: -7px; |
|
width: 100%; |
|
height: 41px; |
|
color: #50a2e9; |
|
//text-transform: uppercase; |
|
font-weight: 500; |
|
border-top-left-radius: 0 !important; |
|
border-top-right-radius: 0 !important; |
|
//border-bottom-left-radius: 6px; |
|
//border-bottom-right-radius: 12px; |
|
font-size: 1rem; |
|
line-height: 37px; |
|
user-select: none; |
|
overflow: hidden; |
|
} |
|
|
|
&-quiz-timer { |
|
width: 32px; |
|
height: 32px; |
|
stroke: #a3adb6; |
|
transform: rotate(270deg); |
|
top: -7px; |
|
fill: none; |
|
position: absolute; |
|
right: -2px; |
|
stroke-linecap: round; |
|
} |
|
|
|
&-time { |
|
font-size: 12px; |
|
font-weight: 500; |
|
position: absolute; |
|
right: 27px; |
|
color: #a3adb6; |
|
} |
|
} |
|
|
|
&.is-quiz .poll { |
|
&-answer { |
|
&.is-chosen:not(.is-correct) { |
|
use { |
|
stroke: #DF3F40; |
|
} |
|
|
|
.poll-answer-selected { |
|
background: #DF3F40; |
|
//line-height: 16px; |
|
|
|
&:before { |
|
content: $tgico-close; |
|
font-size: 12px; |
|
//margin-left: 2.5px; |
|
} |
|
} |
|
} |
|
} |
|
|
|
&-line { |
|
use { |
|
|
|
} |
|
} |
|
} |
|
|
|
avatar-element { |
|
width: 18px; |
|
height: 18px; |
|
border: 1px solid #fff; |
|
line-height: 20px; |
|
font-size: 10px; |
|
cursor: pointer; |
|
} |
|
|
|
& + .time { |
|
height: unset !important; |
|
padding-top: 0px !important; |
|
padding-bottom: 7px !important; |
|
} |
|
|
|
.circle-hover { |
|
display: flex; |
|
justify-content: center; |
|
align-items: center; |
|
width: 34px; |
|
height: 34px; |
|
position: absolute; |
|
left: -1px; |
|
top: -1px; |
|
transform: scale(1); |
|
transition: .1s transform; |
|
|
|
.poll-answer-selected { |
|
display: flex!important; |
|
opacity: 0; |
|
left: 50%; |
|
top: 50%; |
|
transform: translate(-50%, -50%); |
|
width: 20px; |
|
height: 20px; |
|
font-size: 20px; |
|
line-height: 16px; |
|
animation: none; |
|
transition: opacity .2s ease; |
|
} |
|
} |
|
|
|
.animation-ring { |
|
display: block; |
|
border-radius: 50%; |
|
height: 34px; |
|
width: 34px; |
|
transition: transform 0.12s; |
|
background-color: #f4f4f4; |
|
transform: scale(0.1); |
|
visibility: hidden; |
|
} |
|
|
|
.progress-ring { |
|
height: 26px; |
|
width: 26px; |
|
top: unset; |
|
left: unset; |
|
|
|
&__circle { |
|
transform-origin: center; |
|
transform: rotate(-90deg); |
|
transition: stroke-dashoffset 0.15s; |
|
stroke-dasharray: 56.5487, 56.5487; |
|
stroke-dashoffset: 0; |
|
stroke-opacity: 1; |
|
stroke-width: 2; |
|
stroke: #dadbdc; |
|
fill: transparent; |
|
} |
|
} |
|
|
|
&.is-voted { |
|
.circle-hover, .animation-ring { |
|
transform: scale(0); |
|
} |
|
|
|
.poll-answer-percents { |
|
opacity: 1; |
|
} |
|
|
|
.poll-answer-selected { |
|
animation-direction: normal; |
|
} |
|
} |
|
|
|
&.is-retracting { |
|
.circle-hover { |
|
transition-delay: .24s; |
|
} |
|
|
|
.animation-ring { |
|
transition-delay: .22s; |
|
} |
|
} |
|
} |
|
|
|
@keyframes pollAnswerRotate { |
|
to { |
|
transform: rotate(270deg); |
|
} |
|
} |