@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.
@@ -62,7 +62,6 @@ var classic_default = `<!-- prettier-ignore -->
62
62
  --media-preview-thumbnail-border: 0;
63
63
  --media-preview-thumbnail-border-radius: 2px 2px 0 0;
64
64
  --media-preview-time-border-radius: 0 0 2px 2px;
65
- --media-preview-time-margin: 0 0 8px;
66
65
  --media-preview-time-text-shadow: none;
67
66
  --media-listbox-border-radius: 2px;
68
67
  --media-listbox-transform-in: translateY(-8px) scale(1);
@@ -77,7 +76,6 @@ var classic_default = `<!-- prettier-ignore -->
77
76
 
78
77
  :host([audio]) {
79
78
  --media-preview-time-border-radius: 3px;
80
- --media-preview-time-margin: 0 0 5px;
81
79
  --media-preview-time-text-shadow: none;
82
80
  }
83
81
 
@@ -529,6 +527,8 @@ var classic_default = `<!-- prettier-ignore -->
529
527
  noautoseektolive="{{noautoseektolive}}"
530
528
  defaultsubtitles="{{defaultsubtitles}}"
531
529
  defaultduration="{{defaultduration ?? false}}"
530
+ keyboardforwardseekoffset="{{forwardseekoffset}}"
531
+ keyboardbackwardseekoffset="{{backwardseekoffset}}"
532
532
  exportparts="layer, media-layer, poster-layer, vertical-layer, centered-layer, gesture-layer"
533
533
  >
534
534
  <slot name="media" slot="media"></slot>
@@ -920,21 +920,35 @@ var MediaUIProps = {
920
920
  MEDIA_AUDIO_TRACK_ENABLED: "mediaAudioTrackEnabled",
921
921
  MEDIA_CHAPTERS_CUES: "mediaChaptersCues"
922
922
  };
923
- var MediaUIPropsEntries = Object.entries(MediaUIProps);
924
- var MediaUIAttributes = MediaUIPropsEntries.reduce((dictObj, [key, propName]) => {
925
- dictObj[key] = `${propName.toLowerCase()}`;
926
- return dictObj;
927
- }, {});
928
- var MediaStateChangeEvents = MediaUIPropsEntries.reduce(
929
- (dictObj, [key, propName]) => {
930
- dictObj[key] = `${propName.toLowerCase()}`;
931
- return dictObj;
932
- },
933
- {
934
- USER_INACTIVE: "userinactivechange",
935
- BREAKPOINTS_CHANGE: "breakpointchange",
936
- BREAKPOINTS_COMPUTED: "breakpointscomputed"
937
- }
923
+ var MediaUIPropsEntries = (
924
+ /** @type {[keyof MediaUIProps, string][]} */
925
+ Object.entries(MediaUIProps)
926
+ );
927
+ var MediaUIAttributes = (
928
+ /** @type {{ [k in keyof MediaUIProps]: string }} */
929
+ MediaUIPropsEntries.reduce(
930
+ (dictObj, [key, propName]) => {
931
+ dictObj[key] = `${propName.toLowerCase()}`;
932
+ return dictObj;
933
+ },
934
+ /** @type {Partial<{ [k in keyof MediaUIProps]: string }>} */
935
+ {}
936
+ )
937
+ );
938
+ var MediaStateChangeEvents = (
939
+ /** @type {{ [k in keyof MediaUIProps | 'USER_INACTIVE' | 'BREAKPOINTS_CHANGE' | 'BREAKPOINTS_COMPUTED']: string }} */
940
+ MediaUIPropsEntries.reduce(
941
+ (dictObj, [key, propName]) => {
942
+ dictObj[key] = `${propName.toLowerCase()}`;
943
+ return dictObj;
944
+ },
945
+ /** @type {Partial<{ [k in keyof MediaUIProps | 'USER_INACTIVE' | 'BREAKPOINTS_CHANGE' | 'BREAKPOINTS_COMPUTED']: string }>} */
946
+ {
947
+ USER_INACTIVE: "userinactivechange",
948
+ BREAKPOINTS_CHANGE: "breakpointchange",
949
+ BREAKPOINTS_COMPUTED: "breakpointscomputed"
950
+ }
951
+ )
938
952
  );
939
953
  var StateChangeEventToAttributeMap = Object.entries(
940
954
  MediaStateChangeEvents
@@ -971,6 +985,8 @@ var EventTarget2 = class {
971
985
  return true;
972
986
  }
973
987
  };
988
+ var Node = class extends EventTarget2 {
989
+ };
974
990
  var ResizeObserver = class {
975
991
  observe() {
976
992
  }
@@ -989,12 +1005,22 @@ var documentShim = {
989
1005
  addEventListener() {
990
1006
  },
991
1007
  removeEventListener() {
1008
+ },
1009
+ /**
1010
+ *
1011
+ * @param {Event} event
1012
+ * @returns {boolean}
1013
+ */
1014
+ dispatchEvent(event) {
1015
+ return false;
992
1016
  }
1017
+ // eslint-disable-line no-unused-vars
993
1018
  };
994
1019
  var globalThisShim2 = {
995
1020
  ResizeObserver,
996
1021
  document: documentShim,
997
- HTMLElement: class HTMLElement2 extends EventTarget2 {
1022
+ Node,
1023
+ HTMLElement: class HTMLElement2 extends Node {
998
1024
  },
999
1025
  DocumentFragment: class DocumentFragment2 extends EventTarget2 {
1000
1026
  },
@@ -1006,6 +1032,29 @@ var globalThisShim2 = {
1006
1032
  whenDefined: function() {
1007
1033
  }
1008
1034
  },
1035
+ localStorage: {
1036
+ /**
1037
+ * @param {string} key
1038
+ * @returns {string|null}
1039
+ */
1040
+ getItem(key) {
1041
+ return null;
1042
+ },
1043
+ // eslint-disable-line no-unused-vars
1044
+ /**
1045
+ * @param {string} key
1046
+ * @param {string} value
1047
+ */
1048
+ setItem(key, value) {
1049
+ },
1050
+ // eslint-disable-line no-unused-vars
1051
+ /**
1052
+ * @param {string} key
1053
+ */
1054
+ removeItem(key) {
1055
+ }
1056
+ // eslint-disable-line no-unused-vars
1057
+ },
1009
1058
  CustomEvent: function CustomEvent2() {
1010
1059
  },
1011
1060
  getComputedStyle: function() {
@@ -1016,6 +1065,9 @@ var globalThisShim2 = {
1016
1065
  return "";
1017
1066
  }
1018
1067
  },
1068
+ /**
1069
+ * @param {string} media
1070
+ */
1019
1071
  matchMedia(media) {
1020
1072
  return {
1021
1073
  matches: false,
@@ -1259,6 +1311,7 @@ var AttrPart = class extends Part {
1259
1311
  );
1260
1312
  }
1261
1313
  }
1314
+ /** @type boolean */
1262
1315
  get booleanValue() {
1263
1316
  return __privateGet2(this, _element).hasAttributeNS(
1264
1317
  __privateGet2(this, _namespaceURI),
@@ -1300,6 +1353,7 @@ var ChildNodePart = class extends Part {
1300
1353
  get previousSibling() {
1301
1354
  return __privateGet2(this, _nodes)[0].previousSibling;
1302
1355
  }
1356
+ // FIXME: not sure why do we need string serialization here? Just because parent class has type DOMString?
1303
1357
  get value() {
1304
1358
  return __privateGet2(this, _nodes).map((node) => node.textContent).join("");
1305
1359
  }
@@ -1643,7 +1697,8 @@ var observedMediaAttributes = {
1643
1697
  mediastreamtype: "streamtype"
1644
1698
  };
1645
1699
  var prependTemplate = Document.createElement("template");
1646
- prependTemplate.innerHTML = `
1700
+ prependTemplate.innerHTML = /*html*/
1701
+ `
1647
1702
  <style>
1648
1703
  :host {
1649
1704
  display: inline-block;
@@ -1689,7 +1744,10 @@ var MediaThemeElement = class extends GlobalThis.HTMLElement {
1689
1744
  if (this.mediaController && !((_a2 = this.mediaController) == null ? void 0 : _a2.breakpointsComputed))
1690
1745
  return;
1691
1746
  if (mutationList.some((mutation) => {
1692
- const target = mutation.target;
1747
+ const target = (
1748
+ /** @type {HTMLElement} */
1749
+ mutation.target
1750
+ );
1693
1751
  if (target === this)
1694
1752
  return true;
1695
1753
  if (target.localName !== "media-controller")
@@ -1711,6 +1769,7 @@ var MediaThemeElement = class extends GlobalThis.HTMLElement {
1711
1769
  this.addEventListener(MediaStateChangeEvents.BREAKPOINTS_COMPUTED, this.render);
1712
1770
  __privateMethod(this, _upgradeProperty, upgradeProperty_fn).call(this, "template");
1713
1771
  }
1772
+ /** @type {HTMLElement & { breakpointsComputed?: boolean }} */
1714
1773
  get mediaController() {
1715
1774
  return this.renderRoot.querySelector("media-controller");
1716
1775
  }
@@ -1760,6 +1819,7 @@ var MediaThemeElement = class extends GlobalThis.HTMLElement {
1760
1819
  this.renderer = new TemplateInstance(
1761
1820
  this.template,
1762
1821
  this.props,
1822
+ // @ts-ignore
1763
1823
  this.constructor.processor
1764
1824
  );
1765
1825
  this.renderRoot.textContent = "";
@@ -1791,7 +1851,10 @@ updateTemplate_fn = function() {
1791
1851
  const templateId = this.getAttribute("template");
1792
1852
  if (!templateId || templateId === __privateGet3(this, _prevTemplateId))
1793
1853
  return;
1794
- const rootNode = this.getRootNode();
1854
+ const rootNode = (
1855
+ /** @type HTMLDocument | ShadowRoot */
1856
+ this.getRootNode()
1857
+ );
1795
1858
  const template2 = (_a2 = rootNode == null ? void 0 : rootNode.getElementById) == null ? void 0 : _a2.call(rootNode, templateId);
1796
1859
  if (template2) {
1797
1860
  __privateSet3(this, _prevTemplateId, templateId);
@@ -62,7 +62,6 @@ var mediaThemeClassic = (() => {
62
62
  --media-preview-thumbnail-border: 0;
63
63
  --media-preview-thumbnail-border-radius: 2px 2px 0 0;
64
64
  --media-preview-time-border-radius: 0 0 2px 2px;
65
- --media-preview-time-margin: 0 0 8px;
66
65
  --media-preview-time-text-shadow: none;
67
66
  --media-listbox-border-radius: 2px;
68
67
  --media-listbox-transform-in: translateY(-8px) scale(1);
@@ -77,7 +76,6 @@ var mediaThemeClassic = (() => {
77
76
 
78
77
  :host([audio]) {
79
78
  --media-preview-time-border-radius: 3px;
80
- --media-preview-time-margin: 0 0 5px;
81
79
  --media-preview-time-text-shadow: none;
82
80
  }
83
81
 
@@ -529,6 +527,8 @@ var mediaThemeClassic = (() => {
529
527
  noautoseektolive="{{noautoseektolive}}"
530
528
  defaultsubtitles="{{defaultsubtitles}}"
531
529
  defaultduration="{{defaultduration ?? false}}"
530
+ keyboardforwardseekoffset="{{forwardseekoffset}}"
531
+ keyboardbackwardseekoffset="{{backwardseekoffset}}"
532
532
  exportparts="layer, media-layer, poster-layer, vertical-layer, centered-layer, gesture-layer"
533
533
  >
534
534
  <slot name="media" slot="media"></slot>
@@ -920,21 +920,35 @@ var mediaThemeClassic = (() => {
920
920
  MEDIA_AUDIO_TRACK_ENABLED: "mediaAudioTrackEnabled",
921
921
  MEDIA_CHAPTERS_CUES: "mediaChaptersCues"
922
922
  };
923
- var MediaUIPropsEntries = Object.entries(MediaUIProps);
924
- var MediaUIAttributes = MediaUIPropsEntries.reduce((dictObj, [key, propName]) => {
925
- dictObj[key] = `${propName.toLowerCase()}`;
926
- return dictObj;
927
- }, {});
928
- var MediaStateChangeEvents = MediaUIPropsEntries.reduce(
929
- (dictObj, [key, propName]) => {
930
- dictObj[key] = `${propName.toLowerCase()}`;
931
- return dictObj;
932
- },
933
- {
934
- USER_INACTIVE: "userinactivechange",
935
- BREAKPOINTS_CHANGE: "breakpointchange",
936
- BREAKPOINTS_COMPUTED: "breakpointscomputed"
937
- }
923
+ var MediaUIPropsEntries = (
924
+ /** @type {[keyof MediaUIProps, string][]} */
925
+ Object.entries(MediaUIProps)
926
+ );
927
+ var MediaUIAttributes = (
928
+ /** @type {{ [k in keyof MediaUIProps]: string }} */
929
+ MediaUIPropsEntries.reduce(
930
+ (dictObj, [key, propName]) => {
931
+ dictObj[key] = `${propName.toLowerCase()}`;
932
+ return dictObj;
933
+ },
934
+ /** @type {Partial<{ [k in keyof MediaUIProps]: string }>} */
935
+ {}
936
+ )
937
+ );
938
+ var MediaStateChangeEvents = (
939
+ /** @type {{ [k in keyof MediaUIProps | 'USER_INACTIVE' | 'BREAKPOINTS_CHANGE' | 'BREAKPOINTS_COMPUTED']: string }} */
940
+ MediaUIPropsEntries.reduce(
941
+ (dictObj, [key, propName]) => {
942
+ dictObj[key] = `${propName.toLowerCase()}`;
943
+ return dictObj;
944
+ },
945
+ /** @type {Partial<{ [k in keyof MediaUIProps | 'USER_INACTIVE' | 'BREAKPOINTS_CHANGE' | 'BREAKPOINTS_COMPUTED']: string }>} */
946
+ {
947
+ USER_INACTIVE: "userinactivechange",
948
+ BREAKPOINTS_CHANGE: "breakpointchange",
949
+ BREAKPOINTS_COMPUTED: "breakpointscomputed"
950
+ }
951
+ )
938
952
  );
939
953
  var StateChangeEventToAttributeMap = Object.entries(
940
954
  MediaStateChangeEvents
@@ -971,6 +985,8 @@ var mediaThemeClassic = (() => {
971
985
  return true;
972
986
  }
973
987
  };
988
+ var Node = class extends EventTarget2 {
989
+ };
974
990
  var ResizeObserver = class {
975
991
  observe() {
976
992
  }
@@ -989,12 +1005,22 @@ var mediaThemeClassic = (() => {
989
1005
  addEventListener() {
990
1006
  },
991
1007
  removeEventListener() {
1008
+ },
1009
+ /**
1010
+ *
1011
+ * @param {Event} event
1012
+ * @returns {boolean}
1013
+ */
1014
+ dispatchEvent(event) {
1015
+ return false;
992
1016
  }
1017
+ // eslint-disable-line no-unused-vars
993
1018
  };
994
1019
  var globalThisShim2 = {
995
1020
  ResizeObserver,
996
1021
  document: documentShim,
997
- HTMLElement: class HTMLElement2 extends EventTarget2 {
1022
+ Node,
1023
+ HTMLElement: class HTMLElement2 extends Node {
998
1024
  },
999
1025
  DocumentFragment: class DocumentFragment2 extends EventTarget2 {
1000
1026
  },
@@ -1006,6 +1032,29 @@ var mediaThemeClassic = (() => {
1006
1032
  whenDefined: function() {
1007
1033
  }
1008
1034
  },
1035
+ localStorage: {
1036
+ /**
1037
+ * @param {string} key
1038
+ * @returns {string|null}
1039
+ */
1040
+ getItem(key) {
1041
+ return null;
1042
+ },
1043
+ // eslint-disable-line no-unused-vars
1044
+ /**
1045
+ * @param {string} key
1046
+ * @param {string} value
1047
+ */
1048
+ setItem(key, value) {
1049
+ },
1050
+ // eslint-disable-line no-unused-vars
1051
+ /**
1052
+ * @param {string} key
1053
+ */
1054
+ removeItem(key) {
1055
+ }
1056
+ // eslint-disable-line no-unused-vars
1057
+ },
1009
1058
  CustomEvent: function CustomEvent2() {
1010
1059
  },
1011
1060
  getComputedStyle: function() {
@@ -1016,6 +1065,9 @@ var mediaThemeClassic = (() => {
1016
1065
  return "";
1017
1066
  }
1018
1067
  },
1068
+ /**
1069
+ * @param {string} media
1070
+ */
1019
1071
  matchMedia(media) {
1020
1072
  return {
1021
1073
  matches: false,
@@ -1259,6 +1311,7 @@ var mediaThemeClassic = (() => {
1259
1311
  );
1260
1312
  }
1261
1313
  }
1314
+ /** @type boolean */
1262
1315
  get booleanValue() {
1263
1316
  return __privateGet2(this, _element).hasAttributeNS(
1264
1317
  __privateGet2(this, _namespaceURI),
@@ -1300,6 +1353,7 @@ var mediaThemeClassic = (() => {
1300
1353
  get previousSibling() {
1301
1354
  return __privateGet2(this, _nodes)[0].previousSibling;
1302
1355
  }
1356
+ // FIXME: not sure why do we need string serialization here? Just because parent class has type DOMString?
1303
1357
  get value() {
1304
1358
  return __privateGet2(this, _nodes).map((node) => node.textContent).join("");
1305
1359
  }
@@ -1643,7 +1697,8 @@ var mediaThemeClassic = (() => {
1643
1697
  mediastreamtype: "streamtype"
1644
1698
  };
1645
1699
  var prependTemplate = Document.createElement("template");
1646
- prependTemplate.innerHTML = `
1700
+ prependTemplate.innerHTML = /*html*/
1701
+ `
1647
1702
  <style>
1648
1703
  :host {
1649
1704
  display: inline-block;
@@ -1689,7 +1744,10 @@ var mediaThemeClassic = (() => {
1689
1744
  if (this.mediaController && !((_a2 = this.mediaController) == null ? void 0 : _a2.breakpointsComputed))
1690
1745
  return;
1691
1746
  if (mutationList.some((mutation) => {
1692
- const target = mutation.target;
1747
+ const target = (
1748
+ /** @type {HTMLElement} */
1749
+ mutation.target
1750
+ );
1693
1751
  if (target === this)
1694
1752
  return true;
1695
1753
  if (target.localName !== "media-controller")
@@ -1711,6 +1769,7 @@ var mediaThemeClassic = (() => {
1711
1769
  this.addEventListener(MediaStateChangeEvents.BREAKPOINTS_COMPUTED, this.render);
1712
1770
  __privateMethod(this, _upgradeProperty, upgradeProperty_fn).call(this, "template");
1713
1771
  }
1772
+ /** @type {HTMLElement & { breakpointsComputed?: boolean }} */
1714
1773
  get mediaController() {
1715
1774
  return this.renderRoot.querySelector("media-controller");
1716
1775
  }
@@ -1760,6 +1819,7 @@ var mediaThemeClassic = (() => {
1760
1819
  this.renderer = new TemplateInstance(
1761
1820
  this.template,
1762
1821
  this.props,
1822
+ // @ts-ignore
1763
1823
  this.constructor.processor
1764
1824
  );
1765
1825
  this.renderRoot.textContent = "";
@@ -1791,7 +1851,10 @@ var mediaThemeClassic = (() => {
1791
1851
  const templateId = this.getAttribute("template");
1792
1852
  if (!templateId || templateId === __privateGet3(this, _prevTemplateId))
1793
1853
  return;
1794
- const rootNode = this.getRootNode();
1854
+ const rootNode = (
1855
+ /** @type HTMLDocument | ShadowRoot */
1856
+ this.getRootNode()
1857
+ );
1795
1858
  const template2 = (_a2 = rootNode == null ? void 0 : rootNode.getElementById) == null ? void 0 : _a2.call(rootNode, templateId);
1796
1859
  if (template2) {
1797
1860
  __privateSet3(this, _prevTemplateId, templateId);
@@ -37,7 +37,6 @@ var classic_default = `<!-- prettier-ignore -->
37
37
  --media-preview-thumbnail-border: 0;
