@gcorevideo/player 2.27.0 → 2.28.1

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.
@@ -42831,6 +42831,32 @@ class Player {
42831
42831
  isPlaying() {
42832
42832
  return this.player?.isPlaying() ?? false;
42833
42833
  }
42834
+ /**
42835
+ * Loads new media source
42836
+ * @param mediaSources - list of media sources to use
42837
+ * @beta
42838
+ */
42839
+ load(mediaSources) {
42840
+ if (mediaSources.length === 0) {
42841
+ throw new Error('No media sources provided');
42842
+ }
42843
+ trace('load', {
42844
+ player: !!this.player,
42845
+ });
42846
+ if (!this.player) {
42847
+ this.configure({
42848
+ sources: mediaSources,
42849
+ });
42850
+ return;
42851
+ }
42852
+ const ms = mediaSources.map((s) => wrapSource(s));
42853
+ const sourceController = this.player?.core.getPlugin('source_controller');
42854
+ if (sourceController) {
42855
+ sourceController.setMediaSource(ms);
42856
+ return;
42857
+ }
42858
+ this.player?.load(ms, ms[0].mimeType ?? '');
42859
+ }
42834
42860
  /**
42835
42861
  * Mutes the sound of the video.
42836
42862
  */
package/dist/index.js CHANGED
@@ -42995,6 +42995,33 @@ class Player {
42995
42995
  isPlaying() {
42996
42996
  return this.player?.isPlaying() ?? false;
42997
42997
  }
42998
+ /**
42999
+ * Loads new media source
43000
+ * @param mediaSources - list of media sources to use
43001
+ * @beta
43002
+ */
43003
+ load(mediaSources) {
43004
+ if (mediaSources.length === 0) {
43005
+ throw new Error('No media sources provided');
43006
+ }
43007
+ trace('load', {
43008
+ mediaSources,
43009
+ player: !!this.player,
43010
+ });
43011
+ if (!this.player) {
43012
+ this.configure({
43013
+ sources: mediaSources,
43014
+ });
43015
+ return;
43016
+ }
43017
+ const ms = mediaSources.map((s) => wrapSource(s));
43018
+ const sourceController = this.player?.core.getPlugin('source_controller');
43019
+ if (sourceController) {
43020
+ sourceController.setMediaSource(ms);
43021
+ return;
43022
+ }
43023
+ this.player?.load(ms, ms[0].mimeType ?? '');
43024
+ }
42998
43025
  /**
42999
43026
  * Mutes the sound of the video.
43000
43027
  */
@@ -43266,7 +43293,7 @@ class Player {
43266
43293
  }
43267
43294
  }
43268
43295
 
43269
- var version$1 = "2.27.0";
43296
+ var version$1 = "2.28.1";
43270
43297
 
43271
43298
  var packages = {
43272
43299
  "node_modules/@clappr/core": {
@@ -51380,6 +51407,9 @@ class SourceController extends CorePlugin {
51380
51407
  * Triggers a reload of the playback module, container and all container plugins.
51381
51408
  */
51382
51409
  setMediaSource(sourcesList) {
51410
+ trace('setMediaSource', {
51411
+ sourcesList,
51412
+ });
51383
51413
  this.sourcesList = sourcesList;
51384
51414
  this.core.load(sourcesList, this.core.options.mimeType);
51385
51415
  }
package/dist/player.d.ts CHANGED
@@ -2060,6 +2060,12 @@ export declare class ClapprStats extends ContainerPlugin {
2060
2060
  * Indicates the playing state.
2061
2061
  */
2062
2062
  isPlaying(): boolean;
2063
+ /**
2064
+ * Loads new media source
2065
+ * @param mediaSources - list of media sources to use
2066
+ * @beta
2067
+ */
2068
+ load(mediaSources: PlayerMediaSource[]): void;
2063
2069
  /**
2064
2070
  * Mutes the sound of the video.
2065
2071
  */
@@ -0,0 +1,56 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@gcorevideo/player](./player.md) &gt; [Player](./player.player.md) &gt; [load](./player.player.load.md)
4
+
5
+ ## Player.load() method
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
+ Loads new media source
11
+
12
+ **Signature:**
13
+
14
+ ```typescript
15
+ load(mediaSources: PlayerMediaSource[]): void;
16
+ ```
17
+
18
+ ## Parameters
19
+
20
+ <table><thead><tr><th>
21
+
22
+ Parameter
23
+
24
+
25
+ </th><th>
26
+
27
+ Type
28
+
29
+
30
+ </th><th>
31
+
32
+ Description
33
+
34
+
35
+ </th></tr></thead>
36
+ <tbody><tr><td>
37
+
38
+ mediaSources
39
+
40
+
41
+ </td><td>
42
+
43
+ [PlayerMediaSource](./player.playermediasource.md)<!-- -->\[\]
44
+
45
+
46
+ </td><td>
47
+
48
+ list of media sources to use
49
+
50
+
51
+ </td></tr>
52
+ </tbody></table>
53
+ **Returns:**
54
+
55
+ void
56
+
@@ -207,6 +207,20 @@ Indicates muted state of the video.
207
207
  Indicates the playing state.
208
208
 
209
209
 
210
+ </td></tr>
211
+ <tr><td>
212
+
213
+ [load(mediaSources)](./player.player.load.md)
214
+
215
+
216
+ </td><td>
217
+
218
+
219
+ </td><td>
220
+
221
+ **_(BETA)_** Loads new media source
222
+
223
+
210
224
  </td></tr>
211
225
  <tr><td>
212
226
 
package/lib/Player.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { ContainerSize, PlayerPluginConstructor } from './types.js';
1
+ import type { ContainerSize, PlayerMediaSource, PlayerPluginConstructor } from './types.js';
2
2
  import { PlayerConfig, PlayerEvent } from './types.js';
3
3
  import { PlaybackError, TimePosition } from './playback.types.js';
4
4
  /**
@@ -126,6 +126,12 @@ export declare class Player {
126
126
  * Indicates the playing state.
127
127
  */
128
128
  isPlaying(): boolean;
129
+ /**
130
+ * Loads new media source
131
+ * @param mediaSources - list of media sources to use
132
+ * @beta
133
+ */
134
+ load(mediaSources: PlayerMediaSource[]): void;
129
135
  /**
130
136
  * Mutes the sound of the video.
131
137
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Player.d.ts","sourceRoot":"","sources":["../src/Player.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Player.d.ts","sourceRoot":"","sources":["../src/Player.ts"],"names":[],"mappings":"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"}
package/lib/Player.js CHANGED
@@ -172,6 +172,33 @@ export class Player {
172
172
  isPlaying() {
173
173
  return this.player?.isPlaying() ?? false;
174
174
  }
175
+ /**
176
+ * Loads new media source
177
+ * @param mediaSources - list of media sources to use
178
+ * @beta
179
+ */
180
+ load(mediaSources) {
181
+ if (mediaSources.length === 0) {
182
+ throw new Error('No media sources provided');
183
+ }
184
+ trace('load', {
185
+ mediaSources,
186
+ player: !!this.player,
187
+ });
188
+ if (!this.player) {
189
+ this.configure({
190
+ sources: mediaSources,
191
+ });
192
+ return;
193
+ }
194
+ const ms = mediaSources.map((s) => wrapSource(s));
195
+ const sourceController = this.player?.core.getPlugin('source_controller');
196
+ if (sourceController) {
197
+ sourceController.setMediaSource(ms);
198
+ return;
199
+ }
200
+ this.player?.load(ms, ms[0].mimeType ?? '');
201
+ }
175
202
  /**
176
203
  * Mutes the sound of the video.
177
204
  */
@@ -1 +1 @@
1
- {"version":3,"file":"SourceController.d.ts","sourceRoot":"","sources":["../../../src/plugins/source-controller/SourceController.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EACV,KAAK,IAAI,IAAI,UAAU,EACxB,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAsB3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,qBAAa,gBAAiB,SAAQ,UAAU;IAwC9C,OAAO,CAAC,WAAW,CAA8B;IAEjD,OAAO,CAAC,kBAAkB,CAAI;IAE9B,OAAO,CAAC,YAAY,CAA6B;IAEjD,OAAO,CAAC,MAAM,CAAQ;IAEtB,OAAO,CAAC,QAAQ,CAAQ;IAExB,OAAO,CAAC,SAAS,CAAQ;IAEzB,OAAO,CAAC,IAAI,CAAiB;IAE7B;;OAEG;IACH,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,IAAI,gBAAgB;;MAEnB;IAED;;OAEG;gBACS,IAAI,EAAE,UAAU;IAY5B;;;;;;;OAOG;IACH,cAAc,CAAC,WAAW,EAAE,qBAAqB,EAAE;IAKnD;;OAEG;IACM,UAAU;IAWnB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,wBAAwB;IAgBhC,OAAO,CAAC,2BAA2B;IAiDnC,OAAO,CAAC,KAAK;IAKb,OAAO,CAAC,aAAa;IAgCrB,OAAO,CAAC,kBAAkB;IAe1B;;OAEG;IACH,MAAM,KAAK,OAAO,WAEjB;CACF"}
1
+ {"version":3,"file":"SourceController.d.ts","sourceRoot":"","sources":["../../../src/plugins/source-controller/SourceController.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EACV,KAAK,IAAI,IAAI,UAAU,EACxB,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAsB3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,qBAAa,gBAAiB,SAAQ,UAAU;IAwC9C,OAAO,CAAC,WAAW,CAA8B;IAEjD,OAAO,CAAC,kBAAkB,CAAI;IAE9B,OAAO,CAAC,YAAY,CAA6B;IAEjD,OAAO,CAAC,MAAM,CAAQ;IAEtB,OAAO,CAAC,QAAQ,CAAQ;IAExB,OAAO,CAAC,SAAS,CAAQ;IAEzB,OAAO,CAAC,IAAI,CAAiB;IAE7B;;OAEG;IACH,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,IAAI,gBAAgB;;MAEnB;IAED;;OAEG;gBACS,IAAI,EAAE,UAAU;IAY5B;;;;;;;OAOG;IACH,cAAc,CAAC,WAAW,EAAE,qBAAqB,EAAE;IAQnD;;OAEG;IACM,UAAU;IAWnB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,wBAAwB;IAgBhC,OAAO,CAAC,2BAA2B;IAiDnC,OAAO,CAAC,KAAK;IAKb,OAAO,CAAC,aAAa;IAgCrB,OAAO,CAAC,kBAAkB;IAe1B;;OAEG;IACH,MAAM,KAAK,OAAO,WAEjB;CACF"}
@@ -144,6 +144,9 @@ export class SourceController extends CorePlugin {
144
144
  * Triggers a reload of the playback module, container and all container plugins.
145
145
  */
146
146
  setMediaSource(sourcesList) {
147
+ trace('setMediaSource', {
148
+ sourcesList,
149
+ });
147
150
  this.sourcesList = sourcesList;
148
151
  this.core.load(sourcesList, this.core.options.mimeType);
149
152
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gcorevideo/player",
3
- "version": "2.27.0",
3
+ "version": "2.28.1",
4
4
  "description": "Gcore JavaScript video player",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
package/src/Player.ts CHANGED
@@ -17,6 +17,7 @@ import type {
17
17
  } from './internal.types.js'
18
18
  import type {
19
19
  ContainerSize,
20
+ PlayerMediaSource,
20
21
  PlayerMediaSourceDesc,
21
22
  PlayerPluginConstructor,
22
23
  } from './types.js'
@@ -24,6 +25,7 @@ import { PlayerConfig, PlayerEvent } from './types.js'
24
25
  import { buildMediaSourcesList, wrapSource } from './utils/mediaSources.js'
25
26
  import { registerPlaybacks } from './playback/index.js'
26
27
  import { PlaybackError, TimePosition } from './playback.types.js'
28
+ import { SourceController } from './plugins/source-controller/SourceController.js'
27
29
 
28
30
  /**
29
31
  * @public
@@ -246,6 +248,36 @@ export class Player {
246
248
  return this.player?.isPlaying() ?? false
247
249
  }
248
250
 
251
+ /**
252
+ * Loads new media source
253
+ * @param mediaSources - list of media sources to use
254
+ * @beta
255
+ */
256
+ load(mediaSources: PlayerMediaSource[]) {
257
+ if (mediaSources.length === 0) {
258
+ throw new Error('No media sources provided')
259
+ }
260
+ trace('load', {
261
+ mediaSources,
262
+ player: !!this.player,
263
+ })
264
+ if (!this.player) {
265
+ this.configure({
266
+ sources: mediaSources,
267
+ })
268
+ return
269
+ }
270
+ const ms = mediaSources.map((s) => wrapSource(s))
271
+ const sourceController = this.player?.core.getPlugin(
272
+ 'source_controller',
273
+ ) as SourceController
274
+ if (sourceController) {
275
+ sourceController.setMediaSource(ms)
276
+ return
277
+ }
278
+ this.player?.load(ms, ms[0].mimeType ?? '')
279
+ }
280
+
249
281
  /**
250
282
  * Mutes the sound of the video.
251
283
  */
@@ -168,6 +168,9 @@ export class SourceController extends CorePlugin {
168
168
  * Triggers a reload of the playback module, container and all container plugins.
169
169
  */
170
170
  setMediaSource(sourcesList: PlayerMediaSourceDesc[]) {
171
+ trace('setMediaSource', {
172
+ sourcesList,
173
+ })
171
174
  this.sourcesList = sourcesList
172
175
  this.core.load(sourcesList, this.core.options.mimeType)
173
176
  }
@@ -5587,6 +5587,59 @@
5587
5587
  "isAbstract": false,
5588
5588
  "name": "isPlaying"
5589
5589
  },
5590
+ {
5591
+ "kind": "Method",
5592
+ "canonicalReference": "@gcorevideo/player!Player#load:member(1)",
5593
+ "docComment": "/**\n * Loads new media source\n *\n * @param mediaSources - list of media sources to use\n *\n * @beta\n */\n",
5594
+ "excerptTokens": [
5595
+ {
5596
+ "kind": "Content",
5597
+ "text": "load(mediaSources: "
5598
+ },
5599
+ {
5600
+ "kind": "Reference",
5601
+ "text": "PlayerMediaSource",
5602
+ "canonicalReference": "@gcorevideo/player!PlayerMediaSource:type"
5603
+ },
5604
+ {
5605
+ "kind": "Content",
5606
+ "text": "[]"
5607
+ },
5608
+ {
5609
+ "kind": "Content",
5610
+ "text": "): "
5611
+ },
5612
+ {
5613
+ "kind": "Content",
5614
+ "text": "void"
5615
+ },
5616
+ {
5617
+ "kind": "Content",
5618
+ "text": ";"
5619
+ }
5620
+ ],
5621
+ "isStatic": false,
5622
+ "returnTypeTokenRange": {
5623
+ "startIndex": 4,
5624
+ "endIndex": 5
5625
+ },
5626
+ "releaseTag": "Beta",
5627
+ "isProtected": false,
5628
+ "overloadIndex": 1,
5629
+ "parameters": [
5630
+ {
5631
+ "parameterName": "mediaSources",
5632
+ "parameterTypeTokenRange": {
5633
+ "startIndex": 1,
5634
+ "endIndex": 3
5635
+ },
5636
+ "isOptional": false
5637
+ }
5638
+ ],
5639
+ "isOptional": false,
5640
+ "isAbstract": false,
5641
+ "name": "load"
5642
+ },
5590
5643
  {
5591
5644
  "kind": "Method",
5592
5645
  "canonicalReference": "@gcorevideo/player!Player#mute:member(1)",