@import '../tools/mixins/breakpoints';

@mixin createOverflow($infix) {
  &#{$infix}-y {
    overflow-y: auto;
    &--hidden {
      overflow-y: hidden;
    }
    &--visible {
      overflow-y: visible;
    }
  }
  &#{$infix}-x {
    overflow-x: auto;
    &--hidden {
      overflow-x: hidden;
    }
    &--visible {
      overflow-x: visible;
    }
  }
}

.u-overflow {
  @each $breakpoint in map-keys($grid-breakpoints) {
    @include media-breakpoint-up($breakpoint) {
      $infix: breakpoint-infix($breakpoint, $grid-breakpoints);

      @include createOverflow($infix);
    }
  }

  @each $breakpoint in map-keys($print-grid-breakpoints) {
    @include media-breakpoint-up($breakpoint, $print-grid-breakpoints) {
      $infix: breakpoint-infix($breakpoint, $print-grid-breakpoints);

      @media print {
        @include createOverflow($infix);
      }
    }
  }
}
