@charset "UTF-8"; /// Transforms shorthand to its shortest possible form. /// /// @argument {list} $values /// List of directional values. /// /// @example scss /// $values: _compact-shorthand(10px 20px 10px 20px); /// /// // Output /// $values: 10px 20px; /// /// @return {list} /// /// @access private @function _compact-shorthand($values) { $output: null; $a: nth($values, 1); $b: if(length($values) < 2, $a, nth($values, 2)); $c: if(length($values) < 3, $a, nth($values, 3)); $d: if(length($values) < 2, $a, nth($values, if(length($values) < 4, 2, 4))); @if $a == 0 { $a: 0; } @if $b == 0 { $b: 0; } @if $c == 0 { $c: 0; } @if $d == 0 { $d: 0; } @if $a == $b and $a == $c and $a == $d { $output: $a; } @else if $a == $c and $b == $d { $output: $a $b; } @else if $b == $d { $output: $a $b $c; } @else { $output: $a $b $c $d; } @return $output; }