0082b90c2b
Кнопка с выпадающим меню (клик по кнопке — открыть список, выбор варианта сразу вызывает onSelect). Логика печати PrintButton вынесена в printRoot(), чтобы её можно было вызвать программно после выбора варианта в DropdownButton.
84 lines
1.2 KiB
SCSS
84 lines
1.2 KiB
SCSS
@import "../tokens/tokens";
|
|
|
|
.root {
|
|
position: relative;
|
|
display: inline-block;
|
|
}
|
|
|
|
.chevron,
|
|
.chevronOpen {
|
|
transition: transform 0.18s;
|
|
}
|
|
|
|
.chevronOpen {
|
|
transform: rotate(180deg);
|
|
}
|
|
|
|
.menu {
|
|
position: absolute;
|
|
top: calc(100% + 6px);
|
|
z-index: 20;
|
|
min-width: 220px;
|
|
max-width: min(360px, calc(100vw - 24px));
|
|
background: $white;
|
|
border: 1px solid $gray-200;
|
|
border-radius: $r-md;
|
|
box-shadow: $sh-3;
|
|
padding: 6px;
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 2px;
|
|
}
|
|
|
|
.right {
|
|
right: 0;
|
|
}
|
|
|
|
.left {
|
|
left: 0;
|
|
}
|
|
|
|
.item {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 12px;
|
|
padding: 9px 12px;
|
|
border: 0;
|
|
background: transparent;
|
|
border-radius: $r-sm;
|
|
font-family: $font-sans;
|
|
font-size: 13px;
|
|
color: $navy-800;
|
|
text-align: left;
|
|
cursor: pointer;
|
|
white-space: nowrap;
|
|
transition: background 0.15s;
|
|
|
|
&:hover {
|
|
background: $navy-50;
|
|
}
|
|
}
|
|
|
|
.itemLabel {
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
}
|
|
|
|
.check {
|
|
flex: none;
|
|
color: $gold-600;
|
|
}
|
|
|
|
@include below($bp-xs) {
|
|
.menu {
|
|
min-width: 180px;
|
|
padding: 4px;
|
|
}
|
|
|
|
.item {
|
|
padding: 8px 10px;
|
|
white-space: normal;
|
|
}
|
|
}
|