lbry-desktop/ui/scss/component/menu-button.scss
2021-10-05 09:20:34 -07:00

163 lines
2.9 KiB
SCSS

// Extends reach-ui menu button base stylesheet
/* Used to detect in JavaScript if apps have loaded styles or not. */
:root {
--reach-menu-button: 1;
}
[data-reach-menu] {
display: block;
position: absolute;
z-index: 2;
font-size: var(--font-body);
max-width: calc(100% - var(--height-button) - var(--spacing-xs));
}
[data-reach-menu-list] {
display: block;
white-space: nowrap;
outline: none;
background-color: var(--color-menu-background);
border: 1px solid var(--border-color);
border-top: none;
}
[data-reach-menu-item] {
display: block;
z-index: 2;
&:focus {
box-shadow: none;
}
}
[data-reach-menu-item] {
cursor: pointer;
display: block;
color: inherit;
font: inherit;
text-decoration: initial;
border-radius: var(--border-radius);
}
[data-reach-menu-item][data-selected] {
background-color: var(--color-menu-background--active);
box-shadow: none;
}
.menu__button {
display: flex;
justify-content: center;
align-items: center;
border-radius: 100%;
padding: 0.3rem;
.icon {
stroke: var(--color-menu-icon);
}
&:focus,
&:hover {
opacity: 1;
background-color: var(--color-button-alt-bg);
.icon {
stroke: var(--color-menu-icon-active);
}
}
}
.menu__title {
&[aria-expanded='true'] {
background-color: var(--color-header-button-active);
}
}
.menu__list {
box-shadow: var(--card-box-shadow);
animation: menu-animate-in var(--animation-duration) var(--animation-style);
border: 1px solid var(--color-border);
border-radius: var(--border-radius);
padding: var(--spacing-xs) 0;
[data-reach-menu-item] {
margin: 0 var(--spacing-xs);
}
}
.menu__list--header {
@extend .menu__list;
margin-top: 19px;
}
.menu__list--comments {
@extend .menu__list;
}
.menu__link {
display: flex;
align-items: center;
padding: var(--spacing-s);
padding-right: var(--spacing-l);
height: var(--button-height);
.icon {
stroke: var(--color-menu-icon);
margin-right: var(--spacing-s);
}
.badge {
margin-left: var(--spacing-s);
}
}
.menu__link-help {
@extend .menu__link;
display: block;
color: var(--color-text-help);
font-size: var(--font-small);
padding-top: 0;
white-space: normal;
text-overflow: ellipsis;
overflow-x: hidden;
}
.menu__link-disable {
@extend .menu__link;
color: var(--color-text-subtitle) !important;
}
.menu__link--notification {
width: 100%;
display: flex;
align-items: flex-start;
.icon__wrapper {
height: 2.5rem;
width: 2.5rem;
}
&:hover {
cursor: pointer;
}
}
.menu__link--notification-nolink {
@extend .menu__link--notification;
&:hover {
cursor: default;
}
}
.menu__link--all-notifications {
@extend .button--alt;
width: auto;
align-self: flex-start;
margin-right: auto;
font-weight: var(--font-weight-bold);
margin-top: var(--spacing-m);
}
.menu__separator {
margin-top: var(--border-radius);
margin-bottom: var(--border-radius);
}