@import "mixins/mixins";
@import "common/var";

@mixin genTheme($backgroundColorWeight, $borderColorWeight, $fontColorWeight, $hoverColorWeight) {
  background-color: mix($--tag-primary-color, $--color-white, $backgroundColorWeight);
  border-color: mix($--tag-primary-color, $--color-white, $borderColorWeight);
  color: mix($--tag-primary-color, $--color-white, $fontColorWeight);

  @include when(hit) {
    border-color: $--tag-primary-color;
  }

  .yk-tag__close {
    color: mix($--tag-primary-color, $--color-white, $fontColorWeight);
    &:hover {
      color: $--color-white;
      background-color: mix($--tag-primary-color, $--color-white, $hoverColorWeight);
    }
  }
  .yk-tag__line{
    background-color: $--tag-primary-color ;
    border-color:rgba($--tag-primary-color, 0.12) ;
  }

  &.yk-tag--info {
    background-color: mix($--tag-info-color, $--color-white, $backgroundColorWeight);
    border-color: mix($--tag-info-color, $--color-white, $borderColorWeight);
    color: mix($--tag-info-color, $--color-white, $fontColorWeight);
    @include when(hit) {
      border-color: $--tag-info-color;
    }

    .yk-tag__close {
      color: mix($--tag-info-color, $--color-white, $fontColorWeight);
      &:hover {
        color: $--color-white;
        background-color: mix($--tag-info-color, $--color-white, $hoverColorWeight);
      }
    }
    .yk-tag__line{
      background-color: $--tag-info-color ;
    }
  }

  &.yk-tag--success {
    background-color: mix($--tag-success-color, $--color-white, $backgroundColorWeight);
    border-color: mix($--tag-success-color, $--color-white, $borderColorWeight);
    color: mix($--tag-success-color, $--color-white, $fontColorWeight);

    @include when(hit) {
      border-color: $--tag-success-color;
    }
    // @include when(round){

    // }

    .yk-tag__close {
      color: mix($--tag-success-color, $--color-white, $fontColorWeight);
      &:hover {
        color: $--color-white;
        background-color: mix($--tag-success-color, $--color-white, $hoverColorWeight);
      }
    }
    .yk-tag__line{
      background-color: $--tag-success-color ;
    }
  }

  &.yk-tag--warning {
    background-color: mix($--tag-warning-color, $--color-white, $backgroundColorWeight);
    border-color: mix($--tag-warning-color, $--color-white, $borderColorWeight);
    color: mix($--tag-warning-color, $--color-white, $fontColorWeight);

    @include when(hit) {
      border-color: $--tag-warning-color;
    }

    .yk-tag__close {
      color: mix($--tag-warning-color, $--color-white, $fontColorWeight);
      &:hover {
        color: $--color-white;
        background-color: mix($--tag-warning-color, $--color-white, $hoverColorWeight);
      }
    }
    .yk-tag__line{
      background-color: $--tag-warning-color ;
    }
  }

  &.yk-tag--danger {
    background-color: mix($--tag-danger-color, $--color-white, $backgroundColorWeight);
    border-color: mix($--tag-danger-color, $--color-white, $borderColorWeight);
    color: mix($--tag-danger-color, $--color-white, $fontColorWeight);

    @include when(hit) {
      border-color: $--tag-danger-color;
    }

    .yk-tag__close {
      color: mix($--tag-danger-color, $--color-white, $fontColorWeight);
      &:hover {
        color: $--color-white;
        background-color: mix($--tag-danger-color, $--color-white, $hoverColorWeight);
      }
    }
    .yk-tag__line{
      background-color: $--tag-danger-color ;
    }
  }

  // &.el-tag--nomal {
  //   background-color: mix($--color-white, $--color-white, $backgroundColorWeight);
  //   border-color: mix($--tag-nomal-border-color, $--color-white, $borderColorWeight);
  //   color: mix($--tag-nomal-text-color, $--color-white, $fontColorWeight);
  //   @include when(hit) {
  //     border-color: $--tag-nomal-border-color;
  //   }

  //   .el-tag__close {
  //     color: mix($--tag-nomal-text-color, $--color-white, $fontColorWeight);
  //     &:hover {
  //       color: $--tag-nomal-text-color;
  //       background-color: mix($--color-white, $--color-white, $hoverColorWeight);
  //     }
  //   }
  // }
}

@include b(tag) {
  @include genTheme(6%, 6%, 100%, 100%);
  display: inline-block;
  height: 24px;
  padding: $--tag-padding;
  line-height: 24px;
  font-size: $--tag-font-size;
  color: $--tag-primary-color;
  border-width: 1px;
  border-style: solid;
  border-radius: $--tag-border-radius;
  box-sizing: border-box;
  white-space: nowrap;
  @include when(round){
    border-radius: 12px;
  }
  .yk-tag__line{
    width: 10px;
    height: 4px;
    border-radius: 2px;
    vertical-align: middle;
    display: inline-block;
    position: relative;
    top: -2px;
    margin-right: 9px;
  }

  .yk_icon_close {
    border-radius: 50%;
    text-align: center;
    position: relative;
    cursor: pointer;
    font-size: 12px;
    height: 16px;
    width: 16px;
    line-height: 16px;
    vertical-align: middle;
    top: -1px;
    right: -5px;
    padding: 0px;

    &::before {
      display: block;
    }
  }

  @include m(dark) {
    @include genTheme(100%, 100%, 0, 80%);
  }

  @include m(plain) {
    @include genTheme(6%, 12%, 100%, 100%);
  }
  @include m(map) {
    @include genTheme(0, 12%, 100%, 100%);
  }

  @include m(large) {
    height: 28px;
    line-height: 26px;
    @include when(round){
      border-radius: 14px;
    }
    .yk_icon_close {
      transform: scale(.8);
    }
  }

  // small尺寸修改 根据高保真修改
  @include m(medium) { 
    height: 24px;
    padding: 0 8px;
    line-height: 22px;
    @include when(round){
      border-radius: 12px;
    }

    .yk_icon_close {
      transform: scale(.8);
    }
  }

  @include  m(small) {
    height: 20px;
    padding: 0 6px;
    line-height: 18px;
    @include when(round){
      border-radius: 10px;
    }
    .yk_icon_close {
      margin-left: -3px;
      transform: scale(.7);
    }
  }
  @include  m(mini) {
    .yk_icon_close {
      margin-left: -3px;
      transform: scale(.7);
    }
  }
}

.yk-tag--nomal{
  color: $--tag-nomal-text-color;
  background-color: $--color-white;
  border-color: $--color-white;
}

.yk-tag--nomal.yk-tag--plain:not(.is-round){
  border-color: $--tag-nomal-border-color;
}
