@gcorevideo/player 2.19.12 → 2.19.14

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 (171) hide show
  1. package/dist/core.js +16 -11
  2. package/dist/index.css +1405 -1405
  3. package/dist/index.js +1239 -1088
  4. package/dist/player.d.ts +209 -45
  5. package/dist/plugins/index.css +1461 -1461
  6. package/dist/plugins/index.js +4005 -3858
  7. package/docs/api/player.bottomgear.md +3 -289
  8. package/docs/api/player.dvrcontrols._constructor_.md +3 -0
  9. package/docs/api/player.dvrcontrols.md +10 -201
  10. package/docs/api/player.levelselector.md +8 -140
  11. package/docs/api/player.md +9 -5
  12. package/docs/api/player.mediacontrol.disable.md +2 -0
  13. package/docs/api/player.mediacontrol.disabledcontrolbutton.md +1 -1
  14. package/docs/api/player.mediacontrol.enable.md +2 -0
  15. package/docs/api/player.mediacontrol.enablecontrolbutton.md +1 -1
  16. package/docs/api/player.mediacontrol.getelement.md +19 -1
  17. package/docs/api/player.mediacontrol.md +17 -281
  18. package/docs/api/player.mediacontrol.volume.md +2 -2
  19. package/docs/api/player.mediacontrolelement.md +2 -1
  20. package/docs/api/player.poster.disable.md +5 -0
  21. package/docs/api/player.poster.enable.md +5 -0
  22. package/docs/api/player.poster.md +25 -183
  23. package/lib/Player.d.ts +1 -0
  24. package/lib/Player.d.ts.map +1 -1
  25. package/lib/Player.js +15 -10
  26. package/lib/index.d.ts +1 -0
  27. package/lib/index.d.ts.map +1 -1
  28. package/lib/index.js +1 -0
  29. package/lib/plugins/audio-selector/AudioSelector.js +2 -2
  30. package/lib/plugins/big-mute-button/BigMuteButton.d.ts.map +1 -1
  31. package/lib/plugins/big-mute-button/BigMuteButton.js +2 -1
  32. package/lib/plugins/bottom-gear/BottomGear.d.ts +38 -7
  33. package/lib/plugins/bottom-gear/BottomGear.d.ts.map +1 -1
  34. package/lib/plugins/bottom-gear/BottomGear.js +53 -33
  35. package/lib/plugins/clappr-nerd-stats/ClapprNerdStats.d.ts +1 -1
  36. package/lib/plugins/clappr-nerd-stats/ClapprNerdStats.d.ts.map +1 -1
  37. package/lib/plugins/clappr-nerd-stats/ClapprNerdStats.js +20 -24
  38. package/lib/plugins/clappr-stats/ClapprStats.js +1 -1
  39. package/lib/plugins/click-to-pause/ClickToPause.js +1 -1
  40. package/lib/plugins/clips/Clips.js +2 -2
  41. package/lib/plugins/context-menu/ContextMenu.js +1 -1
  42. package/lib/plugins/disable-controls/DisableControls.js +1 -1
  43. package/lib/plugins/dvr-controls/DvrControls.d.ts +30 -4
  44. package/lib/plugins/dvr-controls/DvrControls.d.ts.map +1 -1
  45. package/lib/plugins/dvr-controls/DvrControls.js +39 -11
  46. package/lib/plugins/error-screen/ErrorScreen.d.ts.map +1 -1
  47. package/lib/plugins/error-screen/ErrorScreen.js +2 -1
  48. package/lib/plugins/favicon/Favicon.js +1 -1
  49. package/lib/plugins/google-analytics/GoogleAnalytics.js +1 -1
  50. package/lib/plugins/level-selector/LevelSelector.d.ts +25 -6
  51. package/lib/plugins/level-selector/LevelSelector.d.ts.map +1 -1
  52. package/lib/plugins/level-selector/LevelSelector.js +33 -12
  53. package/lib/plugins/logo/Logo.js +1 -1
  54. package/lib/plugins/media-control/MediaControl.d.ts +66 -22
  55. package/lib/plugins/media-control/MediaControl.d.ts.map +1 -1
  56. package/lib/plugins/media-control/MediaControl.js +72 -35
  57. package/lib/plugins/multi-camera/MultiCamera.js +3 -3
  58. package/lib/plugins/picture-in-picture/PictureInPicture.js +3 -3
  59. package/lib/plugins/playback-rate/PlaybackRate.d.ts.map +1 -1
  60. package/lib/plugins/playback-rate/PlaybackRate.js +3 -3
  61. package/lib/plugins/poster/Poster.d.ts +57 -3
  62. package/lib/plugins/poster/Poster.d.ts.map +1 -1
  63. package/lib/plugins/poster/Poster.js +57 -9
  64. package/lib/plugins/seek-time/SeekTime.js +2 -2
  65. package/lib/plugins/share/Share.js +2 -2
  66. package/lib/plugins/skip-time/SkipTime.js +1 -1
  67. package/lib/plugins/source-controller/SourceController.js +1 -1
  68. package/lib/plugins/spinner-three-bounce/SpinnerThreeBounce.js +1 -1
  69. package/lib/plugins/statistics/Statistics.js +1 -1
  70. package/lib/plugins/subtitles/Subtitles.js +3 -3
  71. package/lib/plugins/thumbnails/Thumbnails.js +3 -3
  72. package/lib/plugins/types.d.ts +1 -7
  73. package/lib/plugins/types.d.ts.map +1 -1
  74. package/lib/plugins/vast-ads/VastAds.d.ts +1 -0
  75. package/lib/plugins/vast-ads/VastAds.d.ts.map +1 -1
  76. package/lib/plugins/vast-ads/VastAds.js +6 -3
  77. package/package.json +2 -1
  78. package/src/Player.ts +15 -9
  79. package/src/__tests__/Player.test.ts +15 -76
  80. package/src/index.ts +1 -0
  81. package/src/plugins/audio-selector/AudioSelector.ts +2 -2
  82. package/src/plugins/big-mute-button/BigMuteButton.ts +2 -1
  83. package/src/plugins/bottom-gear/BottomGear.ts +67 -42
  84. package/src/plugins/clappr-nerd-stats/ClapprNerdStats.ts +21 -26
  85. package/src/plugins/clappr-stats/ClapprStats.ts +1 -1
  86. package/src/plugins/click-to-pause/ClickToPause.ts +1 -1
  87. package/src/plugins/clips/Clips.ts +2 -2
  88. package/src/plugins/context-menu/ContextMenu.ts +1 -1
  89. package/src/plugins/disable-controls/DisableControls.ts +1 -1
  90. package/src/plugins/dvr-controls/DvrControls.ts +42 -14
  91. package/src/plugins/error-screen/ErrorScreen.ts +2 -1
  92. package/src/plugins/favicon/Favicon.ts +1 -1
  93. package/src/plugins/google-analytics/GoogleAnalytics.ts +1 -1
  94. package/src/plugins/level-selector/LevelSelector.ts +34 -14
  95. package/src/plugins/level-selector/__tests__/LevelSelector.test.ts +22 -2
  96. package/src/plugins/logo/Logo.ts +1 -1
  97. package/src/plugins/media-control/MediaControl.ts +83 -44
  98. package/src/plugins/multi-camera/MultiCamera.ts +3 -3
  99. package/src/plugins/picture-in-picture/PictureInPicture.ts +3 -3
  100. package/src/plugins/playback-rate/PlaybackRate.ts +3 -4
  101. package/src/plugins/poster/Poster.ts +59 -12
  102. package/src/plugins/seek-time/SeekTime.ts +2 -2
  103. package/src/plugins/share/Share.ts +2 -2
  104. package/src/plugins/skip-time/SkipTime.ts +1 -1
  105. package/src/plugins/source-controller/SourceController.ts +1 -1
  106. package/src/plugins/source-controller/__tests__/SourceController.test.ts +5 -0
  107. package/src/plugins/spinner-three-bounce/SpinnerThreeBounce.ts +1 -1
  108. package/src/plugins/statistics/Statistics.ts +1 -1
  109. package/src/plugins/subtitles/Subtitles.ts +3 -3
  110. package/src/plugins/thumbnails/Thumbnails.ts +3 -3
  111. package/src/plugins/types.ts +1 -0
  112. package/src/plugins/vast-ads/VastAds.ts +6 -6
  113. package/temp/player.api.json +3301 -5030
  114. package/tsconfig.tsbuildinfo +1 -1
  115. package/docs/api/player.bottomgear.attributes.md +0 -17
  116. package/docs/api/player.bottomgear.bindevents.md +0 -18
  117. package/docs/api/player.bottomgear.container.md +0 -14
  118. package/docs/api/player.bottomgear.events.md +0 -16
  119. package/docs/api/player.bottomgear.hide.md +0 -18
  120. package/docs/api/player.bottomgear.name.md +0 -14
  121. package/docs/api/player.bottomgear.refresh.md +0 -18
  122. package/docs/api/player.bottomgear.reload.md +0 -18
  123. package/docs/api/player.bottomgear.render.md +0 -18
  124. package/docs/api/player.bottomgear.supportedversion.md +0 -16
  125. package/docs/api/player.bottomgear.template.md +0 -14
  126. package/docs/api/player.bottomgear.togglegearmenu.md +0 -18
  127. package/docs/api/player.bottomgear.unbindevents.md +0 -18
  128. package/docs/api/player.bottomgear.version.md +0 -14
  129. package/docs/api/player.dvrcontrols.attributes.md +0 -14
  130. package/docs/api/player.dvrcontrols.bindevents.md +0 -15
  131. package/docs/api/player.dvrcontrols.click.md +0 -15
  132. package/docs/api/player.dvrcontrols.events.md +0 -13
  133. package/docs/api/player.dvrcontrols.name.md +0 -11
  134. package/docs/api/player.dvrcontrols.render.md +0 -15
  135. package/docs/api/player.dvrcontrols.settingsupdate.md +0 -15
  136. package/docs/api/player.dvrcontrols.shouldrender.md +0 -15
  137. package/docs/api/player.dvrcontrols.supportedversion.md +0 -13
  138. package/docs/api/player.dvrcontrols.template.md +0 -11
  139. package/docs/api/player.levelselector.attributes.md +0 -17
  140. package/docs/api/player.levelselector.bindevents.md +0 -18
  141. package/docs/api/player.levelselector.name.md +0 -14
  142. package/docs/api/player.levelselector.render.md +0 -18
  143. package/docs/api/player.levelselector.supportedversion.md +0 -16
  144. package/docs/api/player.levelselector.version.md +0 -14
  145. package/docs/api/player.mediacontrol.attributes.md +0 -17
  146. package/docs/api/player.mediacontrol.bindcontainerevents.md +0 -18
  147. package/docs/api/player.mediacontrol.bindevents.md +0 -18
  148. package/docs/api/player.mediacontrol.container.md +0 -14
  149. package/docs/api/player.mediacontrol.destroy.md +0 -18
  150. package/docs/api/player.mediacontrol.disabled.md +0 -14
  151. package/docs/api/player.mediacontrol.events.md +0 -40
  152. package/docs/api/player.mediacontrol.getexternalinterface.md +0 -21
  153. package/docs/api/player.mediacontrol.name.md +0 -14
  154. package/docs/api/player.mediacontrol.pause.md +0 -20
  155. package/docs/api/player.mediacontrol.play.md +0 -20
  156. package/docs/api/player.mediacontrol.playback.md +0 -14
  157. package/docs/api/player.mediacontrol.render.md +0 -18
  158. package/docs/api/player.mediacontrol.setmuted.md +0 -52
  159. package/docs/api/player.mediacontrol.stop.md +0 -20
  160. package/docs/api/player.mediacontrol.supportedversion.md +0 -16
  161. package/docs/api/player.poster.attributes.md +0 -14
  162. package/docs/api/player.poster.bindevents.md +0 -15
  163. package/docs/api/player.poster.destroy.md +0 -15
  164. package/docs/api/player.poster.events.md +0 -13
  165. package/docs/api/player.poster.name.md +0 -11
  166. package/docs/api/player.poster.render.md +0 -15
  167. package/docs/api/player.poster.shouldrender.md +0 -11
  168. package/docs/api/player.poster.showonvideoend.md +0 -11
  169. package/docs/api/player.poster.supportedversion.md +0 -13
  170. package/docs/api/player.poster.template.md +0 -11
  171. package/src/plugins/build.ts +0 -1
