@douyinfe/semi-theme-default 2.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,36 @@
1
+ > The default theme package of Semi Design.
2
+
3
+
4
+ By default, the theme package will be automatically installed as dependence of `@douyinfe/semi-foundation`.
5
+
6
+ You can make a custom theme through [Semi Design System]().
7
+
8
+ ## Directory Structure
9
+
10
+ ```
11
+ ├── package.json
12
+ ├── scripts // Relevant compilation script
13
+ │ ├── build-css.js
14
+ │ └── processor.js
15
+ ├── scss
16
+ │ ├── _font.scss // Font-related scss mixin
17
+ │ ├── _palette.scss // Global original color palette(css variable)
18
+ │ ├── global.scss // Global Design Token(css variable, including light and dark mode)
19
+ │ ├── index.scss // Entry
20
+ │ ├── mixin.scss // Extra mixin(e.g, shadow)
21
+ │ └── variables.scss // Sizing,spacing,zindex and font related design token
22
+ └── semi.scss // Unified compilation entry for node-sass or dart-sass consumption
23
+ ```
24
+
25
+ ## Design Token stratification principle
26
+
27
+ ![Theme scheme](https://lf26-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/tech-doc/theme-arch.png "Theme scheme")
28
+
29
+ - No need to switch at runtime, carried by sass variable
30
+ - Need to support runtime switching, such as the color variable related to the dark mode, carried by css variable
31
+
32
+ ![Design Token](https://lf26-static.bytednsdoc.com/obj/eden-cn/ptlz_zlp/ljhwZthlaukjlkulzlp/tech-doc/theme-design-token.png "Design Token")
33
+
34
+ ## License
35
+
36
+ MIT
package/package.json ADDED
@@ -0,0 +1,24 @@
1
+ {
2
+ "name": "@douyinfe/semi-theme-default",
3
+ "version": "2.0.0-alpha.0",
4
+ "description": "semi-theme-default",
5
+ "keywords": [
6
+ "semi-theme",
7
+ "scss"
8
+ ],
9
+ "files": [
10
+ "scss"
11
+ ],
12
+ "main": "semi.scss",
13
+ "sideEffects": "*.scss",
14
+ "author": "huangzhijing.pixel@bytedance.com",
15
+ "license": "MIT",
16
+ "gitHead": "661ac2de772e28c3b6f934f70e4e08efbe2387b2",
17
+ "dependencies": {
18
+ "glob": "^7.1.6"
19
+ },
20
+ "_unpkg": true,
21
+ "devDependencies": {
22
+ "path": "^0.12.7"
23
+ }
24
+ }
@@ -0,0 +1,48 @@
1
+ // font-size line-height绑定
2
+ @mixin font-size-small {
3
+ font-size: $font-size-small;
4
+ line-height: 16px;
5
+ font-family: $font-family-regular;
6
+ }
7
+
8
+ @mixin font-size-regular {
9
+ font-size: $font-size-regular;
10
+ line-height: 20px;
11
+ font-family: $font-family-regular;
12
+ }
13
+
14
+ @mixin font-size-header-6 {
15
+ font-size: $font-size-header-6;
16
+ line-height: 22px;
17
+ font-family: $font-family-regular;
18
+ }
19
+
20
+ @mixin font-size-header-5 {
21
+ font-size: $font-size-header-5;
22
+ line-height: 24px;
23
+ font-family: $font-family-regular;
24
+ }
25
+
26
+ @mixin font-size-header-4 {
27
+ font-size: $font-size-header-4;
28
+ line-height: 28px;
29
+ font-family: $font-family-regular;
30
+ }
31
+
32
+ @mixin font-size-header-3 {
33
+ font-size: $font-size-header-3;
34
+ line-height: 32px;
35
+ font-family: $font-family-regular;
36
+ }
37
+
38
+ @mixin font-size-header-2 {
39
+ font-size: $font-size-header-2;
40
+ line-height: 40px;
41
+ font-family: $font-family-regular;
42
+ }
43
+
44
+ @mixin font-size-header-1 {
45
+ font-size: $font-size-header-1;
46
+ line-height: 44px;
47
+ font-family: $font-family-regular;
48
+ }
@@ -0,0 +1,331 @@
1
+ body,
2
+ body .semi-always-light {
3
+ --semi-amber-0: 254,251,235;
4
+ --semi-amber-1: 252,245,206;
5
+ --semi-amber-2: 249,232,158;
6
+ --semi-amber-3: 246,216,111;
7
+ --semi-amber-4: 243,198,65;
8
+ --semi-amber-5: 240,177,20;
9
+ --semi-amber-6: 200,138,15;
10
+ --semi-amber-7: 160,102,10;
11
+ --semi-amber-8: 120,70,6;
12
+ --semi-amber-9: 80,43,3;
13
+ --semi-black: 0,0,0;
14
+ --semi-blue-0: 234,245,255;
15
+ --semi-blue-1: 203,231,254;
16
+ --semi-blue-2: 152,205,253;
17
+ --semi-blue-3: 101,178,252;
18
+ --semi-blue-4: 50,149,251;
19
+ --semi-blue-5: 0,119,250;
20
+ --semi-blue-6: 0,98,214;
21
+ --semi-blue-7: 0,79,179;
22
+ --semi-blue-8: 0,61,143;
23
+ --semi-blue-9: 0,44,107;
24
+ --semi-cyan-0: 229,247,248;
25
+ --semi-cyan-1: 194,239,240;
26
+ --semi-cyan-2: 138,221,226;
27
+ --semi-cyan-3: 88,203,211;
28
+ --semi-cyan-4: 44,184,197;
29
+ --semi-cyan-5: 5,164,182;
30
+ --semi-cyan-6: 3,134,152;
31
+ --semi-cyan-7: 1,105,121;
32
+ --semi-cyan-8: 0,77,91;
33
+ --semi-cyan-9: 0,50,61;
34
+ --semi-green-0: 236,247,236;
35
+ --semi-green-1: 208,240,209;
36
+ --semi-green-2: 164,224,167;
37
+ --semi-green-3: 125,209,130;
38
+ --semi-green-4: 90,194,98;
39
+ --semi-green-5: 59,179,70;
40
+ --semi-green-6: 48,149,59;
41
+ --semi-green-7: 37,119,47;
42
+ --semi-green-8: 27,89,36;
43
+ --semi-green-9: 17,60,24;
44
+ --semi-grey-0: 249,249,249;
45
+ --semi-grey-1: 230,232,234;
46
+ --semi-grey-2: 198,202,205;
47
+ --semi-grey-3: 167,171,176;
48
+ --semi-grey-4: 136,141,146;
49
+ --semi-grey-5: 107,112,117;
50
+ --semi-grey-6: 85,91,97;
51
+ --semi-grey-7: 65,70,76;
52
+ --semi-grey-8: 46,50,56;
53
+ --semi-grey-9: 28,31,35;
54
+ --semi-indigo-0: 236,239,248;
55
+ --semi-indigo-1: 209,216,240;
56
+ --semi-indigo-2: 167,179,225;
57
+ --semi-indigo-3: 128,144,211;
58
+ --semi-indigo-4: 94,111,196;
59
+ --semi-indigo-5: 63,81,181;
60
+ --semi-indigo-6: 51,66,161;
61
+ --semi-indigo-7: 40,52,140;
62
+ --semi-indigo-8: 31,40,120;
63
+ --semi-indigo-9: 23,29,99;
64
+ --semi-light-blue-0: 233,247,253;
65
+ --semi-light-blue-1: 201,236,252;
66
+ --semi-light-blue-2: 149,216,248;
67
+ --semi-light-blue-3: 98,195,245;
68
+ --semi-light-blue-4: 48,172,241;
69
+ --semi-light-blue-5: 0,149,238;
70
+ --semi-light-blue-6: 0,123,202;
71
+ --semi-light-blue-7: 0,99,167;
72
+ --semi-light-blue-8: 0,75,131;
73
+ --semi-light-blue-9: 0,53,95;
74
+ --semi-light-green-0: 243,248,236;
75
+ --semi-light-green-1: 227,240,208;
76
+ --semi-light-green-2: 200,226,165;
77
+ --semi-light-green-3: 173,211,126;
78
+ --semi-light-green-4: 147,197,91;
79
+ --semi-light-green-5: 123,182,60;
80
+ --semi-light-green-6: 100,152,48;
81
+ --semi-light-green-7: 78,121,38;
82
+ --semi-light-green-8: 57,91,27;
83
+ --semi-light-green-9: 37,61,18;
84
+ --semi-lime-0: 242,250,230;
85
+ --semi-lime-1: 227,246,197;
86
+ --semi-lime-2: 203,237,142;
87
+ --semi-lime-3: 183,227,91;
88
+ --semi-lime-4: 167,218,44;
89
+ --semi-lime-5: 155,209,0;
90
+ --semi-lime-6: 126,174,0;
91
+ --semi-lime-7: 99,139,0;
92
+ --semi-lime-8: 72,104,0;
93
+ --semi-lime-9: 47,70,0;
94
+ --semi-orange-0: 255,248,234;
95
+ --semi-orange-1: 254,238,204;
96
+ --semi-orange-2: 254,217,152;
97
+ --semi-orange-3: 253,193,101;
98
+ --semi-orange-4: 253,166,51;
99
+ --semi-orange-5: 252,136,0;
100
+ --semi-orange-6: 210,103,0;
101
+ --semi-orange-7: 168,74,0;
102
+ --semi-orange-8: 126,49,0;
103
+ --semi-orange-9: 84,29,0;
104
+ --semi-pink-0: 253,236,239;
105
+ --semi-pink-1: 251,207,216;
106
+ --semi-pink-2: 246,160,181;
107
+ --semi-pink-3: 242,115,150;
108
+ --semi-pink-4: 237,72,123;
109
+ --semi-pink-5: 233,30,99;
110
+ --semi-pink-6: 197,19,86;
111
+ --semi-pink-7: 162,11,72;
112
+ --semi-pink-8: 126,5,58;
113
+ --semi-pink-9: 90,1,43;
114
+ --semi-purple-0: 247,233,247;
115
+ --semi-purple-1: 239,202,240;
116
+ --semi-purple-2: 221,155,224;
117
+ --semi-purple-3: 201,111,209;
118
+ --semi-purple-4: 180,73,194;
119
+ --semi-purple-5: 158,40,179;
120
+ --semi-purple-6: 135,30,158;
121
+ --semi-purple-7: 113,22,138;
122
+ --semi-purple-8: 92,15,117;
123
+ --semi-purple-9: 73,10,97;
124
+ --semi-red-0: 254,242,237;
125
+ --semi-red-1: 254,221,210;
126
+ --semi-red-2: 253,183,165;
127
+ --semi-red-3: 251,144,120;
128
+ --semi-red-4: 250,102,76;
129
+ --semi-red-5: 249,57,32;
130
+ --semi-red-6: 213,37,21;
131
+ --semi-red-7: 178,20,12;
132
+ --semi-red-8: 142,8,5;
133
+ --semi-red-9: 106,1,3;
134
+ --semi-teal-0: 228,247,244;
135
+ --semi-teal-1: 192,240,232;
136
+ --semi-teal-2: 135,224,211;
137
+ --semi-teal-3: 84,209,193;
138
+ --semi-teal-4: 39,194,176;
139
+ --semi-teal-5: 0,179,161;
140
+ --semi-teal-6: 0,149,137;
141
+ --semi-teal-7: 0,119,111;
142
+ --semi-teal-8: 0,89,85;
143
+ --semi-teal-9: 0,60,58;
144
+ --semi-violet-0: 243,237,249;
145
+ --semi-violet-1: 226,209,244;
146
+ --semi-violet-2: 196,167,233;
147
+ --semi-violet-3: 166,127,221;
148
+ --semi-violet-4: 136,91,210;
149
+ --semi-violet-5: 106,58,199;
150
+ --semi-violet-6: 87,47,179;
151
+ --semi-violet-7: 70,37,158;
152
+ --semi-violet-8: 54,28,138;
153
+ --semi-violet-9: 40,20,117;
154
+ --semi-white: 255,255,255;
155
+ --semi-yellow-0: 255,253,234;
156
+ --semi-yellow-1: 254,251,203;
157
+ --semi-yellow-2: 253,243,152;
158
+ --semi-yellow-3: 252,232,101;
159
+ --semi-yellow-4: 251,218,50;
160
+ --semi-yellow-5: 250,200,0;
161
+ --semi-yellow-6: 208,170,0;
162
+ --semi-yellow-7: 167,139,0;
163
+ --semi-yellow-8: 125,106,0;
164
+ --semi-yellow-9: 83,72,0;
165
+ }
166
+
167
+ body[theme-mode="dark"],
168
+ body .semi-always-dark {
169
+ --semi-red-0: 108,9,11;
170
+ --semi-red-1: 144,17,16;
171
+ --semi-red-2: 180,32,25;
172
+ --semi-red-3: 215,51,36;
173
+ --semi-red-4: 251,73,50;
174
+ --semi-red-5: 252,114,90;
175
+ --semi-red-6: 253,153,131;
176
+ --semi-red-7: 253,190,172;
177
+ --semi-red-8: 254,224,213;
178
+ --semi-red-9: 255,243,239;
179
+ --semi-pink-0: 92,7,48;
180
+ --semi-pink-1: 128,14,65;
181
+ --semi-pink-2: 164,23,81;
182
+ --semi-pink-3: 199,34,97;
183
+ --semi-pink-4: 235,47,113;
184
+ --semi-pink-5: 239,86,134;
185
+ --semi-pink-6: 243,126,159;
186
+ --semi-pink-7: 247,168,188;
187
+ --semi-pink-8: 251,211,220;
188
+ --semi-pink-9: 253,238,241;
189
+ --semi-purple-0: 74,16,97;
190
+ --semi-purple-1: 94,23,118;
191
+ --semi-purple-2: 115,31,138;
192
+ --semi-purple-3: 137,40,159;
193
+ --semi-purple-4: 160,51,179;
194
+ --semi-purple-5: 181,83,194;
195
+ --semi-purple-6: 202,120,209;
196
+ --semi-purple-7: 221,160,225;
197
+ --semi-purple-8: 239,206,240;
198
+ --semi-purple-9: 247,235,247;
199
+ --semi-violet-0: 64,27,119;
200
+ --semi-violet-1: 76,36,140;
201
+ --semi-violet-2: 88,46,160;
202
+ --semi-violet-3: 100,57,181;
203
+ --semi-violet-4: 114,70,201;
204
+ --semi-violet-5: 136,101,212;
205
+ --semi-violet-6: 162,136,223;
206
+ --semi-violet-7: 190,173,233;
207
+ --semi-violet-8: 221,212,244;
208
+ --semi-violet-9: 241,238,250;
209
+ --semi-indigo-0: 23,30,101;
210
+ --semi-indigo-1: 32,41,122;
211
+ --semi-indigo-2: 41,54,142;
212
+ --semi-indigo-3: 52,68,163;
213
+ --semi-indigo-4: 64,83,183;
214
+ --semi-indigo-5: 95,113,197;
215
+ --semi-indigo-6: 129,145,212;
216
+ --semi-indigo-7: 167,180,226;
217
+ --semi-indigo-8: 209,216,241;
218
+ --semi-indigo-9: 237,239,248;
219
+ --semi-blue-0: 5,49,112;
220
+ --semi-blue-1: 10,70,148;
221
+ --semi-blue-2: 19,92,184;
222
+ --semi-blue-3: 29,117,219;
223
+ --semi-blue-4: 41,144,255;
224
+ --semi-blue-5: 84,169,255;
225
+ --semi-blue-6: 127,193,255;
226
+ --semi-blue-7: 169,215,255;
227
+ --semi-blue-8: 212,236,255;
228
+ --semi-blue-9: 239,248,255;
229
+ --semi-light-blue-0: 0,55,97;
230
+ --semi-light-blue-1: 0,77,133;
231
+ --semi-light-blue-2: 3,102,169;
232
+ --semi-light-blue-3: 10,129,204;
233
+ --semi-light-blue-4: 19,159,240;
234
+ --semi-light-blue-5: 64,180,243;
235
+ --semi-light-blue-6: 110,200,246;
236
+ --semi-light-blue-7: 157,220,249;
237
+ --semi-light-blue-8: 206,238,252;
238
+ --semi-light-blue-9: 235,248,254;
239
+ --semi-cyan-0: 4,52,61;
240
+ --semi-cyan-1: 7,79,92;
241
+ --semi-cyan-2: 10,108,123;
242
+ --semi-cyan-3: 14,137,153;
243
+ --semi-cyan-4: 19,168,184;
244
+ --semi-cyan-5: 56,187,198;
245
+ --semi-cyan-6: 98,205,212;
246
+ --semi-cyan-7: 145,223,227;
247
+ --semi-cyan-8: 198,239,241;
248
+ --semi-cyan-9: 231,247,248;
249
+ --semi-teal-0: 2,60,57;
250
+ --semi-teal-1: 4,90,85;
251
+ --semi-teal-2: 7,119,111;
252
+ --semi-teal-3: 10,149,136;
253
+ --semi-teal-4: 14,179,161;
254
+ --semi-teal-5: 51,194,176;
255
+ --semi-teal-6: 94,209,193;
256
+ --semi-teal-7: 142,225,211;
257
+ --semi-teal-8: 196,240,232;
258
+ --semi-teal-9: 230,247,244;
259
+ --semi-green-0: 18,60,25;
260
+ --semi-green-1: 28,90,37;
261
+ --semi-green-2: 39,119,49;
262
+ --semi-green-3: 50,149,61;
263
+ --semi-green-4: 62,179,73;
264
+ --semi-green-5: 93,194,100;
265
+ --semi-green-6: 127,209,132;
266
+ --semi-green-7: 166,225,168;
267
+ --semi-green-8: 208,240,209;
268
+ --semi-green-9: 236,247,236;
269
+ --semi-light-green-0: 38,61,19;
270
+ --semi-light-green-1: 59,92,29;
271
+ --semi-light-green-2: 81,123,40;
272
+ --semi-light-green-3: 103,153,52;
273
+ --semi-light-green-4: 127,184,64;
274
+ --semi-light-green-5: 151,198,95;
275
+ --semi-light-green-6: 176,212,129;
276
+ --semi-light-green-7: 201,227,167;
277
+ --semi-light-green-8: 228,241,209;
278
+ --semi-light-green-9: 243,248,237;
279
+ --semi-lime-0: 49,70,3;
280
+ --semi-lime-1: 75,105,5;
281
+ --semi-lime-2: 103,141,9;
282
+ --semi-lime-3: 132,176,12;
283
+ --semi-lime-4: 162,211,17;
284
+ --semi-lime-5: 174,220,58;
285
+ --semi-lime-6: 189,229,102;
286
+ --semi-lime-7: 207,237,150;
287
+ --semi-lime-8: 229,246,201;
288
+ --semi-lime-9: 243,251,233;
289
+ --semi-yellow-0: 84,73,3;
290
+ --semi-yellow-1: 126,108,6;
291
+ --semi-yellow-2: 168,142,10;
292
+ --semi-yellow-3: 210,175,15;
293
+ --semi-yellow-4: 252,206,20;
294
+ --semi-yellow-5: 253,222,67;
295
+ --semi-yellow-6: 253,235,113;
296
+ --semi-yellow-7: 254,245,160;
297
+ --semi-yellow-8: 254,251,208;
298
+ --semi-yellow-9: 255,254,236;
299
+ --semi-amber-0: 81,46,9;
300
+ --semi-amber-1: 121,75,15;
301
+ --semi-amber-2: 161,107,22;
302
+ --semi-amber-3: 202,143,30;
303
+ --semi-amber-4: 242,183,38;
304
+ --semi-amber-5: 245,202,80;
305
+ --semi-amber-6: 247,219,122;
306
+ --semi-amber-7: 250,234,166;
307
+ --semi-amber-8: 252,246,210;
308
+ --semi-amber-9: 254,251,237;
309
+ --semi-orange-0: 85,31,3;
310
+ --semi-orange-1: 128,53,6;
311
+ --semi-orange-2: 170,80,10;
312
+ --semi-orange-3: 213,111,15;
313
+ --semi-orange-4: 255,146,20;
314
+ --semi-orange-5: 255,174,67;
315
+ --semi-orange-6: 255,199,114;
316
+ --semi-orange-7: 255,221,161;
317
+ --semi-orange-8: 255,239,208;
318
+ --semi-orange-9: 255,249,237;
319
+ --semi-grey-0: 28,31,35;
320
+ --semi-grey-1: 46,50,56;
321
+ --semi-grey-2: 65,70,76;
322
+ --semi-grey-3: 85,91,97;
323
+ --semi-grey-4: 107,112,117;
324
+ --semi-grey-5: 136,141,146;
325
+ --semi-grey-6: 167,171,176;
326
+ --semi-grey-7: 198,202,205;
327
+ --semi-grey-8: 230,232,234;
328
+ --semi-grey-9: 249,249,249;
329
+ --semi-white: 255, 255, 255;
330
+ --semi-black: 0, 0, 0;
331
+ }
@@ -0,0 +1,192 @@
1
+ @import "./_palette.scss";
2
+
3
+ body, body[theme-mode="dark"] .semi-always-light {
4
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
5
+ -webkit-font-smoothing: antialiased;
6
+ --semi-color-white: rgba(var(--semi-white), 1); // 浅色模式下深色背景内容Inverse
7
+ --semi-color-black: rgba(var(--semi-black), 1); // 深色模式下浅色背景内容Inverse
8
+
9
+ --semi-color-primary: rgba(var(--semi-blue-5), 1); // 主要颜色。仅在需要非常强调的情况下使用。
10
+ --semi-color-primary-hover: rgba(var(--semi-blue-6), 1); // 主要颜色悬浮态
11
+ --semi-color-primary-active: rgba(var(--semi-blue-7), 1); // 主要颜色激活态
12
+ --semi-color-primary-disabled: rgba(var(--semi-blue-2), 1); // 主要颜色禁用态
13
+ --semi-color-primary-light-default: rgba(var(--semi-blue-0), 1); // 浅版主要颜色(多用于背景)。仅在需要非常强调的情况下使用。
14
+ --semi-color-primary-light-hover: rgba(var(--semi-blue-1), 1); // 浅版主要颜色悬浮态
15
+ --semi-color-primary-light-active: rgba(var(--semi-blue-2), 1); // 浅版主要颜色激活态
16
+
17
+ --semi-color-secondary: rgba(var(--semi-blue-5), 1); // 次要颜色。强调作用次于主要颜色,但仍然具有强调作用。
18
+ --semi-color-secondary-hover: rgba(var(--semi-blue-6), 1); // 次要颜色悬浮态
19
+ --semi-color-secondary-active: rgba(var(--semi-blue-7), 1); // 次要颜色激活态
20
+ --semi-color-secondary-disabled: rgba(var(--semi-blue-2), 1); // 次要颜色禁用态
21
+ --semi-color-secondary-light-default: rgba(var(--semi-blue-0), 1); // 浅版次要颜色(多用于背景)。强调作用次于主要颜色,但仍然具有强调作用。
22
+ --semi-color-secondary-light-hover: rgba(var(--semi-blue-1), 1); // 浅版次要颜色悬浮态
23
+ --semi-color-secondary-light-active: rgba(var(--semi-blue-2), 1); // 浅版次要颜色激活态
24
+
25
+ --semi-color-tertiary: rgba(var(--semi-grey-5), 1); // 第三颜色,可以在页面上多次使用
26
+ --semi-color-tertiary-hover: rgba(var(--semi-grey-6), 1); // 第三颜色悬浮态
27
+ --semi-color-tertiary-active: rgba(var(--semi-grey-7), 1); // 第三颜色激活态
28
+ --semi-color-tertiary-light-default: rgba(var(--semi-grey-0), 1); // 浅版第三颜色(多用于背景),可以在页面上多次使用
29
+ --semi-color-tertiary-light-hover: rgba(var(--semi-grey-1), 1); // 浅版第三颜色悬浮态
30
+ --semi-color-tertiary-light-active: rgba(var(--semi-grey-2), 1); // 浅版第三颜色激活态
31
+
32
+ --semi-color-default: rgba(var(--semi-grey-0), 1); // 不建议使用
33
+ --semi-color-default-hover: rgba(var(--semi-grey-1), 1); // 不建议使用
34
+ --semi-color-default-active: rgba(var(--semi-grey-2), 1); // 不建议使用
35
+
36
+ --semi-color-info: rgba(var(--semi-blue-5), 1); // 信息色, 通常用于表达客观、中立信息
37
+ --semi-color-info-hover: rgba(var(--semi-blue-6), 1); // 信息色悬浮态
38
+ --semi-color-info-active: rgba(var(--semi-blue-7), 1); // 信息色激活态
39
+ --semi-color-info-disabled: rgba(var(--semi-blue-2), 1); // 信息色禁用态
40
+ --semi-color-info-light-default: rgba(var(--semi-blue-0), 1); // 浅版信息色(多用于背景),通常用于表达客观、中立信息
41
+ --semi-color-info-light-hover: rgba(var(--semi-blue-1), 1); // 浅版信息色悬浮态
42
+ --semi-color-info-light-active: rgba(var(--semi-blue-2), 1); // 浅版信息色激活态
43
+
44
+ --semi-color-success: rgba(var(--semi-green-5), 1); // 成功色,表示安全、成功、开启的状态
45
+ --semi-color-success-hover: rgba(var(--semi-green-6), 1); // 成功色悬浮态
46
+ --semi-color-success-active: rgba(var(--semi-green-7), 1); // 成功色激活态
47
+ --semi-color-success-disabled: rgba(var(--semi-green-2), 1); // 成功色禁用态
48
+ --semi-color-success-light-default: rgba(var(--semi-green-0), 1); // 浅版成功色(多用于背景),表示安全、成功、开启的状态
49
+ --semi-color-success-light-hover: rgba(var(--semi-green-1), 1); // 浅版成功色悬浮态
50
+ --semi-color-success-light-active: rgba(var(--semi-green-2), 1); // 浅版成功色激活态
51
+
52
+ --semi-color-danger: rgba(var(--semi-red-5), 1); // 危险色,表示危险的操作、或需要特别注意的危险信息
53
+ --semi-color-danger-hover: rgba(var(--semi-red-6), 1); // 危险色悬浮态
54
+ --semi-color-danger-active: rgba(var(--semi-red-7), 1); // 危险色激活态
55
+ --semi-color-danger-light-default: rgba(var(--semi-red-0), 1); // 浅版危险色(多用于背景),表示危险的操作、或需要特别注意的危险信息
56
+ --semi-color-danger-light-hover: rgba(var(--semi-red-1), 1); // 浅版危险色悬浮态
57
+ --semi-color-danger-light-active: rgba(var(--semi-red-2), 1); // 浅版危险色激活态
58
+
59
+ --semi-color-warning: rgba(var(--semi-orange-5), 1); // 警示色,表示警告、不安全的状态
60
+ --semi-color-warning-hover: rgba(var(--semi-orange-6), 1); // 警示色悬浮态
61
+ --semi-color-warning-active: rgba(var(--semi-orange-7), 1); // 警示色激活态
62
+ --semi-color-warning-light-default: rgba(var(--semi-orange-0), 1); // 浅版警示色(多用于背景),表示警告、不安全的状态
63
+ --semi-color-warning-light-hover: rgba(var(--semi-orange-1), 1); // 浅版警示色悬浮态
64
+ --semi-color-warning-light-active: rgba(var(--semi-orange-2), 1); // 浅版警示色激活态
65
+
66
+ --semi-color-focus-border: rgba(var(--semi-blue-5), 1); // 多用于边框激活态颜色
67
+
68
+ --semi-color-disabled-text: rgba(var(--semi-grey-9), .35); // 禁用态 - 文字
69
+ --semi-color-disabled-border: rgba(var(--semi-grey-1), 1); // 禁用态 - 描边
70
+ --semi-color-disabled-bg: rgba(var(--semi-grey-1), 1); // 禁用态 - 背景
71
+ --semi-color-disabled-fill: rgba(var(--semi-grey-8), .04); // 禁用态 - 填充
72
+
73
+ --semi-color-shadow: rgba(var(--semi-black), .04); // 用于模拟描边的阴影颜色
74
+
75
+ --semi-color-link: rgba(var(--semi-blue-5), 1); // 链接颜色
76
+ --semi-color-link-hover: rgba(var(--semi-blue-6), 1); // 链接颜色 - 悬浮态
77
+ --semi-color-link-active: rgba(var(--semi-blue-7), 1); // 链接颜色 - 激活态
78
+ --semi-color-link-visited: rgba(var(--semi-blue-5), 1); // 链接颜色 - 已访问
79
+
80
+ --semi-color-border: rgba(var(--semi-grey-9), .08); // 默认描边颜色
81
+ --semi-color-nav-bg: rgba(var(--semi-white), 1); // 导航背景色
82
+
83
+ --semi-overlay-bg: rgba(22, 22, 26, .6); // 蒙层背景色
84
+
85
+ --semi-color-fill-0: rgba(var(--semi-grey-8), .05); // 填充色 - 默认态
86
+ --semi-color-fill-1: rgba(var(--semi-grey-8), .09); // 填充色 - 悬浮态
87
+ --semi-color-fill-2: rgba(var(--semi-grey-8), .13); // 填充色 - 激活态
88
+ --semi-color-bg-0: rgba(var(--semi-white), 1); // 背景色 - 最下层(底部页面)
89
+ --semi-color-bg-1: rgba(var(--semi-white), 1); // 背景色 - 次下层(页面中需要提升的内容)
90
+ --semi-color-bg-2: rgba(var(--semi-white), 1); // 背景色 - 中间层(模态等容器)
91
+ --semi-color-bg-3: rgba(var(--semi-white), 1); // 背景色 - 次上层(通知,Toast等)
92
+ --semi-color-bg-4: rgba(var(--semi-white), 1); // 背景色 - 最上层(特殊)
93
+ --semi-color-text-0: rgba(var(--semi-grey-9), 1); // 文本/图标颜色 - 最主要
94
+ --semi-color-text-1: rgba(var(--semi-grey-9), .8); // 文本/图标颜色 - 稍次要
95
+ --semi-color-text-2: rgba(var(--semi-grey-9), .6); // 文本/图标颜色 - 次要
96
+ --semi-color-text-3: rgba(var(--semi-grey-9), .35); // 文本/图标颜色 - 最次要
97
+ --semi-shadow-elevated: 0 0 1px rgba(0, 0, 0, .3), 0 4px 14px rgba(0, 0, 0, .1); // 用于toast, modal, popover等需要提升层级的界面元素
98
+ --semi-border-radius-extra-small: 3px; // 超小圆角,用于 checkbox 内圆角
99
+ --semi-border-radius-small: 3px; // 小圆角, 用于 button、tag、tabs 等大多数组件, 比较常用
100
+ --semi-border-radius-medium: 6px; // 中圆角, 用于 dropdown、scrollist、transfer 等菜单类组件
101
+ --semi-border-radius-large: 12px; // 大圆角, 用于 modal
102
+ --semi-border-radius-circle: 50%; // 全圆角, 用于 avatar, badge 等组件
103
+ --semi-border-radius-full: 9999px; // 用于创建全尺寸圆角,如胶囊标签等
104
+ }
105
+
106
+ body[theme-mode="dark"], body .semi-always-dark {
107
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
108
+ -webkit-font-smoothing: antialiased;
109
+ --semi-color-white: rgba(228, 231, 245, 1);
110
+ --semi-color-black: rgba(var(--semi-black), 1);
111
+ --semi-color-primary: rgba(var(--semi-blue-5), 1);
112
+ --semi-color-primary-hover: rgba(var(--semi-blue-6), 1);
113
+ --semi-color-primary-active: rgba(var(--semi-blue-7), 1);
114
+ --semi-color-primary-disabled: rgba(var(--semi-blue-2), 1);
115
+ --semi-color-primary-light-default: rgba(var(--semi-blue-5), .2);
116
+ --semi-color-primary-light-hover: rgba(var(--semi-blue-5), .3);
117
+ --semi-color-primary-light-active: rgba(var(--semi-blue-5), .4);
118
+ --semi-color-secondary: rgba(var(--semi-blue-5), 1);
119
+ --semi-color-secondary-hover: rgba(var(--semi-blue-6), 1);
120
+ --semi-color-secondary-active: rgba(var(--semi-blue-7), 1);
121
+ --semi-color-secondary-disabled: rgba(var(--semi-blue-2), 1);
122
+ --semi-color-secondary-light-default: rgba(var(--semi-blue-5), .2);
123
+ --semi-color-secondary-light-hover: rgba(var(--semi-blue-5), .3);
124
+ --semi-color-secondary-light-active: rgba(var(--semi-blue-5), .4);
125
+ --semi-color-tertiary: rgba(var(--semi-grey-5), 1);
126
+ --semi-color-tertiary-hover: rgba(var(--semi-grey-6), 1);
127
+ --semi-color-tertiary-active: rgba(var(--semi-grey-7), 1);
128
+ --semi-color-tertiary-light-default: rgba(var(--semi-grey-5), .2);
129
+ --semi-color-tertiary-light-hover: rgba(var(--semi-grey-5), .3);
130
+ --semi-color-tertiary-light-active: rgba(var(--semi-grey-5), .4);
131
+ --semi-color-default: rgba(var(--semi-grey-0), 1);
132
+ --semi-color-default-hover: rgba(var(--semi-grey-1), 1);
133
+ --semi-color-default-active: rgba(var(--semi-grey-2), 1);
134
+ --semi-color-info: rgba(var(--semi-blue-5), 1);
135
+ --semi-color-info-hover: rgba(var(--semi-blue-6), 1);
136
+ --semi-color-info-active: rgba(var(--semi-blue-7), 1);
137
+ --semi-color-info-disabled: rgba(var(--semi-blue-2), 1);
138
+ --semi-color-info-light-default: rgba(var(--semi-blue-5), .2);
139
+ --semi-color-info-light-hover: rgba(var(--semi-blue-5), .3);
140
+ --semi-color-info-light-active: rgba(var(--semi-blue-5), .4);
141
+ --semi-color-success: rgba(var(--semi-green-5), 1);
142
+ --semi-color-success-hover: rgba(var(--semi-green-6), 1);
143
+ --semi-color-success-active: rgba(var(--semi-green-7), 1);
144
+ --semi-color-success-disabled: rgba(var(--semi-green-2), 1);
145
+ --semi-color-success-light-default: rgba(var(--semi-green-5), .2);
146
+ --semi-color-success-light-hover: rgba(var(--semi-green-5), .3);
147
+ --semi-color-success-light-active: rgba(var(--semi-green-5), .4);
148
+ --semi-color-danger: rgba(var(--semi-red-5), 1);
149
+ --semi-color-danger-hover: rgba(var(--semi-red-6), 1);
150
+ --semi-color-danger-active: rgba(var(--semi-red-7), 1);
151
+ --semi-color-danger-light-default: rgba(var(--semi-red-5), .2);
152
+ --semi-color-danger-light-hover: rgba(var(--semi-red-5), .3);
153
+ --semi-color-danger-light-active: rgba(var(--semi-red-5), .4);
154
+ --semi-color-warning: rgba(var(--semi-orange-5), 1);
155
+ --semi-color-warning-hover: rgba(var(--semi-orange-6), 1);
156
+ --semi-color-warning-active: rgba(var(--semi-orange-7), 1);
157
+ --semi-color-warning-light-default: rgba(var(--semi-orange-5), .2);
158
+ --semi-color-warning-light-hover: rgba(var(--semi-orange-5), .3);
159
+ --semi-color-warning-light-active: rgba(var(--semi-orange-5), .4);
160
+ --semi-color-focus-border: rgba(var(--semi-blue-5), 1);
161
+ --semi-color-disabled-text: rgba(var(--semi-grey-9), .35);
162
+ --semi-color-disabled-border: rgba(var(--semi-grey-1), 1);
163
+ --semi-color-disabled-bg: rgba(var(--semi-grey-1), 1);
164
+ --semi-color-disabled-fill: rgba(var(--semi-grey-8), .04);
165
+ --semi-color-link: rgba(var(--semi-blue-5), 1);
166
+ --semi-color-link-hover: rgba(var(--semi-blue-6), 1);
167
+ --semi-color-link-active: rgba(var(--semi-blue-7), 1);
168
+ --semi-color-link-visited: rgba(var(--semi-blue-5), 1);
169
+ --semi-color-nav-bg: rgba(35, 36, 41, 1);
170
+ --semi-shadow-elevated: inset 0 0 0 1px rgba(255, 255, 255, .1), 0 4px 14px rgba(0, 0, 0, .25);
171
+ --semi-overlay-bg: rgba(22, 22, 26, .6);
172
+ --semi-color-fill-0: rgba(var(--semi-white), .05);
173
+ --semi-color-fill-1: rgba(var(--semi-white), .09);
174
+ --semi-color-fill-2: rgba(var(--semi-white), .13);
175
+ --semi-color-border: rgba(var(--semi-white), .08);
176
+ --semi-color-shadow: rgba(var(--semi-black), .04);
177
+ --semi-color-bg-0: rgba(22, 22, 26, 1);
178
+ --semi-color-bg-1: rgba(35, 36, 41, 1);
179
+ --semi-color-bg-2: rgba(53, 54, 60, 1);
180
+ --semi-color-bg-3: rgba(67, 68, 74, 1);
181
+ --semi-color-bg-4: rgba(79, 81, 89, 1);
182
+ --semi-color-text-0: rgba(var(--semi-grey-9), 1);
183
+ --semi-color-text-1: rgba(var(--semi-grey-9), .8);
184
+ --semi-color-text-2: rgba(var(--semi-grey-9), .6);
185
+ --semi-color-text-3: rgba(var(--semi-grey-9), .35);
186
+ --semi-border-radius-extra-small: 3px;
187
+ --semi-border-radius-small: 3px;
188
+ --semi-border-radius-medium: 6px;
189
+ --semi-border-radius-large: 12px;
190
+ --semi-border-radius-circle: 50%;
191
+ --semi-border-radius-full: 9999px;
192
+ }
@@ -0,0 +1,3 @@
1
+ @import './mixin.scss';
2
+ @import './variables.scss';
3
+ @import './_font.scss';
@@ -0,0 +1,73 @@
1
+ /* shadow */
2
+ @mixin shadow-elevated {
3
+ box-shadow: var(--semi-shadow-elevated);
4
+ }
5
+ @mixin shadow-2 {
6
+ box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.14), 0px 0px 1px rgba(0, 0, 0, 0.16);
7
+ }
8
+ @mixin shadow-0 {
9
+ box-shadow: none;
10
+ }
11
+ @mixin shadow-1 {
12
+ box-shadow: none;
13
+ }
14
+ @mixin shadow-knob {
15
+ box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1), 0 0 1px rgba(0, 0, 0, 0.3);
16
+ }
17
+ // box-sizing
18
+ @mixin box-sizing() {
19
+ box-sizing: border-box;
20
+ }
21
+
22
+ @mixin all-center {
23
+ display: flex;
24
+ justify-content: center;
25
+ align-items: center;
26
+ }
27
+
28
+ @mixin ver-center {
29
+ display: flex;
30
+ align-items: center;
31
+ }
32
+
33
+ @mixin hor-center {
34
+ display: flex;
35
+ justify-content: center;
36
+ }
37
+
38
+ @mixin text-overflow-hidden {
39
+ overflow: hidden;
40
+ text-overflow: ellipsis;
41
+ white-space: nowrap;
42
+ }
43
+
44
+ @mixin no-scrollbar {
45
+ &::-webkit-scrollbar {
46
+ // width: 8px;
47
+ display: none;
48
+ }
49
+ &::-webkit-scrollbar-thumb {
50
+ background-color: transparent;
51
+ // background-color: $grey-2;
52
+ }
53
+ &::-webkit-scrollbar-track {
54
+ opacity: 0;
55
+ background-color: rgba(0, 0, 0, 0.05);
56
+ background-color: transparent;
57
+ // background-color: $grey-0;
58
+ }
59
+ &:hover {
60
+ &::-webkit-scrollbar {
61
+ display: block;
62
+ width: 8px;
63
+ // width: 12px;
64
+ }
65
+ &::-webkit-scrollbar-thumb {
66
+ border-radius: 10px;
67
+ background-color: var(--semi-gray-3);
68
+ }
69
+ &::-webkit-scrollbar-track {
70
+ // background-color: rgba(0, 0, 0, 0.05);
71
+ }
72
+ }
73
+ }
@@ -0,0 +1,60 @@
1
+ $prefix: 'semi';
2
+
3
+ /* sizing */
4
+ $height-control-small: 24px; // 表单项高度 - 小尺寸
5
+ $height-control-default: 32px; // 表单项高度 - 默认尺寸
6
+ $height-control-large: 40px; // 表单项高度 - 大尺寸
7
+ $border-thickness: 0; // 描边宽度 - 零
8
+ $border-thickness-control: 1px; // 描边宽度 - 默认状态(checkbox 等)
9
+ $border-thickness-control-focus: 1px; // 描边宽度 - focus 状态(checkbox 等)
10
+
11
+ $width-icon-extra-small: 8px; // 图标尺寸 - 超小
12
+ $width-icon-small: 12px; // 图标尺寸 - 小
13
+ $width-icon-medium: 16px; // 图标尺寸 - 中
14
+ $width-icon-large: 20px; // 图标尺寸 - 大
15
+ $width-icon-extra-large: 24px; // 图标尺寸 - 超大
16
+
17
+ /* spacing */
18
+ $spacing-none: 0; // 间距 - 零
19
+ $spacing-super-tight: 2px; // 间距 - 极紧凑尺寸内/外边距
20
+ $spacing-extra-tight: 4px; // 间距 - 超紧凑尺寸内/外边距
21
+ $spacing-tight: 8px; // 间距 - 紧凑尺寸内/外边距
22
+ $spacing-base-tight: 12px; // 间距 - 默认(偏紧凑)尺寸内/外边距
23
+ $spacing-base: 16px; // 间距 - 默认尺寸内/外边距
24
+ $spacing-base-loose: 20px; // 间距 - 默认(偏宽松)尺寸内/外边距
25
+ $spacing-loose: 24px; // 间距 - 宽松尺寸内/外边距
26
+ $spacing-extra-loose: 32px; // 间距 - 超宽松尺寸内/外边距
27
+ $spacing-super-loose: 40px; // 间距 - 极宽松尺寸内/外边距
28
+
29
+ // z-index
30
+ $z-portal: 1; // 抽象插槽,适用于未经特殊定制的所有组件
31
+ $z-affix: 10; // 固定位置的页面元素 z-index
32
+ $z-backtop: 10; // 返回顶部 z-index
33
+ $z-badge: 10; // badge z-index
34
+ $z-modal: 1000; // modal z-index
35
+ $z-modal-mask: 1000; // modal 遮罩 z-index
36
+
37
+ $z-toast: 1010; // toast 组件 z-index
38
+ $z-notification: 1010; // notification 组件 z-index
39
+ $z-popover: 1030; // popover 组件 z-index
40
+ $z-dropdown: 1050; // dropdown 组件 z-index
41
+ $z-tooltip: 1060; // tooltip 组件 z-index
42
+ // $z-avatar-default: 100;
43
+
44
+ // font
45
+ $font-family-regular: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI',
46
+ 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', 'Helvetica Neue',
47
+ Helvetica, Arial, sans-serif; // semi 预置字体回退
48
+ $font-size-small: 12px; // 小文本字号
49
+ $font-size-regular: 14px; // 常规文本字号
50
+
51
+ $font-size-header-6: 16px; // 六级标题字号
52
+ $font-size-header-5: 18px; // 五级标题字号
53
+ $font-size-header-4: 20px; // 四级标题字号
54
+ $font-size-header-3: 24px; // 三级标题字号
55
+ $font-size-header-2: 28px; // 二级标题字号
56
+ $font-size-header-1: 32px; // 一级标题字号
57
+
58
+ $font-weight-light: 200; // 字重 - 轻
59
+ $font-weight-regular: 400; // 字重 - 常规
60
+ $font-weight-bold: 600; // 字重 - 加粗
package/semi.scss ADDED
@@ -0,0 +1,61 @@
1
+ @import "./scss/index.scss";
2
+ @import "./scss/global.scss";
3
+ @import "../semi-foundation/anchor/anchor.scss";
4
+ @import "../semi-foundation/autoComplete/autoComplete.scss";
5
+ @import "../semi-foundation/avatar/avatar.scss";
6
+ @import "../semi-foundation/backtop/backtop.scss";
7
+ @import "../semi-foundation/badge/badge.scss";
8
+ @import "../semi-foundation/banner/banner.scss";
9
+ @import "../semi-foundation/base/base.scss";
10
+ @import "../semi-foundation/breadcrumb/breadcrumb.scss";
11
+ @import "../semi-foundation/button/button.scss";
12
+ @import "../semi-foundation/calendar/calendar.scss";
13
+ @import "../semi-foundation/card/card.scss";
14
+ @import "../semi-foundation/cascader/cascader.scss";
15
+ @import "../semi-foundation/checkbox/checkbox.scss";
16
+ @import "../semi-foundation/collapse/collapse.scss";
17
+ @import "../semi-foundation/datePicker/datePicker.scss";
18
+ @import "../semi-foundation/descriptions/descriptions.scss";
19
+ @import "../semi-foundation/dropdown/dropdown.scss";
20
+ @import "../semi-foundation/empty/empty.scss";
21
+ @import "../semi-foundation/form/form.scss";
22
+ @import "../semi-foundation/grid/grid.scss";
23
+ @import "../semi-foundation/icons/icons.scss";
24
+ @import "../semi-foundation/input/input.scss";
25
+ @import "../semi-foundation/inputNumber/inputNumber.scss";
26
+ @import "../semi-foundation/layout/layout.scss";
27
+ @import "../semi-foundation/list/list.scss";
28
+ @import "../semi-foundation/modal/modal.scss";
29
+ @import "../semi-foundation/navigation/navigation.scss";
30
+ @import "../semi-foundation/notification/notification.scss";
31
+ @import "../semi-foundation/overflowList/overflowList.scss";
32
+ @import "../semi-foundation/pagination/pagination.scss";
33
+ @import "../semi-foundation/popconfirm/popconfirm.scss";
34
+ @import "../semi-foundation/popover/popover.scss";
35
+ @import "../semi-foundation/progress/progress.scss";
36
+ @import "../semi-foundation/radio/radio.scss";
37
+ @import "../semi-foundation/rating/rating.scss";
38
+ @import "../semi-foundation/scrollList/scrollList.scss";
39
+ @import "../semi-foundation/select/select.scss";
40
+ @import "../semi-foundation/sideSheet/sideSheet.scss";
41
+ @import "../semi-foundation/skeleton/skeleton.scss";
42
+ @import "../semi-foundation/slider/slider.scss";
43
+ @import "../semi-foundation/space/space.scss";
44
+ @import "../semi-foundation/spin/spin.scss";
45
+ @import "../semi-foundation/steps/steps.scss";
46
+ @import "../semi-foundation/switch/switch.scss";
47
+ @import "../semi-foundation/table/table.scss";
48
+ @import "../semi-foundation/tabs/tabs.scss";
49
+ @import "../semi-foundation/tag/tag.scss";
50
+ @import "../semi-foundation/tagInput/tagInput.scss";
51
+ @import "../semi-foundation/timePicker/timePicker.scss";
52
+ @import "../semi-foundation/timeline/timeline.scss";
53
+ @import "../semi-foundation/toast/toast.scss";
54
+ @import "../semi-foundation/tooltip/tooltip.scss";
55
+ @import "../semi-foundation/transfer/transfer.scss";
56
+ @import "../semi-foundation/tree/tree.scss";
57
+ @import "../semi-foundation/treeSelect/treeSelect.scss";
58
+ @import "../semi-foundation/typography/typography.scss";
59
+ @import "../semi-foundation/upload/upload.scss";
60
+ @import "../semi-foundation/button/iconButton.scss";
61
+ @import "../semi-foundation/input/textarea.scss"