// Math Validation // =============== // Valid Columns // ------------- // Check that a column setting is valid. @function valid-columns( $columns, $silent: false ) { $type: type-of($columns); $return: null; @if $type == number and unitless($columns) { $return: $columns; } @else if $type == list { $fail: null; @each $col in $columns { @if type-of($col) == number { $fail: $fail or if(unitless($col), null, true); } @else { $fail: true; } } $return: if($fail, $return, $columns); } @if $return != $columns and not($silent) { $return: null; $warn: '$columns must be a unitless number or list of unitless numbers.'; @warn $warn + ' Current value [#{$type}]: #{$columns}'; } @return $return; } // Valid Gutters // ------------- // Check that a gutter setting is valid. @function valid-gutters( $gutters, $silent: false ) { $type: type-of($gutters); $return: null; @if $type == number and unitless($gutters) { $return: $gutters; } @else if not($silent) { $warn: '$gutters must be a unitless number.'; @warn $warn + ' Current value [#{$type}]: #{$gutters}'; } @return $return; }