@import "../_variables.less";

@spin: ~"@{prefix}-spin";

@fade-in: ~"@{prefix}-fade-in";

@fade-out: ~"@{prefix}-fade-out";

@slide-top-in: ~"@{prefix}-slide-top-in";

@slide-top-out: ~"@{prefix}-slide-top-out";

@slide-bottom-in: ~"@{prefix}-slide-bottom-in";

@slide-bottom-out: ~"@{prefix}-slide-bottom-out";

@slide-right-in: ~"@{prefix}-slide-right-in";

@slide-right-out: ~"@{prefix}-slide-right-out";

@slide-left-in: ~"@{prefix}-slide-left-in";

@slide-left-out: ~"@{prefix}-slide-left-out";

@fade-zoom-in: ~"@{prefix}-fade-zoom-in";

@fade-zoom-out: ~"@{prefix}-fade-zoom-out";

@keyframes @spin {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

@keyframes @fade-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes @fade-out {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes @slide-top-in {
  from {
    transform: translate3d(0, -100%, 0);
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes @slide-top-out {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes @slide-bottom-in {
  from {
    transform: translate3d(0, 100%, 0);
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes @slide-bottom-out {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes @slide-right-in {
  from {
    transform: translate3d(100%, 0, 0);
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes @slide-right-out {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes @slide-left-in {
  from {
    transform: translate3d(-100%, 0, 0);
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes @slide-left-out {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes @fade-zoom-in {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(.6);
  }

  100% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}

@keyframes @fade-zoom-out {
  0% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }

  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(.6);
  }
}

@keyframes t-spin {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

.@{prefix}-icon-loading {
  animation: t-spin 1s linear infinite;
}
