@gcorevideo/player 2.28.19 → 2.28.21

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 (37) hide show
  1. package/assets/bottom-gear/gear.scss +2 -2
  2. package/assets/icons/new/arrow-right.svg +1 -1
  3. package/assets/icons/new/hd.svg +1 -1
  4. package/assets/icons/new/speed.svg +1 -1
  5. package/dist/core.js +1 -1
  6. package/dist/index.css +303 -303
  7. package/dist/index.embed.js +118 -37
  8. package/dist/index.js +118 -38
  9. package/lib/plugins/audio-selector/AudioTracks.d.ts +2 -0
  10. package/lib/plugins/audio-selector/AudioTracks.d.ts.map +1 -1
  11. package/lib/plugins/audio-selector/AudioTracks.js +11 -0
  12. package/lib/plugins/bottom-gear/BottomGear.d.ts +2 -0
  13. package/lib/plugins/bottom-gear/BottomGear.d.ts.map +1 -1
  14. package/lib/plugins/bottom-gear/BottomGear.js +11 -0
  15. package/lib/plugins/level-selector/QualityLevels.d.ts.map +1 -1
  16. package/lib/plugins/level-selector/QualityLevels.js +4 -0
  17. package/lib/plugins/media-control/MediaControl.d.ts +10 -0
  18. package/lib/plugins/media-control/MediaControl.d.ts.map +1 -1
  19. package/lib/plugins/media-control/MediaControl.js +21 -22
  20. package/lib/plugins/subtitles/ClosedCaptions.d.ts +3 -0
  21. package/lib/plugins/subtitles/ClosedCaptions.d.ts.map +1 -1
  22. package/lib/plugins/subtitles/ClosedCaptions.js +30 -11
  23. package/lib/testUtils.d.ts.map +1 -1
  24. package/lib/testUtils.js +2 -0
  25. package/lib/utils/clickaway.d.ts +15 -0
  26. package/lib/utils/clickaway.d.ts.map +1 -0
  27. package/lib/utils/clickaway.js +40 -0
  28. package/package.json +1 -1
  29. package/src/plugins/audio-selector/AudioTracks.ts +15 -1
  30. package/src/plugins/bottom-gear/BottomGear.ts +13 -0
  31. package/src/plugins/level-selector/QualityLevels.ts +4 -0
  32. package/src/plugins/media-control/MediaControl.ts +21 -24
  33. package/src/plugins/subtitles/ClosedCaptions.ts +34 -12
  34. package/src/plugins/subtitles/__tests__/ClosedCaptions.test.ts +9 -3
  35. package/src/testUtils.ts +2 -0
  36. package/src/utils/clickaway.ts +43 -0
  37. package/tsconfig.tsbuildinfo +1 -1
package/dist/index.js CHANGED
@@ -51409,7 +51409,7 @@ class Player {
51409
51409
  }
51410
51410
  }
51411
51411
 
51412
- var version$1 = "2.28.19";
51412
+ var version$1 = "2.28.21";
51413
51413
 