package/dist/player.d.ts CHANGED
@@ -4,6 +4,7 @@
4
4
  * @remarks
5
5
  * This package provides a video player for the Gcore streaming platform.
6
6
  * It is built on top of the Clappr library and provides a framework for building custom integrations.
7
+ * Start with {@link Player} for more information.
7
8
  *
8
9
  * @packageDocumentation
9
10
  */
@@ -116,34 +117,55 @@ declare type BitrateTrackRecord = {
116
117
  };
117
118
 
118
119
  /**
120
+ * Adds the gear button that triggers extra options menu on the right side of the {@link MediaControl | media control} UI
119
121
  * @beta
122
+ * @remarks
123
+ * The plugins provides a base for attaching custom settings UI in the gear menu
120
124
  */
121
125
  export declare class BottomGear extends UICorePlugin {
122
126
  private isHd;
127
+ /**
128
+ * @internal
129
+ */
123
130
  get name(): string;
131
+ /**
132
+ * @internal
133
+ */
124
134
  get supportedVersion(): {
125
135
  min: string;
126
136
  };
137
+ /**
138
+ * @internal
139
+ */
127
140
  static get version(): string;
128
- get template(): any;
141
+ private static readonly template;
142
+ /**
143
+ * @internal
144
+ */
129
145
  get attributes(): {
130
146
  class: string;
131
147
  'data-track-selector': string;
132
148
  };
149
+ /**
150
+ * @internal
151
+ */
133
152
  get events(): {
134
153
  'click .button-gear': string;
135
154
  };
136
- get container(): any;
155
+ /**
156
+ * @internal
157
+ */
137
158
  bindEvents(): void;
138
- unBindEvents(): void;
139
159
  private onActiveContainerChanged;
140
160
  private bindContainerEvents;
141
- reload(): void;
142
161
  private highDefinitionUpdate;
162
+ /**
163
+ * @internal
164
+ */
143
165
  render(): this;
144
- refresh(): void;
145
- toggleGearMenu(): void;
146
- hide(): void;
166
+ private refresh;
167
+ private toggleGearMenu;
168
+ private hide;
147
169
  }
