// SVG Grid Math
// =============



// SVG Column Position
// -------------------
/// Determine the proper horizontal position
/// for a column rectangle
///
/// @access private
///
/// @param {Integer} $column -
///   1-indexed column location on the grid
/// @param {Map} $grid -
///   Normalized settings map representing the current grid
///
/// @return {Length} -
///   Horizontal position of svg column rectangle,
///   as distance from the grid edge
@function _susy-svg-column-position(
  $column,
  $grid
) {
  $x: $column - 1;

  @if ($x > 0) {
    $x: susy-span(first $x wide, $grid);
  }

  @return $x;
}



// SVG Offset
// ----------
/// Determine if a grid image needs to be offset,
/// to account for edge gutters.
///
/// @access private
///
/// @param {Map} $grid -
///   Normalized settings map representing the current grid
///
/// @return {Length | null} -
///   Expected distance from container edge to first column,
///   based on spread values and gutter-widths
@function _susy-svg-offset(
  $grid
) {
  $columns: su-valid-columns(map-get($grid, 'columns'));
  $gutters: su-valid-gutters(map-get($grid, 'gutters'));
  $container: su-valid-spread(map-get($grid, 'container-spread')) + 1;

  @if ($container == 0) {
    @return null;
  }

  $gutter: su-call('su-gutter', $grid);

  @if (type-of($gutter) == 'string') {
    @return 'calc(#{$container} * #{$gutter} / 2)';
  }

  @return $container * $gutter / 2;
}
