vdesign-ui 0.2.9 → 0.2.12

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.
Files changed (165) hide show
  1. package/README.md +78 -78
  2. package/dist/components/actionbar/index.js +8 -8
  3. package/dist/components/actionbar/index.vue +39 -39
  4. package/dist/components/actionbar/style.less +44 -44
  5. package/dist/components/actionbar-cell/index.js +7 -7
  6. package/dist/components/actionbar-cell/index.vue +38 -38
  7. package/dist/components/actions/index.js +6 -6
  8. package/dist/components/actions/index.vue +76 -76
  9. package/dist/components/actions/style.less +109 -109
  10. package/dist/components/actions-cell/index.js +6 -6
  11. package/dist/components/actions-cell/index.vue +94 -94
  12. package/dist/components/actions-cell/style.less +38 -38
  13. package/dist/components/activityviews/index.js +8 -8
  14. package/dist/components/activityviews/index.vue +192 -192
  15. package/dist/components/activityviews/style.less +151 -151
  16. package/dist/components/badge/index.js +8 -8
  17. package/dist/components/badge/index.vue +49 -49
  18. package/dist/components/badge/style.less +54 -54
  19. package/dist/components/button/index.js +8 -8
  20. package/dist/components/button/index.vue +93 -93
  21. package/dist/components/button/style.less +558 -558
  22. package/dist/components/calendar/index-element.vue +84 -84
  23. package/dist/components/calendar/index.js +7 -7
  24. package/dist/components/calendar/index.vue +52 -52
  25. package/dist/components/calendar/style.less +138 -138
  26. package/dist/components/checkbox/index.js +8 -8
  27. package/dist/components/checkbox/index.vue +161 -161
  28. package/dist/components/checkbox/style.less +288 -288
  29. package/dist/components/checkbox-group/index.js +7 -7
  30. package/dist/components/checkbox-group/index.vue +69 -69
  31. package/dist/components/common/state/index.vue +33 -33
  32. package/dist/components/common/state/style.less +47 -47
  33. package/dist/components/data-list/index.js +10 -10
  34. package/dist/components/data-list/index.vue +19 -19
  35. package/dist/components/data-list/style.less +623 -623
  36. package/dist/components/datetime-picker/index.js +7 -7
  37. package/dist/components/datetime-picker/index.vue +37 -37
  38. package/dist/components/datetime-picker/style.less +23 -23
  39. package/dist/components/dialog/index.js +8 -8
  40. package/dist/components/dialog/index.vue +164 -164
  41. package/dist/components/dialog/overlay-manager.js +18 -18
  42. package/dist/components/dialog/style.less +138 -138
  43. package/dist/components/divider/index.js +8 -8
  44. package/dist/components/divider/index.vue +54 -54
  45. package/dist/components/divider/style.less +92 -92
  46. package/dist/components/dropdown/index.js +8 -8
  47. package/dist/components/dropdown/index.vue +218 -218
  48. package/dist/components/dropdown/style.less +432 -432
  49. package/dist/components/empty/index.js +8 -8
  50. package/dist/components/empty/index.vue +138 -138
  51. package/dist/components/empty/style.less +60 -60
  52. package/dist/components/footer/index.js +6 -6
  53. package/dist/components/footer/index.vue +33 -33
  54. package/dist/components/footer/style.less +20 -20
  55. package/dist/components/footnav/index.js +6 -6
  56. package/dist/components/footnav/index.vue +93 -93
  57. package/dist/components/footnav/style.less +22 -22
  58. package/dist/components/footnav-item/index.js +6 -6
  59. package/dist/components/footnav-item/index.vue +50 -50
  60. package/dist/components/footnav-item/style.less +39 -39
  61. package/dist/components/form/index.js +6 -6
  62. package/dist/components/form/index.vue +12 -12
  63. package/dist/components/headnav/index.js +6 -6
  64. package/dist/components/headnav/index.vue +185 -185
  65. package/dist/components/headnav/style.less +231 -231
  66. package/dist/components/icon/font/iconfont.css +163 -163
  67. package/dist/components/icon/font/iconfont.js +5 -5
  68. package/dist/components/icon/index.js +9 -9
  69. package/dist/components/icon/index.vue +96 -96
  70. package/dist/components/icon/style.less +44 -44
  71. package/dist/components/input/calcTextareaHeight.js +162 -162
  72. package/dist/components/input/index.js +8 -8
  73. package/dist/components/input/index.vue +345 -345
  74. package/dist/components/input/style.less +470 -470
  75. package/dist/components/list/index.js +8 -8
  76. package/dist/components/list/index.vue +152 -152
  77. package/dist/components/list/style.less +213 -213
  78. package/dist/components/loading/index.js +6 -6
  79. package/dist/components/loading/index.vue +68 -68
  80. package/dist/components/loading/style.less +53 -53
  81. package/dist/components/mixins/clickoutside.js +81 -81
  82. package/dist/components/mixins/languageMixin.js +41 -41
  83. package/dist/components/mixins/outlineConfigPlugin.js +45 -45
  84. package/dist/components/mixins/themeMixin.js +43 -43
  85. package/dist/components/noticebar/index.js +8 -8
  86. package/dist/components/noticebar/index.vue +258 -258
  87. package/dist/components/noticebar/style.less +328 -328
  88. package/dist/components/overlay/index.js +8 -8
  89. package/dist/components/overlay/index.vue +184 -184
  90. package/dist/components/overlay/style.less +23 -23
  91. package/dist/components/pagebreak/index.js +6 -6
  92. package/dist/components/pagebreak/index.vue +67 -67
  93. package/dist/components/pagebreak/style.less +41 -41
  94. package/dist/components/password/index.js +8 -8
  95. package/dist/components/password/index.vue +60 -60
  96. package/dist/components/popover/index.js +8 -8
  97. package/dist/components/popover/index.vue +100 -100
  98. package/dist/components/popover/style.less +346 -346
  99. package/dist/components/popover/vue-popover.vue +314 -314
  100. package/dist/components/popup/index.js +7 -7
  101. package/dist/components/popup/index.vue +243 -243
  102. package/dist/components/radio/index.js +8 -8
  103. package/dist/components/radio/index.vue +184 -184
  104. package/dist/components/radio/style.less +293 -293
  105. package/dist/components/radio-group/index.js +6 -6
  106. package/dist/components/radio-group/index.vue +58 -58
  107. package/dist/components/result/index.js +8 -8
  108. package/dist/components/result/index.vue +73 -73
  109. package/dist/components/result/style.less +43 -43
  110. package/dist/components/search/index.js +8 -8
  111. package/dist/components/search/index.vue +66 -66
  112. package/dist/components/selector/index.js +8 -8
  113. package/dist/components/selector/index.vue +161 -161
  114. package/dist/components/selector/style.less +484 -484
  115. package/dist/components/skeleton/index.js +6 -6
  116. package/dist/components/skeleton/index.vue +207 -206
  117. package/dist/components/skeleton/style.less +196 -196
  118. package/dist/components/slider/draggable.js +49 -49
  119. package/dist/components/slider/index.js +6 -6
  120. package/dist/components/slider/index.vue +167 -167
  121. package/dist/components/slider/style.less +99 -99
  122. package/dist/components/slider/utils.js +59 -59
  123. package/dist/components/step/index.js +7 -7
  124. package/dist/components/step/index.vue +48 -48
  125. package/dist/components/step/style.less +57 -57
  126. package/dist/components/step-item/index.js +7 -7
  127. package/dist/components/step-item/index.vue +126 -126
  128. package/dist/components/step-item/style.less +362 -362
  129. package/dist/components/stepper/index.js +8 -8
  130. package/dist/components/stepper/index.vue +146 -146
  131. package/dist/components/style/index.vue +42 -42
  132. package/dist/components/switch/index.js +8 -8
  133. package/dist/components/switch/index.vue +72 -72
  134. package/dist/components/switch/style.less +56 -56
  135. package/dist/components/tab/index.js +7 -7
  136. package/dist/components/tab/index.vue +94 -93
  137. package/dist/components/tabs/index.js +8 -8
  138. package/dist/components/tabs/index.vue +281 -271
  139. package/dist/components/tabs/style.less +408 -409
  140. package/dist/components/tag/index.js +6 -6
  141. package/dist/components/tag/index.vue +64 -64
  142. package/dist/components/tag/style.less +210 -210
  143. package/dist/components/title/index.js +8 -8
  144. package/dist/components/title/index.vue +99 -99
  145. package/dist/components/title/style.less +187 -187
  146. package/dist/components/toast/index.js +97 -86
  147. package/dist/components/toast/index.vue +49 -49
  148. package/dist/components/toast/style.less +57 -57
  149. package/dist/components/transition/index.js +8 -8
  150. package/dist/components/transition/index.vue +13 -13
  151. package/dist/components/transition/style.less +208 -208
  152. package/dist/components/upload/index.js +6 -6
  153. package/dist/components/upload/index.vue +106 -106
  154. package/dist/components/upload/style.less +147 -147
  155. package/dist/components/utils/assist.js +34 -34
  156. package/dist/components/utils/env.js +21 -21
  157. package/dist/locale/ar.js +97 -97
  158. package/dist/locale/en.js +97 -97
  159. package/dist/locale/zh.js +97 -97
  160. package/dist/token.css +2988 -2988
  161. package/dist/vdesign-ui.common.js +308 -8512
  162. package/dist/vdesign-ui.css +1 -1
  163. package/dist/vdesign-ui.umd.js +312 -8516
  164. package/dist/vdesign-ui.umd.min.js +2 -8
  165. package/package.json +113 -113
