<commit_before>
/* ==========================================================================
   Mixins
========================================================================== */

@mixin border-radius($radius: 2px) {
   -webkit-border-radius: $radius;
   -moz-border-radius: $radius;
   -ms-border-radius: $radius;
   -o-border-radius: $radius;
   border-radius: $radius;
}

@mixin transform($transform) {
   -webkit-transform: $transform;
   -moz-transform: $transform;
   -ms-transform: $transform;
   -o-transform: $transform;
   transform: $transform;
}

@mixin transition($transitions...) {
   $unfoldedTransitions: ();
   @each $transition in $transitions {
      $unfoldedTransitions: append($unfoldedTransitions, unfoldTransition($transition), comma);
   }

   -webkit-transition: $unfoldedTransitions;
   -moz-transition: $unfoldedTransitions;
   -ms-transition: $unfoldedTransitions;
   -o-transition: $unfoldedTransitions;
   transition: $unfoldedTransitions;
}

@function unfoldTransition ($transition) {
   // Default values
   $property: all;
   $duration: .2s;
   $easing: null; // Browser default is ease, which is what we want
   $delay: null; // Browser default is 0, which is what we want
   $defaultProperties: ($property, $duration, $easing, $delay);

   // Grab transition properties if they exist
   $unfoldedTransition: ();
   @for $i from 1 through length($defaultProperties) {
      $p: null;
      @if $i <= length($transition) {
         $p: nth($transition, $i)
      } @else {
         $p: nth($defaultProperties, $i)
      }
      $unfoldedTransition: append($unfoldedTransition, $p);
   }

   @return $unfoldedTransition;
}

@mixin keyframes($animation-name) {
   @-webkit-keyframes #{$animation-name} {
      @content;
   }

   @-moz-keyframes #{$animation-name} {
      @content;
   }

   @-ms-keyframes #{$animation-name} {
      @content;
   }

   @-o-keyframes #{$animation-name} {
      @content;
   }

   @keyframes #{$animation-name} {
      @content;
   }
}

@mixin animation-name($name...) {
   -webkit-animation-name: $name;
   -moz-animation-name: $name;
   -o-animation-name: $name;
   animation-name: $name;
}

@mixin animation-duration($duration...) {
   -webkit-animation-duration: $duration;
   -moz-animation-duration: $duration;
   -o-animation-duration: $duration;
   animation-duration: $duration;
}

@mixin animation-timing-function($timing...) {
   -webkit-animation-timing-function: $timing;
   -moz-animation-timing-function: $timing;
   -o-animation-timing-function: $timing;
   animation-timing-function: $timing;
}

@mixin animation-iteration-count($count...) {
   -webkit-animation-iteration-count: $count;
   -moz-animation-iteration-count: $count;
   -o-animation-iteration-count: $count;
   animation-iteration-count: $count;
}

@mixin animation-direction($direction...) {
   -webkit-animation-direction: $direction;
   -moz-animation-direction: $direction;
   -o-animation-direction: $direction;
   animation-direction: $direction;
}

@mixin animation-fill-mode($fill...) {
   -webkit-animation-fill-mode: $fill;
   -moz-animation-fill-mode: $fill;
   -o-animation-fill-mode: $fill;
   animation-fill-mode: $fill;
}
@mixin animation-play-state($state...) {
   -webkit-animation-play-state: $state;
   -moz-animation-play-state: $state;
   -o-animation-play-state: $state;
   animation-play-state: $state;
}

@mixin animation($animation...) {
   -webkit-animation: $animation;
   -moz-animation: $animation;
   -o-animation: $animation;
   animation: $animation;
}

@mixin box-shadow($box-shadow) {
   -webkit-box-shadow: $box-shadow;
   -moz-box-shadow: $box-shadow;
   -ms-box-shadow: $box-shadow;
   -o-box-shadow: $box-shadow;
   box-shadow: $box-shadow;
}

@mixin text-shadow($text-shadow) {
   -webkit-text-shadow: $text-shadow;
   -moz-text-shadow: $text-shadow;
   -ms-text-shadow: $text-shadow;
   -o-text-shadow: $text-shadow;
   text-shadow: $text-shadow;
}

