1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00
lens/src/renderer/components/menu/menu.scss
2021-11-16 11:14:28 -05:00

126 lines
2.7 KiB
SCSS

/**
* Copyright (c) 2021 OpenLens Authors
*
* Permission is hereby granted, free of charge, to any person obtaining a copy of
* this software and associated documentation files (the "Software"), to deal in
* the Software without restriction, including without limitation the rights to
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
* the Software, and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
.Menu {
--bgc: var(--layoutBackground);
position: absolute;
display: flex;
flex-direction: column;
background: var(--bgc);
list-style: none;
border: 1px solid var(--borderColor);
z-index: 101;
box-shadow: rgb(0 0 0 / 17%) 0px 6px 9px 0px;
border-radius: 4px;
&.portal {
left: -1000px;
top: -1000px;
}
&:not(.portal) {
margin: $margin 0;
&.left {
left: 0;
}
&.right {
right: 0;
}
&.top {
bottom: 100%;
}
&.bottom {
top: 100%;
}
}
&:empty {
display: none;
}
}
.MenuItem {
--color: var(--textColorPrimary);
--color-active: white;
--bgc-active: var(--menuActiveBackground);
position: relative;
display: flex;
align-items: center;
color: var(--color);
padding: 6px var(--padding);
margin-bottom: -3px;
white-space: nowrap;
text-decoration: none;
text-overflow: ellipsis;
border-radius: 6px;
border: 3px solid var(--bgc);
&:last-of-type {
margin-bottom: 0;
}
&:not(.disabled) {
cursor: pointer;
}
&:hover:not(.disabled) {
color: var(--color-active);
background: var(--bgc-active);
cursor: pointer;
}
&.active, &:focus {
color: var(--color-active);
background-color: var(--bgc-active);
}
&.disabled {
pointer-events: none;
opacity: .5;
}
&.spacer {
padding: 0;
height: 0;
overflow: hidden;
border-top: 1px solid var(--contentColor);
pointer-events: none;
}
.Icon {
&:first-child {
margin-left: 0;
margin-right: $padding;
}
}
}
.theme-light {
.Menu {
border: 1px solid var(--borderColor);
}
}