123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220 |
- @use 'sass:map';
- @use 'mixins/mixins' as *;
- @use 'mixins/var' as *;
- @use 'common/var' as *;
- @mixin cascader-tag-normal($background-color) {
- .#{$namespace}-tag {
- display: inline-flex;
- align-items: center;
- max-width: 100%;
- margin: 2px 0 2px 6px;
- text-overflow: ellipsis;
- background: $background-color;
- &:not(.is-hit) {
- border-color: transparent;
- }
- > span {
- flex: 1;
- overflow: hidden;
- text-overflow: ellipsis;
- }
- .#{$namespace}-icon-close {
- flex: none;
- background-color: getCssVar('text-color', 'placeholder');
- color: getCssVar('color-white');
- &:hover {
- background-color: getCssVar('text-color', 'secondary');
- }
- }
- }
- }
- @include b(cascader) {
- @include set-component-css-var('cascader', $cascader);
- display: inline-block;
- vertical-align: middle;
- position: relative;
- font-size: getCssVar('font-size', 'base');
- line-height: map.get($input-height, 'default');
- outline: none;
- &:not(.is-disabled):hover {
- .#{$namespace}-input__wrapper {
- cursor: pointer;
- box-shadow: 0 0 0 1px getCssVar('input', 'hover-border-color') inset;
- }
- }
- .#{$namespace}-input {
- display: flex;
- cursor: pointer;
- .#{$namespace}-input__inner {
- text-overflow: ellipsis;
- cursor: pointer;
- }
- .#{$namespace}-input__suffix-inner {
- .#{$namespace}-icon {
- height: calc(100% - 2px);
- svg {
- vertical-align: middle;
- }
- }
- }
- .icon-arrow-down {
- transition: transform getCssVar('transition-duration');
- font-size: 14px;
- @include when(reverse) {
- transform: rotateZ(180deg);
- }
- }
- .icon-circle-close:hover {
- color: var(
- #{getCssVarName('input', 'clear-hover-color')},
- map.get($input, 'clear-hover-color')
- );
- }
- @include when(focus) {
- .#{$namespace}-input__wrapper {
- box-shadow: 0 0 0 1px
- var(
- #{getCssVarName('input', 'focus-border-color')},
- map.get($input, 'focus-border-color')
- )
- inset;
- }
- }
- }
- @each $size in (large, small) {
- @include m($size) {
- font-size: map.get($input-font-size, $size);
- line-height: map.get($input-height, $size);
- }
- }
- @include when(disabled) {
- .#{$namespace}-cascader__label {
- z-index: calc(getCssVar('index', 'normal') + 1);
- color: getCssVar('disabled-text-color');
- }
- }
- @include e(dropdown) {
- @include set-component-css-var('cascader', $cascader);
- }
- @include e(dropdown) {
- font-size: getCssVar('cascader-menu-font-size');
- border-radius: getCssVar('cascader-menu-radius');
- @include picker-popper(
- getCssVar('cascader-menu-fill'),
- getCssVar('cascader-menu-border'),
- getCssVar('cascader-menu-shadow')
- );
- &.#{$namespace}-popper {
- box-shadow: getCssVar('cascader-menu-shadow');
- }
- }
- @include e(tags) {
- position: absolute;
- left: 0;
- right: 30px;
- top: 50%;
- transform: translateY(-50%);
- display: flex;
- flex-wrap: wrap;
- line-height: normal;
- text-align: left;
- box-sizing: border-box;
- @include cascader-tag-normal(getCssVar('cascader-tag-background'));
- &.is-validate {
- right: 55px;
- }
- }
- @include e(collapse-tags) {
- white-space: normal;
- z-index: getCssVar('index-normal');
- @include cascader-tag-normal(getCssVar('fill-color'));
- }
- @include e(suggestion-panel) {
- border-radius: getCssVar('cascader-menu', 'radius');
- }
- @include e(suggestion-list) {
- max-height: 204px;
- margin: 0;
- padding: 6px 0;
- font-size: getCssVar('font-size', 'base');
- color: getCssVar('cascader-menu', 'text-color');
- text-align: center;
- }
- @include e(suggestion-item) {
- display: flex;
- justify-content: space-between;
- align-items: center;
- height: 34px;
- padding: 0 15px;
- text-align: left;
- outline: none;
- cursor: pointer;
- &:hover,
- &:focus {
- background: getCssVar('cascader-node', 'background-hover');
- }
- &.is-checked {
- color: getCssVar('cascader', 'menu-selected-text-color');
- font-weight: bold;
- }
- > span {
- margin-right: 10px;
- }
- }
- @include e(empty-text) {
- margin: 10px 0;
- color: getCssVar('cascader', 'color-empty');
- }
- @include e(search-input) {
- flex: 1;
- height: 24px;
- min-width: 60px;
- margin: 2px 0 2px map.get($input-padding-horizontal, 'default')-$border-width;
- padding: 0;
- color: getCssVar('cascader', 'menu-text-color');
- border: none;
- outline: none;
- box-sizing: border-box;
- background: transparent;
- &::placeholder {
- // two input overlap
- color: transparent;
- }
- }
- }
|