38
38
  --media-preview-thumbnail-border-radius: 2px 2px 0 0;
39
39
  --media-preview-time-border-radius: 0 0 2px 2px;
40
- --media-preview-time-margin: 0 0 8px;
41
40
  --media-preview-time-text-shadow: none;
42
41
  --media-listbox-border-radius: 2px;
43
42
  --media-listbox-transform-in: translateY(-8px) scale(1);
@@ -52,7 +51,6 @@ var classic_default = `<!-- prettier-ignore -->
52
51
 
53
52
  :host([audio]) {
54
53
  --media-preview-time-border-radius: 3px;
55
- --media-preview-time-margin: 0 0 5px;
56
54
  --media-preview-time-text-shadow: none;
57
55
  }
58
56
 
@@ -504,6 +502,8 @@ var classic_default = `<!-- prettier-ignore -->
504
502
  noautoseektolive="{{noautoseektolive}}"
505
503
  defaultsubtitles="{{defaultsubtitles}}"
506
504
  defaultduration="{{defaultduration ?? false}}"
505
+ keyboardforwardseekoffset="{{forwardseekoffset}}"
506
+ keyboardbackwardseekoffset="{{backwardseekoffset}}"
507
507
  exportparts="layer, media-layer, poster-layer, vertical-layer, centered-layer, gesture-layer"
