@gcorevideo/player 2.20.11 → 2.20.13

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 (66) hide show
  1. package/dist/core.js +26 -2
  2. package/dist/index.css +953 -953
  3. package/dist/index.js +61 -55
  4. package/dist/player.d.ts +47 -15
  5. package/dist/plugins/index.css +1475 -1475
  6. package/dist/plugins/index.js +36 -49
  7. package/docs/api/player.contextmenupluginsettings.md +1 -1
  8. package/docs/api/player.favicon.md +4 -174
  9. package/docs/api/{player.favicon.bindevents.md → player.faviconpluginsettings.faviconcolor.md} +5 -7
  10. package/docs/api/{player.favicon._constructor_.md → player.faviconpluginsettings.md} +17 -8
  11. package/docs/api/player.md +15 -4
  12. package/docs/api/{player.favicon.disable.md → player.mediacontrol.getcenterpanel.md} +4 -4
  13. package/docs/api/{player.favicon.configure.md → player.mediacontrol.getleftpanel.md} +8 -4
  14. package/docs/api/player.mediacontrol.md +30 -11
  15. package/docs/api/player.playbackerror.md +2 -2
  16. package/docs/api/player.playbackerror.origin.md +1 -1
  17. package/docs/api/player.playbackerror.scope.md +1 -1
  18. package/docs/api/player.poster.md +1 -1
  19. package/docs/api/player.sourcecontroller.md +2 -33
  20. package/lib/Player.js +1 -1
  21. package/lib/playback/HTML5Video.d.ts +5 -0
  22. package/lib/playback/HTML5Video.d.ts.map +1 -1
  23. package/lib/playback/HTML5Video.js +21 -0
  24. package/lib/playback/hls-playback/HlsPlayback.d.ts +2 -2
  25. package/lib/playback/hls-playback/HlsPlayback.d.ts.map +1 -1
  26. package/lib/playback/hls-playback/HlsPlayback.js +4 -0
  27. package/lib/playback.types.d.ts +2 -2
  28. package/lib/plugins/click-to-pause/ClickToPause.d.ts.map +1 -1
  29. package/lib/plugins/click-to-pause/ClickToPause.js +0 -4
  30. package/lib/plugins/context-menu/ContextMenu.d.ts +1 -1
  31. package/lib/plugins/dvr-controls/DvrControls.d.ts.map +1 -1
  32. package/lib/plugins/dvr-controls/DvrControls.js +0 -1
  33. package/lib/plugins/error-screen/ErrorScreen.d.ts.map +1 -1
  34. package/lib/plugins/error-screen/ErrorScreen.js +0 -1
  35. package/lib/plugins/favicon/Favicon.d.ts +30 -3
  36. package/lib/plugins/favicon/Favicon.d.ts.map +1 -1
  37. package/lib/plugins/favicon/Favicon.js +28 -35
  38. package/lib/plugins/media-control/MediaControl.d.ts +1 -8
  39. package/lib/plugins/media-control/MediaControl.d.ts.map +1 -1
  40. package/lib/plugins/media-control/MediaControl.js +2 -9
  41. package/lib/plugins/poster/Poster.d.ts +2 -0
  42. package/lib/plugins/poster/Poster.d.ts.map +1 -1
  43. package/lib/plugins/poster/Poster.js +3 -3
  44. package/lib/plugins/source-controller/SourceController.d.ts +3 -0
  45. package/lib/plugins/source-controller/SourceController.d.ts.map +1 -1
  46. package/lib/plugins/source-controller/SourceController.js +3 -0
  47. package/package.json +1 -1
  48. package/src/Player.ts +1 -1
  49. package/src/playback/HTML5Video.ts +29 -1
  50. package/src/playback/__tests__/HTML5Video.test.ts +47 -0
  51. package/src/playback/hls-playback/HlsPlayback.ts +5 -1
  52. package/src/playback.types.ts +2 -2
  53. package/src/plugins/click-to-pause/ClickToPause.ts +0 -5
  54. package/src/plugins/context-menu/ContextMenu.ts +1 -1
  55. package/src/plugins/dvr-controls/DvrControls.ts +0 -1
  56. package/src/plugins/error-screen/ErrorScreen.ts +0 -1
  57. package/src/plugins/favicon/Favicon.ts +38 -41
  58. package/src/plugins/media-control/MediaControl.ts +2 -9
  59. package/src/plugins/poster/Poster.ts +4 -3
  60. package/src/plugins/source-controller/SourceController.ts +3 -0
  61. package/temp/player.api.json +101 -246
  62. package/tsconfig.tsbuildinfo +1 -1
  63. package/docs/api/player.favicon.destroy.md +0 -18
  64. package/docs/api/player.favicon.name.md +0 -14
  65. package/docs/api/player.favicon.supportedversion.md +0 -16
  66. package/docs/api/player.sourcecontroller._constructor_.md +0 -50