148
170
 
149
171
  /**
@@ -350,28 +372,54 @@ export declare class DisableControls extends UICorePlugin {
350
372
  private disableAllControls;
351
373
  }
352
374
 
375
+ /**
376
+ * Adds the DVR controls to the media control UI
377
+ * @beta
378
+ *
379
+ * @remarks
380
+ * The plugin is rendered in the {@link MediaControl | media control} UI.
381
+ * It renders the live stream indicator and the DVR seek bar if DVR is enabled.
382
+ */
353
383
  export declare class DvrControls extends UICorePlugin {
354
- get template(): any;
384
+ private static readonly template;
385
+ /**
386
+ * @internal
387
+ */
355
388
  get name(): string;
389
+ /**
390
+ * @internal
391
+ */
356
392
  get supportedVersion(): {
357
393
  min: string;
358
394
  };
395
+ /**
396
+ * @internal
397
+ */
359
398
  get events(): {
360
399
  'click .live-button': string;
361
400
  };
401
+ /**
402
+ * @internal
403
+ */
362
404
  get attributes(): {
363
405
  class: string;
364
406
  'data-dvr-controls': string;
365
407
  };
366
408
  constructor(core: Core);
409
+ /**
410
+ * @internal
411
+ */
367
412
  bindEvents(): void;
368
413
  private bindCoreEvents;
369
414
  private bindContainerEvents;
370
415
  private containerChanged;
371
416
  private dvrChanged;
372
- click(): void;
373
- settingsUpdate(): void;
374
- shouldRender(): boolean;
417
+ private click;
418
+ private settingsUpdate;
419
+ private shouldRender;
420
+ /**
421
+ * @internal
422
+ */
375
423
  render(): this;
376
424
  }
