* Add useDeviceList hook Signed-off-by: Ajay Bura <ajbura@gmail.com> * Add isCrossVerified func to matrixUtil Signed-off-by: Ajay Bura <ajbura@gmail.com> * Add className prop in sidebar avatar comp Signed-off-by: Ajay Bura <ajbura@gmail.com> * Add unverified session indicator in sidebar Signed-off-by: Ajay Bura <ajbura@gmail.com> * Add info card component Signed-off-by: Ajay Bura <ajbura@gmail.com> * Add css variables Signed-off-by: Ajay Bura <ajbura@gmail.com> * Add cross signin status hook Signed-off-by: Ajay Bura <ajbura@gmail.com> * Add hasCrossSigninAccountData function Signed-off-by: Ajay Bura <ajbura@gmail.com> * Add cross signin info card in device manage component Signed-off-by: Ajay Bura <ajbura@gmail.com> * Add cross signing and key backup component Signed-off-by: Ajay Bura <ajbura@gmail.com> * Fix typo Signed-off-by: Ajay Bura <ajbura@gmail.com> * WIP Signed-off-by: Ajay Bura <ajbura@gmail.com> * Add cross singing dialogs Signed-off-by: Ajay Bura <ajbura@gmail.com> * Add cross signing set/reset Signed-off-by: Ajay Bura <ajbura@gmail.com> * Add SecretStorageAccess component Signed-off-by: Ajay Bura <ajbura@gmail.com> * Add key backup Signed-off-by: Ajay Bura <ajbura@gmail.com> * WIP * WIP * WIP * WIP * Show progress when restoring key backup * Add SSSS and key backup
77 lines
1.4 KiB
SCSS
77 lines
1.4 KiB
SCSS
@use '../../partials/flex';
|
|
@use '../../partials/dir';
|
|
|
|
.sidebar {
|
|
@extend .cp-fx__column;
|
|
|
|
width: var(--navigation-sidebar-width);
|
|
height: 100%;
|
|
background-color: var(--bg-surface-extra-low);
|
|
@include dir.side(border,
|
|
none,
|
|
1px solid var(--bg-surface-border),
|
|
);
|
|
|
|
&__scrollable,
|
|
&__sticky {
|
|
width: 100%;
|
|
}
|
|
|
|
&__scrollable {
|
|
@extend .cp-fx__item-one;
|
|
}
|
|
}
|
|
|
|
.scrollable-content {
|
|
&::after {
|
|
content: "";
|
|
display: block;
|
|
width: 100%;
|
|
height: 8px;
|
|
|
|
background: transparent;
|
|
background-image: linear-gradient(
|
|
to top,
|
|
var(--bg-surface-extra-low),
|
|
var(--bg-surface-extra-low-transparent));
|
|
position: sticky;
|
|
bottom: -1px;
|
|
left: 0;
|
|
}
|
|
}
|
|
|
|
.featured-container,
|
|
.space-container,
|
|
.sticky-container {
|
|
@extend .cp-fx__column--c-c;
|
|
|
|
padding: var(--sp-ultra-tight) 0;
|
|
|
|
& > .sidebar-avatar,
|
|
& > .avatar-container {
|
|
margin: calc(var(--sp-tight) / 2) 0;
|
|
}
|
|
}
|
|
.sidebar-divider {
|
|
margin: auto;
|
|
width: 24px;
|
|
height: 1px;
|
|
background-color: var(--bg-surface-border);
|
|
}
|
|
|
|
.sidebar__cross-signin-alert .avatar-container {
|
|
box-shadow: var(--bs-danger-border);
|
|
animation-name: pushRight;
|
|
animation-duration: 400ms;
|
|
animation-iteration-count: infinite;
|
|
animation-direction: alternate;
|
|
}
|
|
|
|
@keyframes pushRight {
|
|
from {
|
|
transform: translateX(4px) scale(1);
|
|
}
|
|
to {
|
|
transform: translateX(0) scale(1);
|
|
}
|
|
} |