51414
51414
  var packages = {
51415
51415
  "node_modules/@clappr/core": {
@@ -51712,6 +51712,46 @@ const fullscreenOffIcon = "<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"
51712
51712
 
51713
51713
  const fullscreenOnIcon = "<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M15.1568 23.15C15.7408 23.15 16.2142 22.6766 16.2142 22.0926V17.1947C16.2142 16.7253 16.5948 16.3447 17.0642 16.3447H21.9621C22.5461 16.3447 23.0195 15.8713 23.0195 15.2873C23.0195 14.7034 22.5461 14.2299 21.9621 14.2299H16.0642C14.9832 14.2299 14.0995 15.1137 14.0995 16.1947V22.0926C14.0995 22.6766 14.5729 23.15 15.1568 23.15Z\"\n fill=\"#C9C9C9\" stroke=\"#C9C9C9\" stroke-width=\"0.3\"/>\n <path\n d=\"M1.90739 10.7701H7.80528C8.88627 10.7701 9.77006 9.88627 9.77006 8.80528V2.90739C9.77006 2.32341 9.29665 1.85 8.71267 1.85C8.12869 1.85 7.65528 2.32341 7.65528 2.90739V7.80528C7.65528 8.27472 7.27472 8.65528 6.80528 8.65528H1.90739C1.32341 8.65528 0.85 9.12869 0.85 9.71267C0.85 10.2966 1.32341 10.7701 1.90739 10.7701Z\"\n fill=\"#C9C9C9\" stroke=\"#C9C9C9\" stroke-width=\"0.3\"/>\n <path\n d=\"M8.71261 23.15C9.29659 23.15 9.77 22.6766 9.77 22.0926V16.1947C9.77 15.1137 8.88621 14.2299 7.80521 14.2299H1.90733C1.32335 14.2299 0.849939 14.7034 0.849939 15.2873C0.849939 15.8713 1.32335 16.3447 1.90733 16.3447H6.80521C7.27466 16.3447 7.65521 16.7253 7.65521 17.1947V22.0926C7.65521 22.6766 8.12862 23.15 8.71261 23.15Z\"\n fill=\"#C9C9C9\" stroke=\"#C9C9C9\" stroke-width=\"0.3\"/>\n <path\n d=\"M21.9621 10.7701C22.5461 10.7701 23.0195 10.2966 23.0195 9.71267C23.0195 9.12869 22.5461 8.65528 21.9621 8.65528H17.0642C16.5948 8.65528 16.2142 8.27472 16.2142 7.80528V2.90739C16.2142 2.32341 15.7408 1.85 15.1568 1.85C14.5729 1.85 14.0995 2.32341 14.0995 2.90739V8.80528C14.0995 9.88627 14.9832 10.7701 16.0642 10.7701H21.9621Z\"\n fill=\"#C9C9C9\" stroke=\"#C9C9C9\" stroke-width=\"0.3\"/>\n</svg>\n";
51714
51714
 
51715
+ /**
51716
+ *
51717
+ * @param {() => void} callback - The callback to call when the user clicks away from the element
51718
+ * @returns {(HTMLElement | null) => void}
51719
+ */
51720
+ function clickaway(callback) {
51721
+ let handler = (event) => { };
51722
+ return (node) => {
51723
+ window.removeEventListener('click', handler);
51724
+ if (!node) {
51725
+ return;
51726
+ }
51727
+ handler = (event) => {
51728
+ if (!node.contains(event.target)) {
51729
+ window.removeEventListener('click', handler);
51730
+ callback();
51731
+ }
51732
+ };
51733
+ window.addEventListener('click', handler);
51734
+ };
51735
+ }
51736
+ /**
51737
+ * Sets up a clickaway handler for the media control on mobile devices.
51738
+ * The handler is deferred to ensure it is called after the next event loop tick.
51739
+ *
51740
+ * @param {() => void} callback - The callback to call when the user clicks away from the media control
51741
+ * @returns {(HTMLElement | null) => void}
51742
+ */
51743
+ function mediaControlClickaway(callback) {
51744
+ if (!Browser.isMobile) {
51745
+ return () => { };
51746
+ }
51747
+ const cw = clickaway(callback);
51748
+ return (node) => {
51749
+ setTimeout(() => {
51750
+ cw(node);
51751
+ }, 0);
51752
+ };
51753
+ }
51754
+
51715
51755
  // This is a derived work from the {@link https://github.com/clappr/clappr-plugins/tree/ffaa9d27005fa5a8a7c243ffc47eb5655b84b371/src/plugins/media_control | Clappr MediaControl plugin}
51716
51756
  // It is redistributed under the terms of the {@link ../../../../../LICENSE | Apache 2.0} license.
51717
51757
  // Copyright 2014 Globo.com Player authors. All rights reserved.
@@ -51965,6 +52005,7 @@ class MediaControl extends UICorePlugin {
51965
52005
  }
51966
52006
  /**
51967
52007
  * @internal
52008
+ * The methods declared here will be exposed via the main player object API
51968
52009
  */
51969
52010
  getExternalInterface() {
51970
52011
  return {
@@ -52009,9 +52050,7 @@ class MediaControl extends UICorePlugin {
52009
52050
  this.listenTo(this.core.activeContainer, Events$1.CONTAINER_PAUSE, this.changeTogglePlay);
52010
52051
  this.listenTo(this.core.activeContainer, Events$1.CONTAINER_STOP, this.changeTogglePlay);
52011
52052
  this.listenTo(this.core.activeContainer, Events$1.CONTAINER_DBLCLICK, this.toggleFullscreen);
52012
- this.listenTo(this.core.activeContainer, Events$1.CONTAINER_CLICK, () => {
52013
- this.clickaway(this.core.activeContainer.$el[0]);
52014
- });
52053
+ this.listenTo(this.core.activeContainer, Events$1.CONTAINER_CLICK, () => this.clickaway(this.core.activeContainer.$el[0]));
52015
52054
  this.listenTo(this.core.activeContainer, Events$1.CONTAINER_TIMEUPDATE, this.onTimeUpdate);
52016
52055
  this.listenTo(this.core.activeContainer, Events$1.CONTAINER_PROGRESS, this.updateProgressBar);
52017
52056
  this.listenTo(this.core.activeContainer, Events$1.CONTAINER_SETTINGSUPDATE, this.updateSettings);
@@ -52635,6 +52674,23 @@ class MediaControl extends UICorePlugin {
52635
52674
  mount(name, element) {
52636
52675
  mountTo(this.getMountParent(name), element);
52637
52676
  }
52677
+ /**
52678
+ * Set or reset the keep visibility state
52679
+ *
52680
+ * Keep visibility state controls whether the media control is hidden automatically after a delay.
52681
+ * Keep visibility prevents the the auto-hide behaviour
52682
+ *
52683
+ * @param keepVisible - The state
52684
+ */
52685
+ setKeepVisible(keepVisible) {
52686
+ this.keepVisible = keepVisible;
52687
+ if (keepVisible) {
52688
+ this.clickaway(this.core.activeContainer.$el[0]);
52689
+ }
52690
+ else {
52691
+ this.clickaway(null);
52692
+ }
52693
+ }
52638
52694
  getMountParent(name) {
52639
52695
  switch (name) {
52640
52696
  case 'root':
@@ -52934,9 +52990,7 @@ class MediaControl extends UICorePlugin {
52934
52990
  delayHide() {
52935
52991
  this.hide(this.options.hideMediaControlDelay || DEFAULT_HIDE_DELAY);
52936
52992
  }
52937
- // 2 seconds delay is needed since on mobile devices mouse(touch)move events are not dispatched immediately
52938
- // as opposed to the click event
52939
- clickaway = clickaway(() => setTimeout(this.resetUserKeepVisible, 0));
52993
+ clickaway = mediaControlClickaway(() => this.resetUserKeepVisible());
52940
52994
  }
52941
52995
  MediaControl.extend = function (properties) {
52942
52996
  return extend(MediaControl, properties);
@@ -52977,22 +53031,6 @@ function mergeElements(a, b) {
52977
53031
  return acc;
52978
53032
  }, a);
52979
53033
  }
52980
- function clickaway(callback) {
52981
- let handler = (event) => { };
52982
- return (node) => {
52983
- window.removeEventListener('click', handler);
52984
- if (!node) {
52985
- return;
52986
- }
52987
- handler = (event) => {
52988
- if (!node.contains(event.target)) {
52989
- window.removeEventListener('click', handler);
52990
- callback();
52991
- }
52992
- };
52993
- window.addEventListener('click', handler);
52994
- };
52995
- }
52996
53034
 
52997
53035
  const VERSION$7 = '2.22.4';
52998
53036
  // const T = 'plugins.audiotracks'
@@ -53086,6 +53124,9 @@ class AudioTracks extends UICorePlugin {
53086
53124
  this.listenTo(this.core.activeContainer, Events$1.CONTAINER_CLICK, () => {
53087
53125
  this.hideMenu();
53088
53126
  });
53127
+ this.listenTo(this.core.activeContainer, Events$1.CONTAINER_DESTROYED, () => {
53128
+ this.clickaway(null);
53129
+ });
53089
53130
  }
53090
53131
  shouldRender() {
53091
53132
  // Render is called from the parent class constructor so tracks aren't available
@@ -53125,6 +53166,7 @@ class AudioTracks extends UICorePlugin {
53125
53166
  this.open = false;
53126
53167
  this.$el.find('#gplayer-audiotracks-menu').hide();
53127
53168
  this.$el.find('#gplayer-audiotracks-button').attr('aria-expanded', 'false');
53169
+ this.setKeepVisible(false);
53128
53170
  }
53129
53171
  toggleMenu() {
53130
53172
  this.open = !this.open;
@@ -53140,6 +53182,11 @@ class AudioTracks extends UICorePlugin {
53140
53182
  this.$el
53141
53183
  .find('#gplayer-audiotracks-button')
53142
53184
  .attr('aria-expanded', this.open);
53185
+ this.setKeepVisible(this.open);
53186
+ }
53187
+ setKeepVisible(keepVisible) {
53188
+ this.core.getPlugin('media_control').setKeepVisible(keepVisible);
53189
+ this.clickaway(keepVisible ? this.core.activeContainer.$el[0] : null);
53143
53190
  }
53144
53191
  buttonElement() {
53145
53192
  return this.$('#gplayer-audiotracks-button');
@@ -53185,6 +53232,7 @@ class AudioTracks extends UICorePlugin {
53185
53232
  this.core.getPlugin('media_control')?.slot('audiotracks', this.$el);
53186
53233
  }
53187
53234
  }
53235
+ clickaway = mediaControlClickaway(() => this.hideMenu());
53188
53236
  }
53189
53237
 
53190
53238
  const templateHtml$2 = "<div class=\"big-mute-icon-wrapper\" data-big-mute id=\"gplayer-big-mute-button\">\n <div class=\"big-mute-icon gcore-skin-border-color\" data-big-mute-icon id=\"gplayer-big-mute-icon\"></div>\n</div>\n";
@@ -53513,6 +53561,9 @@ class BottomGear extends UICorePlugin {
53513
53561
  this.listenTo(container, Events$1.CONTAINER_CLICK, () => {
53514
53562
  this.collapse();
53515
53563
  });
53564
+ this.listenTo(container, Events$1.CONTAINER_DESTROYED, () => {
53565
+ this.clickaway(null);
53566
+ });
53516
53567
  }
53517
53568
  highDefinitionUpdate(isHd) {
53518
53569
  this.hd = isHd;
@@ -53565,6 +53616,11 @@ class BottomGear extends UICorePlugin {
53565
53616
  this.$el
53566
53617
  .find('#gear-button')
53567
53618
  .attr('aria-expanded', (!this.collapsed).toString());
53619
+ this.setKeepVisible(!this.collapsed);
53620
+ }
53621
+ setKeepVisible(keepVisible) {
53622
+ this.core.getPlugin('media_control').setKeepVisible(keepVisible);
53623
+ this.clickaway(keepVisible ? this.core.activeContainer.$el[0] : null);
53568
53624
  }
53569
53625
  collapse() {
53570
53626
  this.collapsed = true;
@@ -53572,6 +53628,7 @@ class BottomGear extends UICorePlugin {
53572
53628
  this.$el.find('#gear-button').attr('aria-expanded', 'false');
53573
53629
  // TODO hide submenus
53574
53630
  this.collapseSubmenus();
53631
+ this.setKeepVisible(false);
53575
53632
  }
53576
53633
  onCoreReady() {
53577
53634
  const mediaControl = this.core.getPlugin('media_control');
@@ -53604,6 +53661,7 @@ class BottomGear extends UICorePlugin {
53604
53661
  .find('.gear-sub-menu')
53605
53662
  .css('max-height', `${availableHeight - MENU_BACKLINK_HEIGHT}px`);
53606
53663
  }
53664
+ clickaway = mediaControlClickaway(() => this.collapse());
53607
53665
  }
53608
53666
 
53609
53667
  /**
@@ -58129,9 +58187,9 @@ const buttonHtml$1 = "<button class='gplayer-lite-btn gcore-skin-text-color gear
58129
58187
 
58130
58188
  const listHtml$1 = "<button class=\"gplayer-lite-btn go-back gcore-skin-text-color\" id=\"playback-rate-back-button\">\n <span class=\"arrow-left-icon\"><%= arrowLeftIcon %></span>\n <%= i18n.t('playback_rate') %>\n</button>\n<ul class=\"gear-sub-menu\" id=\"playback-rate-menu\">\n <% for (const item of playbackRates) { %>\n <li<%= item.value === current ? ' class=\"current\"' : '' %>>\n <a href=\"#\" class=\"gear-sub-menu_btn gcore-skin-text-color<%= item.value === current ? ' gcore-skin-active' : '' %>\" data-rate=\"<%= item.value %>\">\n <span class=\"check-icon\"><%= checkIcon %></span>\n <%= item.label %>\n </a>\n </li>\n <% } %>\n</ul>";
58131
58189
 
58132
- const speedIcon = "<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M11.9854 23.9999C11.4272 23.9999 10.9571 23.5293 10.9571 22.9704C10.9571 22.4115 11.4272 21.9409 11.9854 21.9409C17.4492 21.9409 21.9143 17.4704 21.9143 11.9999C21.9143 6.52948 17.4492 2.05899 11.9854 2.05899C11.4272 2.05899 10.9571 1.58836 10.9571 1.02949C10.9571 0.470625 11.4272 0 11.9854 0C18.5949 0 24 5.38224 24 12.0291C24 18.6766 18.5949 24 11.9854 24V23.9999ZM10.2227 17.853L17.4785 13.4413C18.0072 13.1178 18.301 12.5885 18.301 11.9707C18.301 11.353 17.9779 10.8237 17.4785 10.5002L10.2227 6.08852C9.69405 5.76499 9.01826 5.76499 8.4896 6.05919C7.96094 6.35338 7.60828 6.94157 7.60828 7.5591V16.3824C7.60828 17.0002 7.93142 17.5883 8.4896 17.8824C8.75393 18.0294 9.04779 18.1177 9.34139 18.1177C9.63523 18.1177 9.95838 18.0294 10.2227 17.853V17.853ZM15.9216 11.9707L9.66457 15.7647V8.17661L15.9216 11.9707ZM8.22516 22.3529C8.4602 21.8236 8.25447 21.2058 7.7258 20.9705C7.19714 20.7353 6.69755 20.4413 6.2277 20.0882C5.75764 19.7646 5.11137 19.8822 4.78824 20.3235C4.46509 20.7941 4.58251 21.4412 5.02327 21.7647C5.58146 22.1764 6.19819 22.5293 6.81519 22.8235C6.96211 22.8824 7.10903 22.9117 7.25574 22.9117C7.66699 22.941 8.04893 22.7057 8.22513 22.3528L8.22516 22.3529ZM3.58381 19.0882C4.05387 18.7647 4.17127 18.1177 3.84814 17.647C3.52502 17.1764 3.23115 16.6765 2.99635 16.1471C2.76132 15.6178 2.14456 15.4118 1.6157 15.6472C1.08704 15.8825 0.881306 16.5 1.11634 17.0295C1.41018 17.6472 1.7626 18.2648 2.14459 18.8236C2.35032 19.1178 2.67325 19.2646 2.99638 19.2646C3.20191 19.2942 3.40763 19.2353 3.58384 19.0882L3.58381 19.0882ZM1.14563 13.9707C1.70382 13.9118 2.14435 13.4118 2.08576 12.853C2.05645 12.5588 2.05645 12.2648 2.05645 11.9706C2.05645 11.6764 2.05645 11.4117 2.08576 11.1178C2.14456 10.5589 1.70381 10.059 1.14563 10.0001C0.587439 9.94122 0.0881057 10.3825 0.0293019 10.9414C1.96979e-07 11.2942 0 11.6178 0 11.9709C0 12.3237 0.0293018 12.6768 0.0588091 13.0297C0.117618 13.5589 0.558169 13.9709 1.08706 13.9709C1.08686 13.9707 1.11636 13.9707 1.14567 13.9707L1.14563 13.9707ZM2.96687 7.79432C3.2019 7.26502 3.49553 6.76482 3.81866 6.2944C4.1418 5.82377 4.02439 5.17672 3.55432 4.8532C3.08427 4.52967 2.438 4.64722 2.11486 5.11786C1.73292 5.67672 1.38047 6.2942 1.08661 6.91193C0.851579 7.44123 1.08661 8.05897 1.58597 8.29426C1.73289 8.35314 1.87981 8.38247 2.02652 8.38247C2.40888 8.41181 2.7906 8.1767 2.96686 7.7943L2.96687 7.79432ZM6.22757 3.85328C6.69762 3.52974 7.19696 3.23554 7.69635 2.97089C8.22501 2.73558 8.43074 2.11807 8.19571 1.58857C7.96068 1.05927 7.34392 0.85329 6.81505 1.08861C6.19806 1.3828 5.58128 1.73565 5.02314 2.14741C4.55308 2.47094 4.43568 3.11797 4.78811 3.5886C4.99384 3.8828 5.31676 4.02969 5.6399 4.02969C5.84583 4.05902 6.05135 4.00014 6.22757 3.85325V3.85328Z\"\n fill=\"#C9C9C9\"/>\n</svg>\n";
58190
+ const speedIcon = "<svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M11.9854 23.9999C11.4272 23.9999 10.9571 23.5293 10.9571 22.9704C10.9571 22.4115 11.4272 21.9409 11.9854 21.9409C17.4492 21.9409 21.9143 17.4704 21.9143 11.9999C21.9143 6.52948 17.4492 2.05899 11.9854 2.05899C11.4272 2.05899 10.9571 1.58836 10.9571 1.02949C10.9571 0.470625 11.4272 0 11.9854 0C18.5949 0 24 5.38224 24 12.0291C24 18.6766 18.5949 24 11.9854 24V23.9999ZM10.2227 17.853L17.4785 13.4413C18.0072 13.1178 18.301 12.5885 18.301 11.9707C18.301 11.353 17.9779 10.8237 17.4785 10.5002L10.2227 6.08852C9.69405 5.76499 9.01826 5.76499 8.4896 6.05919C7.96094 6.35338 7.60828 6.94157 7.60828 7.5591V16.3824C7.60828 17.0002 7.93142 17.5883 8.4896 17.8824C8.75393 18.0294 9.04779 18.1177 9.34139 18.1177C9.63523 18.1177 9.95838 18.0294 10.2227 17.853V17.853ZM15.9216 11.9707L9.66457 15.7647V8.17661L15.9216 11.9707ZM8.22516 22.3529C8.4602 21.8236 8.25447 21.2058 7.7258 20.9705C7.19714 20.7353 6.69755 20.4413 6.2277 20.0882C5.75764 19.7646 5.11137 19.8822 4.78824 20.3235C4.46509 20.7941 4.58251 21.4412 5.02327 21.7647C5.58146 22.1764 6.19819 22.5293 6.81519 22.8235C6.96211 22.8824 7.10903 22.9117 7.25574 22.9117C7.66699 22.941 8.04893 22.7057 8.22513 22.3528L8.22516 22.3529ZM3.58381 19.0882C4.05387 18.7647 4.17127 18.1177 3.84814 17.647C3.52502 17.1764 3.23115 16.6765 2.99635 16.1471C2.76132 15.6178 2.14456 15.4118 1.6157 15.6472C1.08704 15.8825 0.881306 16.5 1.11634 17.0295C1.41018 17.6472 1.7626 18.2648 2.14459 18.8236C2.35032 19.1178 2.67325 19.2646 2.99638 19.2646C3.20191 19.2942 3.40763 19.2353 3.58384 19.0882L3.58381 19.0882ZM1.14563 13.9707C1.70382 13.9118 2.14435 13.4118 2.08576 12.853C2.05645 12.5588 2.05645 12.2648 2.05645 11.9706C2.05645 11.6764 2.05645 11.4117 2.08576 11.1178C2.14456 10.5589 1.70381 10.059 1.14563 10.0001C0.587439 9.94122 0.0881057 10.3825 0.0293019 10.9414C1.96979e-07 11.2942 0 11.6178 0 11.9709C0 12.3237 0.0293018 12.6768 0.0588091 13.0297C0.117618 13.5589 0.558169 13.9709 1.08706 13.9709C1.08686 13.9707 1.11636 13.9707 1.14567 13.9707L1.14563 13.9707ZM2.96687 7.79432C3.2019 7.26502 3.49553 6.76482 3.81866 6.2944C4.1418 5.82377 4.02439 5.17672 3.55432 4.8532C3.08427 4.52967 2.438 4.64722 2.11486 5.11786C1.73292 5.67672 1.38047 6.2942 1.08661 6.91193C0.851579 7.44123 1.08661 8.05897 1.58597 8.29426C1.73289 8.35314 1.87981 8.38247 2.02652 8.38247C2.40888 8.41181 2.7906 8.1767 2.96686 7.7943L2.96687 7.79432ZM6.22757 3.85328C6.69762 3.52974 7.19696 3.23554 7.69635 2.97089C8.22501 2.73558 8.43074 2.11807 8.19571 1.58857C7.96068 1.05927 7.34392 0.85329 6.81505 1.08861C6.19806 1.3828 5.58128 1.73565 5.02314 2.14741C4.55308 2.47094 4.43568 3.11797 4.78811 3.5886C4.99384 3.8828 5.31676 4.02969 5.6399 4.02969C5.84583 4.05902 6.05135 4.00014 6.22757 3.85325V3.85328Z\"\n fill=\"#C9C9C9\"/>\n</svg>\n";
58133
58191
 
58134
- const arrowRightIcon = "<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M8.70725 20.7073C8.51225 20.9023 8.25625 21.0002 8.00025 21.0002C7.74425 21.0002 7.48825 20.9023 7.29325 20.7073C6.90225 20.3162 6.90225 19.6842 7.29325 19.2932L14.5863 12.0002L7.29325 4.70725C6.90225 4.31625 6.90225 3.68425 7.29325 3.29325C7.68425 2.90225 8.31625 2.90225 8.70725 3.29325L16.7073 11.2933C17.0983 11.6842 17.0983 12.3162 16.7073 12.7072L8.70725 20.7073Z\"\n fill=\"#C9C9C9\"/>\n</svg>\n";
58192
+ const arrowRightIcon = "<svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M8.70725 20.7073C8.51225 20.9023 8.25625 21.0002 8.00025 21.0002C7.74425 21.0002 7.48825 20.9023 7.29325 20.7073C6.90225 20.3162 6.90225 19.6842 7.29325 19.2932L14.5863 12.0002L7.29325 4.70725C6.90225 4.31625 6.90225 3.68425 7.29325 3.29325C7.68425 2.90225 8.31625 2.90225 8.70725 3.29325L16.7073 11.2933C17.0983 11.6842 17.0983 12.3162 16.7073 12.7072L8.70725 20.7073Z\"\n fill=\"#C9C9C9\"/>\n</svg>\n";
58135
58193
 
58136
58194
  const arrowLeftIcon = "<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n d=\"M16.7073 19.2932C17.0983 19.6842 17.0983 20.3162 16.7073 20.7073C16.5123 20.9023 16.2563 21.0002 16.0003 21.0002C15.7443 21.0002 15.4882 20.9023 15.2933 20.7073L7.29325 12.7072C6.90225 12.3162 6.90225 11.6842 7.29325 11.2933L15.2933 3.29325C15.6842 2.90225 16.3163 2.90225 16.7073 3.29325C17.0983 3.68425 17.0983 4.31625 16.7073 4.70725L9.41425 12.0002L16.7073 19.2932Z\"\n fill=\"#C9C9C9\"/>\n</svg>\n";
58137
58195
 
@@ -58651,7 +58709,7 @@ const buttonHtml = "<button class='gplayer-lite-btn gcore-skin-text-color gear-o
58651
58709
 
58652
58710
  const listHtml = "<button class=\"gplayer-lite-btn go-back gcore-skin-text-color\" id=\"level-selector-back-button\">\n <span class=\"arrow-left-icon\"><%= arrowLeftIcon %></span>\n <%= i18n.t('quality') %>\n</button>\n<ul class=\"gear-sub-menu quality-levels\" id=\"level-selector-menu\" role=\"menu\">\n <% if (!removeAuto) { %>\n <li>\n <a href=\"#\"\n class=\"gear-sub-menu_btn gcore-skin-text-color\"\n data-id=\"-1\"\n id=\"level_selector_auto\"\n aria-checked=\"<%= current === -1 %>\"\n role=\"menuitemradio\"\n >\n <span class=\"check-icon\"><%= checkIcon %></span>\n <%= i18n.t('auto') %>\n </a>\n </li>\n <% } %>\n <% for (const item of levels.slice().reverse()) {\n var disabled = maxLevel >= 0 && item.level > maxLevel\n var checked = item.level === current\n %>\n <li class=\"<%= disabled ? ' disabled' : ''%><%=checked ? ' current' : ''%>\">\n <a href=\"#\"\n class=\"gear-sub-menu_btn gcore-skin-text-color<%= checked ? ' gcore-skin-active' : '' %>\"\n data-id=\"<%= item.level %>\"\n aria-disabled=\"<%= disabled %>\"\n aria-checked=\"<%= checked %>\"\n role=\"menuitemradio\"\n id=\"level_selector_<%= item.width > item.height ? item.height : item.width %>\"\n >\n <span class=\"check-icon\"><%= checkIcon %></span>\n <%= labels[item.level] %>\n </a>\n </li>\n <% } %>\n</ul>\n";
58653
58711
 
58654
- const hdIcon = "<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M14.9562 8.22232H13.9961V15.1873H14.9562C15.8914 15.1873 16.766 14.8253 17.4195 14.1676C18.0786 13.5037 18.4415 12.6281 18.4415 11.7026C18.4415 9.7837 16.8781 8.22253 14.9561 8.22253L14.9562 8.22232Z\"\n fill=\"#C9C9C9\"/>\n <path\n d=\"M22.0801 4H1.91994C0.859222 4 0 4.86406 0 5.91994V17.4878C0 18.5437 0.859222 19.4078 1.91994 19.4078H22.0801C23.1408 19.4078 24 18.5437 24 17.4878V5.91994C24 4.86406 23.1408 4 22.0801 4ZM10.3975 15.3473C10.3975 15.6124 10.1827 15.8272 9.91754 15.8272C9.65216 15.8272 9.43761 15.6122 9.43761 15.3473V12.0239H5.55956V15.3473C5.55956 15.6124 5.34481 15.8272 5.07963 15.8272C4.81425 15.8272 4.5997 15.6122 4.5997 15.3473L4.59949 7.74042C4.59949 7.47524 4.81425 7.26049 5.07943 7.26049C5.34481 7.26049 5.55936 7.47544 5.55936 7.74042V11.0636H9.43741V7.74042C9.43741 7.47524 9.65216 7.26049 9.91734 7.26049C10.1827 7.26049 10.3973 7.47544 10.3973 7.74042L10.3975 15.3473ZM18.1005 14.8438C17.2652 15.6844 16.1486 16.1472 14.9561 16.1472H13.5161C13.2507 16.1472 13.0361 15.9323 13.0361 15.6673V7.74263C13.0361 7.47745 13.2509 7.26269 13.5161 7.26269H14.9561C17.4072 7.26269 19.4013 9.25438 19.4013 11.7027C19.4013 12.8835 18.9392 13.9991 18.1005 14.844V14.8438Z\"\n fill=\"#C9C9C9\"/>\n</svg>\n";
58712
+ const hdIcon = "<svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M14.9562 8.22232H13.9961V15.1873H14.9562C15.8914 15.1873 16.766 14.8253 17.4195 14.1676C18.0786 13.5037 18.4415 12.6281 18.4415 11.7026C18.4415 9.7837 16.8781 8.22253 14.9561 8.22253L14.9562 8.22232Z\"\n fill=\"#C9C9C9\"/>\n <path\n d=\"M22.0801 4H1.91994C0.859222 4 0 4.86406 0 5.91994V17.4878C0 18.5437 0.859222 19.4078 1.91994 19.4078H22.0801C23.1408 19.4078 24 18.5437 24 17.4878V5.91994C24 4.86406 23.1408 4 22.0801 4ZM10.3975 15.3473C10.3975 15.6124 10.1827 15.8272 9.91754 15.8272C9.65216 15.8272 9.43761 15.6122 9.43761 15.3473V12.0239H5.55956V15.3473C5.55956 15.6124 5.34481 15.8272 5.07963 15.8272C4.81425 15.8272 4.5997 15.6122 4.5997 15.3473L4.59949 7.74042C4.59949 7.47524 4.81425 7.26049 5.07943 7.26049C5.34481 7.26049 5.55936 7.47544 5.55936 7.74042V11.0636H9.43741V7.74042C9.43741 7.47524 9.65216 7.26049 9.91734 7.26049C10.1827 7.26049 10.3973 7.47544 10.3973 7.74042L10.3975 15.3473ZM18.1005 14.8438C17.2652 15.6844 16.1486 16.1472 14.9561 16.1472H13.5161C13.2507 16.1472 13.0361 15.9323 13.0361 15.6673V7.74263C13.0361 7.47745 13.2509 7.26269 13.5161 7.26269H14.9561C17.4072 7.26269 19.4013 9.25438 19.4013 11.7027C19.4013 12.8835 18.9392 13.9991 18.1005 14.844V14.8438Z\"\n fill=\"#C9C9C9\"/>\n</svg>\n";
58655
58713
 
58656
58714
  // const T = 'plugins.quality_levels'
58657
58715
  const VERSION$2 = 'v2.22.5';
@@ -58789,6 +58847,7 @@ class QualityLevels extends UICorePlugin {
58789
58847
  */
58790
58848
  render() {
58791
58849
  if (!this.shouldRender()) {
58850
+ this.$el.hide();
58792
58851
  return this;
58793
58852
  }
58794
58853
  this.renderDropdown();
@@ -58808,6 +58867,9 @@ class QualityLevels extends UICorePlugin {
58808
58867
  }));
58809
58868
  }
58810
58869
  updateButton() {
58870
+ if (!this.shouldRender()) {
58871
+ return;
58872
+ }
58811
58873
  this.core.getPlugin('bottom_gear')
58812
58874
  ?.addItem('quality', this.$el)
58813
58875
  .html(QualityLevels.buttonTemplate({
@@ -59786,8 +59848,7 @@ class ClosedCaptions extends UICorePlugin {
59786
59848
  }
59787
59849
  get preselectedLanguage() {
59788
59850
  return (this.core.options.cc?.language ??
59789
- this.core.options.subtitles?.language ??
59790
- '');
59851
+ this.core.options.subtitles?.language);
59791
59852
  }
59792
59853
  /**
59793
59854
  * @internal
@@ -59812,6 +59873,9 @@ class ClosedCaptions extends UICorePlugin {
59812
59873
  onContainerChanged() {
59813
59874
  this.listenTo(this.core.activeContainer, Events$1.CONTAINER_FULLSCREEN, this.onContainerResize);
59814
59875
  this.listenTo(this.core.activeContainer, Events$1.CONTAINER_RESIZE, this.onContainerResize);
59876
+ this.listenTo(this.core.activeContainer, Events$1.CONTAINER_DESTROYED, () => {
59877
+ this.clickaway(null);
59878
+ });
59815
59879
  this.listenTo(this.core.activeContainer, 'container:advertisement:start', this.onStartAd);
59816
59880
  this.listenTo(this.core.activePlayback, Events$1.PLAYBACK_SUBTITLE_AVAILABLE, this.onSubtitleAvailable);
59817
59881
  this.listenTo(this.core.activePlayback, Events$1.PLAYBACK_SUBTITLE_CHANGED, this.onSubtitleChanged);
@@ -59840,14 +59904,17 @@ class ClosedCaptions extends UICorePlugin {
59840
59904
  this.applyTracks();
59841
59905
  this.mount();
59842
59906
  }
59843
- onSubtitleChanged({ id }) {
59844
- trace(`${T$3} onSubtitleChanged`, { id });
59907
+ onSubtitleChanged({ id: _ }) {
59908
+ // ignoring the subtitle selected by the playback engine or user agent
59909
+ const id = this.track?.id ?? -1;
59845
59910
  if (id === -1) {
59846
59911
  this.clearSubtitleText();
59847
59912
  }
59848
59913
  for (const track of this.tracks) {
59914
+ // Native subtitles are always hidden
59915
+ track.track.mode = 'hidden';
59849
59916
  if (track.id === id) {
59850
- track.track.mode = 'showing';
59917
+ // track.track.mode = 'showing'
59851
59918
  this.setSubtitleText(this.getSubtitleText(track.track));
59852
59919
  track.track.oncuechange = (e) => {
59853
59920
  try {
@@ -59866,7 +59933,7 @@ class ClosedCaptions extends UICorePlugin {
59866
59933
  }
59867
59934
  else {
59868
59935
  track.track.oncuechange = null;
59869
- track.track.mode = 'hidden';
59936
+ // track.track.mode = 'hidden'
59870
59937
  }
59871
59938
  }
59872
59939
  }
@@ -59995,18 +60062,18 @@ class ClosedCaptions extends UICorePlugin {
59995
60062
  applyPreselectedSubtitles() {
59996
60063
  if (!this.isPreselectedApplied) {
59997
60064
  this.isPreselectedApplied = true;
59998
- if (!this.preselectedLanguage) {
59999
- return;
60000
- }
60065
+ // if the language is undefined, then let the engine decide
60066
+ // to hide the subtitles forcefully, set the language to 'none'
60001
60067
  setTimeout(() => {
60002
60068
  this.selectItem(this.tracks.find((t) => t.track.language === this.preselectedLanguage) ?? null);
60003
- }, 300); // TODO why delay?
60069
+ }, 0);
60004
60070
  }
60005
60071
  }
60006
60072
  hideMenu() {
60007
60073
  this.open = false;
60008
60074
  this.$el.find('#gplayer-cc-menu').hide();
60009
60075
  this.$el.find('#gplayer-cc-button').attr('aria-expanded', 'false');
60076
+ this.setKeepVisible(false);
60010
60077
  }
60011
60078
  toggleMenu() {
60012
60079
  this.core
@@ -60020,6 +60087,13 @@ class ClosedCaptions extends UICorePlugin {
60020
60087
  this.$el.find('#gplayer-cc-menu').hide();
60021
60088
  }
60022
60089
  this.$el.find('#gplayer-cc-button').attr('aria-expanded', this.open);
60090
+ this.setKeepVisible(this.open);
60091
+ }
60092
+ setKeepVisible(keepVisible) {
60093
+ if (this.shouldKeepVisible) {
60094
+ this.core.getPlugin('media_control').setKeepVisible(keepVisible);
60095
+ this.clickaway(keepVisible ? this.core.activeContainer.$el[0] : null);
60096
+ }
60023
60097
  }
60024
60098
  itemElement(id) {
60025
60099
  // TODO fix semantically
@@ -60029,8 +60103,10 @@ class ClosedCaptions extends UICorePlugin {
60029
60103
  return this.$el.find('#gplayer-cc-menu li'); // TODO fix semantically
60030
60104
  }
60031
60105
  selectSubtitles() {
60032
- const trackId = this.track ? this.track.id : -1;
60033
- this.core.activePlayback.closedCaptionsTrackId = trackId; // TODO test
60106
+ this.track ? this.track.id : -1;
60107
+ // TODO find out if this is needed
60108
+ // this.core.activePlayback.closedCaptionsTrackId = trackId
60109
+ this.core.activePlayback.closedCaptionsTrackId = -1;
60034
60110
  }
60035
60111
  getSubtitleText(track) {
60036
60112
  const currentTime = this.core.activePlayback?.getCurrentTime() ?? 0;
@@ -60092,6 +60168,10 @@ class ClosedCaptions extends UICorePlugin {
60092
60168
  mediaControl.slot('cc', this.$el);
60093
60169
  }
60094
60170
  }
60171
+ get shouldKeepVisible() {
60172
+ return !!this.options.cc?.keepVisible;
60173
+ }
60174
+ clickaway = mediaControlClickaway(() => this.hideMenu());
60095
60175
  }
60096
60176
 
60097
60177
  // An example implementation of client side performancestatistics
@@ -56,6 +56,7 @@ export declare class AudioTracks extends UICorePlugin {
56
56
  private selectAudioTrack;
57
57
  private hideMenu;
58
58
  private toggleMenu;
59
+ private setKeepVisible;
59
60
  private buttonElement;
60
61
  private buttonElementText;
61
62
  private trackElement;
@@ -64,5 +65,6 @@ export declare class AudioTracks extends UICorePlugin {
64
65
  private updateText;
65
66
  private highlightCurrentTrack;
66
67
  private mount;
68
+ private clickaway;
67
69
  }
68
70
  //# sourceMappingURL=AudioTracks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AudioTracks.d.ts","sourceRoot":"","sources":["../../../src/plugins/audio-selector/AudioTracks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,YAAY,EAAY,MAAM,cAAc,CAAA;AAgB7D;;;;;;;;;GASG;AACH,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,CAAC,YAAY,CAA0B;IAE9C,OAAO,CAAC,IAAI,CAAQ;IAEpB,OAAO,CAAC,MAAM,CAAmB;IAEjC;;OAEG;IACH,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,IAAI,gBAAgB;;MAEnB;IAED;;OAEG;IACH,MAAM,KAAK,OAAO,WAEjB;IAED,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAEvD;;OAEG;IACH,IAAa,UAAU;;MAItB;IAED;;OAEG;IACH,IAAa,MAAM;;;MAKlB;IAED;;OAEG;IACM,UAAU;IASnB,OAAO,CAAC,WAAW;IAoBnB,OAAO,CAAC,wBAAwB;IA6BhC,OAAO,CAAC,YAAY;IAMpB;;OAEG;IACM,MAAM;IAgBf,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,QAAQ;IAMhB,OAAO,CAAC,UAAU;IAgBlB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,qBAAqB;IAgB7B,OAAO,CAAC,KAAK;CAKd"}
1
+ {"version":3,"file":"AudioTracks.d.ts","sourceRoot":"","sources":["../../../src/plugins/audio-selector/AudioTracks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,YAAY,EAAY,MAAM,cAAc,CAAA;AAiB7D;;;;;;;;;GASG;AACH,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,CAAC,YAAY,CAA0B;IAE9C,OAAO,CAAC,IAAI,CAAQ;IAEpB,OAAO,CAAC,MAAM,CAAmB;IAEjC;;OAEG;IACH,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,IAAI,gBAAgB;;MAEnB;IAED;;OAEG;IACH,MAAM,KAAK,OAAO,WAEjB;IAED,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAEvD;;OAEG;IACH,IAAa,UAAU;;MAItB;IAED;;OAEG;IACH,IAAa,MAAM;;;MAKlB;IAED;;OAEG;IACM,UAAU;IASnB,OAAO,CAAC,WAAW;IAoBnB,OAAO,CAAC,wBAAwB;IAgChC,OAAO,CAAC,YAAY;IAMpB;;OAEG;IACM,MAAM;IAgBf,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,UAAU;IAkBlB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,qBAAqB;IAgB7B,OAAO,CAAC,KAAK;IAMb,OAAO,CAAC,SAAS,CAA+C;CACjE"}
@@ -5,6 +5,7 @@ import { CLAPPR_VERSION } from '../../build.js';
5
5
  import pluginHtml from '../../../assets/audio-tracks/template.ejs';
6
6
  import audioArrow from '../../../assets/icons/old/quality-arrow.svg';
7
7
  import { ExtendedEvents } from '../media-control/MediaControl.js';
8
+ import { mediaControlClickaway } from '../../utils/clickaway.js';
8
9
  const VERSION = '2.22.4';
9
10
  // const T = 'plugins.audiotracks'
10
11
  /**
@@ -97,6 +98,9 @@ export class AudioTracks extends UICorePlugin {
97
98
  this.listenTo(this.core.activeContainer, Events.CONTAINER_CLICK, () => {
98
99
  this.hideMenu();
99
100
  });
101
+ this.listenTo(this.core.activeContainer, Events.CONTAINER_DESTROYED, () => {
102
+ this.clickaway(null);
103
+ });
100
104
  }
101
105
  shouldRender() {
102
106
  // Render is called from the parent class constructor so tracks aren't available
@@ -136,6 +140,7 @@ export class AudioTracks extends UICorePlugin {
136
140
  this.open = false;
137
141
  this.$el.find('#gplayer-audiotracks-menu').hide();
138
142
  this.$el.find('#gplayer-audiotracks-button').attr('aria-expanded', 'false');
143
+ this.setKeepVisible(false);
139
144
  }
140
145
  toggleMenu() {
141
146
  this.open = !this.open;
@@ -151,6 +156,11 @@ export class AudioTracks extends UICorePlugin {
151
156
  this.$el
152
157
  .find('#gplayer-audiotracks-button')
153
158
  .attr('aria-expanded', this.open);
159
+ this.setKeepVisible(this.open);
160
+ }
161
+ setKeepVisible(keepVisible) {
162
+ this.core.getPlugin('media_control').setKeepVisible(keepVisible);
163
+ this.clickaway(keepVisible ? this.core.activeContainer.$el[0] : null);
154
164
  }
155
165
  buttonElement() {
156
166
  return this.$('#gplayer-audiotracks-button');
@@ -196,4 +206,5 @@ export class AudioTracks extends UICorePlugin {
196
206
  this.core.getPlugin('media_control')?.slot('audiotracks', this.$el);
197
207
  }
198
208
  }
209
+ clickaway = mediaControlClickaway(() => this.hideMenu());
199
210
  }
@@ -152,10 +152,12 @@ export declare class BottomGear extends UICorePlugin {
152
152
  refresh(): void;
153
153
  private collapseSubmenus;
154
154
  private toggleMenu;
155
+ private setKeepVisible;
155
156
  private collapse;
156
157
  private onCoreReady;
157
158
  private onMediaControlRendered;
158
159
  private mount;
159
160
  private clampPopup;
161
+ private clickaway;
160
162
  }
161
163
  //# sourceMappingURL=BottomGear.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BottomGear.d.ts","sourceRoot":"","sources":["../../../src/plugins/bottom-gear/BottomGear.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAKb,MAAM,cAAc,CAAA;AAOrB,OAAO,uCAAuC,CAAA;AAC9C,OAAO,gDAAgD,CAAA;AAGvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAS5C;;;GAGG;AACH,oBAAY,UAAU;IACpB;;OAEG;IACH,QAAQ,aAAa;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AACH,qBAAa,UAAW,SAAQ,YAAY;IAC1C,OAAO,CAAC,EAAE,CAAQ;IAElB,OAAO,CAAC,QAAQ,CAAI;IAEpB,OAAO,CAAC,SAAS,CAAO;IAExB;;OAEG;IACH,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,IAAI,gBAAgB;;MAEnB;IAED;;OAEG;IACH,MAAM,KAAK,OAAO,WAEjB;IAED,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAEvD;;OAEG;IACH,IAAa,UAAU;;MAItB;IAED;;OAEG;IACH,IAAa,MAAM;;MAIlB;IAED;;OAEG;IACM,UAAU;IAInB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,GAAG,WAAW;IAyB1D,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,oBAAoB;IAK5B;;OAEG;IACM,MAAM;IAqBf;;;;OAIG;IACH,OAAO;IAIP,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,QAAQ;IAQhB,OAAO,CAAC,WAAW;IA6BnB,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,KAAK;IAKb,OAAO,CAAC,UAAU;CAQnB"}
1
+ {"version":3,"file":"BottomGear.d.ts","sourceRoot":"","sources":["../../../src/plugins/bottom-gear/BottomGear.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAKb,MAAM,cAAc,CAAA;AAOrB,OAAO,uCAAuC,CAAA;AAC9C,OAAO,gDAAgD,CAAA;AAGvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAU5C;;;GAGG;AACH,oBAAY,UAAU;IACpB;;OAEG;IACH,QAAQ,aAAa;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AACH,qBAAa,UAAW,SAAQ,YAAY;IAC1C,OAAO,CAAC,EAAE,CAAQ;IAElB,OAAO,CAAC,QAAQ,CAAI;IAEpB,OAAO,CAAC,SAAS,CAAO;IAExB;;OAEG;IACH,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,IAAI,gBAAgB;;MAEnB;IAED;;OAEG;IACH,MAAM,KAAK,OAAO,WAEjB;IAED,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAEvD;;OAEG;IACH,IAAa,UAAU;;MAItB;IAED;;OAEG;IACH,IAAa,MAAM;;MAIlB;IAED;;OAEG;IACM,UAAU;IAInB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,GAAG,WAAW;IAyB1D,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,oBAAoB;IAK5B;;OAEG;IACM,MAAM;IAqBf;;;;OAIG;IACH,OAAO;IAIP,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,UAAU;IAgBlB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,WAAW;IA6BnB,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,KAAK;IAKb,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,SAAS,CAA+C;CACjE"}
@@ -8,6 +8,7 @@ import '../../../assets/bottom-gear/gear-sub-menu.scss';
8
8
  import gearIcon from '../../../assets/icons/new/gear.svg';
9
9
  import gearHdIcon from '../../../assets/icons/new/gear-hd.svg';
10
10
  import { ExtendedEvents } from '../media-control/MediaControl.js';
11
+ import { mediaControlClickaway } from '../../utils/clickaway.js';
11
12
  const VERSION = '2.19.12';
12
13
  // const T = 'plugins.bottom_gear'
13
14
  const MENU_BACKLINK_HEIGHT = 44;
@@ -186,6 +187,9 @@ export class BottomGear extends UICorePlugin {
186
187
  this.listenTo(container, ClapprEvents.CONTAINER_CLICK, () => {
187
188
  this.collapse();
188
189
  });
190
+ this.listenTo(container, ClapprEvents.CONTAINER_DESTROYED, () => {
191
+ this.clickaway(null);
192
+ });
189
193
  }
190
194
  highDefinitionUpdate(isHd) {
191
195
  this.hd = isHd;
@@ -238,6 +242,11 @@ export class BottomGear extends UICorePlugin {
238
242
  this.$el
239
243
  .find('#gear-button')
240
244
  .attr('aria-expanded', (!this.collapsed).toString());
245
+ this.setKeepVisible(!this.collapsed);
246
+ }
247
+ setKeepVisible(keepVisible) {
248
+ this.core.getPlugin('media_control').setKeepVisible(keepVisible);
249
+ this.clickaway(keepVisible ? this.core.activeContainer.$el[0] : null);
241
250
  }
242
251
  collapse() {
243
252
  this.collapsed = true;
@@ -245,6 +254,7 @@ export class BottomGear extends UICorePlugin {
245
254
  this.$el.find('#gear-button').attr('aria-expanded', 'false');
246
255
  // TODO hide submenus
247
256
  this.collapseSubmenus();
257
+ this.setKeepVisible(false);
248
258
  }
249
259
  onCoreReady() {
250
260
  const mediaControl = this.core.getPlugin('media_control');
@@ -277,4 +287,5 @@ export class BottomGear extends UICorePlugin {
277
287
  .find('.gear-sub-menu')
278
288
  .css('max-height', `${availableHeight - MENU_BACKLINK_HEIGHT}px`);
279
289
  }
290
+ clickaway = mediaControlClickaway(() => this.collapse());
280
291
  }
@@ -1 +1 @@
1
- {"version":3,"file":"QualityLevels.d.ts","sourceRoot":"","sources":["../../../src/plugins/level-selector/QualityLevels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,YAAY,EAAE,MAAM,cAAc,CAAA;AAgB7D,OAAO,2CAA2C,CAAA;AAMlD;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAChC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,aAAc,SAAQ,YAAY;IAC7C,OAAO,CAAC,MAAM,CAAqB;IAEnC,OAAO,CAAC,WAAW,CAAe;IAElC,OAAO,CAAC,UAAU,CAAQ;IAE1B,OAAO,CAAC,IAAI,CAAQ;IAEpB,OAAO,CAAC,WAAW,CAAK;IAExB,OAAO,CAAC,eAAe,CAAK;IAE5B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAChB;IAEtB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAuC;IAE3E;;OAEG;IACH,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,IAAI,gBAAgB;;MAEnB;IAED;;OAEG;IACH,MAAM,KAAK,OAAO,WAEjB;IAED;;OAEG;IACH,IAAa,UAAU;;;MAKtB;IAED,IAAa,MAAM;;;MAKlB;IAED;;OAEG;IACM,UAAU;IASnB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,uBAAuB;IAoC/B,OAAO,CAAC,QAAQ;IAQhB,OAAO,CAAC,MAAM;IAUd,OAAO,CAAC,YAAY;IAcpB;;OAEG;IACM,MAAM;IAUf,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,YAAY;IAcpB,OAAO,KAAK,aAAa,GAIxB;IAED,OAAO,KAAK,QAAQ,GASnB;IAED,OAAO,CAAC,iBAAiB;IAkBzB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,QAAQ;IAYhB,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,QAAQ;IAMhB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,aAAa;IAWrB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,qBAAqB;CAe9B"}
1
+ {"version":3,"file":"QualityLevels.d.ts","sourceRoot":"","sources":["../../../src/plugins/level-selector/QualityLevels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,YAAY,EAAE,MAAM,cAAc,CAAA;AAgB7D,OAAO,2CAA2C,CAAA;AAMlD;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAChC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,aAAc,SAAQ,YAAY;IAC7C,OAAO,CAAC,MAAM,CAAqB;IAEnC,OAAO,CAAC,WAAW,CAAe;IAElC,OAAO,CAAC,UAAU,CAAQ;IAE1B,OAAO,CAAC,IAAI,CAAQ;IAEpB,OAAO,CAAC,WAAW,CAAK;IAExB,OAAO,CAAC,eAAe,CAAK;IAE5B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAChB;IAEtB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAuC;IAE3E;;OAEG;IACH,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,IAAI,gBAAgB;;MAEnB;IAED;;OAEG;IACH,MAAM,KAAK,OAAO,WAEjB;IAED;;OAEG;IACH,IAAa,UAAU;;;MAKtB;IAED,IAAa,MAAM;;;MAKlB;IAED;;OAEG;IACM,UAAU;IASnB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,uBAAuB;IAoC/B,OAAO,CAAC,QAAQ;IAQhB,OAAO,CAAC,MAAM;IAUd,OAAO,CAAC,YAAY;IAcpB;;OAEG;IACM,MAAM;IAWf,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,YAAY;IAiBpB,OAAO,KAAK,aAAa,GAIxB;IAED,OAAO,KAAK,QAAQ,GASnB;IAED,OAAO,CAAC,iBAAiB;IAkBzB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,QAAQ;IAYhB,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,QAAQ;IAMhB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,aAAa;IAWrB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,qBAAqB;CAe9B"}
@@ -146,6 +146,7 @@ export class QualityLevels extends UICorePlugin {
146
146
  */
147
147
  render() {
148
148
  if (!this.shouldRender()) {
149
+ this.$el.hide();
149
150
  return this;
150
151
  }
151
152
  this.renderDropdown();
@@ -165,6 +166,9 @@ export class QualityLevels extends UICorePlugin {
165
166
  }));
166
167
  }
167
168
  updateButton() {
169
+ if (!this.shouldRender()) {
170
+ return;
171
+ }
168
172
  ;
169
173
  this.core.getPlugin('bottom_gear')
170
174
  ?.addItem('quality', this.$el)
@@ -205,6 +205,7 @@ export declare class MediaControl extends UICorePlugin {
205
205
  constructor(core: Core);
206
206
  /**
207
207
  * @internal
208
+ * The methods declared here will be exposed via the main player object API
208
209
  */
209
210
  getExternalInterface(): {
210
211
  setVolume: (value: number, isInitialVolume?: boolean) => void;
@@ -330,6 +331,15 @@ export declare class MediaControl extends UICorePlugin {
330
331
  * ```
331
332
  */
332
333
  mount(name: MediaControlSlotMountPoint, element: ZeptoResult): void;
334
+ /**
335
+ * Set or reset the keep visibility state
336
+ *
337
+ * Keep visibility state controls whether the media control is hidden automatically after a delay.
338
+ * Keep visibility prevents the the auto-hide behaviour
339
+ *
340
+ * @param keepVisible - The state
341
+ */
342
+ setKeepVisible(keepVisible: boolean): void;
333
343
  private getMountParent;
334
344
  /**
335
345
  * Toggle the visibility of a media control element
@@ -1 +1 @@
1
- {"version":3,"file":"MediaControl.d.ts","sourceRoot":"","sources":["../../../src/plugins/media-control/MediaControl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MediaControl.d.ts","sourceRoot":"","sources":["../../../src/plugins/media-control/MediaControl.ts"],"names":[],"mappings":"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"}