377
425
 
@@ -500,26 +548,27 @@ export declare class Kibo {
500
548
  export declare type LangTag = string;
501
549
 
502
550
  /**
503
- * Allows to control the quality level of the playback.
551
+ * A {@link MediaControl | media control} plugin that provides a UI to control the quality level of the playback.
504
552
  * @beta
505
553
  *
506
554
  * @remarks
507
- * The plugin is rendered as a button in the gear menu.
555
+ * The plugin is rendered as a button in the {@link BottomGear | gear menu}.
508
556
  * When clicked, it shows a list of quality levels to choose from.
509
557
  *
510
558
  * Configuration options:
511
559
  *
512
- * - `labels`: The labels to show in the level selector. [vertical resolution]: string
560
+ * - `labels`: The labels to show in the level selector. [video resolution]: string
561
+ *
513
562
  * - `restrictResolution`: The maximum resolution to allow in the level selector.
514
563
  *
515
564
  * @example
516
565
  * ```ts
517
- * {
566
+ * new Player({
518
567
  * levelSelector: {
519
568
  * restrictResolution: 360,
520
- * labels: { 360: '360p', 720: '720p' },
569
+ * labels: { 360: 'SD', 720: 'HD' },
521
570
  * },
522
- * }
571
+ * })
523
572
  * ```
524
573
  */
525
574
  export declare class LevelSelector extends UICorePlugin {
@@ -530,11 +579,23 @@ export declare class LevelSelector extends UICorePlugin {
530
579
  private isOpen;
531
580
  private buttonTemplate;
532
581
  private listTemplate;
582
+ /**
583
+ * @internal
584
+ */
533
585
  get name(): string;
586
+ /**
587
+ * @internal
588
+ */
534
589
  get supportedVersion(): {
535
590
  min: string;
536
591
  };
592
+ /**
593
+ * @internal
594
+ */
537
595
  static get version(): string;
596
+ /**
597
+ * @internal
598
+ */
538
599
  get attributes(): {
539
600
  class: string;
540
601
  'data-level-selector': string;
@@ -546,10 +607,16 @@ export declare class LevelSelector extends UICorePlugin {
546
607
  'click .gear-option': string;
547
608
  'click .go-back': string;
548
609
  };
610
+ /**
611
+ * @internal
612
+ */
549
613
  bindEvents(): void;
550
614
  private bindPlaybackEvents;
551
615
  private onStop;
552
616
  private shouldRender;
617
+ /**
618
+ * @internal
619
+ */
553
620
  render(): this;
554
621
  private renderButton;
555
622
  private renderDropdown;
@@ -603,11 +670,17 @@ export declare class Logo extends UIContainerPlugin {
603
670
  export { LogTracer }
604
671
 
605
672
  /**
606
- * The MediaControl is responsible for displaying the Player controls.
673
+ * The MediaControl provides a foundation for developing custom media controls UI.
607
674
  * @beta
608
675
  * @remarks
609
- * This plugin provides a foundation for developing a media controls UI via additional plugins.
610
676
  * The methods exposed are to be used by the other plugins that extend the media control UI.
677
+ * The plugin registration should be arranged so that MediaControl is initialized before every other plugin that depends on it.
678
+ * @example
679
+ * ```ts
680
+ * Player.registerPlugin(MediaControl) // <--- This must go first
681
+ * Player.registerPlugin(LevelSelector) // a media control plugin
682
+ * Player.registerPlugin(NerdStats) // another media control plugin
683
+ * ```
611
684
  */
612
685
  export declare class MediaControl extends UICorePlugin {
613
686
  private advertisementPlaying;
@@ -633,7 +706,6 @@ export declare class MediaControl extends UICorePlugin {
633
706
  private persistConfig;
634
707
  private rendered;
635
708
  private settings;
636
- private svgMask;
637
709
  private userDisabled;
638
710
  private userKeepVisible;
639
711
  private verticalVolume;
@@ -662,17 +734,37 @@ export declare class MediaControl extends UICorePlugin {
662
734
  private $volumeContainer;
663
735
  private $volumeIcon;
664
736
  private static readonly template;
737
+ /**
738
+ * @internal
739
+ */
665
740
  get name(): string;
741
+ /**
742
+ * @internal
743
+ */
666
744
  get supportedVersion(): {
667
745
  min: string;
668
746
  };
669
- get disabled(): any;
747
+ private get disabled();
748
+ /**
749
+ * @internal
750
+ * @deprecated
751
+ */
670
752
  get container(): any;
753
+ /**
754
+ * @internal
755
+ * @deprecated
756
+ */
671
757
  get playback(): any;
758
+ /**
759
+ * @internal
760
+ */
672
761
  get attributes(): {
673
762
  class: string;
674
763
  'data-media-control-skin-1': string;
675
764
  };
765
+ /**
766
+ * @internal
767
+ */
676
768
  get events(): {
677
769
  'click [data-play]': string;
678
770
  'click [data-pause]': string;
@@ -701,34 +793,34 @@ export declare class MediaControl extends UICorePlugin {
701
793
  'mouseleave .media-control-layer[data-controls]': string;
702
794
  };
703
795
  /**
704
- * Current volume
796
+ * Current volume [0..100]
705
797
  */
706
- get volume(): any;
798
+ get volume(): number;
707
799
  /**
708
800
  * Muted state
709
801
  */
710
802
  get muted(): boolean;
711
803
  constructor(core: Core);
804
+ /**
805
+ * @internal
806
+ */
712
807
  getExternalInterface(): {
713
808
  setVolume: (value: number, isInitialVolume?: boolean) => void;
714
- getVolume: () => any;
809
+ getVolume: () => number;
715
810
  };
716
- bindEvents(): void;
717
- bindContainerEvents(): void;
718
- disable(): void;
719
- enable(): void;
720
811
  /**
721
- * Start the playback
812
+ * @internal
722
813
  */
723
- play(): void;
814
+ bindEvents(): void;
815
+ private bindContainerEvents;
724
816
  /**
725
- * Pause the playback
817
+ * Disables the plugin and unmounts its UI
726
818
  */
727
- pause(): void;
819
+ disable(): void;
728
820
  /**
729
- * Stop the playback
821
+ * Reenables the plugin disabled earlier with the {@link MediaControl.disable} method
730
822
  */
731
- stop(): void;
823
+ enable(): void;
732
824
  /**
733
825
  * Set the initial volume, which is preserved when playback is interrupted by an advertisement
734
826
  */
@@ -783,7 +875,20 @@ export declare class MediaControl extends UICorePlugin {
783
875
  /**
784
876
  * Get a media control element DOM node
785
877
  * @param name - The name of the media control element
786
- * @returns The DOM node to render the media control element
878
+ * @returns The DOM node to render to or extend
879
+ * @remarks
880
+ * Use this method to render custom media control UI in a plugin
881
+ * @example
882
+ * ```ts
883
+ * class MyPlugin extends UICorePlugin {
884
+ * override render() {
885
+ * const mediaControl = this.core.getPlugin('media_control')
886
+ * const clipText = mediaControl.getElement('clipText')
887
+ * clipText?.el.text('Here we go')
888
+ * return this
889
+ * }
890
+ * }
891
+ * ```
787
892
  */
788
893
  getElement(name: MediaControlElement): ZeptoResult | null;
789
894
  private resetIndicators;
@@ -795,31 +900,37 @@ export declare class MediaControl extends UICorePlugin {
795
900
  private unbindKeyEvents;
796
901
  private parseColors;
797
902
  private applyButtonStyle;
903
+ /**
904
+ * @internal
905
+ */
798
906
  destroy(): UIObject;
799
907
  private configure;
908
+ /**
909
+ * @internal
910
+ */
800
911
  render(): this;
801
912
  private handleFullScreenOnBtn;
802
913
  private onStartAd;
803
914
  private onFinishAd;
804
915
  private hideControllAds;
805
- setMuted(value: boolean): void;
806
916
  private static getPageX;
807
917
  private static getPageY;
808
918
  /**
809
- * Enable the control button
919
+ * Enable the user interaction disabled earlier
810
920
  */
811
921
  enableControlButton(): void;
812
922
  /**
813
- * Disable the control button
923
+ * Disable the user interaction for the control buttons
814
924
  */
815
925
  disabledControlButton(): void;
816
926
  private isSeekEnabledForHtml5Playback;
817
927
  }
818
928
 
819
929
  /**
930
+ * Media control elements, mount points for additional plugins
820
931
  * @beta
821
932
  */
822
- export declare type MediaControlElement = 'clipText' | 'pip' | 'seekBarContainer';
933
+ export declare type MediaControlElement = 'bottomGear' | 'clipText' | 'pip' | 'playbackRate' | 'seekBarContainer';
823
934
 
824
935
  declare type MediaSourceInfo = {
825
936
  live: boolean;
@@ -1064,8 +1175,6 @@ export declare class Player {
1064
1175
  private player;
1065
1176
  private ready;
1066
1177
  private rootNode;
1067
- private tuneInTimerId;
1068
- private tunedIn;
1069
1178
  constructor(config: PlayerConfig);
1070
1179
  /**
1071
1180
  * Adds a listener to a player event
@@ -1228,13 +1337,14 @@ export declare class Player {
1228
1337
  private setConfig;
1229
1338
  private initPlayer;
1230
1339
  private tuneIn;
1340
+ private triggerAutoPlay;
1231
1341
  private safeTriggerEvent;
1232
1342
  private events;
1233
1343
  private buildCoreOptions;
1234
1344
  private configurePlaybacks;
1235
1345
  private buildMediaSourcesList;
1236
1346
  private bindContainerEventListeners;
1237
- private bindSizeManagementListeners;
1347
+ private bindCoreListeners;
1238
1348
  }
1239
1349
 
1240
1350
  /**
@@ -1465,28 +1575,76 @@ export declare type PluginSettings = {
1465
1575
  send: (data: StatisticsRecord) => void;
1466
1576
  };
1467
1577
 
1578
+ /**
1579
+ * Displays a poster image in the background and a big play button on top when playback is stopped
1580
+ * @beta
1581
+ * @remarks
1582
+ * When the playback is stopped, media control UI is disabled.
1583
+ *
1584
+ * Configuration options:
1585
+ *
1586
+ * - `poster.custom` - custom CSS background
1587
+ *
1588
+ * - `poster.showForNoOp` - whether to show the poster when the playback is not started
1589
+ *
1590
+ * - `poster.url` - the URL of the poster image
1591
+ *
1592
+ * - `poster.showOnVideoEnd` - whether to show the poster when the playback is ended
1593
+ *
1594
+ * @example
1595
+ * ```ts
1596
+ * new Player({
1597
+ * ...
1598
+ * poster: {
1599
+ * showForNoOp: true,
1600
+ * url: 'https://via.placeholder.com/150.png',
1601
+ * }
1602
+ * })
1603
+ * ```
1604
+ */
1468
1605
  export declare class Poster extends UIContainerPlugin {
1469
1606
  private hasFatalError;
1470
1607
  private hasStartedPlaying;
1471
1608
  private playRequested;
1472
1609
  private $playButton;
1473
1610
  private $playWrapper;
1611
+ /**
1612
+ * @internal
1613
+ */
1474
1614
  get name(): string;
1615
+ /**
1616
+ * @internal
1617
+ */
1475
1618
  get supportedVersion(): {
1476
1619
  min: string;
1477
1620
  };
1478
- get template(): any;
1479
- get shouldRender(): boolean;
1621
+ private static readonly template;
1622
+ private get shouldRender();
1623
+ /**
1624
+ * @internal
1625
+ */
1480
1626
  get attributes(): {
1481
1627
  class: string;
1482
1628
  'data-poster': string;
1483
1629
  };
1630
+ /**
1631
+ * @internal
1632
+ */
1484
1633
  get events(): {
1485
1634
  click: string;
1486
1635
  };
1487
- get showOnVideoEnd(): boolean;
1636
+ private get showOnVideoEnd();
1637
+ /**
1638
+ * @internal
1639
+ */
1488
1640
  bindEvents(): void;
1641
+ /**
1642
+ * Reenables earlier disabled plugin
1643
+ */
1489
1644
  enable(): void;
1645
+ /**
1646
+ * Disables the plugin, unmounting it from the DOM
1647
+ */
1490
1648
  disable(): void;
1491
1649
  private onError;
1492
1650
  private onPlay;
@@ -1501,7 +1659,13 @@ export declare class Poster extends UIContainerPlugin {
1501
1659
  private updatePoster;
1502
1660
  private showPoster;
1503
1661
  private hidePoster;
1662
+ /**
1663
+ * @internal
1664
+ */
1504
1665
  render(): this;
1666
+ /**
1667
+ * @internal
1668
+ */
1505
1669
  destroy(): this;
1506
1670
  }
1507
1671