@mixin logo($background-position) {
   background: url("#{$logo}") $background-position no-repeat;<commit_msg>Update animation mixin<commit_after>
/* ==========================================================================
   Mixins
========================================================================== */

@mixin border-radius($radius: 2px) {
   -webkit-border-radius: $radius;
   -moz-border-radius: $radius;
   -ms-border-radius: $radius;
   -o-border-radius: $radius;
   border-radius: $radius;
}

@mixin transform($transform) {
   -webkit-transform: $transform;
   -moz-transform: $transform;
   -ms-transform: $transform;
   -o-transform: $transform;
   transform: $transform;
}

@mixin transition($transitions...) {
   $unfoldedTransitions: ();
   @each $transition in $transitions {
      $unfoldedTransitions: append($unfoldedTransitions, unfoldTransition($transition), comma);
   }

   -webkit-transition: $unfoldedTransitions;
   -moz-transition: $unfoldedTransitions;
   -ms-transition: $unfoldedTransitions;
   -o-transition: $unfoldedTransitions;
   transition: $unfoldedTransitions;
}

@function unfoldTransition ($transition) {
   // Default values
   $property: all;
   $duration: .2s;
   $easing: null; // Browser default is ease, which is what we want
   $delay: null; // Browser default is 0, which is what we want
   $defaultProperties: ($property, $duration, $easing, $delay);

   // Grab transition properties if they exist
   $unfoldedTransition: ();
   @for $i from 1 through length($defaultProperties) {
      $p: null;
      @if $i <= length($transition) {
         $p: nth($transition, $i)
      } @else {
         $p: nth($defaultProperties, $i)
      }
      $unfoldedTransition: append($unfoldedTransition, $p);
   }

   @return $unfoldedTransition;
}

@mixin keyframes($animation-name) {
   @-webkit-keyframes #{$animation-name} {
      @content;
   }

   @-moz-keyframes #{$animation-name} {
      @content;
   }

   @-ms-keyframes #{$animation-name} {
      @content;
   }

   @-o-keyframes #{$animation-name} {
      @content;
   }

   @keyframes #{$animation-name} {
      @content;
   }
}

@mixin animation-name($name...) {
   -webkit-animation-name: $name;
   -moz-animation-name: $name;
   -o-animation-name: $name;
   animation-name: $name;
}

@mixin animation-duration($duration...) {
   -webkit-animation-duration: $duration;
   -moz-animation-duration: $duration;
   -o-animation-duration: $duration;
   animation-duration: $duration;
}

@mixin animation-timing-function($timing...) {
   -webkit-animation-timing-function: $timing;
   -moz-animation-timing-function: $timing;
   -o-animation-timing-function: $timing;
   animation-timing-function: $timing;
}

@mixin animation-iteration-count($count...) {
   -webkit-animation-iteration-count: $count;
   -moz-animation-iteration-count: $count;
   -o-animation-iteration-count: $count;
   animation-iteration-count: $count;
}

@mixin animation-direction($direction...) {
   -webkit-animation-direction: $direction;
   -moz-animation-direction: $direction;
   -o-animation-direction: $direction;
   animation-direction: $direction;
}

@mixin animation-fill-mode($fill...) {
   -webkit-animation-fill-mode: $fill;
   -moz-animation-fill-mode: $fill;
   -o-animation-fill-mode: $fill;
   animation-fill-mode: $fill;
}
@mixin animation-play-state($state...) {
   -webkit-animation-play-state: $state;
   -moz-animation-play-state: $state;
   -o-animation-play-state: $state;
   animation-play-state: $state;
}

@mixin animation($animations...) {
   $unfoldedanimations: ();
   @each $animation in $animations {
      $unfoldedanimations: append($unfoldedanimations, unfoldanimation($animation), comma);
   }

   -webkit-animation: $unfoldedanimations;
   -moz-animation: $unfoldedanimations;
   -ms-animation: $unfoldedanimations;
   -o-animation: $unfoldedanimations;
   animation: $unfoldedanimations;
}

@function unfoldanimation ($animation) {
   // Default values
   $property: all;
   $duration: .2s;
   $easing: null; // Browser default is ease, which is what we want
   $delay: null; // Browser default is 0, which is what we want
   $defaultProperties: ($property, $duration, $easing, $delay);

   // Grab animation properties if they exist
   $unfoldedanimation: ();
   @for $i from 1 through length($defaultProperties) {
      $p: null;
      @if $i <= length($animation) {
         $p: nth($animation, $i)
      } @else {
         $p: nth($defaultProperties, $i)
      }
      $unfoldedanimation: append($unfoldedanimation, $p);
   }

   @return $unfoldedanimation;
}

// @mixin animation($animation...) {
//    -webkit-animation: $animation;
//    -moz-animation: $animation;
//    -o-animation: $animation;
//    animation: $animation;
// }

@mixin box-shadow($box-shadow) {
   -webkit-box-shadow: $box-shadow;
   -moz-box-shadow: $box-shadow;
   -ms-box-shadow: $box-shadow;
   -o-box-shadow: $box-shadow;
   box-shadow: $box-shadow;
}

@mixin text-shadow($text-shadow) {
   -webkit-text-shadow: $text-shadow;
   -moz-text-shadow: $text-shadow;
   -ms-text-shadow: $text-shadow;
   -o-text-shadow: $text-shadow;
   text-shadow: $text-shadow;
}

@mixin logo($background-position) {
   background: url("#{$logo}") $background-position no-repeat;
{'fraction_non_alphanumeric': 0.19192688499619193, 'fraction_numerical': 0.001196822979001197, 'mean_word_length': 3.5303104977821587, 'pattern_counts': {'":': 0, '<': 6, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4482479', 'n_tokens_mistral': 3087, 'n_tokens_neox': 3000, 'n_words': 570}