signal-desktop/stylesheets/components/SendStoryModal.scss
2023-05-09 10:52:39 -04:00

280 lines
5.3 KiB
SCSS

// Copyright 2022 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
.SendStoryModal {
&__body {
// force
.module-Modal & {
padding-bottom: 0;
}
}
// Used to ensure that a set of spans reverse order under RTL
&__rtl-span {
display: inline-block;
}
// don't re-layout buttons on wrap,
// since we have things beyond same-sized-rectangles in the footer
.module-Modal__button-footer {
&--one-button-per-line {
flex-direction: row;
align-items: center;
}
}
.module-SearchInput__container {
margin-inline: 0;
}
&__story-preview {
height: 140px;
width: 80px;
border-radius: 12px;
margin-block: 0 16px;
margin-inline: auto;
background-size: cover;
}
&__item--contact-or-conversation {
height: 52px;
padding-block: 0;
padding-inline: 6px;
}
&__top-bar {
align-items: center;
display: flex;
min-height: 40px;
justify-content: space-between;
user-select: none;
}
&__new-story {
&__button {
font-weight: 500;
padding-block: 5px;
padding-inline: 10px;
&::before {
@include color-svg('../images/icons/v3/plus/plus.svg', $color-white);
content: '';
height: 16px;
width: 16px;
margin-inline-end: 8px;
display: inline-block;
vertical-align: text-bottom;
}
}
&__option {
padding: 10px;
&--icon {
margin-inline-end: 15px;
}
&--container {
align-items: center;
}
&--description {
color: $color-gray-25;
}
}
}
&__icon {
&--delete {
@include color-svg('../images/icons/v3/trash/trash.svg', $color-white);
height: 14px;
width: 14px;
}
&--custom {
@include color-svg(
'../images/icons/v3/stories/stories.svg',
$color-white
);
height: 16px;
width: 16px;
}
&--group {
@include color-svg('../images/icons/v3/group/group.svg', $color-white);
height: 16px;
width: 16px;
}
&--settings {
@include color-svg(
'../images/icons/v3/settings/settings.svg',
$color-white
);
height: 14px;
width: 14px;
}
}
&__distribution-list-context {
&__container {
width: 100%;
}
&__button {
align-items: center;
display: flex;
width: 100%;
}
}
&__distribution-list {
height: 52px;
&__container {
justify-content: space-between;
padding-block: 8px;
padding-inline: 0;
user-select: none;
}
&__info {
margin-inline-start: 8px;
}
&__label {
align-items: center;
display: flex;
justify-content: flex-start;
flex: 1;
}
&__name {
@include font-body-1-bold;
font-weight: 400;
}
&__description {
@include font-body-2;
font-size: 12px;
color: $color-gray-25;
}
&__checkbox {
margin-inline-end: 0;
position: relative;
}
&__checkbox input[type='checkbox'] {
cursor: pointer;
height: 0;
position: absolute;
width: 0;
@include keyboard-mode {
&:focus {
&::before {
border-color: $color-ultramarine;
}
outline: none;
}
}
&::before {
@include rounded-corners;
background: inherit;
border: 1.5px solid $color-gray-60;
content: '';
display: block;
height: 20px;
position: absolute;
width: 20px;
}
&:checked {
&::before {
background: $color-ultramarine;
border: 1.5px solid $color-ultramarine;
}
&::after {
border: solid $color-white;
border-width: 0 2px 2px 0;
content: '';
display: block;
height: 11px;
/* stylelint-disable-next-line liberty/use-logical-spec */
left: 7px;
position: absolute;
top: 3px;
transform: rotate(45deg);
width: 6px;
}
}
}
}
&__selected-lists {
@include font-body-2;
color: $color-gray-15;
padding-inline-end: 16px;
user-select: none;
flex: 1;
display: flex;
align-items: center;
min-height: 32px;
}
&__ok {
@include button-reset;
@include rounded-corners;
align-items: center;
background: $color-ultramarine;
display: flex;
height: 32px;
justify-content: center;
width: 32px;
&::disabled {
background: $color-gray-60;
}
&::after {
@include color-svg('../images/icons/v3/check/check.svg', $color-white);
content: '';
height: 18px;
width: 18px;
}
}
&__send {
@include button-reset;
@include rounded-corners;
align-items: center;
background: $color-ultramarine;
display: flex;
height: 32px;
justify-content: center;
width: 32px;
&::disabled {
background: $color-gray-60;
}
&::after {
@include color-svg('../images/icons/v3/send/send-fill.svg', $color-white);
content: '';
height: 18px;
width: 18px;
}
}
// more specific to override StoryImage
.SendStoryModal {
&__story {
border-radius: 12px;
backdrop-filter: blur(90px);
&__image {
object-fit: contain;
}
}
}
}