@import 'variables/color';
@import 'variables/grid';
@import 'variables/fonts';

@mixin line-clamp($line, $height) {
  display: -webkit-box;
  height: $height;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: $line;

  /* autoprefixer: off */
  -webkit-box-orient: vertical;

  /* autoprefixer: on */
}

@function capitalize($string) {
  @return to-upper-case(str-slice($string, 1, 1)) + str-slice($string, 2);
}

@function mapReverse ($map) {
  $result: null;

  @if type-of($map) == "map" {
    $keys: map-keys($map);
    $map-reversed: ();

    @for $i from length($keys) through 1 {
      $map-reversed: map-merge(
                      $map-reversed,
                      (nth($keys, $i): map-get($map, nth($keys, $i)))
      );
    }

    @if type-of($map-reversed) == "map" {
      $result: $map-reversed;
    } @else {
      @warn 'There was an error reversing the order of "#{$map}"';
    }
  } @else {
    @warn '"#{$map}" is not a valid map';
  }

  @return $result;
}
