465 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
			
		
		
	
	
			465 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
| /*
 | |
| Copyright 2024 New Vector Ltd.
 | |
| Copyright 2019, 2020 The Matrix.org Foundation C.I.C.
 | |
| 
 | |
| SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only
 | |
| Please see LICENSE files in the repository root for full details.
 | |
| */
 | |
| 
 | |
| .mx_InviteDialog_flexWrapper .mx_Dialog {
 | |
|     display: flex;
 | |
|     flex-direction: column;
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_transferWrapper .mx_Dialog {
 | |
|     padding-bottom: $spacing-16;
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_addressBar {
 | |
|     display: flex;
 | |
|     flex-direction: row;
 | |
|     /* Right margin for the design. We could apply this to the whole dialog, but then the scrollbar */
 | |
|     /* for the user section gets weird. */
 | |
|     margin: $spacing-8 45px 0 0;
 | |
| 
 | |
|     .mx_InviteDialog_editor {
 | |
|         flex: 1;
 | |
|         width: 100%; /* Needed to make the Field inside grow */
 | |
|         background-color: $header-panel-bg-color;
 | |
|         border-radius: 4px;
 | |
|         min-height: 25px;
 | |
|         padding-inline-start: $spacing-8;
 | |
|         overflow-x: hidden;
 | |
|         overflow-y: auto;
 | |
|         display: flex;
 | |
|         flex-wrap: wrap;
 | |
| 
 | |
|         .mx_InviteDialog_userTile {
 | |
|             margin: 6px 6px 0 0;
 | |
|             display: inline-block;
 | |
|             min-width: max-content; /* prevent manipulation by flexbox */
 | |
|         }
 | |
| 
 | |
|         /* overrides bunch of our default text input styles */
 | |
|         > input[type="text"] {
 | |
|             margin: 6px 0 !important;
 | |
|             height: 24px;
 | |
|             font: var(--cpd-font-body-md-regular);
 | |
|             line-height: $font-24px;
 | |
|             padding-inline-start: $spacing-12;
 | |
|             border: 0 !important;
 | |
|             outline: 0 !important;
 | |
|             resize: none;
 | |
|             box-sizing: border-box;
 | |
|             min-width: 40%;
 | |
|             flex: 1 !important;
 | |
|             color: $primary-content !important;
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     .mx_InviteDialog_goButton {
 | |
|         min-width: 48px;
 | |
|         margin-inline-start: 10px;
 | |
|         height: 25px;
 | |
|         line-height: $font-25px;
 | |
|     }
 | |
| 
 | |
|     .mx_InviteDialog_buttonAndSpinner {
 | |
|         .mx_Spinner {
 | |
|             /* Width and height are required to trick the layout engine. */
 | |
|             width: 20px;
 | |
|             height: 20px;
 | |
|             margin-inline-start: 5px;
 | |
|             display: inline-block;
 | |
|             vertical-align: middle;
 | |
|         }
 | |
|     }
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_section {
 | |
|     padding-bottom: $spacing-4;
 | |
| 
 | |
|     h3 {
 | |
|         font-size: $font-12px;
 | |
|         color: $muted-fg-color;
 | |
|         font-weight: bold;
 | |
|         text-transform: uppercase;
 | |
|     }
 | |
| 
 | |
|     > p {
 | |
|         margin: 0;
 | |
|     }
 | |
| 
 | |
|     > span {
 | |
|         color: $primary-content;
 | |
|     }
 | |
| 
 | |
|     .mx_InviteDialog_section_showMore {
 | |
|         margin: 7px 18px;
 | |
|         display: block;
 | |
|     }
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_section_hidden_suggestions_disclaimer {
 | |
|     padding: $spacing-8 0 $spacing-16 0;
 | |
|     font: var(--cpd-font-body-md-regular);
 | |
| 
 | |
|     > span {
 | |
|         color: $primary-content;
 | |
|         font-weight: var(--cpd-font-weight-semibold);
 | |
|     }
 | |
| 
 | |
|     > p {
 | |
|         margin: 0;
 | |
|     }
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_footer {
 | |
|     border-top: 1px solid $input-border-color;
 | |
| 
 | |
|     > h3 {
 | |
|         margin: $spacing-12 0;
 | |
|         font-size: $font-12px;
 | |
|         color: $muted-fg-color;
 | |
|         font-weight: bold;
 | |
|         text-transform: uppercase;
 | |
|     }
 | |
| 
 | |
|     .mx_CopyableText.mx_CopyableText_border {
 | |
|         width: unset; /* full width */
 | |
|         margin-bottom: 0;
 | |
| 
 | |
|         > a {
 | |
|             text-decoration: none;
 | |
|             flex-shrink: 1;
 | |
|             overflow: hidden;
 | |
|             text-overflow: ellipsis;
 | |
|         }
 | |
|     }
 | |
| }
 | |
| 
 | |
| /* Many of these styles are stolen from mx_UserPill, but adjusted for the invite dialog. */
 | |
| .mx_InviteDialog_userTile {
 | |
|     margin-inline-end: $spacing-8;
 | |
| 
 | |
|     .mx_InviteDialog_userTile_pill {
 | |
|         background-color: var(--cpd-color-bg-success-subtle);
 | |
|         border-radius: 12px;
 | |
|         display: inline-block;
 | |
|         height: 24px;
 | |
|         line-height: $font-24px;
 | |
|         padding-inline: $spacing-8;
 | |
|         vertical-align: middle;
 | |
|         color: $primary-content;
 | |
| 
 | |
|         .mx_SearchResultAvatar {
 | |
|             border-radius: 20px;
 | |
|             position: relative;
 | |
|             left: -5px;
 | |
|             top: 2px;
 | |
|         }
 | |
| 
 | |
|         img.mx_SearchResultAvatar {
 | |
|             vertical-align: top;
 | |
|         }
 | |
| 
 | |
|         .mx_InviteDialog_userTile_name {
 | |
|             vertical-align: top;
 | |
|         }
 | |
| 
 | |
|         .mx_SearchResultAvatar_threepidAvatar {
 | |
|             background-color: #ffffff; /* this is fine without a var because it's for both themes */
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     .mx_InviteDialog_userTile_remove {
 | |
|         display: inline-block;
 | |
|         vertical-align: middle;
 | |
| 
 | |
|         svg {
 | |
|             vertical-align: middle;
 | |
|         }
 | |
|     }
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_other {
 | |
|     /* Prevent the dialog from jumping around randomly when elements change. */
 | |
|     display: flex;
 | |
|     flex-direction: column;
 | |
|     height: 600px;
 | |
|     overflow: hidden;
 | |
| 
 | |
|     h2 {
 | |
|         display: -webkit-box;
 | |
|         -webkit-line-clamp: 2;
 | |
|         -webkit-box-orient: vertical;
 | |
|         white-space: pre-wrap;
 | |
|         overflow: hidden;
 | |
|     }
 | |
| 
 | |
|     .mx_InviteDialog_addressBar {
 | |
|         margin-inline-end: 0;
 | |
|     }
 | |
| 
 | |
|     .mx_InviteDialog_userSections {
 | |
|         flex-grow: 1;
 | |
|         padding-inline-end: 0;
 | |
| 
 | |
|         .mx_InviteDialog_section {
 | |
|             padding-bottom: 0;
 | |
|             margin-top: $spacing-12;
 | |
|         }
 | |
|     }
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_content {
 | |
|     display: flex;
 | |
|     flex-direction: column;
 | |
|     flex-grow: 1;
 | |
|     overflow: hidden;
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_transfer {
 | |
|     width: auto;
 | |
| 
 | |
|     .mx_InviteDialog_content {
 | |
|         width: 496px;
 | |
|         height: 430px;
 | |
|         overflow: visible;
 | |
| 
 | |
|         .mx_TabbedView {
 | |
|             display: flex;
 | |
|             flex-direction: column;
 | |
|             flex-shrink: 1;
 | |
|             flex-grow: 1;
 | |
|             min-height: 0;
 | |
| 
 | |
|             .mx_TabbedView_tabPanel {
 | |
|                 flex-direction: column;
 | |
| 
 | |
|                 .mx_TabbedView_tabPanelContent {
 | |
|                     display: flex;
 | |
|                     flex-direction: column;
 | |
|                 }
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     .mx_InviteDialog_addressBar {
 | |
|         margin-top: $spacing-8;
 | |
|     }
 | |
| 
 | |
|     input[type="checkbox"] {
 | |
|         margin-inline-end: $spacing-8;
 | |
|     }
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_userSections {
 | |
|     margin-top: $spacing-4;
 | |
|     overflow-y: auto;
 | |
|     padding: 0 45px $spacing-4 0;
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_helpText {
 | |
|     margin: 0;
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_dialPad {
 | |
|     width: 224px;
 | |
|     margin-top: $spacing-16;
 | |
|     margin-inline: auto;
 | |
| 
 | |
|     .mx_InviteDialog_dialPadField {
 | |
|         border-top: 0;
 | |
|         border-inline: 0;
 | |
|         border-radius: 0;
 | |
|         margin-top: 0;
 | |
|         border-color: $quaternary-content;
 | |
| 
 | |
|         &:focus-within {
 | |
|             border-color: $accent;
 | |
|         }
 | |
| 
 | |
|         input {
 | |
|             font-size: 18px;
 | |
|             font-weight: var(--cpd-font-weight-semibold);
 | |
|             padding-top: 0;
 | |
|         }
 | |
| 
 | |
|         .mx_Field_postfix {
 | |
|             /* Remove border separator between postfix and field content */
 | |
|             border-left: none;
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     .mx_DialPad {
 | |
|         row-gap: $spacing-16;
 | |
|         column-gap: 48px;
 | |
|         margin-inline: auto;
 | |
|     }
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_transferConsultConnect {
 | |
|     padding-top: $spacing-16;
 | |
|     /* This wants a drop shadow the full width of the dialog, so use negative margin to make it full width,
 | |
|      * then compensate with padding
 | |
|      */
 | |
|     padding-inline: $spacing-24;
 | |
|     margin-inline: calc(-1 * $spacing-24);
 | |
|     border-top: 1px solid $quinary-content;
 | |
| 
 | |
|     display: flex;
 | |
|     flex-direction: row;
 | |
|     align-items: center;
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_transferConsultConnect_pushRight {
 | |
|     margin-inline-start: auto;
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_userDirectoryIcon::before {
 | |
|     mask-image: url("$(res)/img/voip/tab-userdirectory.svg");
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_dialPadIcon::before {
 | |
|     mask-image: url("$(res)/img/voip/tab-dialpad.svg");
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_tile {
 | |
|     cursor: pointer;
 | |
|     display: grid;
 | |
|     gap: $spacing-8 $spacing-12;
 | |
|     align-items: center;
 | |
| 
 | |
|     &.mx_InviteDialog_tile--room {
 | |
|         /* mx_InviteDialog_tile_avatarStack, mx_InviteDialog_tile_nameStack, time */
 | |
|         grid-template-columns: min-content auto auto;
 | |
|         padding: $spacing-4 $spacing-8;
 | |
| 
 | |
|         &:hover {
 | |
|             background-color: $header-panel-bg-color;
 | |
|             border-radius: 4px;
 | |
|         }
 | |
| 
 | |
|         .mx_InviteDialog_tile--room_selected {
 | |
|             border-radius: 36px;
 | |
|             background-color: var(--cpd-color-bg-success-subtle);
 | |
| 
 | |
|             &::before {
 | |
|                 content: "";
 | |
|                 width: 24px;
 | |
|                 height: 24px;
 | |
|                 grid-column: 1;
 | |
|                 grid-row: 1;
 | |
|                 mask-image: url("$(res)/img/feather-customised/check.svg");
 | |
|                 mask-size: 100%;
 | |
|                 mask-repeat: no-repeat;
 | |
|                 position: absolute;
 | |
|                 top: 6px; /* 50% */
 | |
|                 left: 6px; /* 50% */
 | |
|                 background-color: $primary-content;
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         .mx_InviteDialog_tile--room_time {
 | |
|             margin-inline-start: auto;
 | |
|             width: max-content;
 | |
|             font-size: $font-12px;
 | |
|             color: $muted-fg-color;
 | |
|         }
 | |
| 
 | |
|         .mx_InviteDialog_tile--room_highlight {
 | |
|             font-weight: 900;
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     &.mx_InviteDialog_tile--inviterError {
 | |
|         grid-template-columns: max-content auto; /* max-content = avatar width */
 | |
|         margin-bottom: $spacing-24;
 | |
| 
 | |
|         &:last-child {
 | |
|             margin-bottom: 0;
 | |
|         }
 | |
| 
 | |
|         .mx_InviteDialog_tile--inviterError_errorText {
 | |
|             grid-row-start: 2;
 | |
|             grid-column-start: 2;
 | |
| 
 | |
|             font-size: $font-15px;
 | |
|             color: $alert;
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     * {
 | |
|         vertical-align: middle;
 | |
|     }
 | |
| 
 | |
|     .mx_InviteDialog_tile_avatarStack,
 | |
|     .mx_InviteDialog_tile--room_selected {
 | |
|         width: 36px;
 | |
|         height: 36px;
 | |
|         display: inline-block;
 | |
|         position: relative;
 | |
|     }
 | |
| 
 | |
|     .mx_InviteDialog_tile_avatarStack {
 | |
|         grid-row-start: 1;
 | |
|         grid-column-start: 1;
 | |
| 
 | |
|         & > * {
 | |
|             position: absolute;
 | |
|             top: 0;
 | |
|             left: 0;
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     .mx_InviteDialog_tile_nameStack {
 | |
|         grid-row-start: 1;
 | |
|         grid-column-start: 2;
 | |
| 
 | |
|         display: flex;
 | |
|         flex-flow: column;
 | |
|         align-self: center;
 | |
|         align-items: baseline;
 | |
|         gap: 2px 0;
 | |
|         overflow: hidden;
 | |
| 
 | |
|         .mx_InviteDialog_tile_nameStack_name,
 | |
|         .mx_InviteDialog_tile_nameStack_userId {
 | |
|             overflow: hidden;
 | |
|             text-overflow: ellipsis;
 | |
|             white-space: nowrap;
 | |
|             max-width: 100%;
 | |
|         }
 | |
| 
 | |
|         .mx_InviteDialog_tile_nameStack_name {
 | |
|             font-size: $font-15px;
 | |
|             font-weight: var(--cpd-font-weight-semibold);
 | |
|             color: $primary-content;
 | |
|         }
 | |
| 
 | |
|         .mx_InviteDialog_tile_nameStack_userId {
 | |
|             font-size: $font-12px;
 | |
|             color: $muted-fg-color;
 | |
|         }
 | |
|     }
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_multiInviterError {
 | |
|     > h4 {
 | |
|         font-size: $font-15px;
 | |
|         line-height: $font-24px;
 | |
|         color: $secondary-content;
 | |
|         font-weight: normal;
 | |
|     }
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_identityServer {
 | |
|     margin-top: 1em;
 | |
| }
 | |
| 
 | |
| .mx_InviteDialog_oneThreepid {
 | |
|     font-size: $font-12px;
 | |
|     margin: $spacing-8 0;
 | |
| }
 |