summaryrefslogtreecommitdiffstats
path: root/src/_functions.scss
diff options
context:
space:
mode:
Diffstat (limited to 'src/_functions.scss')
-rw-r--r--src/_functions.scss32
1 files changed, 18 insertions, 14 deletions
diff --git a/src/_functions.scss b/src/_functions.scss
index 56fdf39..c45dcfb 100644
--- a/src/_functions.scss
+++ b/src/_functions.scss
@@ -78,10 +78,12 @@
78 } 78 }
79 } 79 }
80 80
81 $wanted-contrast: nth($wanted-contrasts, $wanted-idx); 81 $wanted: nth($wanted-contrasts, $wanted-idx);
82 $wanted-key: nth($wanted, 1);
83 $wanted-contrast: nth($wanted, 2);
82 84
83 @if $contrast >= $wanted-contrast { 85 @if $contrast >= $wanted-contrast {
84 $result: append($result, $color); 86 $result: map.set($result, $wanted-key, $color);
85 $wanted-idx: $wanted-idx + 1; 87 $wanted-idx: $wanted-idx + 1;
86 } @else { 88 } @else {
87 $colors-idx: $colors-idx + $dir * 1; 89 $colors-idx: $colors-idx + $dir * 1;
@@ -90,19 +92,23 @@
90 92
91 $last-color: nth($colors, if($dir == -1, 1, $colors-len)); 93 $last-color: nth($colors, if($dir == -1, 1, $colors-len));
92 94
93 @for $i from $wanted-idx through $wanted-len { 95 @if $wanted-idx <= $wanted-len {
94 $result: append($result, $last-color); 96 @for $i from $wanted-idx through $wanted-len {
97 $wanted: nth($wanted-contrasts, $i);
98 $wanted-key: nth($wanted, 1);
99 $result: map.set($result, $wanted-key, $last-color);
100 }
95 } 101 }
96 102
97 @return $result; 103 @return $result;
98} 104}
99 105
100@function accent-palette($base, $dir: 1) { 106@function color-palette($base, $dir: 1) {
101 @return ( 107 @return (
102 --hi: blend.scale($base, $lightness: $dir * 15%, $chroma: $dir * 10%), 108 --bg-hi: blend.scale($base, $lightness: $dir * 15%, $chroma: $dir * 10%),
103 --main: $base, 109 --bg: $base,
104 --lo: blend.scale($base, $lightness: $dir * -15%, $chroma: $dir * -10%), 110 --obj: blend.scale($base, $lightness: $dir * -15%, $chroma: $dir * -10%),
105 --lo2: blend.scale($base, $lightness: $dir * -25%, $chroma: $dir * -20%), 111 --obj-lo: blend.scale($base, $lightness: $dir * -25%, $chroma: $dir * -20%),
106 --semi: rgba($base, .4), 112 --semi: rgba($base, .4),
107 --selection: rgba($base, .99), 113 --selection: rgba($base, .99),
108 --fg: blend.contrast($base), 114 --fg: blend.contrast($base),
@@ -118,11 +124,9 @@
118 124
119 $colors: multi-contrast(blend.lch($lightness * 1% 0 0), $grays, config.$wanted-grays); 125 $colors: multi-contrast(blend.lch($lightness * 1% 0 0), $grays, config.$wanted-grays);
120 126
121 $palette: (); 127 @each $key, $color in $colors {
122 128 $colors: map.set($colors, $key, hsl(color(--gray --h), color(--gray --s), lightness($color)));
123 @for $i from 1 through length($colors) {
124 $palette: map.set($palette, --gray#{$i}, hsl(color(--gray-h), color(--gray-s), lightness(nth($colors, $i))));
125 } 129 }
126 130
127 @return $palette; 131 @return $colors;
128} 132}