@use "sass:list";
@use "sass:map";
@use "@pepabo-inhouse/flavor/tokens";
@use "../helpers";
@use "../../error-message";

$gap-size-tokens: map.get(
  map.get(tokens.$tokens, size),
  gap
);

/// $levelに対応するgap sizeを取得します。
///
/// @group size
/// @example
///   functions.get-gap-size($level: m)
@function get-gap-size($level: m) {
  $tokens: map.get($gap-size-tokens, base);
  $available-levels: helpers.get-sizes();

  @if list.index($available-levels, $level) == null {
    @error error-message.any-one-of(
      $value: $level,
      $available-values: $available-levels
    );
  }

  @return map.get($tokens, $level);
}
