@douyinfe/semi-foundation 2.79.0 → 2.80.0-alpha.2

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 (35) hide show
  1. package/cascader/foundation.ts +2 -2
  2. package/lib/cjs/cascader/foundation.js +1 -1
  3. package/lib/cjs/tooltip/foundation.js +4 -1
  4. package/lib/cjs/tree/treeUtil.d.ts +1 -1
  5. package/lib/cjs/videoPlayer/animation.scss +7 -0
  6. package/lib/cjs/videoPlayer/constants.d.ts +30 -0
  7. package/lib/cjs/videoPlayer/constants.js +48 -0
  8. package/lib/cjs/videoPlayer/foundation.d.ts +75 -0
  9. package/lib/cjs/videoPlayer/foundation.js +291 -0
  10. package/lib/cjs/videoPlayer/progressFoundation.d.ts +38 -0
  11. package/lib/cjs/videoPlayer/progressFoundation.js +131 -0
  12. package/lib/cjs/videoPlayer/variables.scss +75 -0
  13. package/lib/cjs/videoPlayer/videoPlayer.css +279 -0
  14. package/lib/cjs/videoPlayer/videoPlayer.scss +323 -0
  15. package/lib/es/cascader/foundation.js +1 -1
  16. package/lib/es/tooltip/foundation.js +4 -1
  17. package/lib/es/tree/treeUtil.d.ts +1 -1
  18. package/lib/es/videoPlayer/animation.scss +7 -0
  19. package/lib/es/videoPlayer/constants.d.ts +30 -0
  20. package/lib/es/videoPlayer/constants.js +43 -0
  21. package/lib/es/videoPlayer/foundation.d.ts +75 -0
  22. package/lib/es/videoPlayer/foundation.js +283 -0
  23. package/lib/es/videoPlayer/progressFoundation.d.ts +38 -0
  24. package/lib/es/videoPlayer/progressFoundation.js +123 -0
  25. package/lib/es/videoPlayer/variables.scss +75 -0
  26. package/lib/es/videoPlayer/videoPlayer.css +279 -0
  27. package/lib/es/videoPlayer/videoPlayer.scss +323 -0
  28. package/package.json +4 -4
  29. package/tooltip/foundation.ts +4 -1
  30. package/videoPlayer/animation.scss +7 -0
  31. package/videoPlayer/constants.ts +39 -0
  32. package/videoPlayer/foundation.ts +332 -0
  33. package/videoPlayer/progressFoundation.ts +136 -0
  34. package/videoPlayer/variables.scss +75 -0
  35. package/videoPlayer/videoPlayer.scss +323 -0