@@ -33094,17 +33094,10 @@ function orderByOrderPattern(arr, order) {
33094
33094
  return [...ordered, ...rest];
33095
33095
  }
33096
33096
  /**
33097
- * `PLUGIN` that provides a foundation for developing custom media controls UI.
33097
+ * `PLUGIN` that provides basic playback controls UI and a foundation for developing custom UI.
33098
33098
  * @beta
33099
33099
  * @remarks
33100
33100
  * The methods exposed are to be used by the other plugins that extend the media control UI.
33101
- * The plugin registration should be arranged so that MediaControl is initialized before every other `PLUGIN` that depends on it.
33102
- * @example
33103
- * ```ts
33104
- * Player.registerPlugin(MediaControl) // <--- This must go first
33105
- * Player.registerPlugin(LevelSelector) // a media control plugin
33106
- * Player.registerPlugin(NerdStats) // another media control plugin
33107
- * ```
33108
33101
  */
33109
33102
  class MediaControl extends UICorePlugin {
33110
33103
  advertisementPlaying = false;
@@ -34034,7 +34027,6 @@ class MediaControl extends UICorePlugin {
34034
34027
  return super.destroy();
34035
34028
  }
34036
34029
  configure() {
34037
- // this.advertisementPlaying ? this.disable() : this.enable()
34038
34030
  this.trigger(Events$1.MEDIACONTROL_OPTIONS_CHANGE);
34039
34031
  }
34040
34032
  /**
@@ -37257,7 +37249,7 @@ class ClipsPlugin extends UICorePlugin {
37257
37249
 
37258
37250
  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";
37259
37251
 
37260
- var version$1 = "2.20.11";
37252
+ var version$1 = "2.20.13";
37261
37253
 
37262
37254
  var packages = {
37263
37255
  "node_modules/@clappr/core": {
@@ -37617,7 +37609,6 @@ class ErrorScreen extends UICorePlugin {
37617
37609
  ...this.err,
37618
37610
  reloadIcon: this.options.errorScreen?.noReload ? null : reloadIcon,
37619
37611
  }));
37620
- // TODO append to container instead of core?
37621
37612
  if (!this.el.parentElement) {
37622
37613
  this.core.$el.append(this.el);
37623
37614
  }
@@ -37627,26 +37618,32 @@ class ErrorScreen extends UICorePlugin {
37627
37618
 
37628
37619
  const FAVICON_COLOR = '#567';
37629
37620
  const FAVICON_SELECTOR = 'link[rel="shortcut icon"]';
37630
- // const oldIcon = $(FAVICON_SELECTOR);
37631
37621
  /**
37632
- * `PLUGIN` that adds custom favicon to the player's tab.
37622
+ * `PLUGIN` that changes the favicon according to the player's state.
37633
37623
  * @beta
37624
+ * @remarks
37625
+ * There are three states: stopped, playing and paused.
37634
37626
  */
37635
37627
  class Favicon extends CorePlugin {
37636
- _container = null;
37637
37628
  oldIcon;
37638
37629
  playIcon = null;
37639
37630
  pauseIcon = null;
37640
37631
  stopIcon = null;
37632
+ /**
37633
+ * @internal
37634
+ */
37641
37635
  get name() {
37642
37636
  return 'favicon';
37643
37637
  }
37638
+ /**
37639
+ * @internal
37640
+ */
37644
37641
  get supportedVersion() {
37645
37642
  return { min: CLAPPR_VERSION };
37646
37643
  }
37647
- // get oldIcon() {
37648
- // return oldIcon;
37649
- // }
37644
+ /**
37645
+ * @internal
37646
+ */
37650
37647
  constructor(core) {
37651
37648
  super(core);
37652
37649
  this.oldIcon = $(FAVICON_SELECTOR);
@@ -37654,41 +37651,31 @@ class Favicon extends CorePlugin {
37654
37651
  this.stopIcon = this.createIcon(stopIcon);
37655
37652
  this.changeIcon(this.stopIcon);
37656
37653
  }
37657
- this.configure();
37658
- }
37659
- configure() {
37660
- if (this.core.options.changeFavicon) {
37661
- if (!this.enabled) {
37662
- // @ts-ignore
37663
- this.stopListening(this.core, Events$1.CORE_OPTIONS_CHANGE);
37664
- this.enable();
37665
- }
37666
- }
37667
- else if (this.enabled) {
37668
- this.disable();
37669
- this.listenTo(this.core, Events$1.CORE_OPTIONS_CHANGE, this.configure);
37670
- }
37671
37654
  }
37655
+ /**
37656
+ * @internal
37657
+ */
37672
37658
  bindEvents() {
37673
- this.listenTo(this.core, Events$1.CORE_OPTIONS_CHANGE, this.configure);
37674
37659
  this.listenTo(this.core, Events$1.CORE_ACTIVE_CONTAINER_CHANGED, this.containerChanged);
37675
- this.core.activeContainer && this.containerChanged();
37676
37660
  }
37677
37661
  containerChanged() {
37678
- // @ts-ignore
37679
- this._container && this.stopListening(this._container);
37680
- this._container = this.core.activeContainer;
37681
- this.listenTo(this._container, Events$1.CONTAINER_PLAY, this.setPlayIcon);
37682
- this.listenTo(this._container, Events$1.CONTAINER_PAUSE, this.setPauseIcon);
37683
- this.listenTo(this._container, Events$1.CONTAINER_STOP, this.resetIcon);
37684
- this.listenTo(this._container, Events$1.CONTAINER_ENDED, this.resetIcon);
37685
- this.listenTo(this._container, Events$1.CONTAINER_ERROR, this.resetIcon);
37662
+ this.listenTo(this.core.activeContainer, Events$1.CONTAINER_PLAY, this.setPlayIcon);
37663
+ this.listenTo(this.core.activeContainer, Events$1.CONTAINER_PAUSE, this.setPauseIcon);
37664
+ this.listenTo(this.core.activeContainer, Events$1.CONTAINER_STOP, this.resetIcon);
37665
+ this.listenTo(this.core.activeContainer, Events$1.CONTAINER_ENDED, this.resetIcon);
37666
+ this.listenTo(this.core.activeContainer, Events$1.CONTAINER_ERROR, this.resetIcon);
37686
37667
  this.resetIcon();
37687
37668
  }
37669
+ /**
37670
+ * @internal
37671
+ */
37688
37672
  disable() {
37689
37673
  super.disable();
37690
37674
  this.resetIcon();
37691
37675
  }
37676
+ /**
37677
+ * @internal
37678
+ */
37692
37679
  destroy() {
37693
37680
  super.destroy();
37694
37681
  this.resetIcon();
@@ -37719,15 +37706,12 @@ class Favicon extends CorePlugin {
37719
37706
  this.changeIcon(this.pauseIcon);
37720
37707
  }
37721
37708
  resetIcon() {
37722
- $(FAVICON_SELECTOR).remove();
37723
37709
  const icon = this.oldIcon.length > 0 ? this.oldIcon : this.stopIcon;
37724
37710
  this.changeIcon(icon);
37725
37711
  }
37726
37712
  changeIcon(icon) {
37727
- if (icon) {
37728
- $('link[rel="shortcut icon"]').remove();
37729
- $('head').append(icon);
37730
- }
37713
+ $('link[rel="shortcut icon"]').remove();
37714
+ $('head').append(icon);
37731
37715
  }
37732
37716
  }
37733
37717
 
@@ -39036,6 +39020,8 @@ const T$5 = 'plugins.poster';
39036
39020
  * @beta
39037
39021
  * @remarks
39038
39022
  * When the playback is stopped, media control UI is disabled.
39023
+ * Note that the poster image, if specified via the player config, will be used to update video element's poster attribute by the
39024
+ * HTML5-video-based playback module.
39039
39025
  *
39040
39026
  * Configuration options:
39041
39027
  *
@@ -39059,6 +39045,7 @@ const T$5 = 'plugins.poster';
39059
39045
  * ```
39060
39046
  */
39061
39047
  class Poster extends UIContainerPlugin {
39048
+ // TODO merge non-poster related functionality into the ClickToPause plugin
39062
39049
  hasFatalError = false;
39063
39050
  hasStartedPlaying = false;
39064
39051
  playRequested = false;
@@ -39209,9 +39196,6 @@ class Poster extends UIContainerPlugin {
39209
39196
  this.container.playback.play();
39210
39197
  }
39211
39198
  }
39212
- else {
39213
- this.container.trigger('container:start');
39214
- }
39215
39199
  return false;
39216
39200
  }
39217
39201
  shouldHideOnPlay() {
@@ -39932,6 +39916,9 @@ class SourceController extends CorePlugin {
39932
39916
  get supportedVersion() {
39933
39917
  return { min: CLAPPR_VERSION };
39934
39918
  }
39919
+ /**
39920
+ * @internal
39921
+ */
39935
39922
  constructor(core) {
39936
39923
  super(core);
39937
39924
  this.sourcesList = this.core.options.sources;
@@ -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 a context menu to the player.
10
+ Context menu plugin settings
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 adds custom favicon to the player's tab.
10
+ `PLUGIN` that changes the favicon according to the player's state.
11
11
 
12
12
  **Signature:**
13
13
 
@@ -16,179 +16,9 @@ export declare class Favicon extends CorePlugin
16
16
  ```
17
17
  **Extends:** CorePlugin
18
18
 
19
- ## Constructors
19
+ ## Remarks
20
20
 
21
- <table><thead><tr><th>
21
+ There are three states: stopped, playing and paused.
22
22
 
23
- Constructor
23
+ The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `Favicon` class.
24
24
 
25
-
26
- </th><th>
27
-
28
- Modifiers
29
-
30
-
31
- </th><th>
32
-
33
- Description
34
-
35
-
36
- </th></tr></thead>
37
- <tbody><tr><td>
38
-
39
- [(constructor)(core)](./player.favicon._constructor_.md)
40
-
41
-
42
- </td><td>
43
-
44
-
45
- </td><td>
46
-
47
- **_(BETA)_** Constructs a new instance of the `Favicon` class
48
-
49
-
50
- </td></tr>
51
- </tbody></table>
52
-
53
- ## Properties
54
-
55
- <table><thead><tr><th>
56
-
57
- Property
58
-
59
-
60
- </th><th>
61
-
62
- Modifiers
63
-
64
-
65
- </th><th>
66
-
67
- Type
68
-
69
-
70
- </th><th>
71
-
72
- Description
73
-
74
-
75
- </th></tr></thead>
76
- <tbody><tr><td>
77
-
78
- [name](./player.favicon.name.md)
79
-
80
-
81
- </td><td>
82
-
83
- `readonly`
84
-
85
-
86
- </td><td>
87
-
88
- string
89
-
90
-
91
- </td><td>
92
-
93
- **_(BETA)_**
94
-
95
-
96
- </td></tr>
97
- <tr><td>
98
-
99
- [supportedVersion](./player.favicon.supportedversion.md)
100
-
101
-
102
- </td><td>
103
-
104
- `readonly`
105
-
106
-
107
- </td><td>
108
-
109
- { min: string; }
110
-
111
-
112
- </td><td>
113
-
114
- **_(BETA)_**
115
-
116
-
117
- </td></tr>
118
- </tbody></table>
119
-
120
- ## Methods
121
-
122
- <table><thead><tr><th>
123
-
124
- Method
125
-
126
-
127
- </th><th>
128
-
129
- Modifiers
130
-
131
-
132
- </th><th>
133
-
134
- Description
135
-
136
-
137
- </th></tr></thead>
138
- <tbody><tr><td>
139
-
140
- [bindEvents()](./player.favicon.bindevents.md)
141
-
142
-
143
- </td><td>
144
-
145
-
146
- </td><td>
147
-
148
- **_(BETA)_**
149
-
150
-
151
- </td></tr>
152
- <tr><td>
153
-
154
- [configure()](./player.favicon.configure.md)
155
-
156
-
157
- </td><td>
158
-
159
-
160
- </td><td>
161
-
162
- **_(BETA)_**
163
-
164
-
165
- </td></tr>
166
- <tr><td>
167
-
168
- [destroy()](./player.favicon.destroy.md)
169
-
170
-
171
- </td><td>
172
-
173
-
174
- </td><td>
175
-
176
- **_(BETA)_**
177
-
178
-
179
- </td></tr>
180
- <tr><td>
181
-
182
- [disable()](./player.favicon.disable.md)
183
-
184
-
185
- </td><td>
186
-
187
-
188
- </td><td>
189
-
190
- **_(BETA)_**
191
-
192
-
193
- </td></tr>
194
- </tbody></table>
@@ -1,18 +1,16 @@
1
1
  <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
2
 
3
- [Home](./index.md) &gt; [@gcorevideo/player](./player.md) &gt; [Favicon](./player.favicon.md) &gt; [bindEvents](./player.favicon.bindevents.md)
3
+ [Home](./index.md) &gt; [@gcorevideo/player](./player.md) &gt; [FaviconPluginSettings](./player.faviconpluginsettings.md) &gt; [faviconColor](./player.faviconpluginsettings.faviconcolor.md)
4
4
 
5
- ## Favicon.bindEvents() method
5
+ ## FaviconPluginSettings.faviconColor property
6
6
 
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
+ CSS color of the favicon.
11
+
10
12
  **Signature:**
11
13
 
12
14
  ```typescript
13
- bindEvents(): void;
15
+ faviconColor?: string;
14
16
  ```
15
- **Returns:**
16
-
17
- void
18
-
@@ -1,25 +1,29 @@
1
1
  <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
2
 
3
- [Home](./index.md) &gt; [@gcorevideo/player](./player.md) &gt; [Favicon](./player.favicon.md) &gt; [(constructor)](./player.favicon._constructor_.md)
3
+ [Home](./index.md) &gt; [@gcorevideo/player](./player.md) &gt; [FaviconPluginSettings](./player.faviconpluginsettings.md)
4
4
 
5
- ## Favicon.(constructor)
5
+ ## FaviconPluginSettings interface
6
6
 
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
- Constructs a new instance of the `Favicon` class
11
10
 
12
11
  **Signature:**
13
12
 
14
13
  ```typescript
15
- constructor(core: Core);
14
+ export interface FaviconPluginSettings
16
15
  ```
17
16
 
18
- ## Parameters
17
+ ## Properties
19
18
 
20
19
  <table><thead><tr><th>
21
20
 
22
- Parameter
21
+ Property
22
+
23
+
24
+ </th><th>
25
+
26
+ Modifiers
23
27
 
24
28
 
25
29
  </th><th>
@@ -35,16 +39,21 @@ Description
35
39
  </th></tr></thead>
36
40
  <tbody><tr><td>
37
41
 
38
- core
42
+ [faviconColor?](./player.faviconpluginsettings.faviconcolor.md)
39
43
 
40
44
 
41
45
  </td><td>
42
46
 
43
- Core
47
+
48
+ </td><td>
49
+
50
+ string
44
51
 
45
52
 
46
53
  </td><td>
47
54
 
55
+ **_(BETA)_** _(Optional)_ CSS color of the favicon.
56
+
48
57
 
49
58
  </td></tr>
50
59
  </tbody></table>
@@ -8,7 +8,7 @@ Video player for the Gcore streaming platform
8
8
 
9
9
  ## Remarks
10
10
 
11
- This package provides a video player for the Gcore streaming platform. It is built on top of the Clappr library and provides a framework for building custom integrations. Start with [Player](./player.player.md) for more information.
11
+ This package provides a video player for the Gcore streaming platform. It is built on top of the [Clappr](https://github.com/clappr/clappr) library and provides a framework for building custom integrations. Start with [Player](./player.player.md) for more information.
12
12
 
13
13
  Various plugins (marked with `PLUGIN` keyword) are available to extend the player with additional features.
14
14
 
@@ -160,7 +160,7 @@ Description
160
160
 
161
161
  </td><td>
162
162
 
163
- **_(BETA)_** `PLUGIN` that adds custom favicon to the player's tab.
163
+ **_(BETA)_** `PLUGIN` that changes the favicon according to the player's state.
164
164
 
165
165
 
166
166
  </td></tr>
@@ -204,7 +204,7 @@ Description
204
204
 
205
205
  </td><td>
206
206
 
207
- **_(BETA)_** `PLUGIN` that provides a foundation for developing custom media controls UI.
207
+ **_(BETA)_** `PLUGIN` that provides basic playback controls UI and a foundation for developing custom UI.
208
208
 
209
209
 
210
210
  </td></tr>
@@ -502,7 +502,18 @@ Description
502
502
 
503
503
  </td><td>
504
504
 
505
- **_(BETA)_** The plugin adds a context menu to the player.
505
+ **_(BETA)_** Context menu plugin settings
506
+
507
+
508
+ </td></tr>
509
+ <tr><td>
510
+
511
+ [FaviconPluginSettings](./player.faviconpluginsettings.md)
512
+
513
+
514
+ </td><td>
515
+
516
+ **_(BETA)_**
506
517
 
507
518
 
508
519
  </td></tr>
@@ -1,8 +1,8 @@
1
1
  <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
2
 
3
- [Home](./index.md) &gt; [@gcorevideo/player](./player.md) &gt; [Favicon](./player.favicon.md) &gt; [disable](./player.favicon.disable.md)
3
+ [Home](./index.md) &gt; [@gcorevideo/player](./player.md) &gt; [MediaControl](./player.mediacontrol.md) &gt; [getCenterPanel](./player.mediacontrol.getcenterpanel.md)
4
4
 
5
- ## Favicon.disable() method
5
+ ## MediaControl.getCenterPanel() method
6
6
 
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
  >
@@ -10,9 +10,9 @@
10
10
  **Signature:**
11
11
 
12
12
  ```typescript
13
- disable(): void;
13
+ getCenterPanel(): any;
14
14
  ```
15
15
  **Returns:**
16
16
 
17
- void
17
+ any
18
18
 
@@ -1,18 +1,22 @@
1
1
  <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
2
 
3
- [Home](./index.md) &gt; [@gcorevideo/player](./player.md) &gt; [Favicon](./player.favicon.md) &gt; [configure](./player.favicon.configure.md)
3
+ [Home](./index.md) &gt; [@gcorevideo/player](./player.md) &gt; [MediaControl](./player.mediacontrol.md) &gt; [getLeftPanel](./player.mediacontrol.getleftpanel.md)
4
4
 
5
- ## Favicon.configure() method
5
+ ## MediaControl.getLeftPanel() method
6
6
 
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
+ Get the left panel area to append custom elements to
11
+
10
12
  **Signature:**
11
13
 
12
14
  ```typescript
13
- configure(): void;
15
+ getLeftPanel(): any;
14
16
  ```
15
17
  **Returns:**
16
18
 
17
- void
19
+ any
20
+
21
+ ZeptoSelector of the left panel element
18
22
 
@@ -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 provides a foundation for developing custom media controls UI.
10
+ `PLUGIN` that provides basic playback controls UI and a foundation for developing custom UI.
11
11
 
12
12
  **Signature:**
13
13
 
@@ -18,16 +18,7 @@ export declare class MediaControl extends UICorePlugin
18
18
 
19
19
  ## Remarks
20
20
 
21
- The methods exposed are to be used by the other plugins that extend the media control UI. The plugin registration should be arranged so that MediaControl is initialized before every other `PLUGIN` that depends on it.
22
-
23
- ## Example
24
-
25
-
26
- ```ts
27
- Player.registerPlugin(MediaControl) // <--- This must go first
28
- Player.registerPlugin(LevelSelector) // a media control plugin
29
- Player.registerPlugin(NerdStats) // another media control plugin
30
- ```
21
+ The methods exposed are to be used by the other plugins that extend the media control UI.
31
22
 
32
23
  ## Constructors
33
24
 
@@ -224,6 +215,20 @@ Description
224
215
  **_(BETA)_** Enable the user interaction disabled earlier
225
216
 
226
217
 
218
+ </td></tr>
219
+ <tr><td>
220
+
221
+ [getCenterPanel()](./player.mediacontrol.getcenterpanel.md)
222
+
223
+
224
+ </td><td>
225
+
226
+
227
+ </td><td>
228
+
229
+ **_(BETA)_**
230
+
231
+
227
232
  </td></tr>
228
233
  <tr><td>
229
234
 
@@ -238,6 +243,20 @@ Description
238
243
  **_(BETA)_** Get a media control element DOM node
239
244
 
240
245
 
246
+ </td></tr>
247
+ <tr><td>
248
+
249
+ [getLeftPanel()](./player.mediacontrol.getleftpanel.md)
250
+
251
+
252
+ </td><td>
253
+
254
+
255
+ </td><td>
256
+
257
+ **_(BETA)_** Get the left panel area to append custom elements to
258
+
259
+
241
260
  </td></tr>
242
261
  <tr><td>
243
262
 
@@ -126,7 +126,7 @@ string
126
126
 
127
127
  </td><td>
128
128
 
129
- Exact component that originated the error.
129
+ Name of the component that originated the error.
130
130
 
131
131
 
132
132
  </td></tr>
@@ -145,7 +145,7 @@ Exact component that originated the error.
145
145
 
146
146
  </td><td>
147
147
 
148
- Component subsystem of the error origin
148
+ Component subsystem of the error origin, together with the `origin` uniquely identifies the originating component.
149
149
 
150
150
 
151
151
  </td></tr>
@@ -4,7 +4,7 @@
4
4
 
5
5
  ## PlaybackError.origin property
6
6
 
7
- Exact component that originated the error.
7
+ Name of the component that originated the error.
8
8
 
9
9
  **Signature:**
10
10
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  ## PlaybackError.scope property
6
6
 
7
- Component subsystem of the error origin
7
+ Component subsystem of the error origin, together with the `origin` uniquely identifies the originating component.
8
8
 
9
9
  **Signature:**
10
10
 
@@ -18,7 +18,7 @@ export declare class Poster extends UIContainerPlugin
18
18
 
19
19
  ## Remarks
20
20
 
21
- When the playback is stopped, media control UI is disabled.
21
+ When the playback is stopped, media control UI is disabled. Note that the poster image, if specified via the player config, will be used to update video element's poster attribute by the HTML5-video-based playback module.
22
22
 
23
23
  Configuration options:
24
24