@use 'sass:map';

@use 'mixins/mixins' as *;
@use 'mixins/var' as *;
@use 'common/var' as *;

@include b(combo-tree) {
  @include set-component-css-var('tree', $tree);
}

@include b(combo-tree) {
  position: relative;
  width: 100%;
  line-height: map.get($input-height, 'default');
  display: inline-block;

  .tree-trigger {
    @include e(tags) {
      position: absolute;
      line-height: normal;
      top: 50%;
      transform: translateY(-50%);
      white-space: normal;
      z-index: var(--sg-index-normal);
      display: flex;
      align-items: center;
      flex-wrap: wrap;

      .#{$namespace}-tag {
        box-sizing: border-box;
        border-color: transparent;
        margin: 2px 0 2px 6px;
      }
    }
  }

  .sg-creatable-input {
    flex-grow: 1;
    font-size: var(--sg-font-size-base);
    color: var(--sg-text-color-primary);
    border: none;
    padding: 0;
    margin-left: 6px;
    height: 28px;
    line-height: 28px;
    outline: none;
    appearance: none;
    background-color: transparent;
  }

  @include e(input) {
    display: flex;

    .#{$namespace}-input__inner {
      cursor: pointer;
      display: inline-flex;

      &:focus {
        border-color: var(--sg-border-color-hover) !important;
      }
    }

    @include e(suffix) {
      font-size: var(--sg-font-size-base);
      transition: transform var(--sg-transition-duration);
      transform: rotateZ(0deg) scale(.75);
      color: var(--sg-text-color-secondary);
      font-weight: 700;
      cursor: pointer;

      @include when(reverse) {
        transform: rotateZ(180deg) scale(.75);
        color: var(--sg-color-primary);
      }

      &.delete {
        color:var(--sg-text-color-tool);
      }
    }

    &.is-focus .#{$namespace}-input__inner {
      border-color: var(--sg-border-color-hover) !important;
    }
  }

  @include e(content) {
    padding: 12px;

    @include m(view) {
      position: relative;
      width: 100%;
      height: 100%;

      .sg-tree {
        width: 100%;
        height: 100%;
      }
    }
  }

  @include e(popper) {
    border: none !important;
  }
}