@@ -1,362 +1,362 @@
1
- @prefix: ~"vd-step-item";
2
-
3
- .@{prefix} {
4
- position: relative;
5
-
6
- &.vd-step-horizontal {
7
- flex: 1;
8
- width: 100%;
9
- display: flex;
10
- justify-content: center;
11
- padding-block-start: calc(var(--spacing-steps-horizontal-padding_x) + var(--icon-steps-size) + var(--spacing-steps-horizontal_icon-margin_bottom));
12
-
13
- .vd-step-u-dot {
14
- position: absolute;
15
- inset-inline-end: 50%;
16
- transform: translateX(50%);
17
- z-index: 2;
18
- display: flex;
19
- justify-content: center;
20
- align-items: center;
21
- color: inherit;
22
- width: var(--icon-steps-size);
23
- height: var(--icon-steps-size);
24
- inset-block-start: var(--spacing-steps-horizontal-padding_x);
25
-
26
- .vd-iconfont {
27
- color: inherit;
28
- font-size: var(--icon-steps-size);
29
- }
30
-
31
- &::before {
32
- content: "";
33
- width: calc(var(--icon-steps-size) * 0.5);
34
- height: calc(var(--icon-steps-size) * 0.5);
35
- border-radius: 999em;
36
- overflow: hidden;
37
- background-color: var(--bg-color-1);
38
- border: 2px solid var(--text-color-h3);
39
- box-sizing: border-box;
40
- }
41
- }
42
-
43
- .vd-step-u-line {
44
- position: absolute;
45
- inset-block-start: calc(var(--spacing-steps-horizontal-padding_x) + var(--icon-steps-size)/2);
46
- inset-inline-end: 0;
47
- z-index: 1;
48
- width: 100%;
49
- height: var(--height-steps-border-default);
50
- background: linear-gradient(to left,
51
- transparent 0%,
52
- transparent 50%,
53
- var(--color-steps-border-default) 50%,
54
- var(--color-steps-border-default) 100%);
55
- background-size: 5px var(--height-steps-border-default);
56
- background-repeat: repeat-x;
57
- }
58
-
59
- .vd-step-u-text {
60
- min-width: 0;
61
- word-break: break-word;
62
- text-align: center;
63
- // not_started
64
- color: var(--color-steps-text-not_started);
65
- font-size: var(--en-multi-f-c-r-fontSize);
66
- font-weight: var(--en-multi-f-c-r-fontWeight);
67
- line-height: var(--en-multi-f-c-r-lineHeight);
68
-
69
- &__title {
70
- overflow: hidden;
71
- display: -webkit-box;
72
- -webkit-box-orient: vertical;
73
- -webkit-line-clamp: 2;
74
- }
75
-
76
- &__description {
77
- overflow: hidden;
78
- display: -webkit-box;
79
- -webkit-box-orient: vertical;
80
- -webkit-line-clamp: 3;
81
- // description_text
82
- color: var(--color-steps-description_text);
83
- font-size: var(--en-multi-f-b-r-fontSize);
84
- font-weight: var(--en-multi-f-b-r-fontWeight);
85
- line-height: var(--en-multi-f-b-r-lineHeight);
86
- }
87
- }
88
-
89
- &.vd-step-active {
90
-
91
- .vd-step-u-text {
92
- color: var(--color-steps-text-complete);
93
- font-size: var(--en-multi-f-c-r-fontSize);
94
- font-weight: var(--en-multi-f-c-r-fontWeight);
95
- line-height: var(--en-multi-f-c-r-lineHeight);
96
- }
97
-
98
- .vd-step-u-dot {
99
- &::before {
100
- border: 2px solid var(--primary-color);
101
- }
102
- }
103
-
104
- .vd-step-u-line {
105
- height: var(--height-steps-border-hover);
106
- background: var(--color-steps-border-hover);
107
- }
108
- }
109
-
110
- &.vd-step-afoot {
111
-
112
- .vd-step-u-dot::before {
113
- content: none;
114
- }
115
-
116
- .vd-step-u-text {
117
- color: var(--color-steps-text-afoot);
118
- font-size: var(--en-multi-f-c-s-fontSize);
119
- font-weight: var(--en-multi-f-c-s-fontWeight);
120
- line-height: var(--en-multi-f-c-s-lineHeight);
121
- }
122
-
123
- .vd-step-u-line::after {
124
- content: "";
125
- position: absolute;
126
- inset-block-start: 0;
127
- inset-inline-start: 0;
128
- width: 50%;
129
- height: var(--height-steps-border-hover);
130
- background: var(--color-steps-border-hover);
131
- }
132
- }
133
-
134
- &.vd-step-warning {
135
-
136
- .vd-step-u-dot::before {
137
- content: none;
138
- }
139
-
140
- .vd-step-u-text {
141
- color: var(--color-steps-text-warning);
142
- font-size: var(--en-multi-f-c-s-fontSize);
143
- font-weight: var(--en-multi-f-c-s-fontWeight);
144
- line-height: var(--en-multi-f-c-s-lineHeight);
145
- }
146
-
147
- .vd-step-u-line::after {
148
- content: "";
149
- position: absolute;
150
- inset-block-start: 0;
151
- inset-inline-start: 0;
152
- width: 50%;
153
- height: var(--height-steps-border-hover);
154
- background: var(--color-steps-border-hover);
155
- }
156
- }
157
- }
158
-
159
- // vertical
160
- &.vd-step-vertical {
161
- width: 100%;
162
- padding-inline-start: calc(var(--spacing-steps-vertical-padding_y) + var(--icon-steps-size) + var(--spacing-steps-vertical_icon-margin_right));
163
-
164
- &:not(:last-child) {
165
- padding-block-end: var(--spacing-steps-vertical_description_text-margin_bottom);
166
- }
167
-
168
- .vd-step-u-dot {
169
- position: absolute;
170
- inset-block-start: 0;
171
- inset-inline-start: var(--spacing-steps-vertical-padding_y);
172
- z-index: 2;
173
- display: flex;
174
- justify-content: center;
175
- align-items: center;
176
- color: inherit;
177
- width: var(--icon-steps-size);
178
- height: var(--icon-steps-size);
179
-
180
- .vd-iconfont {
181
- color: inherit;
182
- font-size: var(--icon-steps-size);
183
- }
184
-
185
- &::before {
186
- content: "";
187
- width: calc(var(--icon-steps-size) * 0.5);
188
- height: calc(var(--icon-steps-size) * 0.5);
189
- border-radius: 999em;
190
- overflow: hidden;
191
- background-color: var(--bg-color-1);
192
- border: 2px solid var(--text-color-h3);
193
- box-sizing: border-box;
194
- }
195
- }
196
-
197
- .vd-step-u-line {
198
- position: absolute;
199
- z-index: 1;
200
- inset-block-start: calc(var(--icon-steps-size)/2);
201
- inset-inline-start: calc(var(--spacing-steps-vertical-padding_y) + var(--icon-steps-size)/2);
202
- width: var(--height-steps-border-default);
203
- height: 100%;
204
- background: linear-gradient(to bottom,
205
- transparent 0%,
206
- transparent 50%,
207
- var(--color-steps-border-default) 50%,
208
- var(--color-steps-border-default) 100%);
209
- background-size: 1px 5px;
210
- background-repeat: repeat-y;
211
- }
212
-
213
- .vd-step-u-text {
214
- min-width: 0;
215
- word-break: break-word;
216
- text-align: start;
217
- // not_started
218
- color: var(--color-steps-text-not_started);
219
- font-size: var(--en-multi-f-c-r-fontSize);
220
- font-weight: var(--en-multi-f-c-r-fontWeight);
221
- line-height: var(--en-multi-f-c-r-lineHeight);
222
-
223
- &__title {
224
- overflow: hidden;
225
- display: -webkit-box;
226
- -webkit-box-orient: vertical;
227
- -webkit-line-clamp: 2;
228
- }
229
-
230
- &__description {
231
- overflow: hidden;
232
- display: -webkit-box;
233
- -webkit-box-orient: vertical;
234
- -webkit-line-clamp: 3;
235
- // description_text
236
- color: var(--color-steps-description_text);
237
- font-size: var(--en-multi-f-b-r-fontSize);
238
- font-weight: var(--en-multi-f-b-r-fontWeight);
239
- line-height: var(--en-multi-f-b-r-lineHeight);
240
- }
241
- }
242
-
243
-
244
- &.vd-step-active {
245
-
246
- .vd-step-u-text {
247
- color: var(--color-steps-text-complete);
248
- font-size: var(--en-multi-f-c-r-fontSize);
249
- font-weight: var(--en-multi-f-c-r-fontWeight);
250
- line-height: var(--en-multi-f-c-r-lineHeight);
251
- }
252
-
253
- .vd-step-u-dot {
254
- &::before {
255
- border: 2px solid var(--primary-color);
256
- }
257
- }
258
-
259
- .vd-step-u-line::after {
260
- content: "";
261
- position: absolute;
262
- z-index: 1;
263
- inset-block-start: 0;
264
- inset-inline-start: 0;
265
- height: 100%;
266
- width: var(--height-steps-border-default);
267
- background: var(--color-steps-border-hover);
268
- }
269
-
270
- // 复杂 css 条件,但:has兼容性不够
271
- &:not(:has(+ :is(.vd-step-active, .vd-step-afoot, .vd-step-warning))) {
272
- .vd-step-u-line::after {
273
- height: 50% !important;
274
- }
275
- }
276
- }
277
-
278
-
279
- &.vd-step-warning {
280
- .vd-step-u-line::after {
281
- height: 100%;
282
- }
283
-
284
- .vd-step-u-text {
285
- color: var(--color-steps-text-warning);
286
- font-size: var(--en-multi-f-c-s-fontSize);
287
- font-weight: var(--en-multi-f-c-s-fontWeight);
288
- line-height: var(--en-multi-f-c-s-lineHeight);
289
- }
290
-
291
- .vd-step-u-dot::before {
292
- content: none;
293
- }
294
-
295
- &+.vd-step-active {
296
- .vd-step-u-line::after {
297
- height: 100%;
298
- }
299
- }
300
- }
301
-
302
-
303
- &.vd-step-afoot {
304
- .u-line::after {
305
- height: 100%;
306
- }
307
-
308
- .vd-step-u-text {
309
- color: var(--color-steps-text-afoot);
310
- font-size: var(--en-multi-f-c-s-fontSize);
311
- font-weight: var(--en-multi-f-c-s-fontWeight);
312
- line-height: var(--en-multi-f-c-s-lineHeight);
313
- }
314
-
315
- .vd-step-u-dot::before {
316
- content: none;
317
- }
318
-
319
- &+.vd-step-active {
320
- .vd-step-u-line::after {
321
- height: 100%;
322
- }
323
- }
324
- }
325
- }
326
-
327
- // basic
328
- &.vd-step-basic {
329
- flex: 1;
330
- width: 100%;
331
- display: flex;
332
- justify-content: center;
333
- padding-top: var(--spacing-steps-basic-padding_top);
334
- padding-bottom: var(--spacing-steps-basic-padding_bottom);
335
- margin-inline-start: var(--spacing-steps-basic-padding_y);
336
-
337
- &:last-child {
338
- margin-inline-end: var(--spacing-steps-basic-padding_y);
339
- }
340
-
341
- .vd-step-u-line {
342
- width: 100%;
343
- height: var(--height-steps-basic-default);
344
- border-radius: var(--radius-steps-basic);
345
- background: var(--color-steps-basic-default);
346
- }
347
-
348
- &.vd-step-active {
349
- .vd-step-u-line {
350
- height: var(--height-steps-basic-hover);
351
- background: var(--color-steps-basic-hover);
352
- }
353
- }
354
- }
355
- }
356
-
357
-
358
- [lang='ar'] {
359
- .vd-step-horizontal .vd-step-u-dot {
360
- transform: translateX(-50%);
361
- }
362
- }
1
+ @prefix: ~"vd-step-item";
2
+
3
+ .@{prefix} {
4
+ position: relative;
5
+
6
+ &.vd-step-horizontal {
7
+ flex: 1;
8
+ width: 100%;
9
+ display: flex;
10
+ justify-content: center;
11
+ padding-block-start: calc(var(--spacing-steps-horizontal-padding_x) + var(--icon-steps-size) + var(--spacing-steps-horizontal_icon-margin_bottom));
12
+
13
+ .vd-step-u-dot {
14
+ position: absolute;
15
+ inset-inline-end: 50%;
16
+ transform: translateX(50%);
17
+ z-index: 2;
18
+ display: flex;
19
+ justify-content: center;
20
+ align-items: center;
21
+ color: inherit;
22
+ width: var(--icon-steps-size);
23
+ height: var(--icon-steps-size);
24
+ inset-block-start: var(--spacing-steps-horizontal-padding_x);
25
+
26
+ .vd-iconfont {
27
+ color: inherit;
28
+ font-size: var(--icon-steps-size);
29
+ }
30
+
31
+ &::before {
32
+ content: "";
33
+ width: calc(var(--icon-steps-size) * 0.5);
34
+ height: calc(var(--icon-steps-size) * 0.5);
35
+ border-radius: 999em;
36
+ overflow: hidden;
37
+ background-color: var(--bg-color-1);
38
+ border: 2px solid var(--text-color-h3);
39
+ box-sizing: border-box;
40
+ }
41
+ }
42
+
43
+ .vd-step-u-line {
44
+ position: absolute;
45
+ inset-block-start: calc(var(--spacing-steps-horizontal-padding_x) + var(--icon-steps-size)/2);
46
+ inset-inline-end: 0;
47
+ z-index: 1;
48
+ width: 100%;
49
+ height: var(--height-steps-border-default);
50
+ background: linear-gradient(to left,
51
+ transparent 0%,
52
+ transparent 50%,
53
+ var(--color-steps-border-default) 50%,
54
+ var(--color-steps-border-default) 100%);
55
+ background-size: 5px var(--height-steps-border-default);
56
+ background-repeat: repeat-x;
57
+ }
58
+
59
+ .vd-step-u-text {
60
+ min-width: 0;
61
+ word-break: break-word;
62
+ text-align: center;
63
+ // not_started
64
+ color: var(--color-steps-text-not_started);
65
+ font-size: var(--en-multi-f-c-r-fontSize);
66
+ font-weight: var(--en-multi-f-c-r-fontWeight);
67
+ line-height: var(--en-multi-f-c-r-lineHeight);
68
+
69
+ &__title {
70
+ overflow: hidden;
71
+ display: -webkit-box;
72
+ -webkit-box-orient: vertical;
73
+ -webkit-line-clamp: 2;
74
+ }
75
+
76
+ &__description {
77
+ overflow: hidden;
78
+ display: -webkit-box;
79
+ -webkit-box-orient: vertical;
80
+ -webkit-line-clamp: 3;
81
+ // description_text
82
+ color: var(--color-steps-description_text);
83
+ font-size: var(--en-multi-f-b-r-fontSize);
84
+ font-weight: var(--en-multi-f-b-r-fontWeight);
85
+ line-height: var(--en-multi-f-b-r-lineHeight);
86
+ }
87
+ }
88
+
89
+ &.vd-step-active {
90
+
91
+ .vd-step-u-text {
92
+ color: var(--color-steps-text-complete);
93
+ font-size: var(--en-multi-f-c-r-fontSize);
94
+ font-weight: var(--en-multi-f-c-r-fontWeight);
95
+ line-height: var(--en-multi-f-c-r-lineHeight);
96
+ }
97
+
98
+ .vd-step-u-dot {
99
+ &::before {
100
+ border: 2px solid var(--primary-color);
101
+ }
102
+ }
103
+
104
+ .vd-step-u-line {
105
+ height: var(--height-steps-border-hover);
106
+ background: var(--color-steps-border-hover);
107
+ }
108
+ }
109
+
110
+ &.vd-step-afoot {
111
+
112
+ .vd-step-u-dot::before {
113
+ content: none;
114
+ }
115
+
116
+ .vd-step-u-text {
117
+ color: var(--color-steps-text-afoot);
118
+ font-size: var(--en-multi-f-c-s-fontSize);
119
+ font-weight: var(--en-multi-f-c-s-fontWeight);
120
+ line-height: var(--en-multi-f-c-s-lineHeight);
121
+ }
122
+
123
+ .vd-step-u-line::after {
124
+ content: "";
125
+ position: absolute;
126
+ inset-block-start: 0;
127
+ inset-inline-start: 0;
128
+ width: 50%;
129
+ height: var(--height-steps-border-hover);
130
+ background: var(--color-steps-border-hover);
131
+ }
132
+ }
133
+
134
+ &.vd-step-warning {
135
+
136
+ .vd-step-u-dot::before {
137
+ content: none;
138
+ }
139
+
140
+ .vd-step-u-text {
141
+ color: var(--color-steps-text-warning);
142
+ font-size: var(--en-multi-f-c-s-fontSize);
143
+ font-weight: var(--en-multi-f-c-s-fontWeight);
144
+ line-height: var(--en-multi-f-c-s-lineHeight);
145
+ }
146
+
147
+ .vd-step-u-line::after {
148
+ content: "";
149
+ position: absolute;
150
+ inset-block-start: 0;
151
+ inset-inline-start: 0;
152
+ width: 50%;
153
+ height: var(--height-steps-border-hover);
154
+ background: var(--color-steps-border-hover);
155
+ }
156
+ }
157
+ }
158
+
159
+ // vertical
160
+ &.vd-step-vertical {
161
+ width: 100%;
162
+ padding-inline-start: calc(var(--spacing-steps-vertical-padding_y) + var(--icon-steps-size) + var(--spacing-steps-vertical_icon-margin_right));
163
+
164
+ &:not(:last-child) {
165
+ padding-block-end: var(--spacing-steps-vertical_description_text-margin_bottom);
166
+ }
167
+
168
+ .vd-step-u-dot {
169
+ position: absolute;
170
+ inset-block-start: 0;
171
+ inset-inline-start: var(--spacing-steps-vertical-padding_y);
172
+ z-index: 2;
173
+ display: flex;
174
+ justify-content: center;
175
+ align-items: center;
176
+ color: inherit;
177
+ width: var(--icon-steps-size);
178
+ height: var(--icon-steps-size);
179
+
180
+ .vd-iconfont {
181
+ color: inherit;
182
+ font-size: var(--icon-steps-size);
183
+ }
184
+
185
+ &::before {
186
+ content: "";
187
+ width: calc(var(--icon-steps-size) * 0.5);
188
+ height: calc(var(--icon-steps-size) * 0.5);
189
+ border-radius: 999em;
190
+ overflow: hidden;
191
+ background-color: var(--bg-color-1);
192
+ border: 2px solid var(--text-color-h3);
193
+ box-sizing: border-box;
194
+ }
195
+ }
196
+
197
+ .vd-step-u-line {
198
+ position: absolute;
199
+ z-index: 1;
200
+ inset-block-start: calc(var(--icon-steps-size)/2);
201
+ inset-inline-start: calc(var(--spacing-steps-vertical-padding_y) + var(--icon-steps-size)/2);
202
+ width: var(--height-steps-border-default);
203
+ height: 100%;
204
+ background: linear-gradient(to bottom,
205
+ transparent 0%,
206
+ transparent 50%,
207
+ var(--color-steps-border-default) 50%,
208
+ var(--color-steps-border-default) 100%);
209
+ background-size: 1px 5px;
210
+ background-repeat: repeat-y;
211
+ }
212
+
213
+ .vd-step-u-text {
214
+ min-width: 0;
215
+ word-break: break-word;
216
+ text-align: start;
217
+ // not_started
218
+ color: var(--color-steps-text-not_started);
219
+ font-size: var(--en-multi-f-c-r-fontSize);
220
+ font-weight: var(--en-multi-f-c-r-fontWeight);
221
+ line-height: var(--en-multi-f-c-r-lineHeight);
222
+
223
+ &__title {
224
+ overflow: hidden;
225
+ display: -webkit-box;
226
+ -webkit-box-orient: vertical;
227
+ -webkit-line-clamp: 2;
228
+ }
229
+
230
+ &__description {
231
+ overflow: hidden;
232
+ display: -webkit-box;
233
+ -webkit-box-orient: vertical;
234
+ -webkit-line-clamp: 3;
235
+ // description_text
236
+ color: var(--color-steps-description_text);
237
+ font-size: var(--en-multi-f-b-r-fontSize);
238
+ font-weight: var(--en-multi-f-b-r-fontWeight);
239
+ line-height: var(--en-multi-f-b-r-lineHeight);
240
+ }
241
+ }
242
+
243
+
244
+ &.vd-step-active {
245
+
246
+ .vd-step-u-text {
247
+ color: var(--color-steps-text-complete);
248
+ font-size: var(--en-multi-f-c-r-fontSize);
249
+ font-weight: var(--en-multi-f-c-r-fontWeight);
250
+ line-height: var(--en-multi-f-c-r-lineHeight);
251
+ }
252
+
253
+ .vd-step-u-dot {
254
+ &::before {
255
+ border: 2px solid var(--primary-color);
256
+ }
257
+ }
258
+
259
+ .vd-step-u-line::after {
260
+ content: "";
261
+ position: absolute;
262
+ z-index: 1;
263
+ inset-block-start: 0;
264
+ inset-inline-start: 0;
265
+ height: 100%;
266
+ width: var(--height-steps-border-default);
267
+ background: var(--color-steps-border-hover);
268
+ }
269
+
270
+ // 复杂 css 条件,但:has兼容性不够
271
+ &:not(:has(+ :is(.vd-step-active, .vd-step-afoot, .vd-step-warning))) {
272
+ .vd-step-u-line::after {
273
+ height: 50% !important;
274
+ }
275
+ }
276
+ }
277
+
278
+
279
+ &.vd-step-warning {
280
+ .vd-step-u-line::after {
281
+ height: 100%;
282
+ }
283
+
284
+ .vd-step-u-text {
285
+ color: var(--color-steps-text-warning);
286
+ font-size: var(--en-multi-f-c-s-fontSize);
287
+ font-weight: var(--en-multi-f-c-s-fontWeight);
288
+ line-height: var(--en-multi-f-c-s-lineHeight);
289
+ }
290
+
291
+ .vd-step-u-dot::before {
292
+ content: none;
293
+ }
294
+
295
+ &+.vd-step-active {
296
+ .vd-step-u-line::after {
297
+ height: 100%;
298
+ }
299
+ }
300
+ }
301
+
302
+
303
+ &.vd-step-afoot {
304
+ .u-line::after {
305
+ height: 100%;
306
+ }
307
+
308
+ .vd-step-u-text {
309
+ color: var(--color-steps-text-afoot);
310
+ font-size: var(--en-multi-f-c-s-fontSize);
311
+ font-weight: var(--en-multi-f-c-s-fontWeight);
312
+ line-height: var(--en-multi-f-c-s-lineHeight);
313
+ }
314
+
315
+ .vd-step-u-dot::before {
316
+ content: none;
317
+ }
318
+
319
+ &+.vd-step-active {
320
+ .vd-step-u-line::after {
321
+ height: 100%;
322
+ }
323
+ }
324
+ }
325
+ }
326
+
327
+ // basic
328
+ &.vd-step-basic {
329
+ flex: 1;
330
+ width: 100%;
331
+ display: flex;
332
+ justify-content: center;
333
+ padding-top: var(--spacing-steps-basic-padding_top);
334
+ padding-bottom: var(--spacing-steps-basic-padding_bottom);
335
+ margin-inline-start: var(--spacing-steps-basic-padding_y);
336
+
337
+ &:last-child {
338
+ margin-inline-end: var(--spacing-steps-basic-padding_y);
339
+ }
340
+
341
+ .vd-step-u-line {
342
+ width: 100%;
343
+ height: var(--height-steps-basic-default);
344
+ border-radius: var(--radius-steps-basic);
345
+ background: var(--color-steps-basic-default);
346
+ }
347
+
348
+ &.vd-step-active {
349
+ .vd-step-u-line {
350
+ height: var(--height-steps-basic-hover);
351
+ background: var(--color-steps-basic-hover);
352
+ }
353
+ }
354
+ }
355
+ }
356
+
357
+
358
+ [lang='ar'] {
359
+ .vd-step-horizontal .vd-step-u-dot {
360
+ transform: translateX(-50%);
361
+ }
362
+ }