@import "./varible";
// 动态变量只能通过 map-get这样来实现
@mixin generalAllColorButton() {
  @each $type in $types {
    $color: map-get($colors, $type);
    &.#{$type} {
      color: #fff;
      border: 1px solid $color;
      background-color: $color;
      transition: all .3s ease;
      &.disabled {
        border: 1px solid lighten($color, 25);
        background-color: lighten($color, 25);
        cursor: not-allowed;
      }
      &:hover:not(.disabled), &:focus:not(.disabled) {
        color: #fff;
        border: 1px solid lighten($color, 10);
        background-color: lighten($color, 10);
      }
    }
  }
}

@mixin generalAllColorPlainButton() {
  @each $type in $types {
    $background-color: map-get($background-colors, $type);
    $color: map-get($colors, $type);
    &.#{$type} {
      color: $color;
      border: 1px solid $color;
      background-color: $background-color;
      transition: all .3s ease;
      &.disabled {
        color: lighten($color, 20);
        border: 1px solid lighten($color, 25);
        background-color: lighten($background-color, 2);
        cursor: not-allowed;
      }
      &:hover:not(.disabled), &:focus:not(.disabled) {
        border: 1px solid $color;
        background-color: $color;
        color: #fff;
      }
    }
  }
}

@mixin generalAllColorSwitch() {
  @each $type in $types {
    $color: map-get($colors, $type);
    &.#{$type} {
      background-color: $color;
      transition: all .3s ease;
    }
  }
}

@mixin generalAllColorDisabledSwitch() {
  @each $type in $types {
    $color: map-get($colors, $type);
    &.#{$type} {
      background-color: lighten($color, 25);
    }
  }
}

@mixin generalAllColorMessage() {
  @each $type in $types {
    $background-color: map-get($background-colors, $type);
    $color: map-get($colors, $type);
    &.#{$type} {
      background-color: $background-color;
      color: $color;
      border:1px solid lighten($color, 30);
    }
  }
}

@mixin generalAllColorTag() {
  @each $type in $types {
    $background-color: map-get($background-colors, $type);
    $color: map-get($colors, $type);
    &.#{$type} {
      background-color: $background-color;
      color: $color;
      border: 1px solid $color;
      i.icon-close {
        color: lighten($color, 10);
        &:hover{
          color: $color;
        }
      }
    }
  }
}

@mixin generalAllColorFileList() {
  @each $type in $types {
    $color: map-get($colors, $type);
    &.#{$type} {
      & > i:first-child {
        color: $color;
      }
      & > span {
        color: $color;
      }
    }
  }
}

@mixin generalAllColorAlert() {
  @each $type in $types {
    $background-color: map-get($background-colors, $type);
    $color: map-get($colors, $type);
    &.#{$type} {
      background-color: $background-color;
      color: $color;
      border-color: lighten($color, 20);
    }
  }
}

@mixin generalAllColorBadge() {
  @each $type in $types {
    $background-color: map-get($colors, $type);
    &.#{$type} {
      background-color: $background-color;
    }
  }
}

@mixin generalAllColorBadgeDot() {
  @each $type in $types {
    $background-color: map-get($colors, $type);
    &.#{$type} {
      background-color: $background-color;
    }
  }
}

@mixin generalAllColorTableTr() {
  @each $type in $types {
    $background-color: map-get($background-colors, $type);
    &.#{$type} {
      background-color: $background-color;
      &:hover{
        background-color: #fff;
      }
    }
  }
}
@mixin generalAllColorLoading() {
  @each $type in $types {
    $color: map-get($colors, $type);
    &.#{$type} {
      color: $color;
    }
  }
}

// 双击不想选中，可以继承此类
@mixin unselectable() {
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

@mixin reset-ul() {
  padding-inline-start: 0;
  padding: 0;
  &>li{
    list-style: none;
  }
}

@mixin overflow() {
  overflow: auto;
  max-height: 175px;
}

@mixin ellipsis() {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

@mixin contentIcon() {
  font-family:"iconfont" !important;
  font-size:16px;
  font-style:normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}





