@use "sass:map";
@use "sass:math";
@use "sass:meta";

@use "../variables";
@use "rem" as *;

@function get-breakpoint($breakpoint, $breakpoints: variables.$breakpoints) {
  @if meta.type-of($breakpoint) == number {
    // If we're given a unitless number, assume it is the desired size
    // in pixels, and convert it to rem
    @if math.is-unitless($breakpoint) {
      @return rem($breakpoint, 16);
    }

    // Otherwise return unchanged with the unit given
    @return $breakpoint;
  } @else if map.has-key($breakpoints, $breakpoint) {
    $breakpointVal: map.get($breakpoints, $breakpoint);

    @if math.is-unitless($breakpointVal) {
      @return rem($breakpointVal, 16);
    }

    @return $breakpointVal;
  }

  @warn "No breakpoint found for `#{$breakpoint}`";
}
