1
- @use " mixins" ;
2
- @use " colors" ;
1
+ /* *
2
+ * 1. Colors
3
+ */
4
+ $colors : (
5
+ ' red' : (
6
+ ' background' : hsl (351 , 100% , 96% ),
7
+ ' background-hover' : hsl (354 , 100% , 94% ),
8
+ ' default' : hsl (0 , 65% , 51% ),
9
+ ' hover' : hsl (0 , 66% , 47% ),
10
+ ' active' : hsl (0 , 73% , 41% ),
11
+ ' default-font-color' : #fff , // AA
12
+ ),
13
+ ' pink' : (
14
+ ' background' : hsl (340 , 80% , 94% ),
15
+ ' default' : hsl (338 , 78% , 48% ),
16
+ ' hover' : hsl (336 , 78% , 43% ),
17
+ ' active' : hsl (334 , 79% , 38% ),
18
+ ' default-font-color' : #fff , // AA
19
+ ),
20
+ ' purple' : (
21
+ ' background' : hsl (292 , 44% , 93% ),
22
+ ' default' : hsl (287 , 65% , 40% ),
23
+ ' hover' : hsl (282 , 68% , 38% ),
24
+ ' active' : hsl (277 , 70% , 35% ),
25
+ ' default-font-color' : #fff , // AAAA
26
+ ),
27
+ ' deep-purple' : (
28
+ ' background' : hsl (264 , 45% , 94% ),
29
+ ' background-hover' : hsl (263 , 45% , 90% ),
30
+ ' default' : hsl (260 , 54% , 45% ),
31
+ ' hover' : hsl (258 , 58% , 42% ),
32
+ ' active' : hsl (251 , 69% , 34% ),
33
+ ' default-font-color' : #fff ,
34
+ ),
35
+ ' indigo' : (
36
+ ' background' : hsl (231 , 44% , 94% ),
37
+ ' default' : hsl (232 , 50% , 45% ),
38
+ ' hover' : hsl (232 , 54% , 41% ),
39
+ ' active' : hsl (233 , 57% , 37% ),
40
+ ' default-font-color' : #fff , // AAA
41
+ ),
42
+ ' blue' : (
43
+ ' background' : hsl (205 , 87% , 94% ),
44
+ ' default' : hsl (210 , 79% , 46% ),
45
+ ' hover' : hsl (212 , 80% , 42% ),
46
+ ' active' : hsl (216 , 85% , 34% ),
47
+ ' default-font-color' : #fff , // AA
48
+ ),
49
+ ' light-blue' : (
50
+ ' background' : hsl (199 , 94% , 94% ),
51
+ ' default' : hsl (199 , 91% , 64% ),
52
+ ' hover' : hsl (199 , 92% , 56% ),
53
+ ' active' : hsl (199 , 98% , 48% ),
54
+ ' default-font-color' : #000 , // AAA
55
+ ),
56
+ ' teal' : (
57
+ ' background' : hsl (177 , 72% , 93% ),
58
+ ' default' : hsl (187 , 100% , 38% ),
59
+ ' hover' : hsl (186 , 100% , 33% ),
60
+ ' active' : hsl (185 , 100% , 28% ),
61
+ ' default-font-color' : #000 , // AAA
62
+ ),
63
+ ' green' : (
64
+ ' background' : hsl (125 , 39% , 94% ),
65
+ ' default' : hsl (123 , 41% , 45% ),
66
+ ' hover' : hsl (123 , 43% , 39% ),
67
+ ' active' : hsl (123 , 46% , 34% ),
68
+ ' default-font-color' : #000 , // AA
69
+ ),
70
+ ' light-green' : (
71
+ ' background' : hsl (88 , 52% , 94% ),
72
+ ' default' : hsl (89 , 46% , 48% ),
73
+ ' hover' : hsl (92 , 48% , 42% ),
74
+ ' active' : hsl (95 , 49% , 36% ),
75
+ ' default-font-color' : #000 , // AAA
76
+ ),
77
+ ' lime' : (
78
+ ' background' : hsl (66 , 71% , 95% ),
79
+ ' default' : hsl (64 , 60% , 50% ),
80
+ ' hover' : hsl (62 , 61% , 44% ),
81
+ ' active' : hsl (60 , 63% , 38% ),
82
+ ' default-font-color' : #000 , // AAA
83
+ ),
84
+ ' yellow' : (
85
+ ' background' : hsl (55 , 100% , 95% ),
86
+ ' default' : hsl (49 , 98% , 60% ),
87
+ ' hover' : hsl (43 , 96% , 58% ),
88
+ ' active' : hsl (37 , 95% , 56% ),
89
+ ' default-font-color' : #000 , // AAA
90
+ ),
91
+ ' amber' : (
92
+ ' background' : hsl (46 , 100% , 94% ),
93
+ ' default' : hsl (42 , 100% , 50% ),
94
+ ' hover' : hsl (38 , 100% , 50% ),
95
+ ' active' : hsl (34 , 100% , 50% ),
96
+ ' default-font-color' : #000 , // AAA
97
+ ),
98
+ ' orange' : (
99
+ ' background' : hsl (37 , 100% , 94% ),
100
+ ' default' : hsl (33 , 100% , 49% ),
101
+ ' hover' : hsl (30 , 100% , 48% ),
102
+ ' active' : hsl (27 , 100% , 47% ),
103
+ ' default-font-color' : #000 , // AAA
104
+ ),
105
+ ' brown' : (
106
+ ' background' : hsl (20 , 16% , 93% ),
107
+ ' default' : hsl (15 , 25% , 34% ),
108
+ ' hover' : hsl (14 , 26% , 29% ),
109
+ ' active' : hsl (11 , 26% , 24% ),
110
+ ' default-font-color' : #fff , // AAA
111
+ ),
112
+ ' gray' : (
113
+ ' background' : hsl (0 , 0% , 98% ),
114
+ ' default' : hsl (0 , 0% , 46% ),
115
+ ' hover' : hsl (0 , 0% , 38% ),
116
+ ' active' : hsl (0 , 0% , 26% ),
117
+ ' default-font-color' : #fff , // AA
118
+ ),
119
+ ' blue-gray' : (
120
+ ' background' : hsl (204 , 15% , 94% ),
121
+ ' default' : hsl (199 , 18% , 33% ),
122
+ ' hover' : hsl (200 , 18% , 26% ),
123
+ ' active' : hsl (200 , 19% , 18% ),
124
+ ' default-font-color' : #fff , // AAA
125
+ )
126
+ );
127
+
128
+ @function color ($color , $variant : ' default' ) {
129
+ @return map-get (map-get ($colors , $color ), $variant );
130
+ }
3
131
4
132
/* *
5
- * 1 . Base
133
+ * 2 . Base
6
134
*/
7
- $base-background-color : mixins . color (' gray' , 50 );
135
+ $base-background-color : color (' gray' , ' background ' );
8
136
$base-body-gutter : 0 ;
9
- $base-font-color : mixins . color ( ' blueGray ' , 900 );
137
+ $base-font-color : hsl ( 200 , 19 % , 18 % );
10
138
$base-font-family : ' Inter, apple-sf-pro-text, Helvetica, Arial, sans-serif' ;
11
- $base-border-color : mixins . color ( ' gray ' , 300 );
12
- $bse -border-hover-color : mixins . color ( ' gray ' , 400 );
139
+ $base-border-color : hsl ( 0 , 0 % , 88 % );
140
+ $base -border-hover-color : hsl ( 0 , 0 % , 74 % );
13
141
$base-border-radius : 4px ;
14
142
$base-gutter : 1rem ;
15
143
$base-gutter-steps : 0.25 ;
@@ -27,42 +155,31 @@ $breakpoints: (
27
155
--base-font-color : #{$base-font-color } ;
28
156
--base-font-family : #{$base-font-family } ;
29
157
--base-border-color : #{$base-border-color } ;
30
- --base-border-hover-color : #{$bse -border-hover-color } ;
158
+ --base-border-hover-color : #{$base -border-hover-color } ;
31
159
--base-border-radius : #{$base-border-radius } ;
32
160
--base-gutter : #{$base-gutter } ;
33
161
}
34
162
35
- /* *
36
- * 2. Colors
37
- */
38
- $primary-color : mixins .color (' deepPurple' , 600 );
39
- $primary-color-hover : mixins .color (' deepPurple' , 700 );
40
- $primary-color-active : mixins .color (' deepPurple' , 800 );
41
- $primary-color-light-background : mixins .color (' deepPurple' , 50 );
42
-
43
- $secondary-color : mixins .color (' red' , 600 );
44
- $secondary-color-hover : mixins .color (' red' , 700 );
45
- $secondary-color-active : mixins .color (' red' , 800 );
163
+ $primary-color : color (' deep-purple' , ' default' );
164
+ $primary-color-hover : color (' deep-purple' , ' hover' );
165
+ $primary-color-active : color (' deep-purple' , ' active' );
166
+ $primary-color-light-background : color (' deep-purple' , ' background' );
46
167
47
- $danger-color : mixins . color (' red' , 700 );
48
- $danger-color-hover : mixins . color (' red' , 800 );
49
- $danger-color-active : mixins . color (' red' , 900 );
50
- $danger-color-light-background : mixins . color (' red' , 50 );
168
+ $danger-color : color (' red' , ' default ' );
169
+ $danger-color-hover : color (' red' , ' hover ' );
170
+ $danger-color-active : color (' red' , ' active ' );
171
+ $danger-color-light-background : color (' red' , ' default ' );
51
172
52
- $success-color : mixins . color (' green' , 700 );
53
- $success-color-hover : mixins . color (' green' , 800 );
54
- $success-color-active : mixins . color (' green' , 900 );
173
+ $success-color : color (' green' , ' default ' );
174
+ $success-color-hover : color (' green' , ' hover ' );
175
+ $success-color-active : color (' green' , ' active ' );
55
176
56
177
:root {
57
178
--primary-color : #{$primary-color } ;
58
179
--primary-color-hover : #{$primary-color-hover } ;
59
180
--primary-color-active : #{$primary-color-active } ;
60
181
--primary-color-light-background : #{$primary-color-light-background } ;
61
182
62
- --secondary-color : #{$secondary-color } ;
63
- --secondary-color-hover : #{$secondary-color-hover } ;
64
- --secondary-color-active : #{$secondary-color-active } ;
65
-
66
183
--danger-color : #{$danger-color } ;
67
184
--danger-color-hover : #{$danger-color-hover } ;
68
185
--danger-color-active : #{$danger-color-active } ;
@@ -100,15 +217,15 @@ $button-padding: 1rem;
100
217
$button-font-weight : 600 ;
101
218
$button-font-size : 1rem ;
102
219
103
- $primary-button-ghost-hover-background : mixins . color (' deepPurple ' , 50 );
104
- $primary-button-ghost-active-background : mixins . color (' deepPurple ' , 75 );
220
+ $primary-button-ghost-hover-background : color (' deep-purple ' , ' background ' );
221
+ $primary-button-ghost-active-background : color (' deep-purple ' , ' background-hover ' );
105
222
106
223
$secondary-button-background : transparent ;
107
- $secondary-button-hover-background : mixins . color (' deepPurple ' , 50 );
108
- $secondary-button-active-background : mixins . color (' deepPurple ' , 75 );
224
+ $secondary-button-hover-background : color (' deep-purple ' , ' background ' );
225
+ $secondary-button-active-background : color (' deep-purple ' , ' background-hover ' );
109
226
110
- $danger-button-ghost-hover-background : mixins . color (' red' , 50 );
111
- $danger-button-ghost-active-background : mixins . color (' red' , 75 );
227
+ $danger-button-ghost-hover-background : color (' red' , ' background ' );
228
+ $danger-button-ghost-active-background : color (' red' , ' background-hover ' );
112
229
113
230
:root {
114
231
--button-padding : #{$button-padding } ;
@@ -418,7 +535,6 @@ $icons: (
418
535
' wifi' : ' \e9f3 ' ,
419
536
);
420
537
421
-
422
538
@function icon ($name ) {
423
539
@return map-get ($icons , $name );
424
540
}
0 commit comments