@gcorevideo/player 2.20.9 → 2.20.11

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 (227) hide show
  1. package/assets/dvr-controls/dvr_controls.scss +0 -2
  2. package/dist/core.js +5 -5
  3. package/dist/index.css +1212 -1215
  4. package/dist/index.js +74 -71
  5. package/dist/player.d.ts +103 -96
  6. package/dist/plugins/index.css +668 -671
  7. package/dist/plugins/index.js +69 -67
  8. package/docs/api/player.audioselector.md +1 -1
  9. package/docs/api/player.bigmutebutton.md +1 -1
  10. package/docs/api/player.bottomgear.md +1 -1
  11. package/docs/api/player.clapprnerdstats.md +1 -1
  12. package/docs/api/player.clapprstats.md +1 -1
  13. package/docs/api/player.clicktopause.md +1 -1
  14. package/docs/api/player.clipsplugin.md +1 -1
  15. package/docs/api/player.containerpluginconstructor.md +3 -5
  16. package/docs/api/player.containersize.md +0 -3
  17. package/docs/api/player.contextmenu.md +1 -1
  18. package/docs/api/player.corepluginconstructor.md +3 -5
  19. package/docs/api/player.dashsettings.md +0 -3
  20. package/docs/api/player.dvrcontrols.md +2 -35
  21. package/docs/api/player.errorlevel.md +0 -3
  22. package/docs/api/player.errorscreen.md +1 -1
  23. package/docs/api/player.favicon.md +1 -1
  24. package/docs/api/player.googleanalytics.md +1 -1
  25. package/docs/api/player.langtag.md +0 -3
  26. package/docs/api/player.levelselector.md +1 -1
  27. package/docs/api/player.logo.md +1 -1
  28. package/docs/api/player.md +69 -80
  29. package/docs/api/player.mediacontrol.md +2 -2
  30. package/docs/api/player.multicamera.md +1 -1
  31. package/docs/api/player.pictureinpicture.md +1 -1
  32. package/docs/api/player.playbackerror.code.md +0 -3
  33. package/docs/api/player.playbackerror.description.md +0 -3
  34. package/docs/api/player.playbackerror.level.md +0 -3
  35. package/docs/api/player.playbackerror.md +8 -11
  36. package/docs/api/player.playbackerror.message.md +0 -3
  37. package/docs/api/player.playbackerror.origin.md +0 -3
  38. package/docs/api/player.playbackerror.scope.md +0 -3
  39. package/docs/api/player.playbackerror.ui.md +1 -3
  40. package/docs/api/player.playbackerrorcode.md +3 -6
  41. package/docs/api/player.playbackmodule.md +0 -3
  42. package/docs/api/player.playbackrate.md +1 -1
  43. package/docs/api/player.playbacktype.md +1 -4
  44. package/docs/api/player.player._constructor_.md +0 -3
  45. package/docs/api/player.player.attachto.md +0 -3
  46. package/docs/api/player.player.configure.md +0 -3
  47. package/docs/api/player.player.destroy.md +0 -3
  48. package/docs/api/player.player.getcurrenttime.md +0 -3
  49. package/docs/api/player.player.getduration.md +0 -3
  50. package/docs/api/player.player.getvolume.md +0 -3
  51. package/docs/api/player.player.isdvrenabled.md +0 -3
  52. package/docs/api/player.player.isdvrinuse.md +0 -3
  53. package/docs/api/player.player.ismuted.md +0 -3
  54. package/docs/api/player.player.isplaying.md +0 -3
  55. package/docs/api/player.player.md +25 -28
  56. package/docs/api/player.player.mute.md +0 -3
  57. package/docs/api/player.player.off.md +0 -3
  58. package/docs/api/player.player.on.md +0 -3
  59. package/docs/api/player.player.pause.md +0 -3
  60. package/docs/api/player.player.play.md +0 -3
  61. package/docs/api/player.player.registerplugin.md +0 -3
  62. package/docs/api/player.player.resize.md +0 -3
  63. package/docs/api/player.player.seek.md +0 -3
  64. package/docs/api/player.player.setvolume.md +0 -3
  65. package/docs/api/player.player.stop.md +0 -3
  66. package/docs/api/player.player.unmute.md +0 -3
  67. package/docs/api/player.player.unregisterplugin.md +14 -7
  68. package/docs/api/player.playercomponenttype.md +0 -3
  69. package/docs/api/player.playerconfig.autoplay.md +0 -3
  70. package/docs/api/player.playerconfig.dash.md +0 -3
  71. package/docs/api/player.playerconfig.debug.md +0 -3
  72. package/docs/api/player.playerconfig.language.md +0 -3
  73. package/docs/api/player.playerconfig.loop.md +0 -3
  74. package/docs/api/player.playerconfig.md +10 -13
  75. package/docs/api/player.playerconfig.mute.md +0 -3
  76. package/docs/api/player.playerconfig.playbacktype.md +0 -3
  77. package/docs/api/player.playerconfig.prioritytransport.md +0 -3
  78. package/docs/api/player.playerconfig.sources.md +0 -3
  79. package/docs/api/player.playerconfig.strings.md +0 -3
  80. package/docs/api/player.playerdebugsettings.md +0 -3
  81. package/docs/api/player.playerdebugtag.md +0 -3
  82. package/docs/api/player.playerevent.md +11 -14
  83. package/docs/api/player.playereventhandler.md +0 -3
  84. package/docs/api/player.playereventparams.md +0 -3
  85. package/docs/api/player.playermediasource.md +0 -3
  86. package/docs/api/player.playermediasourcedesc.md +2 -5
  87. package/docs/api/player.playermediasourcedesc.mimetype.md +0 -3
  88. package/docs/api/player.playermediasourcedesc.source.md +0 -3
  89. package/docs/api/player.playerplugin.md +0 -4
  90. package/docs/api/player.playerpluginconstructor.md +0 -3
  91. package/docs/api/player.poster.md +1 -1
  92. package/docs/api/player.qualitylevel.bitrate.md +0 -3
  93. package/docs/api/player.qualitylevel.height.md +0 -3
  94. package/docs/api/player.qualitylevel.level.md +0 -3
  95. package/docs/api/player.qualitylevel.md +4 -7
  96. package/docs/api/player.qualitylevel.width.md +0 -3
  97. package/docs/api/player.seektime.md +1 -1
  98. package/docs/api/player.share.md +1 -1
  99. package/docs/api/player.skiptime.md +1 -1
  100. package/docs/api/player.sourcecontroller.md +1 -1
  101. package/docs/api/player.spinnerthreebounce.md +1 -1
  102. package/docs/api/player.subtitles.md +1 -1
  103. package/docs/api/player.telemetry.md +1 -1
  104. package/docs/api/player.thumbnails.md +1 -1
  105. package/docs/api/player.timeposition.current.md +0 -3
  106. package/docs/api/player.timeposition.md +2 -5
  107. package/docs/api/player.timeposition.total.md +0 -3
  108. package/docs/api/player.timevalue.md +0 -3
  109. package/docs/api/player.translationkey.md +0 -3
  110. package/docs/api/player.translationsettings.md +0 -3
  111. package/docs/api/player.transportpreference.md +2 -7
  112. package/docs/api/player.volumefade.md +1 -1
  113. package/lib/Player.d.ts +5 -5
  114. package/lib/Player.js +2 -2
  115. package/lib/index.d.ts +18 -1
  116. package/lib/index.d.ts.map +1 -1
  117. package/lib/index.js +18 -1
  118. package/lib/playback.types.d.ts +8 -7
  119. package/lib/playback.types.d.ts.map +1 -1
  120. package/lib/playback.types.js +1 -1
  121. package/lib/plugins/audio-selector/AudioSelector.d.ts +1 -1
  122. package/lib/plugins/audio-selector/AudioSelector.js +1 -1
  123. package/lib/plugins/big-mute-button/BigMuteButton.d.ts +1 -1
  124. package/lib/plugins/big-mute-button/BigMuteButton.d.ts.map +1 -1
  125. package/lib/plugins/big-mute-button/BigMuteButton.js +1 -2
  126. package/lib/plugins/bottom-gear/BottomGear.d.ts +1 -1
  127. package/lib/plugins/bottom-gear/BottomGear.js +1 -1
  128. package/lib/plugins/clappr-nerd-stats/ClapprNerdStats.d.ts +1 -1
  129. package/lib/plugins/clappr-nerd-stats/ClapprNerdStats.js +1 -1
  130. package/lib/plugins/clappr-stats/ClapprStats.d.ts +1 -1
  131. package/lib/plugins/clappr-stats/ClapprStats.js +1 -1
  132. package/lib/plugins/click-to-pause/ClickToPause.d.ts +1 -1
  133. package/lib/plugins/click-to-pause/ClickToPause.js +1 -1
  134. package/lib/plugins/clips/Clips.d.ts +1 -1
  135. package/lib/plugins/clips/Clips.js +1 -1
  136. package/lib/plugins/context-menu/ContextMenu.d.ts +1 -1
  137. package/lib/plugins/context-menu/ContextMenu.js +1 -1
  138. package/lib/plugins/dvr-controls/DvrControls.d.ts +6 -4
  139. package/lib/plugins/dvr-controls/DvrControls.d.ts.map +1 -1
  140. package/lib/plugins/dvr-controls/DvrControls.js +28 -36
  141. package/lib/plugins/error-screen/ErrorScreen.d.ts +1 -18
  142. package/lib/plugins/error-screen/ErrorScreen.d.ts.map +1 -1
  143. package/lib/plugins/error-screen/ErrorScreen.js +1 -1
  144. package/lib/plugins/favicon/Favicon.d.ts +1 -1
  145. package/lib/plugins/favicon/Favicon.js +1 -1
  146. package/lib/plugins/google-analytics/GoogleAnalytics.d.ts +1 -1
  147. package/lib/plugins/google-analytics/GoogleAnalytics.js +1 -1
  148. package/lib/plugins/level-selector/LevelSelector.d.ts +1 -1
  149. package/lib/plugins/level-selector/LevelSelector.js +1 -1
  150. package/lib/plugins/logo/Logo.d.ts +1 -1
  151. package/lib/plugins/logo/Logo.js +1 -1
  152. package/lib/plugins/media-control/MediaControl.d.ts +8 -2
  153. package/lib/plugins/media-control/MediaControl.d.ts.map +1 -1
  154. package/lib/plugins/media-control/MediaControl.js +15 -3
  155. package/lib/plugins/multi-camera/MultiCamera.d.ts +1 -1
  156. package/lib/plugins/multi-camera/MultiCamera.js +1 -1
  157. package/lib/plugins/picture-in-picture/PictureInPicture.d.ts +1 -1
  158. package/lib/plugins/picture-in-picture/PictureInPicture.js +1 -1
  159. package/lib/plugins/playback-rate/PlaybackRate.d.ts +1 -1
  160. package/lib/plugins/playback-rate/PlaybackRate.js +1 -1
  161. package/lib/plugins/poster/Poster.d.ts +1 -1
  162. package/lib/plugins/poster/Poster.js +1 -1
  163. package/lib/plugins/seek-time/SeekTime.d.ts +1 -1
  164. package/lib/plugins/seek-time/SeekTime.js +1 -1
  165. package/lib/plugins/share/Share.d.ts +1 -1
  166. package/lib/plugins/share/Share.js +1 -1
  167. package/lib/plugins/skip-time/SkipTime.d.ts +1 -1
  168. package/lib/plugins/skip-time/SkipTime.js +1 -1
  169. package/lib/plugins/source-controller/SourceController.d.ts +1 -1
  170. package/lib/plugins/source-controller/SourceController.js +1 -1
  171. package/lib/plugins/spinner-three-bounce/SpinnerThreeBounce.d.ts +1 -1
  172. package/lib/plugins/spinner-three-bounce/SpinnerThreeBounce.js +1 -1
  173. package/lib/plugins/subtitles/Subtitles.d.ts +1 -1
  174. package/lib/plugins/subtitles/Subtitles.js +1 -1
  175. package/lib/plugins/telemetry/Telemetry.d.ts +1 -1
  176. package/lib/plugins/telemetry/Telemetry.js +1 -1
  177. package/lib/plugins/thumbnails/Thumbnails.d.ts +1 -1
  178. package/lib/plugins/thumbnails/Thumbnails.js +1 -1
  179. package/lib/plugins/volume-fade/VolumeFade.d.ts +1 -1
  180. package/lib/plugins/volume-fade/VolumeFade.js +1 -1
  181. package/lib/testUtils.d.ts +11 -2
  182. package/lib/testUtils.d.ts.map +1 -1
  183. package/lib/testUtils.js +22 -3
  184. package/lib/types.d.ts +20 -25
  185. package/lib/types.d.ts.map +1 -1
  186. package/lib/types.js +1 -1
  187. package/package.json +1 -1
  188. package/src/Player.ts +5 -5
  189. package/src/index.ts +18 -1
  190. package/src/playback.types.ts +8 -7
  191. package/src/plugins/audio-selector/AudioSelector.ts +1 -1
  192. package/src/plugins/big-mute-button/BigMuteButton.ts +1 -2
  193. package/src/plugins/bottom-gear/BottomGear.ts +1 -1
  194. package/src/plugins/clappr-nerd-stats/ClapprNerdStats.ts +1 -1
  195. package/src/plugins/clappr-stats/ClapprStats.ts +1 -1
  196. package/src/plugins/click-to-pause/ClickToPause.ts +1 -1
  197. package/src/plugins/clips/Clips.ts +1 -1
  198. package/src/plugins/context-menu/ContextMenu.ts +1 -1
  199. package/src/plugins/dvr-controls/DvrControls.ts +33 -45
  200. package/src/plugins/dvr-controls/__tests__/DvrControls.test.ts +91 -0
  201. package/src/plugins/dvr-controls/__tests__/__snapshots__/DvrControls.test.ts.snap +43 -0
  202. package/src/plugins/error-screen/ErrorScreen.ts +3 -21
  203. package/src/plugins/favicon/Favicon.ts +1 -1
  204. package/src/plugins/google-analytics/GoogleAnalytics.ts +1 -1
  205. package/src/plugins/level-selector/LevelSelector.ts +1 -1
  206. package/src/plugins/logo/Logo.ts +1 -1
  207. package/src/plugins/media-control/MediaControl.ts +17 -3
  208. package/src/plugins/multi-camera/MultiCamera.ts +1 -1
  209. package/src/plugins/picture-in-picture/PictureInPicture.ts +1 -1
  210. package/src/plugins/playback-rate/PlaybackRate.ts +1 -1
  211. package/src/plugins/poster/Poster.ts +1 -1
  212. package/src/plugins/seek-time/SeekTime.ts +1 -1
  213. package/src/plugins/share/Share.ts +1 -1
  214. package/src/plugins/skip-time/SkipTime.ts +1 -1
  215. package/src/plugins/source-controller/SourceController.ts +1 -1
  216. package/src/plugins/spinner-three-bounce/SpinnerThreeBounce.ts +1 -1
  217. package/src/plugins/subtitles/Subtitles.ts +1 -1
  218. package/src/plugins/telemetry/Telemetry.ts +1 -1
  219. package/src/plugins/thumbnails/Thumbnails.ts +1 -1
  220. package/src/plugins/volume-fade/VolumeFade.ts +1 -1
  221. package/src/testUtils.ts +28 -4
  222. package/src/types.ts +20 -26
  223. package/temp/player.api.json +181 -251
  224. package/tsconfig.tsbuildinfo +1 -1
  225. package/docs/api/player.dvrcontrols._constructor_.md +0 -50
  226. package/docs/api/player.errordesc.md +0 -28
  227. package/docs/api/player.mediatransport.md +0 -16
