@ilo-org/styles 1.13.1 → 1.14.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.
- package/css/components/audioplayer.css +1 -1
- package/css/components/dropdown.css +1 -1
- package/css/components/hero.css +1 -1
- package/css/components/video.css +1 -1
- package/css/index.css +2 -2
- package/css/index.css.map +1 -1
- package/css/monorepo.css +2 -2
- package/css/monorepo.css.map +1 -1
- package/package.json +1 -1
- package/scss/components/_audioplayer.scss +6 -0
- package/scss/components/_dropdown.scss +30 -4
- package/scss/components/_hero.scss +7 -2
- package/scss/components/_video.scss +154 -2
package/package.json
CHANGED
|
@@ -41,6 +41,9 @@
|
|
|
41
41
|
font-size: var(--ilo-font-size-sm);
|
|
42
42
|
font-weight: var(--ilo-font-weight-medium);
|
|
43
43
|
line-height: var(--ilo-line-height-lg);
|
|
44
|
+
text-overflow: ellipsis;
|
|
45
|
+
overflow: hidden;
|
|
46
|
+
white-space: nowrap;
|
|
44
47
|
}
|
|
45
48
|
&--track-details {
|
|
46
49
|
display: flex;
|
|
@@ -195,6 +198,9 @@
|
|
|
195
198
|
padding-inline: spacing(3) 0;
|
|
196
199
|
padding-block: 0;
|
|
197
200
|
}
|
|
201
|
+
&--track-name {
|
|
202
|
+
width: 30vw;
|
|
203
|
+
}
|
|
198
204
|
&--center {
|
|
199
205
|
justify-content: center;
|
|
200
206
|
padding: 0;
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
@include globaltransition("background-color");
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
&:has(select:hover):before {
|
|
38
|
+
&:has(select:enabled:hover):before {
|
|
39
39
|
background-color: var(--ilo-dropdown-background-color-active);
|
|
40
40
|
}
|
|
41
41
|
|
|
@@ -49,6 +49,28 @@
|
|
|
49
49
|
top: var(--ilo-dropdown-button-icon-offset);
|
|
50
50
|
@include icon("chevron_down", var(--ilo-dropdown-button-icon-color));
|
|
51
51
|
}
|
|
52
|
+
|
|
53
|
+
&:has(select:disabled) {
|
|
54
|
+
--ilo-dropdown-button-icon-color: var(--ilo-dropdown-color);
|
|
55
|
+
|
|
56
|
+
&:after {
|
|
57
|
+
opacity: 0.45;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
// manually adjusted the left border color to be slightly darker
|
|
61
|
+
&:before {
|
|
62
|
+
border-color: color-mix(
|
|
63
|
+
in srgb,
|
|
64
|
+
var(--ilo-dropdown-border-color) 45%,
|
|
65
|
+
transparent
|
|
66
|
+
);
|
|
67
|
+
border-inline-start-color: color-mix(
|
|
68
|
+
in srgb,
|
|
69
|
+
var(--ilo-dropdown-border-color) 60%,
|
|
70
|
+
transparent
|
|
71
|
+
);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
52
74
|
}
|
|
53
75
|
|
|
54
76
|
appearance: none;
|
|
@@ -58,6 +80,7 @@
|
|
|
58
80
|
color: var(--ilo-dropdown-color);
|
|
59
81
|
width: 100%;
|
|
60
82
|
margin: spacing(0);
|
|
83
|
+
|
|
61
84
|
padding: 0 spacing(14) 0 spacing(4);
|
|
62
85
|
text-overflow: ellipsis;
|
|
63
86
|
white-space: nowrap;
|
|
@@ -68,15 +91,18 @@
|
|
|
68
91
|
@include typography("body-medium");
|
|
69
92
|
@include globaltransition("background-color, border-color, color");
|
|
70
93
|
|
|
71
|
-
&:hover,
|
|
72
|
-
&:focus,
|
|
73
|
-
&:active {
|
|
94
|
+
&:enabled:is(:hover, :focus, :active) {
|
|
74
95
|
border-inline-start-color: var(--ilo-color-blue);
|
|
75
96
|
box-shadow: inset px-to-rem(1px) 0 0 0 var(--ilo-color-blue);
|
|
76
97
|
background-color: var(--ilo-dropdown-background-color-active);
|
|
77
98
|
--ilo-dropdown-color: var(--ilo-color-gray-charcoal);
|
|
78
99
|
}
|
|
79
100
|
|
|
101
|
+
&:disabled {
|
|
102
|
+
pointer-events: none;
|
|
103
|
+
opacity: 0.45;
|
|
104
|
+
}
|
|
105
|
+
|
|
80
106
|
[dir="rtl"] &:hover,
|
|
81
107
|
[dir="rtl"] &:focus,
|
|
82
108
|
[dir="rtl"] &:active {
|
|
@@ -242,7 +242,10 @@
|
|
|
242
242
|
&[class*="semi-transparent"] {
|
|
243
243
|
#{$c}--card-offset {
|
|
244
244
|
background: rgba(35, 0, 80, 0.6);
|
|
245
|
-
box-shadow:
|
|
245
|
+
// No seam-bridging box-shadow here: with a translucent fill the
|
|
246
|
+
// shadow composites over the card's own semi-transparent layer,
|
|
247
|
+
// producing a darker hairline at the offset/card boundary.
|
|
248
|
+
box-shadow: none;
|
|
246
249
|
}
|
|
247
250
|
}
|
|
248
251
|
}
|
|
@@ -256,7 +259,9 @@
|
|
|
256
259
|
&[class*="semi-transparent"] {
|
|
257
260
|
#{$c}--card-offset {
|
|
258
261
|
background: rgba(255, 255, 255, 0.6);
|
|
259
|
-
|
|
262
|
+
// See dark variant above: no box-shadow for translucent fills,
|
|
263
|
+
// otherwise the shadow doubles up into a darker seam line.
|
|
264
|
+
box-shadow: none;
|
|
260
265
|
}
|
|
261
266
|
}
|
|
262
267
|
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
// Video Button
|
|
7
7
|
// ======================================
|
|
8
8
|
@mixin videobutton($name, $size: "standard") {
|
|
9
|
-
$height: if($size == "big", 72px,
|
|
9
|
+
$height: if($size == "big", 72px, 24px);
|
|
10
10
|
$box: if($size == "big", 80px, 40px);
|
|
11
11
|
$width: $height;
|
|
12
12
|
$icon-color-default: rgba(237, 240, 242, 1);
|
|
@@ -167,6 +167,10 @@
|
|
|
167
167
|
.vjs-volume-panel {
|
|
168
168
|
display: none;
|
|
169
169
|
}
|
|
170
|
+
|
|
171
|
+
.vjs-subs-caps-button {
|
|
172
|
+
display: none;
|
|
173
|
+
}
|
|
170
174
|
}
|
|
171
175
|
}
|
|
172
176
|
|
|
@@ -210,6 +214,154 @@
|
|
|
210
214
|
@include videobutton("fullscreen");
|
|
211
215
|
}
|
|
212
216
|
|
|
217
|
+
// Closed captions control
|
|
218
|
+
.vjs-subs-caps-button {
|
|
219
|
+
order: 3;
|
|
220
|
+
margin-right: px-to-rem(2px);
|
|
221
|
+
position: relative;
|
|
222
|
+
z-index: 30;
|
|
223
|
+
|
|
224
|
+
> .vjs-menu-button {
|
|
225
|
+
@include videobutton("closed_captions");
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
&.vjs-hover > .vjs-menu-button,
|
|
229
|
+
&:hover > .vjs-menu-button,
|
|
230
|
+
&:focus-within > .vjs-menu-button {
|
|
231
|
+
background-color: var(--ilo-color-blue-light);
|
|
232
|
+
@include dataurlicon("closed_captions", rgba(30, 45, 190, 1));
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
.vjs-menu {
|
|
236
|
+
background: var(--ilo-color-brand-100);
|
|
237
|
+
border: 0;
|
|
238
|
+
bottom: calc(100% + #{px-to-rem(8px)});
|
|
239
|
+
display: none;
|
|
240
|
+
left: 50%;
|
|
241
|
+
min-width: px-to-rem(190px);
|
|
242
|
+
position: absolute;
|
|
243
|
+
right: auto;
|
|
244
|
+
transform: translateX(-50%);
|
|
245
|
+
z-index: 40;
|
|
246
|
+
padding-top: px-to-rem(8px);
|
|
247
|
+
|
|
248
|
+
// gap added to ensure vjs-hover persists when hovering to menu from captions button
|
|
249
|
+
&::after {
|
|
250
|
+
content: "";
|
|
251
|
+
height: px-to-rem(8px);
|
|
252
|
+
left: 0;
|
|
253
|
+
position: absolute;
|
|
254
|
+
right: 0;
|
|
255
|
+
top: 100%;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
&:before {
|
|
259
|
+
@include typography("highlight-medium-bold");
|
|
260
|
+
content: var(--ilo-video-choose-subtitle-text, "Choose subtitles");
|
|
261
|
+
color: var(--ilo-color-gray-charcoal);
|
|
262
|
+
display: block;
|
|
263
|
+
margin-bottom: spacing(2);
|
|
264
|
+
padding-left: px-to-rem(12px);
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
.vjs-menu.vjs-lock-showing:not(.vjs-hidden),
|
|
269
|
+
&.vjs-hover .vjs-menu:not(.vjs-hidden),
|
|
270
|
+
&:hover .vjs-menu:not(.vjs-hidden),
|
|
271
|
+
&:focus-within .vjs-menu:not(.vjs-hidden) {
|
|
272
|
+
display: block;
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
.vjs-menu-content {
|
|
276
|
+
margin: 0;
|
|
277
|
+
max-height: px-to-rem(120px);
|
|
278
|
+
overflow-y: auto;
|
|
279
|
+
padding: 0 0 px-to-rem(4px);
|
|
280
|
+
display: flex;
|
|
281
|
+
flex-direction: column;
|
|
282
|
+
gap: spacing(2);
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
.vjs-menu-item {
|
|
286
|
+
@include typography("body-small");
|
|
287
|
+
align-items: center;
|
|
288
|
+
color: var(--ilo-color-gray-charcoal);
|
|
289
|
+
display: flex;
|
|
290
|
+
gap: px-to-rem(8px);
|
|
291
|
+
line-height: px-to-rem(20px);
|
|
292
|
+
padding: px-to-rem(2px) px-to-rem(12px);
|
|
293
|
+
position: relative;
|
|
294
|
+
text-shadow: none;
|
|
295
|
+
white-space: nowrap;
|
|
296
|
+
|
|
297
|
+
&:hover {
|
|
298
|
+
background: var(--ilo-color-neutrals-200);
|
|
299
|
+
cursor: pointer;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
// Radio control — mirrors .ilo--radio in _radio.scss:
|
|
303
|
+
// :before is the outer 20px circle (in flow, reserves space),
|
|
304
|
+
// :after is the inner 14px dot overlaid on top.
|
|
305
|
+
&:before {
|
|
306
|
+
content: "";
|
|
307
|
+
background-color: var(--ilo-color-gray-base);
|
|
308
|
+
border-radius: 50%;
|
|
309
|
+
height: px-to-rem(20px);
|
|
310
|
+
width: px-to-rem(20px);
|
|
311
|
+
flex-shrink: 0;
|
|
312
|
+
display: inline-block;
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
&:after {
|
|
316
|
+
content: "";
|
|
317
|
+
background-color: var(--ilo-color-gray-base);
|
|
318
|
+
border: px-to-rem(4px) solid var(--ilo-color-gray-base);
|
|
319
|
+
border-radius: 50%;
|
|
320
|
+
height: px-to-rem(14px);
|
|
321
|
+
width: px-to-rem(14px);
|
|
322
|
+
// padding-left (12px) + radio's 3px inset
|
|
323
|
+
left: px-to-rem(15px);
|
|
324
|
+
top: 50%;
|
|
325
|
+
transform: translateY(-50%);
|
|
326
|
+
position: absolute;
|
|
327
|
+
z-index: 1;
|
|
328
|
+
pointer-events: none;
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
&.vjs-selected {
|
|
332
|
+
color: var(--ilo-color-gray-charcoal);
|
|
333
|
+
|
|
334
|
+
&:before {
|
|
335
|
+
background-color: var(--ilo-color-blue-dark);
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
&:after {
|
|
339
|
+
background-color: var(--ilo-color-blue-lighter);
|
|
340
|
+
border-color: var(--ilo-color-blue-dark);
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
&:focus:before {
|
|
345
|
+
background-color: var(--ilo-color-yellow);
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
.vjs-menu-item[tabindex="-1"]:first-child .vjs-menu-item-text {
|
|
350
|
+
font-size: 0;
|
|
351
|
+
line-height: 0; // collapse the zeroed-text strut so it can't inflate the row
|
|
352
|
+
|
|
353
|
+
&:after {
|
|
354
|
+
@include typography("body-small");
|
|
355
|
+
content: var(--ilo-video-none, "None");
|
|
356
|
+
line-height: px-to-rem(20px);
|
|
357
|
+
}
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
.vjs-menu .vjs-icon-placeholder {
|
|
361
|
+
display: none;
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
|
|
213
365
|
// Duration Bar
|
|
214
366
|
.vjs-progress-control {
|
|
215
367
|
order: 2;
|
|
@@ -287,7 +439,7 @@
|
|
|
287
439
|
|
|
288
440
|
// Volume Control
|
|
289
441
|
.vjs-volume-panel {
|
|
290
|
-
order:
|
|
442
|
+
order: 4;
|
|
291
443
|
border-bottom: 1px solid;
|
|
292
444
|
bottom: 0;
|
|
293
445
|
flex-direction: column;
|