// Color Functions // -------------------------------------------------- @function color-brightness($color-value) { @return (red($color-value) * 0.299 + green($color-value) * 0.587 + blue($color-value) * 0.114) / 255 * 100%; } @function color-inverse($color-value, $dark: black, $light: white) { $brightness: color-brightness($color-value); $red: red($color-value); $green: green($color-value); @if ($brightness > 79) { @return $dark; } @if ($green > 240) { @return $dark; } @if ($red > 220 and $green > 180) { @return $dark; } @return $light; } @function toolbar-button-inverse($color-value) { @return color-inverse($color-value, $dark: $toolbar-md-button-color, $light: white); } @function color-shade($color-value, $amount:8%) { $lightness: lightness($color-value); $shade: white; @if ($lightness > 50) { $shade: black; } @return mix($shade, $color-value, $amount); } // Copy Colors Map // -------------------------------------------------- @function copy-colors($colors-map) { @return map-merge($colors-map, ()); } // String Replace Function // -------------------------------------------------- @function str-replace($string, $search, $replace: '') { $index: str-index($string, $search); @if $index { @return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace); } @return $string; } // URL Encode Function // -------------------------------------------------- @function url-encode($val) { @return str-replace($val, ' ', '%20'); }