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;
 | 
						|
            }
 | 
						|
        }
 | 
						|
    }
 | 
						|
}
 |