diff options
Diffstat (limited to 'core/css/functions.scss')
-rw-r--r-- | core/css/functions.scss | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/core/css/functions.scss b/core/css/functions.scss new file mode 100644 index 00000000000..8fac1ae55d5 --- /dev/null +++ b/core/css/functions.scss @@ -0,0 +1,50 @@ +/*! + * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ + +/** + * @see core/src/icons.js + */ +@function match-color-string($color) { + @if $color == #000 { + @return "dark"; + } + @if $color == #fff { + @return 'white'; + } + @if $color == #FC0 { + @return 'yellow'; + } + @if $color == #e9322d { + @return 'red'; + } + @if $color == #eca700 { + @return 'orange'; + } + @if $color == #46ba61 { + @return 'green'; + } + @if $color == #969696 { + @return 'grey'; + } + @return $color; +} + +/** + * SVG COLOR API + * + * @param string $icon the icon filename + * @param string $dir the icon folder within /core/img if $core or app name + * @param string $color the desired color in hexadecimal + * @param int $version the version of the file + * @param bool [$core] search icon in core + * + * @returns A background image with the url to the set to the requested icon. + */ +@mixin icon-color($icon, $dir, $color, $version: 1, $core: false) { + $color: match-color-string($color); + /* $dir is the app name, so we add this to the icon var to avoid conflicts between apps */ + $varName: "--icon-#{$icon}-#{$color}"; + background-image: var(#{$varName}); +} |