508
508
  >
509
509
  <slot name="media" slot="media"></slot>
@@ -895,21 +895,35 @@ var MediaUIProps = {
895
895
  MEDIA_AUDIO_TRACK_ENABLED: "mediaAudioTrackEnabled",
896
896
  MEDIA_CHAPTERS_CUES: "mediaChaptersCues"
897
897
  };
898
- var MediaUIPropsEntries = Object.entries(MediaUIProps);
899
- var MediaUIAttributes = MediaUIPropsEntries.reduce((dictObj, [key, propName]) => {
900
- dictObj[key] = `${propName.toLowerCase()}`;
901
- return dictObj;
902
- }, {});
903
- var MediaStateChangeEvents = MediaUIPropsEntries.reduce(
904
- (dictObj, [key, propName]) => {
905
- dictObj[key] = `${propName.toLowerCase()}`;
906
- return dictObj;
907
- },
908
- {
909
- USER_INACTIVE: "userinactivechange",
910
- BREAKPOINTS_CHANGE: "breakpointchange",
911
- BREAKPOINTS_COMPUTED: "breakpointscomputed"
912
- }
898
+ var MediaUIPropsEntries = (
899
+ /** @type {[keyof MediaUIProps, string][]} */
900
+ Object.entries(MediaUIProps)
901
+ );
902
+ var MediaUIAttributes = (
903
+ /** @type {{ [k in keyof MediaUIProps]: string }} */
904
+ MediaUIPropsEntries.reduce(
905
+ (dictObj, [key, propName]) => {
906
+ dictObj[key] = `${propName.toLowerCase()}`;
907
+ return dictObj;
908
+ },
909
+ /** @type {Partial<{ [k in keyof MediaUIProps]: string }>} */
910
+ {}
911
+ )
912
+ );
913
+ var MediaStateChangeEvents = (
914
+ /** @type {{ [k in keyof MediaUIProps | 'USER_INACTIVE' | 'BREAKPOINTS_CHANGE' | 'BREAKPOINTS_COMPUTED']: string }} */
915
+ MediaUIPropsEntries.reduce(
916
+ (dictObj, [key, propName]) => {
917
+ dictObj[key] = `${propName.toLowerCase()}`;
918
+ return dictObj;
919
+ },
920
+ /** @type {Partial<{ [k in keyof MediaUIProps | 'USER_INACTIVE' | 'BREAKPOINTS_CHANGE' | 'BREAKPOINTS_COMPUTED']: string }>} */
921
+ {
922
+ USER_INACTIVE: "userinactivechange",
923
+ BREAKPOINTS_CHANGE: "breakpointchange",
924
+ BREAKPOINTS_COMPUTED: "breakpointscomputed"
925
+ }
926
+ )
913
927
  );
914
928
  var StateChangeEventToAttributeMap = Object.entries(
915
929
  MediaStateChangeEvents
@@ -946,6 +960,8 @@ var EventTarget2 = class {
946
960
  return true;
947
961
  }
948
962
  };
963
+ var Node = class extends EventTarget2 {
964
+ };
949
965
  var ResizeObserver = class {
950
966
  observe() {
951
967
  }
@@ -964,12 +980,22 @@ var documentShim = {
964
980
  addEventListener() {
965
981
  },
966
982
  removeEventListener() {
983
+ },
984
+ /**
985
+ *
986
+ * @param {Event} event
987
+ * @returns {boolean}
988
+ */
989
+ dispatchEvent(event) {
990
+ return false;
967
991
  }
992
+ // eslint-disable-line no-unused-vars
968
993
  };
969
994
  var globalThisShim2 = {
970
995
  ResizeObserver,
971
996
  document: documentShim,
972
- HTMLElement: class HTMLElement2 extends EventTarget2 {
997
+ Node,
998
+ HTMLElement: class HTMLElement2 extends Node {
973
999
  },
974
1000
  DocumentFragment: class DocumentFragment2 extends EventTarget2 {
975
1001
  },
@@ -981,6 +1007,29 @@ var globalThisShim2 = {
981
1007
  whenDefined: function() {
982
1008
  }
983
1009
  },
1010
+ localStorage: {
1011
+ /**
1012
+ * @param {string} key
1013
+ * @returns {string|null}
1014
+ */
1015
+ getItem(key) {
1016
+ return null;
1017
+ },
1018
+ // eslint-disable-line no-unused-vars
1019
+ /**
1020
+ * @param {string} key
1021
+ * @param {string} value
1022
+ */
1023
+ setItem(key, value) {
1024
+ },
1025
+ // eslint-disable-line no-unused-vars
1026
+ /**
1027
+ * @param {string} key
1028
+ */
1029
+ removeItem(key) {
1030
+ }
1031
+ // eslint-disable-line no-unused-vars
1032
+ },
984
1033
  CustomEvent: function CustomEvent2() {
985
1034
  },
986
1035
  getComputedStyle: function() {
@@ -991,6 +1040,9 @@ var globalThisShim2 = {
991
1040
  return "";
992
1041
  }
993
1042
  },
1043
+ /**
1044
+ * @param {string} media
1045
+ */
994
1046
  matchMedia(media) {
995
1047
  return {
996
1048
  matches: false,
@@ -1234,6 +1286,7 @@ var AttrPart = class extends Part {
1234
1286
  );
1235
1287
  }
1236
1288
  }
1289
+ /** @type boolean */
1237
1290
  get booleanValue() {
1238
1291
  return __privateGet2(this, _element).hasAttributeNS(
1239
1292
  __privateGet2(this, _namespaceURI),
@@ -1275,6 +1328,7 @@ var ChildNodePart = class extends Part {
1275
1328
  get previousSibling() {
1276
1329
  return __privateGet2(this, _nodes)[0].previousSibling;
1277
1330
  }
1331
+ // FIXME: not sure why do we need string serialization here? Just because parent class has type DOMString?
1278
1332
  get value() {
1279
1333
  return __privateGet2(this, _nodes).map((node) => node.textContent).join("");
1280
1334
  }
@@ -1618,7 +1672,8 @@ var observedMediaAttributes = {
1618
1672
  mediastreamtype: "streamtype"
1619
1673
  };
1620
1674
  var prependTemplate = Document.createElement("template");
1621
- prependTemplate.innerHTML = `
1675
+ prependTemplate.innerHTML = /*html*/
1676
+ `
1622
1677
  <style>
1623
1678
  :host {
1624
1679
  display: inline-block;
@@ -1664,7 +1719,10 @@ var MediaThemeElement = class extends GlobalThis.HTMLElement {
1664
1719
  if (this.mediaController && !((_a2 = this.mediaController) == null ? void 0 : _a2.breakpointsComputed))
1665
1720
  return;
1666
1721
  if (mutationList.some((mutation) => {
1667
- const target = mutation.target;
1722
+ const target = (
1723
+ /** @type {HTMLElement} */
1724
+ mutation.target
1725
+ );
1668
1726
  if (target === this)
1669
1727
  return true;
1670
1728
  if (target.localName !== "media-controller")
@@ -1686,6 +1744,7 @@ var MediaThemeElement = class extends GlobalThis.HTMLElement {
1686
1744
  this.addEventListener(MediaStateChangeEvents.BREAKPOINTS_COMPUTED, this.render);
1687
1745
  __privateMethod(this, _upgradeProperty, upgradeProperty_fn).call(this, "template");
1688
1746
  }
1747
+ /** @type {HTMLElement & { breakpointsComputed?: boolean }} */
1689
1748
  get mediaController() {
1690
1749
  return this.renderRoot.querySelector("media-controller");
1691
1750
  }
@@ -1735,6 +1794,7 @@ var MediaThemeElement = class extends GlobalThis.HTMLElement {
1735
1794
  this.renderer = new TemplateInstance(
1736
1795
  this.template,
1737
1796
  this.props,
1797
+ // @ts-ignore
1738
1798
  this.constructor.processor
1739
1799
  );
1740
1800
  this.renderRoot.textContent = "";
@@ -1766,7 +1826,10 @@ updateTemplate_fn = function() {
1766
1826
  const templateId = this.getAttribute("template");
1767
1827
  if (!templateId || templateId === __privateGet3(this, _prevTemplateId))
1768
1828
  return;
1769
- const rootNode = this.getRootNode();
1829
+ const rootNode = (
1830
+ /** @type HTMLDocument | ShadowRoot */
1831
+ this.getRootNode()
1832
+ );
1770
1833
  const template2 = (_a2 = rootNode == null ? void 0 : rootNode.getElementById) == null ? void 0 : _a2.call(rootNode, templateId);
1771
1834
  if (template2) {
1772
1835
  __privateSet3(this, _prevTemplateId, templateId);