* Copyright (c) 2022 - present TinyVue Authors.
* Copyright (c) 2022 - present Huawei Cloud Computing Technologies Co., Ltd.
*
* Use of this source code is governed by an MIT-style license.
*
* THE OPEN SOURCE SOFTWARE IN THIS PRODUCT IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL,
* BUT WITHOUT ANY WARRANTY, WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR
* A PARTICULAR PURPOSE. SEE THE APPLICABLE LICENSES FOR MORE DETAILS.
*
*/
@import '../custom.less';
@import './vars.less';
@toggle-menu-prefix-cls: ~'@{css-prefix}toggle-menu';
@input-prefix-cls: ~'@{css-prefix}input';
@tree-node-prefix-cls: ~'@{css-prefix}tree-node';
@tree-prefix-cls: ~'@{css-prefix}tree';
@svg-prefix-cls: ~'@{css-prefix}svg';
.@{toggle-menu-prefix-cls} {
.inject-ToggleMenu-vars();
width: var(--tv-ToggleMenu-width);
position: relative;
& &__body {
cursor: pointer;
line-height: 1;
padding-left: 4px;
width: 100%;
&,
&:hover {
text-decoration: none;
}
}
& &__name {
color: var(--tv-ToggleMenu-name-text-color);
font-size: var(--tv-ToggleMenu-font-size);
}
& &__tree {
position: relative;
}
& &__filter {
position: relative;
margin-bottom: 8px;
width: calc(100% - 16px);
}
& &__filter-search {
width: var(--tv-ToggleMenu-filter-search-size);
height: var(--tv-ToggleMenu-filter-search-size);
line-height: var(--tv-ToggleMenu-filter-search-size);
display: block;
text-align: center;
position: absolute;
right: 0;
top: 0;
.@{svg-prefix-cls} {
fill: var(--tv-ToggleMenu-filter-search-icon-color);
font-size: var(--tv-ToggleMenu-filter-search-svg-size);
}
}
& &__toggle {
position: absolute;
top: 0;
left: calc(100% - 14px);
z-index: 2;
width: 14px;
height: var(--tv-ToggleMenu-filter-search-size);
line-height: var(--tv-ToggleMenu-filter-search-size);
background: var(--tv-ToggleMenu-toggle-bg-color);
cursor: pointer;
transition: 0.2s linear;
.@{svg-prefix-cls} {
fill: var(--tv-ToggleMenu-toggle-icon-color);
}
&:hover .@{svg-prefix-cls} {
fill: var(--tv-ToggleMenu-toggle-icon-color-hover);
}
}
& &__link {
width: 100%;
}
&.is-toggle-right {
width: 80px;
.@{tree-node-prefix-cls}.is-current {
.@{tree-node-prefix-cls}__content {
background: none;
}
}
.@{tree-node-prefix-cls}__content:hover {
background: none;
.@{svg-prefix-cls} {
fill: var(--tv-ToggleMenu-toggle-icon-color-hover);
}
}
}
&.is-toggle-right &__toggle {
position: relative;
left: 0;
}
&.is-toggle-right &__filter {
display: none;
}
.@{tree-prefix-cls} {
.is-current:not(.show-checkbox) {
> .@{tree-node-prefix-cls}__content > .@{tree-node-prefix-cls}__content-left {
font-weight: var(--tv-ToggleMenu-toggle-font-weight);
}
}
.@{tree-node-prefix-cls}__content {
height: 32px;
}
:not(.show-checkbox) > .@{tree-node-prefix-cls}__content .@{tree-node-prefix-cls}__label,
.@{tree-node-prefix-cls}__content-right {
&:hover {
background-color: var(--tv-ToggleMenu-toggle-bg-hover-color);
font-weight: var(--tv-ToggleMenu-toggle-font-weight);
}
}
.@{tree-node-prefix-cls}__expand-icon {
font-size: 16px;
}
&.is-wrap {
.@{tree-node-prefix-cls}__content {
height: 32px;
}
.@{toggle-menu-prefix-cls}__name {
display: inline-block;
white-space: normal;
line-height: normal;
word-break: break-word;
}
}
&.is-overflow {
.@{toggle-menu-prefix-cls}__name {
width: calc(100% - 18px);
vertical-align: middle;
display: inline-block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
}
&.is-node-hide {
.@{toggle-menu-prefix-cls}__body,
.@{tree-node-prefix-cls}__children {
display: none;
}
}
}
.@{input-prefix-cls}__inner {
font-size: var(--tv-ToggleMenu-font-size);
padding-right: 30px;
border-radius: 0;
border-top: 0;
border-left: 0;
border-right: 0;
}
.@{tree-node-prefix-cls}__content {
height: var(--tv-ToggleMenu-tree-node-height);
line-height: var(--tv-ToggleMenu-tree-node-height);
font-size: var(--tv-ToggleMenu-font-size);
padding-left: 0;
margin-left: 0;
}
}