@@ -0,0 +1,75 @@
1
+ // Color
2
+ $color-videoPlayer_theme_dark-text: var(--semi-color-bg-0); // dark theme 字体色
3
+ $color-videoPlayer_theme_dark-bg: rgba(var(--semi-grey-8), 1); // dark theme 背景色
4
+ $color-videoPlayer_theme_light-text: rgba(var(--semi-grey-8), 1); // light theme 字体色
5
+ $color-videoPlayer_theme_light-bg: var(--semi-color-disabled-bg); // light theme 背景色
6
+ $color-videoPlayer_pause-bg: var(--semi-color-text-1); // 暂停按钮颜色
7
+ $color-videoPlayer_notification-bg: var(--semi-color-overlay-bg); // notification 背景色
8
+ $color-videoPlayer_notification-text: var(--semi-color-default); // notification 字体色
9
+ $color-videoPlayer_controls-bg: rgba(28, 31, 35, 0.8); // 控制栏背景色
10
+ $color-videoPlayer_controls_item-bg: var(--semi-color-overlay-bg); // 控制栏 item 背景色
11
+ $color-videoPlayer_controls-text: #fff; // 控制栏文字色
12
+ $color-videoPlayer_controls_item_popup-bg-default: var(--semi-color-overlay-bg); // 控制栏弹层背景色
13
+ $color-videoPlayer_controls_item_popup-bg-hover: rgba(67, 68, 74, 1); // 控制栏弹层背景色 - hover
14
+ $color-videoPlayer_controls_popup_item-text-default: rgba(#fff, 0.7); // 控制栏文字色
15
+ $color-videoPlayer_controls_popup_item-text-active: var(--semi-color-primary); // 控制栏弹层文字色 - 选中
16
+ $color-videoPlayer_progress_bar-bg-played: var(--semi-color-primary); // 进度条已播放部分背景色
17
+ $color-videoPlayer_progress_bar-bg-loaded: rgba(var(--semi-grey-3), 1); // 进度条已加载部分背景色
18
+ $color-videoPlayer_progress_bar-bg-unplayed: rgba(var(--semi-grey-5), 1); // 进度条未播放部分背景色
19
+ $color-videoPlayer_progress_bar_handle-bg: #fff; // handle 背景色
20
+ $color-videoPlayer_progress_bar_handle-border: var(--semi-color-primary); // handle 边框色
21
+ $color-videoPlayer_progress_bar_handle-shadow: var(--semi-color-shadow); // handle 阴影色
22
+
23
+ // Width/Height
24
+ $height-videoPlayer_progress_bar_hotSpot-default: 20px; // 进度条热区 default 高度
25
+ $height-videoPlayer_progress_bar-default: 4px; // 进度条 default 高度
26
+ $height-videoPlayer_progress_bar-hover: 10px; // 进度条 hover 高度
27
+ $height-videoPlayer_progress_bar_handle: 16px; // 进度条 handle 高度
28
+ $height-videoPlayer_controls_menu-default: 56px; // 控制栏 default 高度
29
+ $height-videoPlayer_controls_volume-default: 160px; // 控制栏音量 default 高度
30
+ $height-videoPlayer_controls_popup-default: 24px; // 控制栏弹层类元素 default 高度
31
+ $height-videoPlayer_controls_popup_item-default: 32px; // 控制栏弹层类元素 item default 高度
32
+ $width-videoPlayer_controls_volume-default: 40px; // 控制栏音量 default 宽度
33
+ $width-videoPlayer_controls_popup_item-default: 50px; // 控制栏弹层类元素 default 宽度
34
+ $width-videoPlayer_controls_popup-default: 48px; // 控制栏弹层 default 宽度
35
+
36
+ // Spacing
37
+ $spacing-videoPlayer-progress_bar_chapter-marginRight: 2px; // 进度条分节间距
38
+ $spacing-videoPlayer_notification-bottom: 22px; // notification 距离菜单栏距离
39
+ $spacing-videoPlayer_notification-left: 8px; // notification 距离菜单栏左侧距离
40
+ $spacing-videoPlayer_notification_text-paddingY: 8px; // notification 文字垂直方向 padding
41
+ $spacing-videoPlayer_notification_text-paddingX: 12px; // notification 文字水平方向 padding
42
+ $spacing-videoPlayer-controls-padding: $spacing-base-tight $spacing-base; // 控制栏 padding
43
+ $spacing-videoPlayer-controls_item-gap: $spacing-tight; // 控制栏 item 间距
44
+ $spacing-videoPlayer-controls_time-paddingX: 8px; // 控制栏时间 paddingX
45
+ $spacing-videoPlayer-controls_volume_title-paddingX: 10px; // 控制栏音量标题文字 paddingX
46
+ $spacing-videoPlayer-controls_volume_title-paddingY: 0px; // 控制栏音量标题文字 paddingX
47
+ $spacing-videoPlayer-controls_volume_popup-paddingY: 0px; // 控制栏音量弹层 paddingX
48
+ $spacing-videoPlayer-controls_volume_popup-paddingX: $spacing-extra-tight; // 控制栏音量弹层 paddingX
49
+ $spacing-videoPlayer-controls_popup-paddingX: $spacing-tight; // 控制栏弹层元素 paddingX
50
+ $spacing-videoPlayer-controls_popup-paddingY: 0px; // 控制栏弹层元素 paddingY
51
+ $spacing-videoPlayer-progress_bar_wrapper-marginX: $spacing-tight; // 进度条 wrapper marginX
52
+ $spacing-videoPlayer-progress_bar_wrapper-marginY: 0px; // 进度条 wrapper marginY
53
+ $spacing-videoPlayer-progress_bar_tooltip-top: 6px; // 进度条 Tooltip top 值
54
+ $spacing-videoPlayer_progress_bar_handle-top: 15px; // 进度条 handle top 值
55
+ $spacing-videoPlayer_error_svg-marginBottom: 12px; // error svg marginBottom
56
+
57
+ // Radius
58
+ $radius-videoPlayer_notification: 3px; // notification 圆角
59
+ $radius-videoPlayer_progress_bar_handle: 50%; // 进度条 handle 圆角
60
+ $radius-videoPlayer_progress_bar: 999px; // 进度条圆角
61
+ $radius-videoPlayer_controls_item: 3px; // 控制栏 item 圆角
62
+ $radius-videoPlayer_controls_popup: 4px; // 控制栏弹层圆角
63
+
64
+ // Font
65
+ $font-videoPlayer_notification-fontSize: $font-size-regular; // notification 字体大小
66
+ $font-videoPlayer_controls_item-fontSize: $font-size-small; // 控制栏 item 字体大小
67
+ $font-videoPlayer_controls_time_text-fontSize: $font-size-regular; // 控制栏时间字体大小
68
+ $font-videoPlayer_error-fontSize: $font-size-regular; // error 字体大小
69
+ $font-videoPlayer_notification-lineHeight: 20px; // notification 行高
70
+ $font-videoPlayer_controls_popup_item-lineHeight: 16px; // 控制栏 item 行高
71
+ $font-videoPlayer_controls_popup_item-fontWeight: 600; // 控制栏 item 字体粗细
72
+ $font-videoPlayer_error-fontWeight: 600; // error 字体粗细
73
+
74
+
75
+
@@ -0,0 +1,279 @@
1
+ /* shadow */
2
+ /* sizing */
3
+ /* spacing */
4
+ .semi-videoPlayer {
5
+ position: relative;
6
+ display: inline-block;
7
+ width: 100%;
8
+ height: 100%;
9
+ }
10
+ .semi-videoPlayer ::-webkit-media-controls {
11
+ display: none;
12
+ }
13
+ .semi-videoPlayer-wrapper {
14
+ width: 100%;
15
+ height: 100%;
16
+ position: relative;
17
+ line-height: 0;
18
+ }
19
+ .semi-videoPlayer-wrapper video {
20
+ width: 100%;
21
+ height: 100%;
22
+ object-fit: contain;
23
+ }
24
+ .semi-videoPlayer-wrapper-dark {
25
+ background-color: rgba(var(--semi-grey-8), 1);
26
+ color: var(--semi-color-bg-0);
27
+ }
28
+ .semi-videoPlayer-wrapper-light {
29
+ background-color: var(--semi-color-disabled-bg);
30
+ color: rgba(var(--semi-grey-8), 1);
31
+ }
32
+ .semi-videoPlayer-pause {
33
+ top: 0;
34
+ left: 0;
35
+ width: 100%;
36
+ height: 100%;
37
+ position: absolute;
38
+ display: flex;
39
+ justify-content: center;
40
+ align-items: center;
41
+ pointer-events: none;
42
+ }
43
+ .semi-videoPlayer-pause svg {
44
+ font-size: 88px;
45
+ color: var(--semi-color-text-1);
46
+ pointer-events: none;
47
+ }
48
+ .semi-videoPlayer-error {
49
+ top: 0;
50
+ left: 0;
51
+ width: 100%;
52
+ height: 100%;
53
+ position: absolute;
54
+ display: flex;
55
+ justify-content: center;
56
+ align-items: center;
57
+ flex-direction: column;
58
+ font-weight: 600;
59
+ font-size: 14px;
60
+ }
61
+ .semi-videoPlayer-error-svg {
62
+ margin-bottom: 12px;
63
+ }
64
+ .semi-videoPlayer-error-dark {
65
+ background-color: rgba(var(--semi-grey-8), 1);
66
+ color: var(--semi-color-bg-0);
67
+ }
68
+ .semi-videoPlayer-error-dark path {
69
+ fill: var(--semi-color-bg-0);
70
+ }
71
+ .semi-videoPlayer-error-light {
72
+ background-color: var(--semi-color-disabled-bg);
73
+ color: rgba(var(--semi-grey-8), 1);
74
+ }
75
+ .semi-videoPlayer-error-light path {
76
+ fill: rgba(var(--semi-grey-8), 1);
77
+ }
78
+ .semi-videoPlayer-poster {
79
+ position: absolute;
80
+ top: 0;
81
+ left: 0;
82
+ width: 100%;
83
+ height: 100%;
84
+ pointer-events: none;
85
+ }
86
+ .semi-videoPlayer-poster-hide {
87
+ opacity: 0;
88
+ }
89
+ .semi-videoPlayer-notification {
90
+ position: absolute;
91
+ bottom: 78px;
92
+ left: 8px;
93
+ text-align: center;
94
+ background-color: var(--semi-color-overlay-bg);
95
+ color: var(--semi-color-default);
96
+ padding: 8px 12px;
97
+ line-height: 20px;
98
+ border-radius: 3px;
99
+ font-size: 14px;
100
+ }
101
+ .semi-videoPlayer-mirror video {
102
+ transform: rotateX(0deg) rotateY(180deg);
103
+ }
104
+ .semi-videoPlayer-controls {
105
+ position: absolute;
106
+ bottom: 0;
107
+ left: 0;
108
+ right: 0;
109
+ height: fit-content;
110
+ opacity: 1;
111
+ transition: opacity 500ms ease-in-out;
112
+ z-index: 1;
113
+ }
114
+ .semi-videoPlayer-controls-hide {
115
+ opacity: 0;
116
+ }
117
+ .semi-videoPlayer-controls-menu {
118
+ display: flex;
119
+ justify-content: space-between;
120
+ align-items: center;
121
+ box-sizing: border-box;
122
+ height: 56px;
123
+ background-color: rgba(28, 31, 35, 0.8);
124
+ padding: 12px 16px;
125
+ }
126
+ .semi-videoPlayer-controls-menu-left, .semi-videoPlayer-controls-menu-right {
127
+ display: flex;
128
+ align-items: center;
129
+ }
130
+ .semi-videoPlayer-controls-menu-item {
131
+ margin-right: 8px;
132
+ }
133
+ .semi-videoPlayer-controls-menu-button svg {
134
+ color: #fff;
135
+ }
136
+ .semi-videoPlayer-controls-time {
137
+ color: #fff;
138
+ font-size: 14px;
139
+ margin-right: 8px;
140
+ padding: 0 8px;
141
+ font-variant-numeric: tabular-nums;
142
+ }
143
+ .semi-videoPlayer-controls-popover {
144
+ background-color: transparent;
145
+ }
146
+ .semi-videoPlayer-controls-volume {
147
+ box-sizing: border-box;
148
+ width: 40px;
149
+ height: 160px;
150
+ background-color: var(--semi-color-overlay-bg);
151
+ color: rgba(255, 255, 255, 0.7);
152
+ border-radius: 4px;
153
+ padding: 0px 4px;
154
+ line-height: 16px;
155
+ font-size: 12px;
156
+ user-select: none;
157
+ }
158
+ .semi-videoPlayer-controls-volume-title {
159
+ padding: 10px 0px;
160
+ text-align: center;
161
+ }
162
+ .semi-videoPlayer-controls-popup {
163
+ display: flex;
164
+ justify-content: center;
165
+ align-items: center;
166
+ width: 50px;
167
+ height: 24px;
168
+ background-color: var(--semi-color-overlay-bg);
169
+ color: #fff;
170
+ font-weight: 600;
171
+ font-size: 12px;
172
+ line-height: 16px;
173
+ border-radius: 3px;
174
+ cursor: pointer;
175
+ }
176
+ .semi-videoPlayer-controls-popup-menu {
177
+ width: 48px;
178
+ background-color: var(--semi-color-overlay-bg);
179
+ border-radius: 4px;
180
+ }
181
+ .semi-videoPlayer-controls-popup-menu-item {
182
+ display: flex;
183
+ justify-content: center;
184
+ align-items: center;
185
+ padding: 0px 8px;
186
+ height: 32px;
187
+ color: #fff;
188
+ font-size: 12px;
189
+ }
190
+ .semi-videoPlayer-controls-popup-menu-item:hover {
191
+ background-color: rgb(67, 68, 74) !important;
192
+ }
193
+ .semi-videoPlayer-controls-popup-menu .semi-dropdown-item-active {
194
+ color: var(--semi-color-primary);
195
+ font-weight: 600;
196
+ cursor: pointer;
197
+ }
198
+ .semi-videoPlayer-progress {
199
+ position: relative;
200
+ height: 20px;
201
+ display: flex;
202
+ align-items: center;
203
+ justify-content: center;
204
+ cursor: pointer;
205
+ margin: 0px 8px;
206
+ }
207
+ .semi-videoPlayer-progress-markers {
208
+ position: absolute;
209
+ width: 100%;
210
+ height: 100%;
211
+ }
212
+ .semi-videoPlayer-progress-tooltip {
213
+ top: 6px;
214
+ }
215
+ .semi-videoPlayer-progress-tooltip-content {
216
+ display: flex;
217
+ justify-content: center;
218
+ align-items: center;
219
+ }
220
+ .semi-videoPlayer-progress-slider {
221
+ position: absolute;
222
+ width: 100%;
223
+ height: 100%;
224
+ left: 0;
225
+ bottom: 0;
226
+ border-radius: 999px;
227
+ }
228
+ .semi-videoPlayer-progress-slider-active .semi-videoPlayer-progress-slider-list,
229
+ .semi-videoPlayer-progress-slider-active .semi-videoPlayer-progress-slider-played,
230
+ .semi-videoPlayer-progress-slider-active .semi-videoPlayer-progress-slider-buffered, .semi-videoPlayer-progress-slider:hover .semi-videoPlayer-progress-slider-list,
231
+ .semi-videoPlayer-progress-slider:hover .semi-videoPlayer-progress-slider-played,
232
+ .semi-videoPlayer-progress-slider:hover .semi-videoPlayer-progress-slider-buffered {
233
+ height: 10px;
234
+ transition: transform 300ms;
235
+ transition-timing-function: cubic-bezier(0.62, 0.05, 0.36, 0.95);
236
+ }
237
+ .semi-videoPlayer-progress-slider-list {
238
+ position: absolute;
239
+ bottom: 0;
240
+ left: 0;
241
+ background-color: rgba(var(--semi-grey-5), 1);
242
+ height: 4px;
243
+ width: calc(100% - 2px);
244
+ margin-right: 2px;
245
+ border-radius: 999px;
246
+ transition: transform 300ms;
247
+ transition-timing-function: cubic-bezier(0.62, 0.05, 0.36, 0.95);
248
+ }
249
+ .semi-videoPlayer-progress-slider-played {
250
+ position: absolute;
251
+ bottom: 0;
252
+ left: 0;
253
+ background-color: var(--semi-color-primary);
254
+ height: 4px;
255
+ border-radius: 999px;
256
+ transition: transform 300ms;
257
+ transition-timing-function: cubic-bezier(0.62, 0.05, 0.36, 0.95);
258
+ }
259
+ .semi-videoPlayer-progress-slider-buffered {
260
+ position: absolute;
261
+ bottom: 0;
262
+ left: 0;
263
+ background-color: rgba(var(--semi-grey-3), 1);
264
+ height: 4px;
265
+ border-radius: 999px;
266
+ transition: transform 300ms;
267
+ transition-timing-function: cubic-bezier(0.62, 0.05, 0.36, 0.95);
268
+ }
269
+ .semi-videoPlayer-progress-handle {
270
+ box-sizing: border-box;
271
+ position: absolute;
272
+ width: 16px;
273
+ height: 16px;
274
+ background-color: #fff;
275
+ border: 1px solid var(--semi-color-primary);
276
+ box-shadow: 0px 0px 4px 0px var(--semi-color-shadow);
277
+ border-radius: 50%;
278
+ top: 15px;
279
+ }
@@ -0,0 +1,323 @@
1
+ @import './variables.scss';
2
+ @import './animation.scss';
3
+
4
+ $module: #{$prefix}-videoPlayer;
5
+
6
+ .#{$module} {
7
+ position: relative;
8
+ display: inline-block;
9
+ width: 100%;
10
+ height: 100%;
11
+
12
+ // Hide native controls
13
+ ::-webkit-media-controls {
14
+ display: none;
15
+ }
16
+
17
+ &-wrapper {
18
+ width: 100%;
19
+ height: 100%;
20
+ position: relative;
21
+ line-height: 0;
22
+
23
+ video {
24
+ width: 100%;
25
+ height: 100%;
26
+ object-fit: contain;
27
+ }
28
+
29
+ &-dark {
30
+ background-color: $color-videoPlayer_theme_dark-bg;
31
+ color: $color-videoPlayer_theme_dark-text;
32
+ }
33
+
34
+ &-light {
35
+ background-color: $color-videoPlayer_theme_light-bg;
36
+ color: $color-videoPlayer_theme_light-text;
37
+ }
38
+
39
+ }
40
+
41
+ &-pause {
42
+ top: 0;
43
+ left: 0;
44
+ width: 100%;
45
+ height: 100%;
46
+ position: absolute;
47
+ @include all-center;
48
+ pointer-events: none;
49
+
50
+ svg {
51
+ font-size: 88px;
52
+ color: $color-videoPlayer_pause-bg;
53
+ pointer-events: none;
54
+ }
55
+ }
56
+
57
+ &-error {
58
+ top: 0;
59
+ left: 0;
60
+ width: 100%;
61
+ height: 100%;
62
+ position: absolute;
63
+ @include all-center;
64
+ flex-direction: column;
65
+ font-weight: $font-videoPlayer_error-fontWeight;
66
+ font-size: $font-videoPlayer_error-fontSize;
67
+
68
+ &-svg {
69
+ margin-bottom: $spacing-videoPlayer_error_svg-marginBottom;
70
+ }
71
+
72
+ &-dark {
73
+ background-color: $color-videoPlayer_theme_dark-bg;
74
+ color: $color-videoPlayer_theme_dark-text;
75
+
76
+ path {
77
+ fill: $color-videoPlayer_theme_dark-text;
78
+ }
79
+
80
+ }
81
+
82
+ &-light {
83
+ background-color: $color-videoPlayer_theme_light-bg;
84
+ color: $color-videoPlayer_theme_light-text;
85
+
86
+ path {
87
+ fill: $color-videoPlayer_theme_light-text;
88
+ }
89
+ }
90
+ }
91
+
92
+ &-poster {
93
+ position: absolute;
94
+ top: 0;
95
+ left: 0;
96
+ width: 100%;
97
+ height: 100%;
98
+ pointer-events: none;
99
+
100
+ &-hide {
101
+ opacity: 0;
102
+ }
103
+ }
104
+
105
+ &-notification {
106
+ position: absolute;
107
+ bottom: $height-videoPlayer_controls_menu-default + $spacing-videoPlayer_notification-bottom;
108
+ left: $spacing-videoPlayer_notification-left;
109
+ text-align: center;
110
+ background-color: $color-videoPlayer_notification-bg;
111
+ color: $color-videoPlayer_notification-text;
112
+ padding: $spacing-videoPlayer_notification_text-paddingY $spacing-videoPlayer_notification_text-paddingX;
113
+ line-height: $font-videoPlayer_notification-lineHeight;
114
+ border-radius: $radius-videoPlayer_notification;
115
+ font-size: $font-videoPlayer_notification-fontSize;
116
+ }
117
+
118
+ &-mirror {
119
+ video {
120
+ transform: rotateX(0deg) rotateY(180deg);
121
+ }
122
+ }
123
+
124
+ &-controls {
125
+ position: absolute;
126
+ bottom: 0;
127
+ left: 0;
128
+ right: 0;
129
+ height: fit-content;
130
+ opacity: 1;
131
+ transition: opacity $animation_duration-videoPlayer_controls-show ease-in-out;
132
+ z-index: 1;
133
+
134
+ &-hide {
135
+ opacity: 0;
136
+ }
137
+
138
+ &-menu {
139
+ display: flex;
140
+ justify-content: space-between;
141
+ align-items: center;
142
+ box-sizing: border-box;
143
+ height: $height-videoPlayer_controls_menu-default;
144
+ background-color: $color-videoPlayer_controls-bg;
145
+ padding: $spacing-videoPlayer-controls-padding;
146
+
147
+ &-left,
148
+ &-right {
149
+ display: flex;
150
+ align-items: center;
151
+ }
152
+
153
+ &-item {
154
+ margin-right: $spacing-videoPlayer-controls_item-gap;
155
+ }
156
+
157
+ &-button {
158
+ svg {
159
+ color: $color-videoPlayer_controls-text;
160
+ }
161
+ }
162
+ }
163
+
164
+ &-time {
165
+ color: $color-videoPlayer_controls-text;
166
+ font-size: $font-videoPlayer_controls_time_text-fontSize;
167
+ margin-right: $spacing-videoPlayer-controls_item-gap;
168
+ padding: 0 $spacing-videoPlayer-controls_time-paddingX;
169
+ font-variant-numeric: tabular-nums;
170
+ }
171
+
172
+ &-popover {
173
+ background-color: transparent;
174
+ }
175
+
176
+ &-volume {
177
+ box-sizing: border-box;
178
+ width: $width-videoPlayer_controls_volume-default;
179
+ height: $height-videoPlayer_controls_volume-default;
180
+ background-color: $color-videoPlayer_controls_item-bg;
181
+ color: $color-videoPlayer_controls_popup_item-text-default;
182
+ border-radius: $radius-videoPlayer_controls_popup;
183
+ padding: $spacing-videoPlayer-controls_volume_popup-paddingY $spacing-videoPlayer-controls_volume_popup-paddingX;
184
+ line-height: $font-videoPlayer_controls_popup_item-lineHeight;
185
+ font-size: $font-videoPlayer_controls_item-fontSize;
186
+ user-select: none;
187
+
188
+ &-title {
189
+ padding: $spacing-videoPlayer-controls_volume_title-paddingX $spacing-videoPlayer-controls_volume_title-paddingY;
190
+ text-align: center;
191
+ }
192
+ }
193
+
194
+ &-popup {
195
+ @include all-center;
196
+ width: $width-videoPlayer_controls_popup_item-default;
197
+ height: $height-videoPlayer_controls_popup-default;
198
+ background-color: $color-videoPlayer_controls_item_popup-bg-default;
199
+ color: $color-videoPlayer_controls-text;
200
+ font-weight: $font-videoPlayer_controls_popup_item-fontWeight;
201
+ font-size: $font-videoPlayer_controls_item-fontSize;
202
+ line-height: $font-videoPlayer_controls_popup_item-lineHeight;
203
+ border-radius: $radius-videoPlayer_controls_item;
204
+ cursor: pointer;
205
+
206
+ &-menu {
207
+ width: $width-videoPlayer_controls_popup-default;
208
+ background-color: $color-videoPlayer_controls_item_popup-bg-default;
209
+ border-radius: $radius-videoPlayer_controls_popup;
210
+
211
+ &-item {
212
+ @include all-center;
213
+ padding: $spacing-videoPlayer-controls_popup-paddingY $spacing-videoPlayer-controls_popup-paddingX;
214
+ height: $height-videoPlayer_controls_popup_item-default;
215
+ color: $color-videoPlayer_controls-text;
216
+ font-size: $font-videoPlayer_controls_item-fontSize;
217
+
218
+ &:hover {
219
+ background-color: $color-videoPlayer_controls_item_popup-bg-hover !important;
220
+ }
221
+ }
222
+
223
+ .#{$prefix}-dropdown-item-active {
224
+ color: $color-videoPlayer_controls_popup_item-text-active;
225
+ font-weight: $font-videoPlayer_controls_popup_item-fontWeight;
226
+ cursor: pointer;
227
+ }
228
+ }
229
+ }
230
+
231
+ }
232
+
233
+ &-progress {
234
+ position: relative;
235
+ height: $height-videoPlayer_progress_bar_hotSpot-default;
236
+ display: flex;
237
+ align-items: center;
238
+ justify-content: center;
239
+ cursor: pointer;
240
+ margin: $spacing-videoPlayer-progress_bar_wrapper-marginY $spacing-videoPlayer-progress_bar_wrapper-marginX;
241
+
242
+ &-markers {
243
+ position: absolute;
244
+ width: 100%;
245
+ height: 100%;
246
+ }
247
+
248
+ &-tooltip {
249
+ top: $spacing-videoPlayer-progress_bar_tooltip-top;
250
+
251
+ &-content {
252
+ @include all-center;
253
+ }
254
+ }
255
+
256
+ &-slider {
257
+ position: absolute;
258
+ width: 100%;
259
+ height: 100%;
260
+ left: 0;
261
+ bottom: 0;
262
+ border-radius: $radius-videoPlayer_progress_bar;
263
+
264
+ &-active, &:hover {
265
+ .#{$module}-progress-slider-list,
266
+ .#{$module}-progress-slider-played,
267
+ .#{$module}-progress-slider-buffered {
268
+ height: $height-videoPlayer_progress_bar-hover;
269
+ transition: transform $animation_duration-videoPlayer_slider-in;
270
+ transition-timing-function: $animation_function-videoPlayer_slider-in;
271
+ }
272
+ }
273
+
274
+ &-list {
275
+ position: absolute;
276
+ bottom: 0;
277
+ left: 0;
278
+ background-color: $color-videoPlayer_progress_bar-bg-unplayed;
279
+ height: $height-videoPlayer_progress_bar-default;
280
+ width: calc(100% - $spacing-videoPlayer-progress_bar_chapter-marginRight);
281
+ margin-right: $spacing-videoPlayer-progress_bar_chapter-marginRight;
282
+ border-radius: $radius-videoPlayer_progress_bar;
283
+ transition: transform $animation_duration-videoPlayer_slider-in;
284
+ transition-timing-function: $animation_function-videoPlayer_slider-out;
285
+ }
286
+
287
+ &-played {
288
+ position: absolute;
289
+ bottom: 0;
290
+ left: 0;
291
+ background-color: $color-videoPlayer_progress_bar-bg-played;
292
+ height: $height-videoPlayer_progress_bar-default;
293
+ border-radius: $radius-videoPlayer_progress_bar;
294
+ transition: transform $animation_duration-videoPlayer_slider-in;
295
+ transition-timing-function: $animation_function-videoPlayer_slider-out;
296
+ }
297
+
298
+ &-buffered {
299
+ position: absolute;
300
+ bottom: 0;
301
+ left: 0;
302
+ background-color: $color-videoPlayer_progress_bar-bg-loaded;
303
+ height: $height-videoPlayer_progress_bar-default;
304
+ border-radius: $radius-videoPlayer_progress_bar;
305
+ transition: transform $animation_duration-videoPlayer_slider-in;
306
+ transition-timing-function: $animation_function-videoPlayer_slider-out;
307
+ }
308
+ }
309
+
310
+ &-handle {
311
+ box-sizing: border-box;
312
+ position: absolute;
313
+ width: $height-videoPlayer_progress_bar_handle;
314
+ height: $height-videoPlayer_progress_bar_handle;
315
+ background-color: $color-videoPlayer_progress_bar_handle-bg;
316
+ border: 1px solid $color-videoPlayer_progress_bar_handle-border;
317
+ box-shadow: 0px 0px 4px 0px $color-videoPlayer_progress_bar_handle-shadow;
318
+ border-radius: $radius-videoPlayer_progress_bar_handle;
319
+ top: $spacing-videoPlayer_progress_bar_handle-top;
320
+ }
321
+
322
+ }
323
+ }
@@ -316,7 +316,7 @@ export default class CascaderFoundation extends BaseFoundation {
316
316
  }
317
317
  keyEntities[key] = optionNotExist;
318
318
  // Fix: 1155, if the data is loaded asynchronously to update treeData, the emptying operation should not be done when entering the updateSelectedKey method
319
- } else if (loading) {
319
+ } else if (loading || (loadingKeys === null || loadingKeys === void 0 ? void 0 : loadingKeys.size)) {
320
320
  // Use assign to avoid overwriting the'not-exist- * 'property of keyEntities after asynchronous loading
321
321
  // Overwriting'not-exist- * 'will cause selectionContent to be emptied unexpectedly when clicking on a dropDown item
322
322
  updateStates.keyEntities = _assign(keyEntityState, keyEntities);