mirror of
https://github.com/vector-im/element-web.git
synced 2024-11-16 13:14:58 +08:00
579 lines
15 KiB
SCSS
579 lines
15 KiB
SCSS
/*
|
|
Copyright 2021 The Matrix.org Foundation C.I.C.
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
*/
|
|
|
|
$SpaceRoomViewInnerWidth: 428px;
|
|
|
|
@define-mixin SpacePillButton {
|
|
position: relative;
|
|
padding: 16px 32px 16px 72px;
|
|
width: 432px;
|
|
box-sizing: border-box;
|
|
border-radius: 8px;
|
|
border: 1px solid $input-border-color;
|
|
font-size: $font-15px;
|
|
margin: 20px 0;
|
|
|
|
> h3 {
|
|
font-weight: $font-semi-bold;
|
|
margin: 0 0 4px;
|
|
}
|
|
|
|
> span {
|
|
color: $secondary-fg-color;
|
|
}
|
|
|
|
&::before {
|
|
position: absolute;
|
|
content: '';
|
|
width: 32px;
|
|
height: 32px;
|
|
top: 24px;
|
|
left: 20px;
|
|
mask-position: center;
|
|
mask-repeat: no-repeat;
|
|
mask-size: 24px;
|
|
background-color: $tertiary-fg-color;
|
|
}
|
|
|
|
&:hover {
|
|
border-color: $accent-color;
|
|
|
|
&::before {
|
|
background-color: $accent-color;
|
|
}
|
|
|
|
> span {
|
|
color: $primary-fg-color;
|
|
}
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView {
|
|
.mx_MainSplit > div:first-child {
|
|
padding: 80px 60px;
|
|
flex-grow: 1;
|
|
max-height: 100%;
|
|
overflow-y: auto;
|
|
|
|
h1 {
|
|
margin: 0;
|
|
font-size: $font-24px;
|
|
font-weight: $font-semi-bold;
|
|
color: $primary-fg-color;
|
|
width: max-content;
|
|
}
|
|
|
|
.mx_SpaceRoomView_description {
|
|
font-size: $font-15px;
|
|
color: $secondary-fg-color;
|
|
margin-top: 12px;
|
|
margin-bottom: 24px;
|
|
max-width: $SpaceRoomViewInnerWidth;
|
|
}
|
|
|
|
.mx_AddExistingToSpace {
|
|
max-width: $SpaceRoomViewInnerWidth;
|
|
|
|
.mx_AddExistingToSpace_content {
|
|
height: calc(100vh - 360px);
|
|
max-height: 400px;
|
|
}
|
|
}
|
|
|
|
&:not(.mx_SpaceRoomView_landing) .mx_SpaceFeedbackPrompt {
|
|
width: $SpaceRoomViewInnerWidth;
|
|
}
|
|
|
|
.mx_SpaceRoomView_buttons {
|
|
display: block;
|
|
margin-top: 44px;
|
|
width: $SpaceRoomViewInnerWidth;
|
|
text-align: right; // button alignment right
|
|
|
|
.mx_AccessibleButton_hasKind {
|
|
padding: 8px 22px;
|
|
margin-left: 16px;
|
|
}
|
|
|
|
input.mx_AccessibleButton {
|
|
border: none; // override default styles
|
|
}
|
|
}
|
|
|
|
.mx_Field {
|
|
max-width: $SpaceRoomViewInnerWidth;
|
|
|
|
& + .mx_Field {
|
|
margin-top: 28px;
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_errorText {
|
|
font-weight: $font-semi-bold;
|
|
font-size: $font-12px;
|
|
line-height: $font-15px;
|
|
color: $notice-primary-color;
|
|
margin-bottom: 28px;
|
|
}
|
|
|
|
.mx_AccessibleButton_disabled {
|
|
cursor: not-allowed;
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_preview {
|
|
padding: 32px 24px !important; // override default padding from above
|
|
margin: auto;
|
|
max-width: 480px;
|
|
box-sizing: border-box;
|
|
box-shadow: 2px 15px 30px $dialog-shadow-color;
|
|
border-radius: 8px;
|
|
position: relative;
|
|
|
|
// XXX remove this when spaces leaves Beta
|
|
.mx_BetaCard_betaPill {
|
|
position: absolute;
|
|
right: 24px;
|
|
top: 32px;
|
|
}
|
|
// XXX remove this when spaces leaves Beta
|
|
.mx_SpaceRoomView_preview_spaceBetaPrompt {
|
|
font-weight: $font-semi-bold;
|
|
font-size: $font-14px;
|
|
line-height: $font-24px;
|
|
color: $primary-fg-color;
|
|
margin-top: 24px;
|
|
position: relative;
|
|
padding-left: 24px;
|
|
|
|
.mx_AccessibleButton_kind_link {
|
|
display: inline;
|
|
padding: 0;
|
|
font-size: inherit;
|
|
line-height: inherit;
|
|
}
|
|
|
|
&::before {
|
|
content: "";
|
|
position: absolute;
|
|
height: $font-24px;
|
|
width: 20px;
|
|
left: 0;
|
|
mask-repeat: no-repeat;
|
|
mask-position: center;
|
|
mask-size: contain;
|
|
mask-image: url('$(res)/img/element-icons/room/room-summary.svg');
|
|
background-color: $secondary-fg-color;
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_preview_inviter {
|
|
display: flex;
|
|
align-items: center;
|
|
margin-bottom: 20px;
|
|
font-size: $font-15px;
|
|
|
|
> div {
|
|
margin-left: 8px;
|
|
|
|
.mx_SpaceRoomView_preview_inviter_name {
|
|
line-height: $font-18px;
|
|
}
|
|
|
|
.mx_SpaceRoomView_preview_inviter_mxid {
|
|
line-height: $font-24px;
|
|
color: $secondary-fg-color;
|
|
}
|
|
}
|
|
}
|
|
|
|
> .mx_BaseAvatar_image,
|
|
> .mx_BaseAvatar > .mx_BaseAvatar_image {
|
|
border-radius: 12px;
|
|
}
|
|
|
|
h1.mx_SpaceRoomView_preview_name {
|
|
margin: 20px 0 !important; // override default margin from above
|
|
}
|
|
|
|
.mx_SpaceRoomView_preview_topic {
|
|
font-size: $font-14px;
|
|
line-height: $font-22px;
|
|
color: $secondary-fg-color;
|
|
margin: 20px 0;
|
|
max-height: 160px;
|
|
overflow-y: auto;
|
|
}
|
|
|
|
.mx_SpaceRoomView_preview_joinButtons {
|
|
margin-top: 20px;
|
|
|
|
.mx_AccessibleButton {
|
|
width: 200px;
|
|
box-sizing: border-box;
|
|
padding: 14px 0;
|
|
|
|
& + .mx_AccessibleButton {
|
|
margin-left: 20px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_landing {
|
|
display: flex;
|
|
flex-direction: column;
|
|
|
|
> .mx_BaseAvatar_image,
|
|
> .mx_BaseAvatar > .mx_BaseAvatar_image {
|
|
border-radius: 12px;
|
|
}
|
|
|
|
.mx_SpaceRoomView_landing_name {
|
|
margin: 24px 0 16px;
|
|
font-size: $font-15px;
|
|
color: $secondary-fg-color;
|
|
|
|
> span {
|
|
display: inline-block;
|
|
}
|
|
|
|
.mx_SpaceRoomView_landing_nameRow {
|
|
margin-top: 12px;
|
|
|
|
> h1 {
|
|
display: inline-block;
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_landing_inviter {
|
|
.mx_BaseAvatar {
|
|
margin-right: 4px;
|
|
vertical-align: middle;
|
|
}
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_landing_info {
|
|
display: flex;
|
|
align-items: center;
|
|
|
|
.mx_SpaceRoomView_info {
|
|
display: inline-block;
|
|
margin: 0 auto 0 0;
|
|
}
|
|
|
|
.mx_FacePile {
|
|
display: inline-block;
|
|
margin-right: 12px;
|
|
|
|
.mx_FacePile_faces {
|
|
cursor: pointer;
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_landing_inviteButton {
|
|
position: relative;
|
|
padding: 4px 18px 4px 40px;
|
|
line-height: $font-24px;
|
|
height: min-content;
|
|
|
|
&::before {
|
|
position: absolute;
|
|
content: "";
|
|
left: 8px;
|
|
height: 16px;
|
|
width: 16px;
|
|
background: #ffffff; // white icon fill
|
|
mask-position: center;
|
|
mask-size: 16px;
|
|
mask-repeat: no-repeat;
|
|
mask-image: url('$(res)/img/element-icons/room/invite.svg');
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_landing_settingsButton {
|
|
position: relative;
|
|
margin-left: 16px;
|
|
width: 24px;
|
|
height: 24px;
|
|
|
|
&::before {
|
|
position: absolute;
|
|
content: "";
|
|
left: 0;
|
|
top: 0;
|
|
height: 24px;
|
|
width: 24px;
|
|
background: $tertiary-fg-color;
|
|
mask-position: center;
|
|
mask-size: contain;
|
|
mask-repeat: no-repeat;
|
|
mask-image: url('$(res)/img/element-icons/settings.svg');
|
|
}
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_landing_topic {
|
|
font-size: $font-15px;
|
|
margin-top: 12px;
|
|
margin-bottom: 16px;
|
|
white-space: pre-wrap;
|
|
word-wrap: break-word;
|
|
}
|
|
|
|
> hr {
|
|
border: none;
|
|
height: 1px;
|
|
background-color: $groupFilterPanel-bg-color;
|
|
}
|
|
|
|
.mx_SearchBox {
|
|
margin: 0 0 20px;
|
|
flex: 0;
|
|
}
|
|
|
|
.mx_SpaceFeedbackPrompt {
|
|
margin-bottom: 16px;
|
|
|
|
// hide the HR as we have our own
|
|
& + hr {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomDirectory_list {
|
|
// we don't want this container to get forced into the flexbox layout
|
|
display: contents;
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_privateScope {
|
|
> .mx_AccessibleButton {
|
|
@mixin SpacePillButton;
|
|
}
|
|
|
|
.mx_SpaceRoomView_privateScope_justMeButton::before {
|
|
mask-image: url('$(res)/img/element-icons/room/members.svg');
|
|
}
|
|
|
|
.mx_SpaceRoomView_privateScope_meAndMyTeammatesButton::before {
|
|
mask-image: url('$(res)/img/element-icons/community-members.svg');
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_betaWarning {
|
|
padding: 12px 12px 12px 54px;
|
|
position: relative;
|
|
font-size: $font-15px;
|
|
line-height: $font-24px;
|
|
width: 432px;
|
|
border-radius: 8px;
|
|
background-color: $info-plinth-bg-color;
|
|
color: $secondary-fg-color;
|
|
box-sizing: border-box;
|
|
|
|
> h3 {
|
|
font-weight: $font-semi-bold;
|
|
font-size: inherit;
|
|
line-height: inherit;
|
|
margin: 0;
|
|
}
|
|
|
|
> p {
|
|
font-size: inherit;
|
|
line-height: inherit;
|
|
margin: 0;
|
|
}
|
|
|
|
&::before {
|
|
mask-image: url('$(res)/img/element-icons/room/room-summary.svg');
|
|
mask-position: center;
|
|
mask-repeat: no-repeat;
|
|
mask-size: contain;
|
|
content: '';
|
|
width: 20px;
|
|
height: 20px;
|
|
position: absolute;
|
|
top: 14px;
|
|
left: 14px;
|
|
background-color: $secondary-fg-color;
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_inviteTeammates {
|
|
// XXX remove this when spaces leaves Beta
|
|
.mx_SpaceRoomView_inviteTeammates_betaDisclaimer {
|
|
padding: 58px 16px 16px;
|
|
position: relative;
|
|
border-radius: 8px;
|
|
background-color: $header-panel-bg-color;
|
|
max-width: $SpaceRoomViewInnerWidth;
|
|
margin: 20px 0 30px;
|
|
box-sizing: border-box;
|
|
|
|
.mx_BetaCard_betaPill {
|
|
position: absolute;
|
|
left: 16px;
|
|
top: 16px;
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_inviteTeammates_buttons {
|
|
color: $secondary-fg-color;
|
|
margin-top: 28px;
|
|
|
|
.mx_AccessibleButton {
|
|
position: relative;
|
|
display: inline-block;
|
|
padding-left: 32px;
|
|
line-height: 24px; // to center icons
|
|
|
|
&::before {
|
|
content: "";
|
|
position: absolute;
|
|
height: 24px;
|
|
width: 24px;
|
|
top: 0;
|
|
left: 0;
|
|
background-color: $secondary-fg-color;
|
|
mask-repeat: no-repeat;
|
|
mask-position: center;
|
|
mask-size: contain;
|
|
}
|
|
|
|
& + .mx_AccessibleButton {
|
|
margin-left: 32px;
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_inviteTeammates_inviteDialogButton::before {
|
|
mask-image: url('$(res)/img/element-icons/room/invite.svg');
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_info {
|
|
color: $secondary-fg-color;
|
|
font-size: $font-15px;
|
|
line-height: $font-24px;
|
|
margin: 20px 0;
|
|
|
|
.mx_SpaceRoomView_info_public,
|
|
.mx_SpaceRoomView_info_private {
|
|
padding-left: 20px;
|
|
position: relative;
|
|
|
|
&::before {
|
|
position: absolute;
|
|
content: "";
|
|
width: 20px;
|
|
height: 20px;
|
|
top: 0;
|
|
left: -2px;
|
|
mask-position: center;
|
|
mask-repeat: no-repeat;
|
|
background-color: $tertiary-fg-color;
|
|
}
|
|
}
|
|
|
|
.mx_SpaceRoomView_info_public::before {
|
|
mask-size: 12px;
|
|
mask-image: url("$(res)/img/globe.svg");
|
|
}
|
|
|
|
.mx_SpaceRoomView_info_private::before {
|
|
mask-size: 14px;
|
|
mask-image: url("$(res)/img/element-icons/lock.svg");
|
|
}
|
|
|
|
.mx_AccessibleButton_kind_link {
|
|
color: inherit;
|
|
position: relative;
|
|
padding-left: 16px;
|
|
|
|
&::before {
|
|
content: "·"; // visual separator
|
|
position: absolute;
|
|
left: 6px;
|
|
}
|
|
}
|
|
}
|
|
|
|
.mx_SpaceFeedbackPrompt {
|
|
margin-top: 18px;
|
|
margin-bottom: 12px;
|
|
|
|
> hr {
|
|
border: none;
|
|
border-top: 1px solid $input-border-color;
|
|
margin-bottom: 12px;
|
|
}
|
|
|
|
> div {
|
|
display: flex;
|
|
flex-direction: row;
|
|
font-size: $font-15px;
|
|
line-height: $font-24px;
|
|
|
|
> span {
|
|
color: $secondary-fg-color;
|
|
position: relative;
|
|
padding-left: 32px;
|
|
font-size: inherit;
|
|
line-height: inherit;
|
|
margin-right: auto;
|
|
|
|
&::before {
|
|
content: '';
|
|
position: absolute;
|
|
left: 0;
|
|
top: 2px;
|
|
height: 20px;
|
|
width: 20px;
|
|
background-color: $secondary-fg-color;
|
|
mask-repeat: no-repeat;
|
|
mask-size: contain;
|
|
mask-image: url('$(res)/img/element-icons/room/room-summary.svg');
|
|
mask-position: center;
|
|
}
|
|
}
|
|
|
|
.mx_AccessibleButton_kind_link {
|
|
color: $accent-color;
|
|
position: relative;
|
|
padding: 0 0 0 24px;
|
|
margin-left: 8px;
|
|
font-size: inherit;
|
|
line-height: inherit;
|
|
|
|
&::before {
|
|
content: '';
|
|
position: absolute;
|
|
left: 0;
|
|
height: 16px;
|
|
width: 16px;
|
|
background-color: $accent-color;
|
|
mask-repeat: no-repeat;
|
|
mask-size: contain;
|
|
mask-image: url('$(res)/img/element-icons/chat-bubbles.svg');
|
|
mask-position: center;
|
|
}
|
|
}
|
|
}
|
|
}
|