mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-03-11 18:01:23 +00:00
232 lines
5.3 KiB
SCSS
232 lines
5.3 KiB
SCSS
/// list.scss -*- Mode: scss; indent-tabs-mode: nil; basic-offset: 2 -*-
|
|
@import 'extends';
|
|
|
|
// List item label
|
|
md-list-item {
|
|
.md-list-item-inner {
|
|
flex-grow: 1; // use all column space
|
|
}
|
|
md-icon,
|
|
.md-button md-icon {
|
|
margin-left: 0;
|
|
}
|
|
.sg-item-name {
|
|
font-size: sg-size(button);
|
|
max-width: 75%; // leave some place for a secondary button
|
|
text-transform: initial;
|
|
overflow: hidden;
|
|
align-items: flex-start;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
}
|
|
.sg-inline-list-icon-label {
|
|
text-transform: uppercase;
|
|
}
|
|
}
|
|
|
|
// Add some padding to the first icon in a list item
|
|
//.md-list-item-inner {
|
|
// > i:first-child {
|
|
// margin-left: $mg;
|
|
// }
|
|
//}
|
|
|
|
// The right tile for a list item.
|
|
// ----------------------------------------------------------------------------
|
|
.md-tile-right {
|
|
padding-right: $item-padding-right;
|
|
}
|
|
// The right tile for a list item (avatar container)
|
|
// ----------------------------------------------------------------------------
|
|
|
|
.md-tile-left,
|
|
.md-tile-right {
|
|
border-radius: 100%;
|
|
padding: $layout-gutter-width;
|
|
width: $sg-md-grid-pitch + $baseline-grid;
|
|
height: $sg-md-grid-pitch + $baseline-grid;
|
|
line-height: $sg-md-grid-pitch + $baseline-grid;
|
|
background-clip: content-box;
|
|
}
|
|
.md-tile-right {
|
|
margin-right: -$layout-gutter-width;
|
|
}
|
|
// Overqualifying to override a rule in source
|
|
div.md-tile-left {
|
|
min-width: $sg-md-grid-pitch + $baseline-grid;
|
|
}
|
|
|
|
// Specific lists with a single subheader (sg-md-subheader--fixed) at the top
|
|
[id='messagesList'],
|
|
[id='contactsList'] {
|
|
border-top: 44px solid transparent; // padding for the header.subheader until md-subheader is fixed
|
|
}
|
|
|
|
.sg-section-list {
|
|
md-list-item {
|
|
transition: background-color $swift-ease-in-duration $swift-ease-in-timing-function,
|
|
color 0.12s linear;
|
|
&:hover:not([disabled]) {
|
|
background-color: sg-color($sogoPaper, 300);
|
|
color: sg-color($sogoBlue, 800);
|
|
cursor: pointer;
|
|
}
|
|
&:active {
|
|
color: sg-color($sogoBlue, 800);
|
|
}
|
|
&:focus,
|
|
&.sg-active {
|
|
background-color: sg-color($sogoBlue, 100);
|
|
}
|
|
.md-list-item-inner {
|
|
.md-secondary {
|
|
// Expect the container to include a sg-tile-icons
|
|
right: 0px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.sg {
|
|
&-tile-content {
|
|
align-items: baseline;
|
|
flex-direction: row;
|
|
flex-wrap: wrap;
|
|
flex: 1;
|
|
justify-content: space-between;
|
|
p {
|
|
margin: $list-p-margin;
|
|
font-size: sg-size(body);
|
|
}
|
|
.msg-date {
|
|
float: right;
|
|
font-size: sg-size(body);
|
|
font-weight: $sg-font-light;
|
|
line-height: $sg-line-height-2;
|
|
margin-left: 1em;
|
|
}
|
|
.#{$md}-subhead-multi,
|
|
.#{$md}-subhead-solo,
|
|
.#{$md}-body-multi {
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
}
|
|
.#{$md}-subhead-multi {
|
|
@extend .#{$md}-body-1;
|
|
font-size: initial;
|
|
}
|
|
.#{$md}-body-multi {
|
|
@extend .#{$md}-caption;
|
|
}
|
|
}
|
|
// Small tile of vertically-aligned icons
|
|
&-tile-icons {
|
|
md-icon {
|
|
font-size: $sg-font-size-1;
|
|
color: $colorGray;
|
|
margin: 2px;
|
|
}
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
justify-content: start;
|
|
width: (2 * $mg);
|
|
height:(7 * $line);
|
|
}
|
|
}
|
|
.sg-avatars {
|
|
margin: ($mg / 2) 0 0 ($mg / 2);
|
|
img {
|
|
border-radius: 100%;
|
|
margin-right: ($mg / 2);
|
|
}
|
|
}
|
|
|
|
// Avatar placeholder
|
|
// ------------------------------------
|
|
.md-tile-left:before {
|
|
font-family: 'Material Icons';
|
|
font-size: 40px;
|
|
color: rgba(0, 0, 0, 0.26);
|
|
}
|
|
.md-tile-left-card:before {
|
|
@extend .md-tile-left;
|
|
content: "\e7fd"; // person
|
|
}
|
|
.md-tile-left-list:before {
|
|
@extend .md-tile-left;
|
|
content: "\e7ef"; // group
|
|
}
|
|
.md-tile-left-selected:before {
|
|
@extend .md-tile-left;
|
|
content: "\e5ca"; // check
|
|
}
|
|
.md-tile-left-accepted:before {
|
|
@extend .md-tile-left;
|
|
background-color: rgba(0, 255, 0, 0.3) !important;
|
|
content: "\e5ca"; // check
|
|
color: rgba(0, 0, 0, 0.5);
|
|
}
|
|
.md-tile-left-declined:before {
|
|
@extend .md-tile-left;
|
|
background-color: rgba(255, 0, 0, 0.3) !important;
|
|
content: "\e15b"; // remove
|
|
color: rgba(0, 0, 0, 0.5);
|
|
}
|
|
.md-tile-left-delegated:before {
|
|
@extend .md-tile-left;
|
|
background-color: rgba(192, 192, 192, 0.3) !important;
|
|
content: "\e5c8"; // arrow-forward
|
|
color: rgba(0, 0, 0, 0.5);
|
|
}
|
|
.md-tile-left-needs-action:before {
|
|
@extend .md-tile-left;
|
|
background-color: rgba(255, 255, 0, 0.3) !important;
|
|
content: "?";
|
|
}
|
|
.md-tile-left-tentative:before {
|
|
@extend .md-tile-left;
|
|
background-color: rgba(255, 255, 0, 0.3) !important;
|
|
content: "\e7fd"; // person
|
|
}
|
|
.sg-avatar {
|
|
@extend .md-tile-left-card;
|
|
margin-right: 0;
|
|
margin-left: 0;
|
|
}
|
|
.sg-list-avatar {
|
|
@extend .md-tile-left-list;
|
|
margin-right: 0;
|
|
margin-left: 0;
|
|
}
|
|
.sg-selected-avatar {
|
|
@extend .md-tile-left-selected;
|
|
margin-right: 0;
|
|
margin-left: 0;
|
|
}
|
|
.sg-accepted {
|
|
@extend .md-tile-left-accepted;
|
|
margin-right: 0;
|
|
margin-left: 0;
|
|
}
|
|
.sg-declined {
|
|
@extend .md-tile-left-declined;
|
|
margin-right: 0;
|
|
margin-left: 0;
|
|
}
|
|
.sg-delegated {
|
|
@extend .md-tile-left-delegated;
|
|
margin-right: 0;
|
|
margin-left: 0;
|
|
}
|
|
.sg-needs-action {
|
|
@extend .md-tile-left-needs-action;
|
|
margin-right: 0;
|
|
margin-left: 0;
|
|
}
|
|
.sg-tentative {
|
|
@extend .md-tile-left-tentative;
|
|
margin-right: 0;
|
|
margin-left: 0;
|
|
} |