@@ -32340,7 +32340,7 @@ const VERSION$6 = '0.0.1';
32340
32340
  // const T = 'plugins.audio_selector';
32341
32341
  const AUTO = 0;
32342
32342
  /**
32343
- * Adds an audio track selector to the media control UI.
32343
+ * `PLUGIN` that adds an audio track selector to the media control UI.
32344
32344
  * @beta
32345
32345
  */
32346
32346
  class AudioSelector extends UICorePlugin {
@@ -32652,7 +32652,7 @@ const pluginHtml$6 = "<div class=\"big-mute-icon-wrapper\" data-big-mute>\n <
32652
32652
  const T$c = 'plugins.big_mute_button';
32653
32653
  // TODO rewrite as a container plugin
32654
32654
  /**
32655
- * Displays a big mute button over the video when it's muted.
32655
+ * `PLUGIN` that displays a big mute button over the video when it's muted.
32656
32656
  * Once pressed, it unmutes the video.
32657
32657
  * @beta
32658
32658
  */
@@ -32687,7 +32687,6 @@ class BigMuteButton extends UICorePlugin {
32687
32687
  * @internal
32688
32688
  */
32689
32689
  bindEvents() {
32690
- super.bindEvents();
32691
32690
  this.listenTo(this.core, Events$1.CORE_READY, this.onCoreReady);
32692
32691
  this.listenTo(this.core, 'core:advertisement:start', this.onStartAd);
32693
32692
  this.listenTo(this.core, 'core:advertisement:finish', this.onFinishAd);
@@ -33063,9 +33062,11 @@ const fullscreenOffIcon = "<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"
33063
33062
 
33064
33063
  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";
33065
33064
 
33065
+ // This is a derived work from the {@link https://github.com/clappr/clappr-plugins/tree/ffaa9d27005fa5a8a7c243ffc47eb5655b84b371/src/plugins/media_control | Clappr MediaControl plugin}
33066
+ // It is redistributed under the terms of the {@link ../../../../../LICENSE | Apache 2.0} license.
33066
33067
  // Copyright 2014 Globo.com Player authors. All rights reserved.
33067
33068
  // Use of this source code is governed by a BSD-style
33068
- // license that can be found in the LICENSE file.
33069
+ // license that can be found in the {@link https://github.com/clappr/clappr-plugins/blob/master/LICENSE | LICENSE}.
33069
33070
  /**
33070
33071
  * Custom events emitted by the plugins to communicate with one another
33071
33072
  * @beta
@@ -33093,11 +33094,11 @@ function orderByOrderPattern(arr, order) {
33093
33094
  return [...ordered, ...rest];
33094
33095
  }
33095
33096
  /**
33096
- * PLUGIN that provides a foundation for developing custom media controls UI.
33097
+ * `PLUGIN` that provides a foundation for developing custom media controls UI.
33097
33098
  * @beta
33098
33099
  * @remarks
33099
33100
  * The methods exposed are to be used by the other plugins that extend the media control UI.
33100
- * The plugin registration should be arranged so that MediaControl is initialized before every other plugin that depends on it.
33101
+ * The plugin registration should be arranged so that MediaControl is initialized before every other `PLUGIN` that depends on it.
33101
33102
  * @example
33102
33103
  * ```ts
33103
33104
  * Player.registerPlugin(MediaControl) // <--- This must go first
@@ -33882,6 +33883,16 @@ class MediaControl extends UICorePlugin {
33882
33883
  getRightPanel() {
33883
33884
  return this.$el.find('.media-control-right-panel');
33884
33885
  }
33886
+ /**
33887
+ * Get the left panel area to append custom elements to
33888
+ * @returns ZeptoSelector of the left panel element
33889
+ */
33890
+ getLeftPanel() {
33891
+ return this.$el.find('.media-control-left-panel');
33892
+ }
33893
+ getCenterPanel() {
33894
+ return this.$el.find('.media-control-center-panel');
33895
+ }
33885
33896
  resetIndicators() {
33886
33897
  assert.ok(this.$duration && this.$position, 'duration and position elements must be present');
33887
33898
  this.displayedPosition = this.$position.text();
@@ -34157,7 +34168,7 @@ MediaControl.extend = function (properties) {
34157
34168
 
34158
34169
  const VERSION$5 = '2.19.12';
34159
34170
  /**
34160
- * Adds the gear button that triggers extra options menu on the right side of the {@link MediaControl | media control} UI
34171
+ * `PLUGIN` that adds the gear button with an extra options menu on the right side of the {@link MediaControl | media control} UI
34161
34172
  * @beta
34162
34173
  * @remarks
34163
34174
  * The plugins provides a base for attaching custom settings UI in the gear menu
@@ -36410,7 +36421,7 @@ const drawSummary = (customMetrics, vodContainer, liveContainer) => {
36410
36421
  };
36411
36422
  // const T = 'plugins.clappr_nerd_stats';
36412
36423
  /**
36413
- * PLUGIN that displays useful network-related statistics.
36424
+ * `PLUGIN` that displays useful network-related statistics.
36414
36425
  * @beta
36415
36426
  *
36416
36427
  * @remarks
@@ -36666,7 +36677,7 @@ function newMetrics() {
36666
36677
  // TODO: fix
36667
36678
  const updateMetrics = () => { };
36668
36679
  /**
36669
- * PLIGIN that collects useful statistics about playback performance.
36680
+ * `PLUGIN` that collects useful statistics about playback performance.
36670
36681
  * @beta
36671
36682
  * @remarks
36672
36683
  * This plugin does not render anything and is supposed to be extended or used together with other plugins that actually render something.
@@ -37023,7 +37034,7 @@ class ClapprStats extends ContainerPlugin {
37023
37034
  // Use of this source code is governed by a BSD-style
37024
37035
  // license that can be found at https://github.com/clappr/clappr-plugins/blob/master/LICENSE.
37025
37036
  /**
37026
- * Adds a behavior of toggling the playback state on click over the container
37037
+ * `PLUGIN` that adds a behavior of toggling the playback state on click over the container
37027
37038
  * @beta
37028
37039
  */
37029
37040
  class ClickToPause extends ContainerPlugin {
@@ -37090,7 +37101,7 @@ class ClickToPause extends ContainerPlugin {
37090
37101
  }
37091
37102
 
37092
37103
  /**
37093
- * PLUGIN that shows text over the seekbar to indicate the current clip.
37104
+ * `PLUGIN` that shows text over the seekbar to indicate the current clip.
37094
37105
  * @beta
37095
37106
  * @remarks
37096
37107
  * Depends on:
@@ -37246,7 +37257,7 @@ class ClipsPlugin extends UICorePlugin {
37246
37257
 
37247
37258
  const templateHtml$1 = "<ul class=\"context-menu-list\">\n <% if(options) { %>\n <% for (var i = 0; i < options.length; i++) { %>\n <li class=\"context-menu-list-item <%= options[i].class %>\"\n data-<%= options[i].name %>><%= options[i].label %></li>\n <% } %>\n <% } %>\n</ul>\n";
37248
37259
 
37249
- var version$1 = "2.20.9";
37260
+ var version$1 = "2.20.11";
37250
37261
 
37251
37262
  var packages = {
37252
37263
  "node_modules/@clappr/core": {
@@ -37271,7 +37282,7 @@ function version() {
37271
37282
  }
37272
37283
 
37273
37284
  /**
37274
- * Displays a small context menu when clicked on the player container.
37285
+ * `PLUGIN` that displays a small context menu when clicked on the player container.
37275
37286
  * @beta
37276
37287
  * @remarks
37277
37288
  * Configuration options - {@link ContextMenuPluginSettings}
@@ -37383,7 +37394,7 @@ const dvrHTML = "<div class=\"live-info\"><%= live %></div>\n<button type=\"butt
37383
37394
 
37384
37395
  const T$b = 'plugins.dvr_controls';
37385
37396
  /**
37386
- * PLUGIN that adds the DVR controls to the media control UI
37397
+ * `PLUGIN` that adds the DVR controls to the media control UI
37387
37398
  *
37388
37399
  * @beta
37389
37400
  *
@@ -37392,7 +37403,9 @@ const T$b = 'plugins.dvr_controls';
37392
37403
  *
37393
37404
  * - {@link MediaControl}
37394
37405
  *
37395
- * The plugin renders live stream indicator and the DVR seek bar, if DVR is enabled, in the media control UI.
37406
+ * The plugin renders live stream indicator.
37407
+ * If DVR is enabled, the indicator shows whether the current position is at the live edge of the stream or not.
37408
+ * In the latter case, the indicator can be clicked to seek to the live edge.
37396
37409
  */
37397
37410
  class DvrControls extends UICorePlugin {
37398
37411
  static template = tmpl(dvrHTML);
@@ -37425,64 +37438,56 @@ class DvrControls extends UICorePlugin {
37425
37438
  'data-dvr-controls': '',
37426
37439
  };
37427
37440
  }
37428
- constructor(core) {
37429
- super(core);
37430
- this.settingsUpdate();
37431
- }
37432
37441
  /**
37433
37442
  * @internal
37434
37443
  */
37435
37444
  bindEvents() {
37445
+ this.listenTo(this.core, Events$1.CORE_READY, this.onCoreReady);
37446
+ this.listenTo(this.core, Events$1.CORE_OPTIONS_CHANGE, this.render);
37447
+ this.listenTo(this.core, Events$1.CORE_ACTIVE_CONTAINER_CHANGED, this.bindContainerEvents);
37448
+ }
37449
+ onCoreReady() {
37436
37450
  const mediaControl = this.core.getPlugin('media_control');
37437
37451
  assert(mediaControl, 'media_control plugin is required');
37438
37452
  this.listenTo(mediaControl, Events$1.MEDIACONTROL_RENDERED, this.settingsUpdate);
37439
- this.listenTo(this.core, Events$1.CORE_OPTIONS_CHANGE, this.render);
37440
- this.listenTo(this.core, Events$1.CORE_ACTIVE_CONTAINER_CHANGED, this.bindContainerEvents);
37453
+ this.settingsUpdate();
37441
37454
  }
37442
37455
  bindContainerEvents() {
37443
37456
  this.listenToOnce(this.core.activeContainer, Events$1.CONTAINER_TIMEUPDATE, this.render);
37444
37457
  this.listenTo(this.core.activeContainer, Events$1.CONTAINER_PLAYBACKDVRSTATECHANGED, this.onDvrChanged);
37445
37458
  }
37446
- onDvrChanged(dvrEnabled) {
37459
+ onDvrChanged(dvrInUse) {
37447
37460
  if (this.core.getPlaybackType() !== Playback.LIVE) {
37448
37461
  return;
37449
37462
  }
37450
- this.settingsUpdate();
37451
- this.core.mediaControl.$el.addClass('live');
37452
- if (dvrEnabled) {
37453
- // TODO
37454
- this.core.mediaControl.$el
37463
+ this.render();
37464
+ const mediaControl = this.core.getPlugin('media_control');
37465
+ mediaControl.$el.addClass('live');
37466
+ if (dvrInUse) {
37467
+ mediaControl.$el
37455
37468
  .addClass('dvr')
37456
- .find('.media-control-indicator[data-position], .media-control-indicator[data-duration]')
37469
+ .find(
37470
+ // TODO add API, test
37471
+ '.media-control-indicator[data-position], .media-control-indicator[data-duration]')
37457
37472
  .hide();
37458
37473
  }
37459
37474
  else {
37460
- this.core.mediaControl.$el.removeClass('dvr');
37475
+ mediaControl.$el.removeClass('dvr');
37461
37476
  }
37462
37477
  }
37463
37478
  click() {
37464
- const mediaControl = this.core.getPlugin('media_control');
37465
37479
  const container = this.core.activeContainer;
37466
37480
  if (!container.isPlaying()) {
37467
37481
  container.play();
37468
37482
  }
37469
- if (mediaControl.$el.hasClass('dvr')) {
37470
- container.seek(container.getDuration());
37471
- }
37483
+ container.seek(container.getDuration());
37472
37484
  }
37473
37485
  settingsUpdate() {
37474
- // @ts-ignore
37475
- this.stopListening(); // TODO sort out
37476
- this.core.getPlugin('media_control').$el.removeClass('live'); // TODO don't access directly
37477
- if (this.shouldRender()) {
37478
- this.render();
37479
- this.$el.click(() => this.click());
37480
- }
37481
- this.bindEvents();
37486
+ this.core.getPlugin('media_control').$el.removeClass('live');
37487
+ this.render();
37482
37488
  }
37483
37489
  shouldRender() {
37484
- const useDvrControls = this.core.options.useDvrControls === undefined ||
37485
- !!this.core.options.useDvrControls;
37490
+ const useDvrControls = this.core.options.useDvrControls !== false;
37486
37491
  return useDvrControls && this.core.getPlaybackType() === Playback.LIVE;
37487
37492
  }
37488
37493
  /**
@@ -37491,6 +37496,7 @@ class DvrControls extends UICorePlugin {
37491
37496
  render() {
37492
37497
  trace(`${T$b} render`, {
37493
37498
  dvrEnabled: this.core.activePlayback?.dvrEnabled,
37499
+ playbackType: this.core.getPlaybackType(),
37494
37500
  });
37495
37501
  if (!this.shouldRender()) {
37496
37502
  return this;
@@ -37500,12 +37506,8 @@ class DvrControls extends UICorePlugin {
37500
37506
  backToLive: this.core.i18n.t('back_to_live'),
37501
37507
  }));
37502
37508
  const mediaControl = this.core.getPlugin('media_control');
37503
- assert(mediaControl, 'media_control plugin is required');
37504
- // TODO don't tap into the $el directly
37505
37509
  mediaControl.$el.addClass('live');
37506
- mediaControl
37507
- .$('.media-control-left-panel[data-media-control]')
37508
- .append(this.$el);
37510
+ mediaControl.getLeftPanel().append(this.$el);
37509
37511
  return this;
37510
37512
  }
37511
37513
  }
@@ -37516,7 +37518,7 @@ const templateHtml = "<div class=\"player-error-screen__content\" data-error-scr
37516
37518
 
37517
37519
  const T$a = 'plugins.error_screen';
37518
37520
  /**
37519
- * PLUGIN that displays errors nicely in the overlay on top of the player.
37521
+ * `PLUGIN` that displays errors nicely in the overlay on top of the player.
37520
37522
  * @beta
37521
37523
  */
37522
37524
  class ErrorScreen extends UICorePlugin {
@@ -37627,7 +37629,7 @@ const FAVICON_COLOR = '#567';
37627
37629
  const FAVICON_SELECTOR = 'link[rel="shortcut icon"]';
37628
37630
  // const oldIcon = $(FAVICON_SELECTOR);
37629
37631
  /**
37630
- * The plugin adds custom favicon to the player's tab.
37632
+ * `PLUGIN` that adds custom favicon to the player's tab.
37631
37633
  * @beta
37632
37634
  */
37633
37635
  class Favicon extends CorePlugin {
@@ -37733,7 +37735,7 @@ class Favicon extends CorePlugin {
37733
37735
  // Use of this source code is governed by a BSD-style
37734
37736
  // license that can be found at https://github.com/clappr/clappr-plugins/blob/master/LICENSE
37735
37737
  /**
37736
- * An example Google Analytics integration plugin
37738
+ * `PLUGIN` that integrates with Google Analytics
37737
37739
  * @beta
37738
37740
  */
37739
37741
  class GoogleAnalytics extends ContainerPlugin {
@@ -37861,7 +37863,7 @@ const checkIcon = "<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"
37861
37863
  const T$9 = 'plugins.level_selector';
37862
37864
  const VERSION$4 = '2.19.4';
37863
37865
  /**
37864
- * PLUGIN that provides a UI to select the desired quality level of the playback.
37866
+ * `PLUGIN` that provides a UI to select the desired quality level of the playback.
37865
37867
  * @beta
37866
37868
  *
37867
37869
  * @remarks
@@ -38184,7 +38186,7 @@ function calculateSize(original) {
38184
38186
  const logoHTML = "<div class=\"clappr-logo control-need-disable\">\n <img class=\"clappr-logo-img\"/>\n</div>\n";
38185
38187
 
38186
38188
  /**
38187
- * The plugin adds custom logo to the player.
38189
+ * `PLUGIN` that adds custom logo to the player.
38188
38190
  * @beta
38189
38191
  */
38190
38192
  class Logo extends UIContainerPlugin {
@@ -38371,7 +38373,7 @@ const streamsWhiteNightsIcon = "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:
38371
38373
  const VERSION$3 = '0.0.1';
38372
38374
  const T$8 = 'plugins.multicamera';
38373
38375
  /**
38374
- * PLUGIN that adds support for loading multiple streams and switching between them using the media control UI.
38376
+ * `PLUGIN` that adds support for loading multiple streams and switching between them using the media control UI.
38375
38377
  * @beta
38376
38378
  */
38377
38379
  class MultiCamera extends UICorePlugin {
@@ -38717,7 +38719,7 @@ const buttonHtml$1 = "<button class=\"gplayer-lite-btn gcore-skin-button-color\"
38717
38719
  const VERSION$2 = '0.0.1';
38718
38720
  const T$7 = `plugins.pip`;
38719
38721
  /**
38720
- * Enables picture in picture mode.
38722
+ * `PLUGIN` that enables picture in picture mode.
38721
38723
  * @beta
38722
38724
  * @remarks
38723
38725
  * Depends on:
@@ -38827,7 +38829,7 @@ const DEFAULT_PLAYBACK_RATES = [
38827
38829
  const DEFAULT_PLAYBACK_RATE = '1.0';
38828
38830
  const T$6 = 'plugins.playback_rate';
38829
38831
  /**
38830
- * PLUGIN that allows changing the playback speed of the video.
38832
+ * `PLUGIN` that allows changing the playback speed of the video.
38831
38833
  * @beta
38832
38834
  *
38833
38835
  * @remarks
@@ -39030,7 +39032,7 @@ const posterHTML = "<div class=\"play-wrapper\" data-poster></div>\n";
39030
39032
  // license that can be found in the LICENSE file.
39031
39033
  const T$5 = 'plugins.poster';
39032
39034
  /**
39033
- * Displays a poster image in the background and a big play button on top when playback is stopped
39035
+ * `PLUGIN` that displays a poster image in the background and a big play button on top when playback is stopped
39034
39036
  * @beta
39035
39037
  * @remarks
39036
39038
  * When the playback is stopped, media control UI is disabled.
@@ -39302,7 +39304,7 @@ const seekTimeHTML = "<span data-seek-time></span>\n<span data-duration></span>\
39302
39304
  // license that can be found at https://github.com/clappr/clappr-plugins/blob/master/LICENSE
39303
39305
  const { formatTime } = Utils;
39304
39306
  /**
39305
- * The plugin adds a seek time indicator to the media control UI.
39307
+ * `PLUGIN` that adds a seek time indicator to the media control UI.
39306
39308
  * @beta
39307
39309
  */
39308
39310
  class SeekTime extends UICorePlugin {
@@ -39462,7 +39464,7 @@ const fbIcon = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"32px\"
39462
39464
  const twIcon = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"32px\" height=\"32px\" viewBox=\"0 0 32 32\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <!-- Generator: Sketch 49 (51002) - http://www.bohemiancoding.com/sketch -->\n <title>twitter</title>\n <desc>Created with Sketch.</desc>\n <defs></defs>\n <g id=\"twitter\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g fill-rule=\"nonzero\" id=\"Shape\">\n <path d=\"M32,30 C32,31.104 31.104,32 30,32 L2,32 C0.896,32 0,31.104 0,30 L0,2 C0,0.896 0.896,0 2,0 L30,0 C31.104,0 32,0.896 32,2 L32,30 Z\" fill=\"#55ACEE\"></path>\n <path class=\"icon-hover\" d=\"M25.987,9.894 C25.251,10.216 24.462,10.431 23.63,10.529 C24.48,10.031 25.13,9.24 25.436,8.298 C24.644,8.759 23.766,9.095 22.831,9.276 C22.083,8.491 21.017,8 19.838,8 C17.572,8 15.738,9.807 15.738,12.038 C15.738,12.352 15.774,12.663 15.842,12.96 C12.435,12.788 9.413,11.181 7.39,8.739 C7.038,9.336 6.834,10.029 6.834,10.771 C6.834,12.17 7.56,13.406 8.658,14.131 C7.987,14.109 7.354,13.928 6.802,13.625 C6.801,13.642 6.801,13.659 6.801,13.677 C6.801,15.632 8.215,17.266 10.091,17.637 C9.748,17.727 9.386,17.779 9.01,17.779 C8.746,17.779 8.49,17.755 8.24,17.707 C8.76,19.311 10.274,20.478 12.068,20.512 C10.67,21.594 8.9,22.24 6.979,22.24 C6.649,22.24 6.321,22.222 6,22.184 C7.814,23.329 9.971,23.997 12.287,23.997 C19.828,23.997 23.953,17.843 23.953,12.506 C23.953,12.333 23.948,12.156 23.941,11.985 C24.741,11.414 25.438,10.703 25.987,9.894 Z\" fill=\"#FFFFFF\"></path>\n </g>\n </g>\n</svg>";
39463
39465
 
39464
39466
  /**
39465
- * PLUGIN that adds a share button to the media control UI.
39467
+ * `PLUGIN` that adds a share button to the media control UI.
39466
39468
  * @beta
39467
39469
  */
39468
39470
  class Share extends UICorePlugin {
@@ -39583,7 +39585,7 @@ class Share extends UICorePlugin {
39583
39585
  const pluginHtml$1 = "<div class=\"skip-container\" data-skip-container>\n <div class=\"skip-item\" data-skip-left>\n </div>\n <div class=\"skip-item\" data-skip-mid>\n </div>\n <div class=\"skip-item\" data-skip-right>\n </div>\n</div>\n";
39584
39586
 
39585
39587
  /**
39586
- * PLUGIN that adds skip controls to the media control UI.
39588
+ * `PLUGIN` that adds skip controls to the media control UI.
39587
39589
  * @beta
39588
39590
  */
39589
39591
  class SkipTime extends UICorePlugin {
@@ -39671,7 +39673,7 @@ class SkipTime extends UICorePlugin {
39671
39673
 
39672
39674
  /**
39673
39675
  * Codes of errors occurring within the playback component.
39674
- * @beta
39676
+ * @public
39675
39677
  */
39676
39678
  var PlaybackErrorCode;
39677
39679
  (function (PlaybackErrorCode) {
@@ -39708,7 +39710,7 @@ var SpinnerEvents;
39708
39710
  SpinnerEvents["SYNC"] = "plugins:spinner:sync";
39709
39711
  })(SpinnerEvents || (SpinnerEvents = {}));
39710
39712
  /**
39711
- * PLUGIN that shows a pending operation indicator when playback is buffering or in a similar state
39713
+ * `PLUGIN` that shows a pending operation indicator when playback is buffering or in a similar state
39712
39714
  * @beta
39713
39715
  * @remarks
39714
39716
  * Events emitted- {@link SpinnerEvents}
@@ -39857,7 +39859,7 @@ function noSync(cb) {
39857
39859
  queueMicrotask(cb);
39858
39860
  }
39859
39861
  /**
39860
- * This plugin is responsible for managing the automatic failover between sources.
39862
+ * `PLUGIN` that is responsible for managing the automatic failover between sources.
39861
39863
  * @beta
39862
39864
  * @remarks
39863
39865
  * Have a look at the {@link https://miro.com/app/board/uXjVLiN15tY=/?share_link_id=390327585787 | source failover diagram} for the details
@@ -40060,7 +40062,7 @@ const LOCAL_STORAGE_SUBTITLES_ID = 'gplayer.plugins.subtitles.selected';
40060
40062
  const T$2 = 'plugins.subtitles';
40061
40063
  const NO_TRACK = { language: 'off' };
40062
40064
  /**
40063
- * A {@link MediaControl | media control} plugin that provides a UI to select the subtitles when available.
40065
+ * `PLUGIN` that provides a UI to select the subtitles when available.
40064
40066
  * @beta
40065
40067
  *
40066
40068
  * @remarks
@@ -40432,7 +40434,7 @@ var TelemetryEvent;
40432
40434
  TelemetryEvent[TelemetryEvent["Stall"] = 4] = "Stall";
40433
40435
  })(TelemetryEvent || (TelemetryEvent = {}));
40434
40436
  /**
40435
- * PLUGIN that collects and reports the performance statistics.
40437
+ * `PLUGIN` that collects and reports the performance statistics.
40436
40438
  * @beta
40437
40439
  * @remarks
40438
40440
  * This plugin is experimental and its API is likely to change.
@@ -40711,7 +40713,7 @@ const pluginHtml = "<div class=\"thumbnails-text\"></div>\n<% if (backdropHeight
40711
40713
 
40712
40714
  const T = 'plugins.thumbnails';
40713
40715
  /**
40714
- * Displays the thumbnails of the video when available.
40716
+ * `PLUGIN` that displays the thumbnails of the video when available.
40715
40717
  * @beta
40716
40718
  * @example
40717
40719
  * ```ts
@@ -41158,7 +41160,7 @@ var VolumeFadeEvents;
41158
41160
  VolumeFadeEvents["FADE"] = "core:volume:fade";
41159
41161
  })(VolumeFadeEvents || (VolumeFadeEvents = {}));
41160
41162
  /**
41161
- * Applies fade effect to the player's volume change.
41163
+ * `PLUGIN` that applies fade effect to the player's volume change.
41162
41164
  * @beta
41163
41165
  */
41164
41166
  class VolumeFade extends UICorePlugin {
@@ -7,7 +7,7 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
- Adds an audio track selector to the media control UI.
10
+ `PLUGIN` that adds an audio track selector to the media control UI.
11
11
 
12
12
  **Signature:**
13
13
 
@@ -7,7 +7,7 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
- Displays a big mute button over the video when it's muted. Once pressed, it unmutes the video.
10
+ `PLUGIN` that displays a big mute button over the video when it's muted. Once pressed, it unmutes the video.
11
11
 
12
12
  **Signature:**
13
13
 
@@ -7,7 +7,7 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
- Adds the gear button that triggers extra options menu on the right side of the [media control](./player.mediacontrol.md) UI
10
+ `PLUGIN` that adds the gear button with an extra options menu on the right side of the [media control](./player.mediacontrol.md) UI
11
11
 
12
12
  **Signature:**
13
13
 
@@ -7,7 +7,7 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
- PLUGIN that displays useful network-related statistics.
10
+ `PLUGIN` that displays useful network-related statistics.
11
11
 
12
12
  **Signature:**
13
13
 
@@ -7,7 +7,7 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
- PLIGIN that collects useful statistics about playback performance.
10
+ `PLUGIN` that collects useful statistics about playback performance.
11
11
 
12
12
  **Signature:**
13
13
 
@@ -7,7 +7,7 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
- Adds a behavior of toggling the playback state on click over the container
10
+ `PLUGIN` that adds a behavior of toggling the playback state on click over the container
11
11
 
12
12
  **Signature:**
13
13
 
@@ -7,7 +7,7 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
- PLUGIN that shows text over the seekbar to indicate the current clip.
10
+ `PLUGIN` that shows text over the seekbar to indicate the current clip.
11
11
 
12
12
  **Signature:**
13
13
 
@@ -4,15 +4,13 @@
4
4
 
5
5
  ## ContainerPluginConstructor type
6
6
 
7
- > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
- >
9
-
10
7
 
11
8
  **Signature:**
12
9
 
13
10
  ```typescript
14
- export type ContainerPluginConstructor = ((container: unknown) => PlayerPlugin) & {
15
- type: 'container';
11
+ export type ContainerPluginConstructor = {
12
+ new (container: Container): PlayerPlugin;
13
+ type: string;
16
14
  };
17
15
  ```
18
16
  **References:** [PlayerPlugin](./player.playerplugin.md)
@@ -4,9 +4,6 @@
4
4
 
5
5
  ## ContainerSize type
6
6
 
7
- > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
- >
9
-
10
7
  Dimensions of the player container DOM element.
11
8
 
12
9
  **Signature:**
@@ -7,7 +7,7 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
- Displays a small context menu when clicked on the player container.
10
+ `PLUGIN` that displays a small context menu when clicked on the player container.
11
11
 
12
12
  **Signature:**
13
13
 
@@ -4,15 +4,13 @@
4
4
 
5
5
  ## CorePluginConstructor type
6
6
 
7
- > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
- >
9
-
10
7
 
11
8
  **Signature:**
12
9
 
13
10
  ```typescript
14
- export type CorePluginConstructor = ((core: unknown) => PlayerPlugin) & {
15
- type: 'core';
11
+ export type CorePluginConstructor = {
12
+ new (core: Core): PlayerPlugin;
13
+ type: string;
16
14
  };
17
15
  ```
18
16
  **References:** [PlayerPlugin](./player.playerplugin.md)
@@ -4,9 +4,6 @@
4
4
 
5
5
  ## DashSettings type
6
6
 
7
- > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
- >
9
-
10
7
  A plain JS object that must conform to the DASH.js settings schema.
11
8
 
12
9
  [DASH.js settings](https://cdn.dashjs.org/latest/jsdoc/module-Settings.html)
@@ -7,7 +7,7 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
- Adds the DVR controls to the media control UI
10
+ `PLUGIN` that adds the DVR controls to the media control UI
11
11
 
12
12
  **Signature:**
13
13
 
@@ -22,38 +22,5 @@ Depends on:
22
22
 
23
23
  - [MediaControl](./player.mediacontrol.md)
24
24
 
25
- The plugin renders the live stream indicator and the DVR seek bar, if DVR is enabled, in the media control UI.
25
+ The plugin renders live stream indicator. If DVR is enabled, the indicator shows whether the current position is at the live edge of the stream or not. In the latter case, the indicator can be clicked to seek to the live edge.
26
26
 
27
- ## Constructors
28
-
29
- <table><thead><tr><th>
30
-
31
- Constructor
32
-
33
-
34
- </th><th>
35
-
36
- Modifiers
37
-
38
-
39
- </th><th>
40
-
41
- Description
42
-
43
-
44
- </th></tr></thead>
45
- <tbody><tr><td>
46
-
47
- [(constructor)(core)](./player.dvrcontrols._constructor_.md)
48
-
49
-
50
- </td><td>
51
-
52
-
53
- </td><td>
54
-
55
- **_(BETA)_** Constructs a new instance of the `DvrControls` class
56
-
57
-
58
- </td></tr>
59
- </tbody></table>
@@ -4,9 +4,6 @@
4
4
 
5
5
  ## ErrorLevel type
6
6
 
7
- > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
- >
9
-
10
7
  Levels of severity of errors. Non-fatal errors usually can be ignored.
11
8
 
12
9
  **Signature:**
@@ -7,7 +7,7 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
- PLUGIN that displays errors nicely in the overlay on top of the player.
10
+ `PLUGIN` that displays errors nicely in the overlay on top of the player.
11
11
 
12
12
  **Signature:**
13
13
 
@@ -7,7 +7,7 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
- The plugin adds custom favicon to the player's tab.
10
+ `PLUGIN` that adds custom favicon to the player's tab.
11
11
 
12
12
  **Signature:**
13
13
 
@@ -7,7 +7,7 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
- An example Google Analytics integration plugin
10
+ `PLUGIN` that integrates with Google Analytics
11
11
 
12
12
  **Signature:**
13
13