@mux/mux-player 2.3.3 → 2.4.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/dist/index.cjs.js +825 -377
- package/dist/index.mjs +37 -40
- package/dist/mux-player.js +815 -367
- package/dist/mux-player.mjs +815 -367
- package/dist/themes/classic/index.cjs.js +84 -21
- package/dist/themes/classic/index.js +84 -21
- package/dist/themes/classic/index.mjs +84 -21
- package/dist/themes/gerwig/index.cjs.js +110 -50
- package/dist/themes/gerwig/index.js +110 -50
- package/dist/themes/gerwig/index.mjs +110 -50
- package/dist/themes/microvideo/index.cjs.js +90 -23
- package/dist/themes/microvideo/index.js +90 -23
- package/dist/themes/microvideo/index.mjs +90 -23
- package/dist/themes/minimal/index.cjs.js +86 -21
- package/dist/themes/minimal/index.js +86 -21
- package/dist/themes/minimal/index.mjs +86 -21
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -5
|
@@ -46,10 +46,6 @@ var gerwig_default = `<template id="media-theme-gerwig">
|
|
|
46
46
|
--media-control-background: var(--_secondary-color);
|
|
47
47
|
--media-control-hover-background: var(--_accent-color);
|
|
48
48
|
--media-time-buffered-color: rgba(255, 255, 255, 0.4);
|
|
49
|
-
--media-preview-thumbnail-border: 0;
|
|
50
|
-
--media-preview-thumbnail-border-radius: 2px 2px 0 0;
|
|
51
|
-
--media-preview-time-border-radius: 0 0 2px 2px;
|
|
52
|
-
--media-preview-time-margin: 0 0 8px;
|
|
53
49
|
--media-preview-time-text-shadow: none;
|
|
54
50
|
--media-control-height: 14px;
|
|
55
51
|
--media-control-padding: 6px;
|
|
@@ -62,8 +58,6 @@ var gerwig_default = `<template id="media-theme-gerwig">
|
|
|
62
58
|
|
|
63
59
|
:host([audio]) {
|
|
64
60
|
--_secondary-color: var(--media-secondary-color, black);
|
|
65
|
-
--media-preview-time-border-radius: 3px;
|
|
66
|
-
--media-preview-time-margin: 0 0 5px;
|
|
67
61
|
--media-preview-time-text-shadow: none;
|
|
68
62
|
}
|
|
69
63
|
|
|
@@ -102,6 +96,8 @@ var gerwig_default = `<template id="media-theme-gerwig">
|
|
|
102
96
|
}
|
|
103
97
|
|
|
104
98
|
media-time-range {
|
|
99
|
+
--media-box-padding-left: 6px;
|
|
100
|
+
--media-box-padding-right: 6px;
|
|
105
101
|
--media-range-bar-color: var(--_accent-color);
|
|
106
102
|
--media-time-range-buffered-color: var(--_primary-color);
|
|
107
103
|
--media-range-track-color: transparent;
|
|
@@ -118,41 +114,27 @@ var gerwig_default = `<template id="media-theme-gerwig">
|
|
|
118
114
|
--media-range-thumb-transform: scale(0);
|
|
119
115
|
--media-range-thumb-transition: transform 0.3s;
|
|
120
116
|
--media-range-thumb-opacity: 1;
|
|
121
|
-
--media-preview-
|
|
117
|
+
--media-preview-background: var(--_primary-color);
|
|
118
|
+
--media-box-arrow-background: var(--_primary-color);
|
|
122
119
|
--media-preview-thumbnail-border: 5px solid var(--_primary-color);
|
|
123
|
-
--media-preview-
|
|
124
|
-
--media-preview-time-background: var(--_primary-color);
|
|
125
|
-
--media-preview-time-border-radius: 0 0 5px 5px;
|
|
126
|
-
--media-preview-time-margin: 0 0 10px;
|
|
127
|
-
--media-preview-time-padding: 2px 0 6px;
|
|
120
|
+
--media-preview-border-radius: 5px;
|
|
128
121
|
--media-text-color: var(--_text-color);
|
|
129
|
-
--media-preview-thumbnail-max-width: 150px;
|
|
130
|
-
--media-range-track-pointer-border-right: 2px solid #000;
|
|
131
122
|
--media-control-hover-background: transparent;
|
|
132
123
|
color: var(--_accent-color);
|
|
133
124
|
padding: 0 6px;
|
|
134
125
|
}
|
|
135
126
|
|
|
136
127
|
:host([audio]) media-time-range {
|
|
137
|
-
--media-preview-time-
|
|
138
|
-
--media-preview-
|
|
128
|
+
--media-preview-time-padding: 1.5px 6px;
|
|
129
|
+
--media-preview-box-margin: 0 0 -5px;
|
|
139
130
|
}
|
|
140
131
|
|
|
141
132
|
media-time-range:hover {
|
|
142
133
|
--media-range-thumb-transform: scale(1);
|
|
143
134
|
}
|
|
144
135
|
|
|
145
|
-
media-
|
|
146
|
-
|
|
147
|
-
content: '';
|
|
148
|
-
width: 0;
|
|
149
|
-
height: 0;
|
|
150
|
-
border-style: solid;
|
|
151
|
-
border-width: 10px 8.5px 0 8.5px;
|
|
152
|
-
border-color: var(--_primary-color) transparent transparent transparent;
|
|
153
|
-
top: 100%;
|
|
154
|
-
left: 50%;
|
|
155
|
-
transform: translate(-50%, -10px);
|
|
136
|
+
media-preview-thumbnail {
|
|
137
|
+
border-bottom-width: 0;
|
|
156
138
|
}
|
|
157
139
|
|
|
158
140
|
[part~='listbox'] {
|
|
@@ -243,12 +225,20 @@ var gerwig_default = `<template id="media-theme-gerwig">
|
|
|
243
225
|
pointer-events: none;
|
|
244
226
|
}
|
|
245
227
|
|
|
228
|
+
media-control-bar {
|
|
229
|
+
--gradient-steps: hsl(0 0% 0% / 0) 0%, hsl(0 0% 0% / 0.013) 8.1%, hsl(0 0% 0% / 0.049) 15.5%,
|
|
230
|
+
hsl(0 0% 0% / 0.104) 22.5%, hsl(0 0% 0% / 0.175) 29%, hsl(0 0% 0% / 0.259) 35.3%, hsl(0 0% 0% / 0.352) 41.2%,
|
|
231
|
+
hsl(0 0% 0% / 0.45) 47.1%, hsl(0 0% 0% / 0.55) 52.9%, hsl(0 0% 0% / 0.648) 58.8%, hsl(0 0% 0% / 0.741) 64.7%,
|
|
232
|
+
hsl(0 0% 0% / 0.825) 71%, hsl(0 0% 0% / 0.896) 77.5%, hsl(0 0% 0% / 0.951) 84.5%, hsl(0 0% 0% / 0.987) 91.9%,
|
|
233
|
+
hsl(0 0% 0%) 100%;
|
|
234
|
+
}
|
|
235
|
+
|
|
246
236
|
:host([title]:not([audio])) media-control-bar[slot='top-chrome']::before {
|
|
247
237
|
content: '';
|
|
248
238
|
position: absolute;
|
|
249
239
|
width: 100%;
|
|
250
240
|
padding-bottom: min(100px, 25%);
|
|
251
|
-
background: linear-gradient(
|
|
241
|
+
background: linear-gradient(to top, var(--gradient-steps));
|
|
252
242
|
opacity: 0.8;
|
|
253
243
|
pointer-events: none;
|
|
254
244
|
}
|
|
@@ -260,7 +250,7 @@ var gerwig_default = `<template id="media-theme-gerwig">
|
|
|
260
250
|
bottom: 0;
|
|
261
251
|
left: 0;
|
|
262
252
|
padding-bottom: min(100px, 25%);
|
|
263
|
-
background: linear-gradient(
|
|
253
|
+
background: linear-gradient(to bottom, var(--gradient-steps));
|
|
264
254
|
opacity: 0.8;
|
|
265
255
|
z-index: 1;
|
|
266
256
|
pointer-events: none;
|
|
@@ -410,7 +400,7 @@ var gerwig_default = `<template id="media-theme-gerwig">
|
|
|
410
400
|
}
|
|
411
401
|
|
|
412
402
|
/* Intentionally don't target the div for transition but the children
|
|
413
|
-
|
|
403
|
+
of the div. Prevents messing with media-chrome's autohide feature. */
|
|
414
404
|
media-loading-indicator + div * {
|
|
415
405
|
transition: opacity 0.15s;
|
|
416
406
|
opacity: 1;
|
|
@@ -807,7 +797,12 @@ var gerwig_default = `<template id="media-theme-gerwig">
|
|
|
807
797
|
</template>
|
|
808
798
|
|
|
809
799
|
<template partial="TimeRange">
|
|
810
|
-
<media-time-range part="bottom time range" disabled="{{disabled}}" aria-disabled="{{disabled}}"
|
|
800
|
+
<media-time-range part="bottom time range" disabled="{{disabled}}" aria-disabled="{{disabled}}">
|
|
801
|
+
<media-preview-thumbnail slot="preview"></media-preview-thumbnail>
|
|
802
|
+
<media-preview-chapter-display slot="preview"></media-preview-chapter-display>
|
|
803
|
+
<media-preview-time-display slot="preview"></media-preview-time-display>
|
|
804
|
+
<div slot="preview" part="arrow"></div>
|
|
805
|
+
</media-time-range>
|
|
811
806
|
</template>
|
|
812
807
|
|
|
813
808
|
<template partial="AudioTrackSelect">
|
|
@@ -897,6 +892,8 @@ var gerwig_default = `<template id="media-theme-gerwig">
|
|
|
897
892
|
noautoseektolive="{{noautoseektolive}}"
|
|
898
893
|
defaultsubtitles="{{defaultsubtitles}}"
|
|
899
894
|
defaultduration="{{defaultduration ?? false}}"
|
|
895
|
+
keyboardforwardseekoffset="{{forwardseekoffset}}"
|
|
896
|
+
keyboardbackwardseekoffset="{{backwardseekoffset}}"
|
|
900
897
|
exportparts="layer, media-layer, poster-layer, vertical-layer, centered-layer, gesture-layer"
|
|
901
898
|
style="--_pre-playback-place:{{preplaybackplace ?? 'center'}}"
|
|
902
899
|
>
|
|
@@ -1116,21 +1113,35 @@ var MediaUIProps = {
|
|
|
1116
1113
|
MEDIA_AUDIO_TRACK_ENABLED: "mediaAudioTrackEnabled",
|
|
1117
1114
|
MEDIA_CHAPTERS_CUES: "mediaChaptersCues"
|
|
1118
1115
|
};
|
|
1119
|
-
var MediaUIPropsEntries =
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
(
|
|
1126
|
-
dictObj[key]
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1116
|
+
var MediaUIPropsEntries = (
|
|
1117
|
+
/** @type {[keyof MediaUIProps, string][]} */
|
|
1118
|
+
Object.entries(MediaUIProps)
|
|
1119
|
+
);
|
|
1120
|
+
var MediaUIAttributes = (
|
|
1121
|
+
/** @type {{ [k in keyof MediaUIProps]: string }} */
|
|
1122
|
+
MediaUIPropsEntries.reduce(
|
|
1123
|
+
(dictObj, [key, propName]) => {
|
|
1124
|
+
dictObj[key] = `${propName.toLowerCase()}`;
|
|
1125
|
+
return dictObj;
|
|
1126
|
+
},
|
|
1127
|
+
/** @type {Partial<{ [k in keyof MediaUIProps]: string }>} */
|
|
1128
|
+
{}
|
|
1129
|
+
)
|
|
1130
|
+
);
|
|
1131
|
+
var MediaStateChangeEvents = (
|
|
1132
|
+
/** @type {{ [k in keyof MediaUIProps | 'USER_INACTIVE' | 'BREAKPOINTS_CHANGE' | 'BREAKPOINTS_COMPUTED']: string }} */
|
|
1133
|
+
MediaUIPropsEntries.reduce(
|
|
1134
|
+
(dictObj, [key, propName]) => {
|
|
1135
|
+
dictObj[key] = `${propName.toLowerCase()}`;
|
|
1136
|
+
return dictObj;
|
|
1137
|
+
},
|
|
1138
|
+
/** @type {Partial<{ [k in keyof MediaUIProps | 'USER_INACTIVE' | 'BREAKPOINTS_CHANGE' | 'BREAKPOINTS_COMPUTED']: string }>} */
|
|
1139
|
+
{
|
|
1140
|
+
USER_INACTIVE: "userinactivechange",
|
|
1141
|
+
BREAKPOINTS_CHANGE: "breakpointchange",
|
|
1142
|
+
BREAKPOINTS_COMPUTED: "breakpointscomputed"
|
|
1143
|
+
}
|
|
1144
|
+
)
|
|
1134
1145
|
);
|
|
1135
1146
|
var StateChangeEventToAttributeMap = Object.entries(
|
|
1136
1147
|
MediaStateChangeEvents
|
|
@@ -1167,6 +1178,8 @@ var EventTarget2 = class {
|
|
|
1167
1178
|
return true;
|
|
1168
1179
|
}
|
|
1169
1180
|
};
|
|
1181
|
+
var Node = class extends EventTarget2 {
|
|
1182
|
+
};
|
|
1170
1183
|
var ResizeObserver = class {
|
|
1171
1184
|
observe() {
|
|
1172
1185
|
}
|
|
@@ -1185,12 +1198,22 @@ var documentShim = {
|
|
|
1185
1198
|
addEventListener() {
|
|
1186
1199
|
},
|
|
1187
1200
|
removeEventListener() {
|
|
1201
|
+
},
|
|
1202
|
+
/**
|
|
1203
|
+
*
|
|
1204
|
+
* @param {Event} event
|
|
1205
|
+
* @returns {boolean}
|
|
1206
|
+
*/
|
|
1207
|
+
dispatchEvent(event) {
|
|
1208
|
+
return false;
|
|
1188
1209
|
}
|
|
1210
|
+
// eslint-disable-line no-unused-vars
|
|
1189
1211
|
};
|
|
1190
1212
|
var globalThisShim2 = {
|
|
1191
1213
|
ResizeObserver,
|
|
1192
1214
|
document: documentShim,
|
|
1193
|
-
|
|
1215
|
+
Node,
|
|
1216
|
+
HTMLElement: class HTMLElement2 extends Node {
|
|
1194
1217
|
},
|
|
1195
1218
|
DocumentFragment: class DocumentFragment2 extends EventTarget2 {
|
|
1196
1219
|
},
|
|
@@ -1202,6 +1225,29 @@ var globalThisShim2 = {
|
|
|
1202
1225
|
whenDefined: function() {
|
|
1203
1226
|
}
|
|
1204
1227
|
},
|
|
1228
|
+
localStorage: {
|
|
1229
|
+
/**
|
|
1230
|
+
* @param {string} key
|
|
1231
|
+
* @returns {string|null}
|
|
1232
|
+
*/
|
|
1233
|
+
getItem(key) {
|
|
1234
|
+
return null;
|
|
1235
|
+
},
|
|
1236
|
+
// eslint-disable-line no-unused-vars
|
|
1237
|
+
/**
|
|
1238
|
+
* @param {string} key
|
|
1239
|
+
* @param {string} value
|
|
1240
|
+
*/
|
|
1241
|
+
setItem(key, value) {
|
|
1242
|
+
},
|
|
1243
|
+
// eslint-disable-line no-unused-vars
|
|
1244
|
+
/**
|
|
1245
|
+
* @param {string} key
|
|
1246
|
+
*/
|
|
1247
|
+
removeItem(key) {
|
|
1248
|
+
}
|
|
1249
|
+
// eslint-disable-line no-unused-vars
|
|
1250
|
+
},
|
|
1205
1251
|
CustomEvent: function CustomEvent2() {
|
|
1206
1252
|
},
|
|
1207
1253
|
getComputedStyle: function() {
|
|
@@ -1212,6 +1258,9 @@ var globalThisShim2 = {
|
|
|
1212
1258
|
return "";
|
|
1213
1259
|
}
|
|
1214
1260
|
},
|
|
1261
|
+
/**
|
|
1262
|
+
* @param {string} media
|
|
1263
|
+
*/
|
|
1215
1264
|
matchMedia(media) {
|
|
1216
1265
|
return {
|
|
1217
1266
|
matches: false,
|
|
@@ -1455,6 +1504,7 @@ var AttrPart = class extends Part {
|
|
|
1455
1504
|
);
|
|
1456
1505
|
}
|
|
1457
1506
|
}
|
|
1507
|
+
/** @type boolean */
|
|
1458
1508
|
get booleanValue() {
|
|
1459
1509
|
return __privateGet2(this, _element).hasAttributeNS(
|
|
1460
1510
|
__privateGet2(this, _namespaceURI),
|
|
@@ -1496,6 +1546,7 @@ var ChildNodePart = class extends Part {
|
|
|
1496
1546
|
get previousSibling() {
|
|
1497
1547
|
return __privateGet2(this, _nodes)[0].previousSibling;
|
|
1498
1548
|
}
|
|
1549
|
+
// FIXME: not sure why do we need string serialization here? Just because parent class has type DOMString?
|
|
1499
1550
|
get value() {
|
|
1500
1551
|
return __privateGet2(this, _nodes).map((node) => node.textContent).join("");
|
|
1501
1552
|
}
|
|
@@ -1839,7 +1890,8 @@ var observedMediaAttributes = {
|
|
|
1839
1890
|
mediastreamtype: "streamtype"
|
|
1840
1891
|
};
|
|
1841
1892
|
var prependTemplate = Document.createElement("template");
|
|
1842
|
-
prependTemplate.innerHTML =
|
|
1893
|
+
prependTemplate.innerHTML = /*html*/
|
|
1894
|
+
`
|
|
1843
1895
|
<style>
|
|
1844
1896
|
:host {
|
|
1845
1897
|
display: inline-block;
|
|
@@ -1885,7 +1937,10 @@ var MediaThemeElement = class extends GlobalThis.HTMLElement {
|
|
|
1885
1937
|
if (this.mediaController && !((_a2 = this.mediaController) == null ? void 0 : _a2.breakpointsComputed))
|
|
1886
1938
|
return;
|
|
1887
1939
|
if (mutationList.some((mutation) => {
|
|
1888
|
-
const target =
|
|
1940
|
+
const target = (
|
|
1941
|
+
/** @type {HTMLElement} */
|
|
1942
|
+
mutation.target
|
|
1943
|
+
);
|
|
1889
1944
|
if (target === this)
|
|
1890
1945
|
return true;
|
|
1891
1946
|
if (target.localName !== "media-controller")
|
|
@@ -1907,6 +1962,7 @@ var MediaThemeElement = class extends GlobalThis.HTMLElement {
|
|
|
1907
1962
|
this.addEventListener(MediaStateChangeEvents.BREAKPOINTS_COMPUTED, this.render);
|
|
1908
1963
|
__privateMethod(this, _upgradeProperty, upgradeProperty_fn).call(this, "template");
|
|
1909
1964
|
}
|
|
1965
|
+
/** @type {HTMLElement & { breakpointsComputed?: boolean }} */
|
|
1910
1966
|
get mediaController() {
|
|
1911
1967
|
return this.renderRoot.querySelector("media-controller");
|
|
1912
1968
|
}
|
|
@@ -1956,6 +2012,7 @@ var MediaThemeElement = class extends GlobalThis.HTMLElement {
|
|
|
1956
2012
|
this.renderer = new TemplateInstance(
|
|
1957
2013
|
this.template,
|
|
1958
2014
|
this.props,
|
|
2015
|
+
// @ts-ignore
|
|
1959
2016
|
this.constructor.processor
|
|
1960
2017
|
);
|
|
1961
2018
|
this.renderRoot.textContent = "";
|
|
@@ -1987,7 +2044,10 @@ updateTemplate_fn = function() {
|
|
|
1987
2044
|
const templateId = this.getAttribute("template");
|
|
1988
2045
|
if (!templateId || templateId === __privateGet3(this, _prevTemplateId))
|
|
1989
2046
|
return;
|
|
1990
|
-
const rootNode =
|
|
2047
|
+
const rootNode = (
|
|
2048
|
+
/** @type HTMLDocument | ShadowRoot */
|
|
2049
|
+
this.getRootNode()
|
|
2050
|
+
);
|
|
1991
2051
|
const template2 = (_a2 = rootNode == null ? void 0 : rootNode.getElementById) == null ? void 0 : _a2.call(rootNode, templateId);
|
|
1992
2052
|
if (template2) {
|
|
1993
2053
|
__privateSet3(this, _prevTemplateId, templateId);
|
|
@@ -27,6 +27,8 @@ var EventTarget = class {
|
|
|
27
27
|
return true;
|
|
28
28
|
}
|
|
29
29
|
};
|
|
30
|
+
var Node = class extends EventTarget {
|
|
31
|
+
};
|
|
30
32
|
var ResizeObserver = class {
|
|
31
33
|
observe() {
|
|
32
34
|
}
|
|
@@ -45,12 +47,22 @@ var documentShim = {
|
|
|
45
47
|
addEventListener() {
|
|
46
48
|
},
|
|
47
49
|
removeEventListener() {
|
|
50
|
+
},
|
|
51
|
+
/**
|
|
52
|
+
*
|
|
53
|
+
* @param {Event} event
|
|
54
|
+
* @returns {boolean}
|
|
55
|
+
*/
|
|
56
|
+
dispatchEvent(event) {
|
|
57
|
+
return false;
|
|
48
58
|
}
|
|
59
|
+
// eslint-disable-line no-unused-vars
|
|
49
60
|
};
|
|
50
61
|
var globalThisShim = {
|
|
51
62
|
ResizeObserver,
|
|
52
63
|
document: documentShim,
|
|
53
|
-
|
|
64
|
+
Node,
|
|
65
|
+
HTMLElement: class HTMLElement extends Node {
|
|
54
66
|
},
|
|
55
67
|
DocumentFragment: class DocumentFragment extends EventTarget {
|
|
56
68
|
},
|
|
@@ -62,6 +74,29 @@ var globalThisShim = {
|
|
|
62
74
|
whenDefined: function() {
|
|
63
75
|
}
|
|
64
76
|
},
|
|
77
|
+
localStorage: {
|
|
78
|
+
/**
|
|
79
|
+
* @param {string} key
|
|
80
|
+
* @returns {string|null}
|
|
81
|
+
*/
|
|
82
|
+
getItem(key) {
|
|
83
|
+
return null;
|
|
84
|
+
},
|
|
85
|
+
// eslint-disable-line no-unused-vars
|
|
86
|
+
/**
|
|
87
|
+
* @param {string} key
|
|
88
|
+
* @param {string} value
|
|
89
|
+
*/
|
|
90
|
+
setItem(key, value) {
|
|
91
|
+
},
|
|
92
|
+
// eslint-disable-line no-unused-vars
|
|
93
|
+
/**
|
|
94
|
+
* @param {string} key
|
|
95
|
+
*/
|
|
96
|
+
removeItem(key) {
|
|
97
|
+
}
|
|
98
|
+
// eslint-disable-line no-unused-vars
|
|
99
|
+
},
|
|
65
100
|
CustomEvent: function CustomEvent() {
|
|
66
101
|
},
|
|
67
102
|
getComputedStyle: function() {
|
|
@@ -72,6 +107,9 @@ var globalThisShim = {
|
|
|
72
107
|
return "";
|
|
73
108
|
}
|
|
74
109
|
},
|
|
110
|
+
/**
|
|
111
|
+
* @param {string} media
|
|
112
|
+
*/
|
|
75
113
|
matchMedia(media) {
|
|
76
114
|
return {
|
|
77
115
|
matches: false,
|
|
@@ -124,21 +162,35 @@ var MediaUIProps = {
|
|
|
124
162
|
MEDIA_AUDIO_TRACK_ENABLED: "mediaAudioTrackEnabled",
|
|
125
163
|
MEDIA_CHAPTERS_CUES: "mediaChaptersCues"
|
|
126
164
|
};
|
|
127
|
-
var MediaUIPropsEntries =
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
(
|
|
134
|
-
dictObj[key]
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
165
|
+
var MediaUIPropsEntries = (
|
|
166
|
+
/** @type {[keyof MediaUIProps, string][]} */
|
|
167
|
+
Object.entries(MediaUIProps)
|
|
168
|
+
);
|
|
169
|
+
var MediaUIAttributes = (
|
|
170
|
+
/** @type {{ [k in keyof MediaUIProps]: string }} */
|
|
171
|
+
MediaUIPropsEntries.reduce(
|
|
172
|
+
(dictObj, [key, propName]) => {
|
|
173
|
+
dictObj[key] = `${propName.toLowerCase()}`;
|
|
174
|
+
return dictObj;
|
|
175
|
+
},
|
|
176
|
+
/** @type {Partial<{ [k in keyof MediaUIProps]: string }>} */
|
|
177
|
+
{}
|
|
178
|
+
)
|
|
179
|
+
);
|
|
180
|
+
var MediaStateChangeEvents = (
|
|
181
|
+
/** @type {{ [k in keyof MediaUIProps | 'USER_INACTIVE' | 'BREAKPOINTS_CHANGE' | 'BREAKPOINTS_COMPUTED']: string }} */
|
|
182
|
+
MediaUIPropsEntries.reduce(
|
|
183
|
+
(dictObj, [key, propName]) => {
|
|
184
|
+
dictObj[key] = `${propName.toLowerCase()}`;
|
|
185
|
+
return dictObj;
|
|
186
|
+
},
|
|
187
|
+
/** @type {Partial<{ [k in keyof MediaUIProps | 'USER_INACTIVE' | 'BREAKPOINTS_CHANGE' | 'BREAKPOINTS_COMPUTED']: string }>} */
|
|
188
|
+
{
|
|
189
|
+
USER_INACTIVE: "userinactivechange",
|
|
190
|
+
BREAKPOINTS_CHANGE: "breakpointchange",
|
|
191
|
+
BREAKPOINTS_COMPUTED: "breakpointscomputed"
|
|
192
|
+
}
|
|
193
|
+
)
|
|
142
194
|
);
|
|
143
195
|
var StateChangeEventToAttributeMap = Object.entries(
|
|
144
196
|
MediaStateChangeEvents
|
|
@@ -396,6 +448,7 @@ var AttrPart = class extends Part {
|
|
|
396
448
|
);
|
|
397
449
|
}
|
|
398
450
|
}
|
|
451
|
+
/** @type boolean */
|
|
399
452
|
get booleanValue() {
|
|
400
453
|
return __privateGet(this, _element).hasAttributeNS(
|
|
401
454
|
__privateGet(this, _namespaceURI),
|
|
@@ -437,6 +490,7 @@ var ChildNodePart = class extends Part {
|
|
|
437
490
|
get previousSibling() {
|
|
438
491
|
return __privateGet(this, _nodes)[0].previousSibling;
|
|
439
492
|
}
|
|
493
|
+
// FIXME: not sure why do we need string serialization here? Just because parent class has type DOMString?
|
|
440
494
|
get value() {
|
|
441
495
|
return __privateGet(this, _nodes).map((node) => node.textContent).join("");
|
|
442
496
|
}
|
|
@@ -780,7 +834,8 @@ var observedMediaAttributes = {
|
|
|
780
834
|
mediastreamtype: "streamtype"
|
|
781
835
|
};
|
|
782
836
|
var prependTemplate = Document.createElement("template");
|
|
783
|
-
prependTemplate.innerHTML =
|
|
837
|
+
prependTemplate.innerHTML = /*html*/
|
|
838
|
+
`
|
|
784
839
|
<style>
|
|
785
840
|
:host {
|
|
786
841
|
display: inline-block;
|
|
@@ -826,7 +881,10 @@ var MediaThemeElement = class extends GlobalThis.HTMLElement {
|
|
|
826
881
|
if (this.mediaController && !((_a = this.mediaController) == null ? void 0 : _a.breakpointsComputed))
|
|
827
882
|
return;
|
|
828
883
|
if (mutationList.some((mutation) => {
|
|
829
|
-
const target =
|
|
884
|
+
const target = (
|
|
885
|
+
/** @type {HTMLElement} */
|
|
886
|
+
mutation.target
|
|
887
|
+
);
|
|
830
888
|
if (target === this)
|
|
831
889
|
return true;
|
|
832
890
|
if (target.localName !== "media-controller")
|
|
@@ -848,6 +906,7 @@ var MediaThemeElement = class extends GlobalThis.HTMLElement {
|
|
|
848
906
|
this.addEventListener(MediaStateChangeEvents.BREAKPOINTS_COMPUTED, this.render);
|
|
849
907
|
__privateMethod(this, _upgradeProperty, upgradeProperty_fn).call(this, "template");
|
|
850
908
|
}
|
|
909
|
+
/** @type {HTMLElement & { breakpointsComputed?: boolean }} */
|
|
851
910
|
get mediaController() {
|
|
852
911
|
return this.renderRoot.querySelector("media-controller");
|
|
853
912
|
}
|
|
@@ -897,6 +956,7 @@ var MediaThemeElement = class extends GlobalThis.HTMLElement {
|
|
|
897
956
|
this.renderer = new TemplateInstance(
|
|
898
957
|
this.template,
|
|
899
958
|
this.props,
|
|
959
|
+
// @ts-ignore
|
|
900
960
|
this.constructor.processor
|
|
901
961
|
);
|
|
902
962
|
this.renderRoot.textContent = "";
|
|
@@ -928,7 +988,10 @@ updateTemplate_fn = function() {
|
|
|
928
988
|
const templateId = this.getAttribute("template");
|
|
929
989
|
if (!templateId || templateId === __privateGet2(this, _prevTemplateId))
|
|
930
990
|
return;
|
|
931
|
-
const rootNode =
|
|
991
|
+
const rootNode = (
|
|
992
|
+
/** @type HTMLDocument | ShadowRoot */
|
|
993
|
+
this.getRootNode()
|
|
994
|
+
);
|
|
932
995
|
const template2 = (_a = rootNode == null ? void 0 : rootNode.getElementById) == null ? void 0 : _a.call(rootNode, templateId);
|
|
933
996
|
if (template2) {
|
|
934
997
|
__privateSet2(this, _prevTemplateId, templateId);
|
|
@@ -979,7 +1042,8 @@ var __publicField3 = (obj, key, value) => {
|
|
|
979
1042
|
return value;
|
|
980
1043
|
};
|
|
981
1044
|
var template = Document.createElement("template");
|
|
982
|
-
template.innerHTML =
|
|
1045
|
+
template.innerHTML = /*html*/
|
|
1046
|
+
`
|
|
983
1047
|
<style>
|
|
984
1048
|
:host {
|
|
985
1049
|
--_primary-color: var(--media-primary-color, rgb(255 255 255 / .9));
|
|
@@ -1033,7 +1097,8 @@ template.innerHTML = `
|
|
|
1033
1097
|
|
|
1034
1098
|
media-loading-indicator {
|
|
1035
1099
|
place-self: center;
|
|
1036
|
-
${
|
|
1100
|
+
${/* Stack the grid items on top of each other */
|
|
1101
|
+
""}
|
|
1037
1102
|
grid-area: 1 / 1;
|
|
1038
1103
|
}
|
|
1039
1104
|
|
|
@@ -1156,7 +1221,7 @@ template.innerHTML = `
|
|
|
1156
1221
|
--media-range-padding-left: 0;
|
|
1157
1222
|
--media-range-padding-right: 0;
|
|
1158
1223
|
--media-preview-time-background: var(--_secondary-color);
|
|
1159
|
-
--media-preview-
|
|
1224
|
+
--media-preview-box-margin: 0 0 3px;
|
|
1160
1225
|
|
|
1161
1226
|
display: var(--controls, var(--time-range, inline-block));
|
|
1162
1227
|
width: 100%;
|
|
@@ -1180,7 +1245,8 @@ template.innerHTML = `
|
|
|
1180
1245
|
width: 7px;
|
|
1181
1246
|
}
|
|
1182
1247
|
|
|
1183
|
-
${
|
|
1248
|
+
${/* Turn some buttons off by default */
|
|
1249
|
+
""}
|
|
1184
1250
|
media-seek-backward-button {
|
|
1185
1251
|
display: var(--media-control-display, var(--media-seek-backward-button-display, none));
|
|
1186
1252
|
}
|
|
@@ -1383,6 +1449,7 @@ template.innerHTML = `
|
|
|
1383
1449
|
</template>
|
|
1384
1450
|
|
|
1385
1451
|
<media-controller
|
|
1452
|
+
nodefaultstore="{{nodefaultstore}}"
|
|
1386
1453
|
defaultsubtitles="{{defaultsubtitles}}"
|
|
1387
1454
|
style="--_control-bar-place-self:{{controlbarplace ?? 'unset'}}"
|
|
1388
1455
|
gesturesdisabled="{{disabled}}"
|