enr 0.2.3-alpha.3 → 1.0.1

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.
@@ -1,6 +1,12 @@
1
- @use "./vars-color.scss" as *;
2
- @use "./respond" as rp;
3
- @use "root.scss";
1
+ @use './vars-color.scss' as *;
2
+ @use './respond' as rp;
3
+ @use './root.scss';
4
+ @use './loading-keyframes.scss';
5
+ @use './flex.scss';
6
+ @use './header.scss';
7
+ @use './image.scss';
8
+ @use './text.scss';
9
+ @use './input.scss';
4
10
 
5
11
  .en-full-container {
6
12
  width: 100%;
@@ -17,6 +23,7 @@
17
23
 
18
24
  @for $i from 1 through 10 {
19
25
  $v: #{calc($i * 4)};
26
+
20
27
  // 水平方向的 padding
21
28
  .en-padding-horizontal-#{$v} {
22
29
  padding-left: #{$v}px;
@@ -66,44 +73,6 @@
66
73
  position: relative;
67
74
  }
68
75
 
69
- .en-flex,
70
- .en-flex-row,
71
- .en-flex-column,
72
- .en-flex-row-reverse,
73
- .en-flex-column-reverse {
74
- display: flex;
75
- flex-wrap: nowrap;
76
- }
77
-
78
- .en-flex,
79
- .en-flex-row {
80
- flex-direction: row;
81
- }
82
-
83
- .en-flex-row-reverse {
84
- flex-direction: row-reverse;
85
- }
86
-
87
- .en-flex-column {
88
- flex-direction: column;
89
- }
90
-
91
- .en-flex-column {
92
- flex-direction: column-reverse;
93
- }
94
-
95
- .en-flex-wrap {
96
- flex-wrap: wrap;
97
- }
98
-
99
- .en-flex-nowrap {
100
- flex-wrap: nowrap;
101
- }
102
-
103
- .en-flex-warp-reverse {
104
- flex-wrap: wrap-reverse;
105
- }
106
-
107
76
  .en-center {
108
77
  position: absolute;
109
78
  left: 50%;
@@ -112,46 +81,11 @@
112
81
  }
113
82
 
114
83
  .en-dust {
115
- color: var(--primary-dust);
116
- }
117
-
118
- /** 文本显示一行,超出点点点 */
119
- .en-text-in-one-line {
120
- white-space: nowrap;
121
- text-overflow: ellipsis;
122
- overflow: hidden;
123
- word-break: break-all;
124
- }
125
-
126
- .en-text-in-one-line-hide {
127
- white-space: nowrap;
128
- text-overflow: clip;
129
- overflow: hidden;
130
- word-break: break-all;
131
- }
132
-
133
- /** 文本显示两行,超出点点点 */
134
- .en-text-in-two-line {
135
- overflow: hidden;
136
- text-overflow: ellipsis;
137
- display: -webkit-box;
138
- -webkit-line-clamp: 2;
139
- line-clamp: 2;
140
- -webkit-box-orient: vertical;
141
- }
142
-
143
- /* 彩色字 */
144
- .en-color-text {
145
- color: transparent;
146
- background-image: linear-gradient(45deg, #ff0, #0f0, #f00, #0ff, #00f, #f0f, #ff0);
147
- background-position: 0% 0%;
148
- background-size: 400% 200%;
149
- background-clip: text;
150
- animation: 6s ease-in 0s infinite colorText alternate;
84
+ color: var(---en-text-dust);
151
85
  }
152
86
 
153
87
  .en-red-bg {
154
- background-color: #f12;
88
+ background-color: var(--en-color-red-70);
155
89
  }
156
90
 
157
91
  .en-float-left {
@@ -182,20 +116,6 @@
182
116
  animation: 2.4s ease-in-out 0s infinite loading;
183
117
  }
184
118
 
185
- // 文本剧中
186
- .en-text-center {
187
- text-align: center;
188
- }
189
-
190
- // 文本靠右
191
- .en-text-right {
192
- text-align: end;
193
- }
194
- //小文本
195
- .en-text-small {
196
- font-size: 0.6rem;
197
- }
198
-
199
119
  // 用户可操作
200
120
  .en-user-select-text {
201
121
  -khtml-user-select: text;
@@ -204,259 +124,20 @@
204
124
  user-select: text;
205
125
  }
206
126
 
207
- .en-cursor-pointer {
208
- cursor: pointer;
127
+ .en-user-select-none {
128
+ -khtml-user-select: none;
129
+ -moz-user-select: none;
130
+ -ms-user-select: none;
131
+ user-select: none;
209
132
  }
210
133
 
211
- @keyframes loading {
212
- // 45 - 25 * Math.sin((Math.PI * 5) / 12)
213
- // 位置公式 35 - 25 * Math.cos((Math.PI * 5) / 12)
214
-
215
- 100%,
216
- 0% {
217
- background-size:
218
- 10% 10%,
219
- 10% 10%,
220
- 10% 10%,
221
- 10% 10%;
222
- background-position:
223
- 25% 45%,
224
- 41.7% 45%,
225
- 58.3% 45%,
226
- 75% 45%;
227
- }
228
-
229
- 20%,
230
- 80% {
231
- background-size: 2.5% 2.5%;
232
- background-position: 25% 45%;
233
- }
234
-
235
- 22% {
236
- background-size:
237
- 3.75% 3.75%,
238
- 2.5% 2.5%,
239
- 2.5% 2.5%,
240
- 2.5% 2.5%;
241
- background-position:
242
- // 位置 1
243
- 25.85% 38.53%,
244
- 25% 45%,
245
- 25% 45%,
246
- 25% 45%;
247
- }
248
-
249
- 24% {
250
- background-size:
251
- 5% 5%,
252
- 2.5% 2.5%,
253
- 2.5% 2.5%,
254
- 2.5% 2.5%;
255
- background-position:
256
- // 位置 2
257
- 28.35% 32.5%,
258
- 25% 45%,
259
- 25% 45%,
260
- 25% 45%;
261
- }
262
-
263
- 26% {
264
- background-size:
265
- 6.25% 6.25%,
266
- 2.5% 2.5%,
267
- 2.5% 2.5%,
268
- 2.5% 2.5%;
269
- background-position:
270
- // 位置 3
271
- 32.32% 27.32%,
272
- 25% 45%,
273
- 25% 45%,
274
- 25% 45%;
275
- }
276
-
277
- 28% {
278
- background-size:
279
- 7.5% 7.5%,
280
- 3.75% 3.75%,
281
- 2.5% 2.5%,
282
- 2.5% 2.5%;
283
- background-position:
284
- // 位置 4
285
- 37.5% 23.35%,
286
- // 位置 1
287
- 25.85% 38.53%,
288
- 25% 45%,
289
- 25% 45%;
290
- }
291
-
292
- 30% {
293
- background-size:
294
- 8.75% 8.75%,
295
- 5% 5%,
296
- 2.5% 2.5%,
297
- 2.5% 2.5%;
298
- background-position:
299
- // 位置 5
300
- 43.53% 20.85%,
301
- // 位置 2
302
- 28.35% 32.5%,
303
- 25% 45%,
304
- 25% 45%;
305
- }
306
-
307
- 32% {
308
- background-size:
309
- 10% 10%,
310
- 6.25% 6.25%,
311
- 3.75% 3.75%,
312
- 2.5% 2.5%;
313
- background-position:
314
- // 位置 6
315
- 50% 20%,
316
- // 位置 3
317
- 32.32% 27.32%,
318
- // 位置 1
319
- 25.85% 38.53%,
320
- 25% 45%;
321
- }
322
-
323
- 34% {
324
- background-size:
325
- 10% 10%,
326
- 7.5% 7.5%,
327
- 5% 5%,
328
- 2.5% 2.5%;
329
- background-position:
330
- // 位置 7
331
- 56.47% 20.85%,
332
- // 位置 4
333
- 37.32% 23.35%,
334
- // 位置 2
335
- 28.35% 32.5%,
336
- // 位置 1
337
- 25.85% 38.53%;
338
- }
339
-
340
- $Pi: 3.1415926;
341
-
342
- @for $i from 18 through 33 {
343
- #{calc($i / 50 * 100%)} {
344
- background-position:
345
- #{(50 - (25 * cos(($Pi * ($i - 10)) / 12))) * 1%} #{(45 - 25 * sin(($Pi * ($i - 10)) / 12)) * 1%},
346
- #{(50 - (25 * cos(($Pi * ($i - 13)) / 12))) * 1%} #{(45 - 25 * sin(($Pi * ($i - 13)) / 12)) * 1%},
347
- #{(50 - (25 * cos(($Pi * ($i - 15)) / 12))) * 1%} #{(45 - 25 * sin(($Pi * ($i - 15)) / 12)) * 1%},
348
- #{(50 - (25 * cos(($Pi * ($i - 17)) / 12))) * 1%} #{(45 - 25 * sin(($Pi * ($i - 17)) / 12)) * 1%};
349
- }
350
- }
351
-
352
- 68% {
353
- background-size:
354
- 10% 10%,
355
- 7.5% 7.5%,
356
- 5% 5%,
357
- 2.5% 2.5%;
358
- background-position:
359
- // 位置 0
360
- 25% 45%,
361
- // 位置 22
362
- 28.35% 57.45%,
363
- // 位置 20
364
- 37.45% 66.65%,
365
- // 位置 18
366
- 48% 70%;
367
- }
368
-
369
- 70% {
370
- background-size:
371
- 8.75% 8.75%,
372
- 7.5% 7.5%,
373
- 5% 5%,
374
- 2.5% 2.5%;
375
- background-position:
376
- // 位置 0
377
- 25% 45%,
378
- // 位置 23
379
- 25.85% 51.47%,
380
- // 位置 21
381
- 32.32% 62.68%,
382
- // 位置 19
383
- 43.53% 69.15%;
384
- }
385
-
386
- 72% {
387
- background-size:
388
- 7.5% 7.5%,
389
- 7.5% 7.5%,
390
- 5% 5%,
391
- 2.5% 2.5%;
392
- background-position:
393
- // 位置 0
394
- 25% 45%,
395
- // 位置 0
396
- 25% 45%,
397
- // 位置 22
398
- 28.35% 57.45%,
399
- // 位置 20
400
- 37.45% 66.65%;
401
- }
402
- 74% {
403
- background-size:
404
- 6.25% 6.25%,
405
- 6.25% 6.25%,
406
- 5% 5%,
407
- 2.5% 2.5%;
408
- background-position:
409
- // 位置 0
410
- 25% 45%,
411
- // 位置 0
412
- 25% 45%,
413
- // 位置 23
414
- 25.85% 51.47%,
415
- // 位置 21
416
- 32.32% 62.68%;
417
- }
418
-
419
- 76% {
420
- background-size:
421
- 5% 5%,
422
- 5% 5%,
423
- 5% 5%,
424
- 2.5% 2.5%;
425
- background-position:
426
- // 位置 0
427
- 25% 45%,
428
- // 位置 0
429
- 25% 45%,
430
- // 位置 0
431
- 25% 45%,
432
- // 位置 22
433
- 28.35% 57.45%;
434
- }
435
-
436
- 78% {
437
- background-size:
438
- 3.75% 3.75%,
439
- 3.75% 3.75%,
440
- 3.75% 3.75%,
441
- 2.5% 2.5%;
442
- background-position:
443
- // 位置 0
444
- 25% 45%,
445
- // 位置 0
446
- 25% 45%,
447
- // 位置 0
448
- 25% 45%,
449
- // 位置 23
450
- 25.85% 51.47%;
451
- }
134
+ .en-user-select-all {
135
+ -khtml-user-select: all;
136
+ -moz-user-select: all;
137
+ -ms-user-select: all;
138
+ user-select: all;
452
139
  }
453
140
 
454
- @keyframes colorText {
455
- 0% {
456
- background-position: 400% 0%;
457
- }
458
-
459
- 100% {
460
- background-position: 0% 0%;
461
- }
141
+ .en-cursor-pointer {
142
+ cursor: pointer;
462
143
  }
@@ -0,0 +1,38 @@
1
+ .en-flex,
2
+ .en-flex-row,
3
+ .en-flex-column,
4
+ .en-flex-row-reverse,
5
+ .en-flex-column-reverse {
6
+ display: flex;
7
+ flex-wrap: nowrap;
8
+ flex: 1;
9
+ }
10
+
11
+ .en-flex,
12
+ .en-flex-row {
13
+ flex-direction: row;
14
+ }
15
+
16
+ .en-flex-row-reverse {
17
+ flex-direction: row-reverse;
18
+ }
19
+
20
+ .en-flex-column {
21
+ flex-direction: column;
22
+ }
23
+
24
+ .en-flex-column-reverse {
25
+ flex-direction: column-reverse;
26
+ }
27
+
28
+ .en-flex-wrap {
29
+ flex-wrap: wrap;
30
+ }
31
+
32
+ .en-flex-nowrap {
33
+ flex-wrap: nowrap;
34
+ }
35
+
36
+ .en-flex-warp-reverse {
37
+ flex-wrap: wrap-reverse;
38
+ }
@@ -0,0 +1,54 @@
1
+ .en-h1,
2
+ h1.en-h1,
3
+ .en-style h1 {
4
+ font-size: 2.8rem;
5
+ line-height: 3rem;
6
+ margin-block: 0.87rem;
7
+ font-weight: 800;
8
+ text-align: center;
9
+ }
10
+
11
+ .en-h2,
12
+ h2.en-h2,
13
+ .en-style h2 {
14
+ font-size: 2.2rem;
15
+ line-height: 2.4rem;
16
+ margin-block: 0.94rem;
17
+ font-weight: 700;
18
+ }
19
+
20
+ .en-h3,
21
+ h3.en-h3,
22
+ .en-style h3 {
23
+ font-size: 1.6rem;
24
+ line-height: 1.8rem;
25
+ margin-block: 1rem;
26
+ font-weight: 600;
27
+ }
28
+
29
+ .en-h4,
30
+ h4.en-h4,
31
+ .en-style h4 {
32
+ font-size: 1.2rem;
33
+ line-height: 1.4rem;
34
+ margin-block: 1.02rem;
35
+ font-weight: 600;
36
+ }
37
+
38
+ .en-h5,
39
+ h5.en-h5,
40
+ .en-style h5 {
41
+ font-size: 0.94rem;
42
+ line-height: 1.14rem;
43
+ margin-block: 1.42rem;
44
+ font-weight: 600;
45
+ }
46
+
47
+ .en-h6,
48
+ h6.en-h6,
49
+ .en-style h6 {
50
+ font-size: 0.84rem;
51
+ line-height: 1.04rem;
52
+ margin-block: 2.12rem;
53
+ font-weight: 600;
54
+ }
@@ -0,0 +1,10 @@
1
+ img.en-img,
2
+ .en-img,
3
+ .en-style img {
4
+ -webkit-touch-callout: none;
5
+ -webkit-user-select: none;
6
+ -khtml-user-select: none;
7
+ -moz-user-select: none;
8
+ -ms-user-select: none;
9
+ user-select: none;
10
+ }
@@ -0,0 +1,131 @@
1
+ .en-input-focus-visible-none,
2
+ input.en-input-focus-visible-none,
3
+ .en-style input:focus-visible {
4
+ outline: none;
5
+ }
6
+
7
+ .en-style input[type='button'],
8
+ .cursor-pointer input[type='button'].cursor-pointer {
9
+ cursor: pointer;
10
+ }
11
+
12
+ .en-input-type-text-revers,
13
+ input[type='text'].en-input-type-text-revers,
14
+ .en-input-type-text-primary,
15
+ input[type='text'].en-input-type-text-primary,
16
+ .en-style input[type='text'] {
17
+ width: calc(var(--en-spacing) * 40);
18
+ border-radius: var(--en-spacing-3);
19
+ padding: var(--en-spacing-1) var(--en-spacing-3);
20
+
21
+ &:focus::placeholder {
22
+ color: transparent;
23
+ }
24
+ }
25
+
26
+ .en-input-type-text-primary,
27
+ input[type='text'].en-input-type-text-primary,
28
+ .en-style input[type='text'] {
29
+ background-color: var(--en-input-primary-background);
30
+ color: var(--en-input-primary-text);
31
+ border-style: outset;
32
+
33
+ &::placeholder {
34
+ color: var(--en-input-primary-placeholder-text);
35
+ }
36
+
37
+ &:focus-visible {
38
+ outline: var(--en-input-primary-focus-visible-outline);
39
+ border-color: transparent;
40
+ box-shadow: 0 2px 24px rgba(var(--en-input-primary-text-rgb), 0.6);
41
+ }
42
+ }
43
+
44
+ input[type='text'].en-input-type-text-revers,
45
+ .en-input-type-text-revers {
46
+ background-color: var(--en-input-revers-background);
47
+ color: var(--en-input-revers-text);
48
+ border-style: outset;
49
+
50
+ &::placeholder {
51
+ color: var(--en-input-revers-placeholder-text);
52
+ }
53
+
54
+ &:focus-visible {
55
+ outline: var(--en-input-revers-focus-visible-outline);
56
+ border-color: transparent;
57
+ box-shadow: 0 2px 12px rgba(var(--en-input-revers-text-rgb), 0.6);
58
+ }
59
+ }
60
+
61
+ .en-input-type-radio-primary,
62
+ .en-style input[type='radio'] {
63
+ width: 0;
64
+ height: 0;
65
+ overflow: hidden;
66
+
67
+ + label {
68
+ padding-left: 15px;
69
+
70
+ &::before,
71
+ &::after {
72
+ content: '';
73
+ position: absolute;
74
+ border-radius: 50%;
75
+ top: 50%;
76
+ transform: translate(0, -50%);
77
+ overflow: hidden;
78
+ }
79
+
80
+ $with: var(--en-spacing-base);
81
+
82
+ // 默认/未选中的前置
83
+ &::before {
84
+ left: 0px;
85
+ height: $with;
86
+ width: $with;
87
+ box-shadow: 1px 1px 3px var(--en-text-primary);
88
+ z-index: 1;
89
+ }
90
+
91
+ // 选中的项的额外涂色
92
+ &::after {
93
+ font-size: $with;
94
+ line-height: $with;
95
+ z-index: 2;
96
+ left: 0px;
97
+ height: $with;
98
+ width: $with;
99
+ color: var(--en-background-primary);
100
+ background-color: var(--en-text-primary);
101
+ clip-path: circle(0%);
102
+ transition: all var(--en-transition-slow);
103
+ }
104
+ }
105
+
106
+ &:checked {
107
+ color: #f00;
108
+
109
+ & + label {
110
+ color: var(--en-color-green-30);
111
+
112
+ &::before {
113
+ box-shadow:
114
+ 1px 1px 3px var(--en-color-green-10),
115
+ -1px -1px 3px var(--en-color-green-10);
116
+ }
117
+
118
+ &::after {
119
+ background-color: var(--en-color-green-30);
120
+ clip-path: circle(100%);
121
+ transition: all 0.8s;
122
+ }
123
+ }
124
+ }
125
+ }
126
+
127
+ .en-input-type-image-primary,
128
+ .en-style input[type='image'] {
129
+ -webkit-user-select: none;
130
+ user-select: none;
131
+ }