@gcorevideo/player 2.16.17 → 2.18.0

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 (91) hide show
  1. package/README.md +68 -19
  2. package/dist/index.js +272 -125
  3. package/dist/player.d.ts +230 -73
  4. package/docs/api/index.md +1 -1
  5. package/docs/api/player.containersize.md +19 -0
  6. package/docs/api/player.dashsettings.md +2 -0
  7. package/docs/api/player.errorlevel.md +1 -0
  8. package/docs/api/player.langtag.md +6 -0
  9. package/docs/api/player.md +59 -24
  10. package/docs/api/player.mediatransport.md +1 -0
  11. package/docs/api/player.playbackerror.code.md +2 -0
  12. package/docs/api/player.playbackerror.description.md +2 -0
  13. package/docs/api/player.playbackerror.level.md +2 -0
  14. package/docs/api/player.playbackerror.md +43 -4
  15. package/docs/api/player.playbackerror.message.md +2 -0
  16. package/docs/api/player.playbackerror.origin.md +21 -0
  17. package/docs/api/player.playbackerror.scope.md +16 -0
  18. package/docs/api/player.playbackerrorcode.md +8 -7
  19. package/docs/api/player.playbackmodule.md +1 -0
  20. package/docs/api/player.player.attachto.md +26 -0
  21. package/docs/api/player.player.configure.md +6 -2
  22. package/docs/api/player.player.destroy.md +1 -1
  23. package/docs/api/player.player.getcurrenttime.md +6 -2
  24. package/docs/api/player.player.getduration.md +4 -0
  25. package/docs/api/player.player.getvolume.md +22 -0
  26. package/docs/api/player.player.isdvrenabled.md +20 -0
  27. package/docs/api/player.player.isdvrinuse.md +24 -0
  28. package/docs/api/player.player.isplaying.md +20 -0
  29. package/docs/api/player.player.md +76 -8
  30. package/docs/api/player.player.mute.md +1 -1
  31. package/docs/api/player.player.off.md +5 -5
  32. package/docs/api/player.player.on.md +5 -5
  33. package/docs/api/player.player.registerplugin.md +14 -1
  34. package/docs/api/player.player.resize.md +6 -5
  35. package/docs/api/player.player.seek.md +1 -1
  36. package/docs/api/player.player.setvolume.md +56 -0
  37. package/docs/api/player.player.unmute.md +1 -1
  38. package/docs/api/player.player.unregisterplugin.md +2 -2
  39. package/docs/api/player.playercomponenttype.md +16 -0
  40. package/docs/api/player.playerdebugsettings.md +1 -1
  41. package/docs/api/player.playerdebugtag.md +1 -0
  42. package/docs/api/player.playerevent.md +96 -0
  43. package/docs/api/player.playereventhandler.md +3 -2
  44. package/docs/api/player.playereventparams.md +20 -0
  45. package/docs/api/player.playermediasourcedesc.md +1 -1
  46. package/docs/api/player.playermediasourcedesc.mimetype.md +1 -1
  47. package/docs/api/player.qualitylevel.bitrate.md +16 -0
  48. package/docs/api/player.qualitylevel.height.md +16 -0
  49. package/docs/api/player.qualitylevel.level.md +16 -0
  50. package/docs/api/player.qualitylevel.md +104 -7
  51. package/docs/api/player.qualitylevel.width.md +16 -0
  52. package/docs/api/player.timeposition.current.md +16 -0
  53. package/docs/api/player.timeposition.md +65 -7
  54. package/docs/api/player.timeposition.total.md +16 -0
  55. package/docs/api/player.timevalue.md +1 -1
  56. package/docs/api/player.translationsettings.md +7 -1
  57. package/docs/api/player.transportpreference.md +1 -0
  58. package/lib/Player.d.ts +107 -26
  59. package/lib/Player.d.ts.map +1 -1
  60. package/lib/Player.js +161 -77
  61. package/lib/index.d.ts +2 -3
  62. package/lib/index.d.ts.map +1 -1
  63. package/lib/index.js +2 -3
  64. package/lib/internal.types.d.ts +3 -5
  65. package/lib/internal.types.d.ts.map +1 -1
  66. package/lib/playback/dash-playback/DashPlayback.d.ts +2 -0
  67. package/lib/playback/dash-playback/DashPlayback.d.ts.map +1 -1
  68. package/lib/playback/dash-playback/DashPlayback.js +37 -25
  69. package/lib/playback/hls-playback/HlsPlayback.d.ts +3 -0
  70. package/lib/playback/hls-playback/HlsPlayback.d.ts.map +1 -1
  71. package/lib/playback/hls-playback/HlsPlayback.js +33 -18
  72. package/lib/playback.types.d.ts +65 -6
  73. package/lib/playback.types.d.ts.map +1 -1
  74. package/lib/playback.types.js +10 -0
  75. package/lib/types.d.ts +54 -5
  76. package/lib/types.d.ts.map +1 -1
  77. package/lib/types.js +31 -2
  78. package/package.json +1 -1
  79. package/rollup.config.js +1 -1
  80. package/src/Player.ts +202 -91
  81. package/src/__tests__/Player.test.ts +9 -3
  82. package/src/index.ts +2 -3
  83. package/src/internal.types.ts +3 -2
  84. package/src/playback/dash-playback/DashPlayback.ts +64 -35
  85. package/src/playback/hls-playback/HlsPlayback.ts +46 -22
  86. package/src/playback.types.ts +65 -5
  87. package/src/types.ts +56 -6
  88. package/src/utils/__tests__/mediaSources.test.ts +8 -2
  89. package/temp/player.api.json +771 -106
  90. package/tsconfig.tsbuildinfo +1 -1
  91. package/dist/DashPlayback-BRJzl8D8.js +0 -901
@@ -162,7 +162,7 @@
162
162
  },
163
163
  "kind": "Package",
164
164
  "canonicalReference": "@gcorevideo/player!",
165
- "docComment": "/**\n * Video player for the GCore streaming platform\n *\n * @remarks\n *\n * 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.\n *\n * @packageDocumentation\n */\n",
165
+ "docComment": "/**\n * Video player for the Gcore streaming platform\n *\n * @remarks\n *\n * 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.\n *\n * @packageDocumentation\n */\n",
166
166
  "name": "@gcorevideo/player",
167
167
  "preserveMemberOrder": false,
168
168
  "members": [
@@ -172,10 +172,36 @@
172
172
  "name": "",
173
173
  "preserveMemberOrder": false,
174
174
  "members": [
175
+ {
176
+ "kind": "TypeAlias",
177
+ "canonicalReference": "@gcorevideo/player!ContainerSize:type",
178
+ "docComment": "/**\n * Dimensions of the player container DOM element.\n *\n * @beta\n */\n",
179
+ "excerptTokens": [
180
+ {
181
+ "kind": "Content",
182
+ "text": "export type ContainerSize = "
183
+ },
184
+ {
185
+ "kind": "Content",
186
+ "text": "{\n width: number;\n height: number;\n}"
187
+ },
188
+ {
189
+ "kind": "Content",
190
+ "text": ";"
191
+ }
192
+ ],
193
+ "fileUrlPath": "src/types.ts",
194
+ "releaseTag": "Beta",
195
+ "name": "ContainerSize",
196
+ "typeTokenRange": {
197
+ "startIndex": 1,
198
+ "endIndex": 2
199
+ }
200
+ },
175
201
  {
176
202
  "kind": "TypeAlias",
177
203
  "canonicalReference": "@gcorevideo/player!DashSettings:type",
178
- "docComment": "/**\n * {@link https://cdn.dashjs.org/latest/jsdoc/module-Settings.html | DASH.js settings}\n *\n * @beta\n */\n",
204
+ "docComment": "/**\n * A plain JS object that must conform to the DASH.js settings schema.\n *\n * {@link https://cdn.dashjs.org/latest/jsdoc/module-Settings.html | DASH.js settings}\n *\n * @beta\n */\n",
179
205
  "excerptTokens": [
180
206
  {
181
207
  "kind": "Content",
@@ -206,7 +232,7 @@
206
232
  {
207
233
  "kind": "TypeAlias",
208
234
  "canonicalReference": "@gcorevideo/player!ErrorLevel:type",
209
- "docComment": "/**\n * @beta\n */\n",
235
+ "docComment": "/**\n * Levels of severity of errors. Non-fatal errors usually can be ignored.\n *\n * @beta\n */\n",
210
236
  "excerptTokens": [
211
237
  {
212
238
  "kind": "Content",
@@ -232,7 +258,7 @@
232
258
  {
233
259
  "kind": "TypeAlias",
234
260
  "canonicalReference": "@gcorevideo/player!LangTag:type",
235
- "docComment": "/**\n * @beta\n */\n",
261
+ "docComment": "/**\n * An ISO 639-1 language code.\n *\n * @example\n *\n * `pt`\n *\n * @beta\n */\n",
236
262
  "excerptTokens": [
237
263
  {
238
264
  "kind": "Content",
@@ -258,7 +284,7 @@
258
284
  {
259
285
  "kind": "TypeAlias",
260
286
  "canonicalReference": "@gcorevideo/player!MediaTransport:type",
261
- "docComment": "/**\n * @beta\n */\n",
287
+ "docComment": "/**\n * Media delivery protocol\n *\n * @beta\n */\n",
262
288
  "excerptTokens": [
263
289
  {
264
290
  "kind": "Content",
@@ -284,7 +310,7 @@
284
310
  {
285
311
  "kind": "Interface",
286
312
  "canonicalReference": "@gcorevideo/player!PlaybackError:interface",
287
- "docComment": "/**\n * @beta\n */\n",
313
+ "docComment": "/**\n * An error occurred during the playback.\n *\n * @beta\n */\n",
288
314
  "excerptTokens": [
289
315
  {
290
316
  "kind": "Content",
@@ -299,7 +325,7 @@
299
325
  {
300
326
  "kind": "PropertySignature",
301
327
  "canonicalReference": "@gcorevideo/player!PlaybackError#code:member",
302
- "docComment": "",
328
+ "docComment": "/**\n * Error code.\n */\n",
303
329
  "excerptTokens": [
304
330
  {
305
331
  "kind": "Content",
@@ -327,7 +353,7 @@
327
353
  {
328
354
  "kind": "PropertySignature",
329
355
  "canonicalReference": "@gcorevideo/player!PlaybackError#description:member",
330
- "docComment": "",
356
+ "docComment": "/**\n * Detailed description of the error.\n */\n",
331
357
  "excerptTokens": [
332
358
  {
333
359
  "kind": "Content",
@@ -354,7 +380,7 @@
354
380
  {
355
381
  "kind": "PropertySignature",
356
382
  "canonicalReference": "@gcorevideo/player!PlaybackError#level:member",
357
- "docComment": "",
383
+ "docComment": "/**\n * Level of severity of the error.\n */\n",
358
384
  "excerptTokens": [
359
385
  {
360
386
  "kind": "Content",
@@ -382,7 +408,7 @@
382
408
  {
383
409
  "kind": "PropertySignature",
384
410
  "canonicalReference": "@gcorevideo/player!PlaybackError#message:member",
385
- "docComment": "",
411
+ "docComment": "/**\n * Error message. Non-fatal usually can be ignored.\n */\n",
386
412
  "excerptTokens": [
387
413
  {
388
414
  "kind": "Content",
@@ -405,6 +431,61 @@
405
431
  "startIndex": 1,
406
432
  "endIndex": 2
407
433
  }
434
+ },
435
+ {
436
+ "kind": "PropertySignature",
437
+ "canonicalReference": "@gcorevideo/player!PlaybackError#origin:member",
438
+ "docComment": "/**\n * Exact component that originated the error.\n *\n * @example\n *\n * - 'core' - 'dash' - 'media_control'\n */\n",
439
+ "excerptTokens": [
440
+ {
441
+ "kind": "Content",
442
+ "text": "origin: "
443
+ },
444
+ {
445
+ "kind": "Content",
446
+ "text": "string"
447
+ },
448
+ {
449
+ "kind": "Content",
450
+ "text": ";"
451
+ }
452
+ ],
453
+ "isReadonly": false,
454
+ "isOptional": false,
455
+ "releaseTag": "Beta",
456
+ "name": "origin",
457
+ "propertyTypeTokenRange": {
458
+ "startIndex": 1,
459
+ "endIndex": 2
460
+ }
461
+ },
462
+ {
463
+ "kind": "PropertySignature",
464
+ "canonicalReference": "@gcorevideo/player!PlaybackError#scope:member",
465
+ "docComment": "/**\n * Component subsystem of the error origin\n */\n",
466
+ "excerptTokens": [
467
+ {
468
+ "kind": "Content",
469
+ "text": "scope: "
470
+ },
471
+ {
472
+ "kind": "Reference",
473
+ "text": "PlayerComponentType",
474
+ "canonicalReference": "@gcorevideo/player!PlayerComponentType:type"
475
+ },
476
+ {
477
+ "kind": "Content",
478
+ "text": ";"
479
+ }
480
+ ],
481
+ "isReadonly": false,
482
+ "isOptional": false,
483
+ "releaseTag": "Beta",
484
+ "name": "scope",
485
+ "propertyTypeTokenRange": {
486
+ "startIndex": 1,
487
+ "endIndex": 2
488
+ }
408
489
  }
409
490
  ],
410
491
  "extendsTokenRanges": []
@@ -412,7 +493,7 @@
412
493
  {
413
494
  "kind": "Enum",
414
495
  "canonicalReference": "@gcorevideo/player!PlaybackErrorCode:enum",
415
- "docComment": "/**\n * @beta\n */\n",
496
+ "docComment": "/**\n * Codes of errors occurring within the playback component.\n *\n * @beta\n */\n",
416
497
  "excerptTokens": [
417
498
  {
418
499
  "kind": "Content",
@@ -427,7 +508,7 @@
427
508
  {
428
509
  "kind": "EnumMember",
429
510
  "canonicalReference": "@gcorevideo/player!PlaybackErrorCode.Generic:member",
430
- "docComment": "",
511
+ "docComment": "/**\n * An unknown or uncategorised error.\n */\n",
431
512
  "excerptTokens": [
432
513
  {
433
514
  "kind": "Content",
@@ -447,16 +528,16 @@
447
528
  },
448
529
  {
449
530
  "kind": "EnumMember",
450
- "canonicalReference": "@gcorevideo/player!PlaybackErrorCode.MediaSourceUnavailable:member",
451
- "docComment": "",
531
+ "canonicalReference": "@gcorevideo/player!PlaybackErrorCode.MediaSourceAccessDenied:member",
532
+ "docComment": "/**\n * The media source is not accessible due to some protection policy.\n */\n",
452
533
  "excerptTokens": [
453
534
  {
454
535
  "kind": "Content",
455
- "text": "MediaSourceUnavailable = "
536
+ "text": "MediaSourceAccessDenied = "
456
537
  },
457
538
  {
458
539
  "kind": "Content",
459
- "text": "1"
540
+ "text": "3"
460
541
  }
461
542
  ],
462
543
  "initializerTokenRange": {
@@ -464,20 +545,20 @@
464
545
  "endIndex": 2
465
546
  },
466
547
  "releaseTag": "Beta",
467
- "name": "MediaSourceUnavailable"
548
+ "name": "MediaSourceAccessDenied"
468
549
  },
469
550
  {
470
551
  "kind": "EnumMember",
471
- "canonicalReference": "@gcorevideo/player!PlaybackErrorCode.QualityLevelUnavailable:member",
472
- "docComment": "",
552
+ "canonicalReference": "@gcorevideo/player!PlaybackErrorCode.MediaSourceUnavailable:member",
553
+ "docComment": "/**\n * The media source is not available. Typically a network error.\n */\n",
473
554
  "excerptTokens": [
474
555
  {
475
556
  "kind": "Content",
476
- "text": "QualityLevelUnavailable = "
557
+ "text": "MediaSourceUnavailable = "
477
558
  },
478
559
  {
479
560
  "kind": "Content",
480
- "text": "2"
561
+ "text": "1"
481
562
  }
482
563
  ],
483
564
  "initializerTokenRange": {
@@ -485,14 +566,14 @@
485
566
  "endIndex": 2
486
567
  },
487
568
  "releaseTag": "Beta",
488
- "name": "QualityLevelUnavailable"
569
+ "name": "MediaSourceUnavailable"
489
570
  }
490
571
  ]
491
572
  },
492
573
  {
493
574
  "kind": "TypeAlias",
494
575
  "canonicalReference": "@gcorevideo/player!PlaybackModule:type",
495
- "docComment": "/**\n * @beta\n */\n",
576
+ "docComment": "/**\n * Module to perform the playback.\n *\n * @beta\n */\n",
496
577
  "excerptTokens": [
497
578
  {
498
579
  "kind": "Content",
@@ -593,7 +674,7 @@
593
674
  {
594
675
  "kind": "Method",
595
676
  "canonicalReference": "@gcorevideo/player!Player#attachTo:member(1)",
596
- "docComment": "/**\n * Initializes the player at the given container element.\n *\n * @param playerElement - DOM element to host the player\n */\n",
677
+ "docComment": "/**\n * Initializes the player at the given container element.\n *\n * @remarks\n *\n * The player will be initialized and attached to the given element.\n *\n * All the core plugins will be initialized at this point.\n *\n * If no sources were configured, it will trigger an error.\n *\n * The player container will be initialized and then all the registered UI plugins.\n *\n * If the `autoPlay` option is set, then it will trigger playback immediately.\n *\n * It is an error to call this method twice. If you need to attache player to another DOM element, first call {@link Player.destroy} and then {@link Player.attachTo}.\n *\n * @param playerElement - DOM element to host the player\n *\n * @example\n * ```ts\n * const player = new Player({\n * sources: [{ source: 'https://example.com/a.mpd', mimeType: 'application/dash+xml' }],\n * })\n * document.addEventListener('DOMContentLoaded', () => {\n * player.attachTo(document.getElementById('video-container'))\n * })\n * ```\n *\n */\n",
597
678
  "excerptTokens": [
598
679
  {
599
680
  "kind": "Content",
@@ -642,7 +723,7 @@
642
723
  {
643
724
  "kind": "Method",
644
725
  "canonicalReference": "@gcorevideo/player!Player#configure:member(1)",
645
- "docComment": "/**\n * Configures the player.\n *\n * Can be called multiple times. Each consequent call extends the previous configuration. After a reconfiguration, if something significant has changed, the must be reinitialized (i.e, a `.destroy()` followed by an `.init()` call).\n *\n * @param config - complete or partial configuration\n */\n",
726
+ "docComment": "/**\n * Configures the player.\n *\n * @remarks\n *\n * Can be called multiple times. Each consequent call extends the previous configuration with only the new keys overridden.\n *\n * After a reconfiguration, if something significant has changed, it might make sense reinitialize the player (i.e, a `.destroy()` followed by an `.init()` call).\n *\n * @param config - complete or partial configuration\n */\n",
646
727
  "excerptTokens": [
647
728
  {
648
729
  "kind": "Content",
@@ -704,7 +785,7 @@
704
785
  {
705
786
  "kind": "Method",
706
787
  "canonicalReference": "@gcorevideo/player!Player#destroy:member(1)",
707
- "docComment": "/**\n * Destroys the player, releasing all resources and removing any DOM elements added.\n */\n",
788
+ "docComment": "/**\n * Destroys the player, releasing all resources and unmounting its UI from the DOM.\n */\n",
708
789
  "excerptTokens": [
709
790
  {
710
791
  "kind": "Content",
@@ -735,7 +816,7 @@
735
816
  {
736
817
  "kind": "Method",
737
818
  "canonicalReference": "@gcorevideo/player!Player#getCurrentTime:member(1)",
738
- "docComment": "/**\n * Current playback time in seconds, if appropriate.\n *\n * @returns For live streams, it returns the current time of the current segment.\n */\n",
819
+ "docComment": "/**\n * Current playback (time since the beginning of the stream), if appropriate.\n *\n * @remarks\n *\n * For live streams, it returns the current time within the current segment.\n *\n * @returns Time in seconds\n */\n",
739
820
  "excerptTokens": [
740
821
  {
741
822
  "kind": "Content",
@@ -766,7 +847,7 @@
766
847
  {
767
848
  "kind": "Method",
768
849
  "canonicalReference": "@gcorevideo/player!Player#getDuration:member(1)",
769
- "docComment": "/**\n * Duration of the current media in seconds, if appropriate.\n *\n * @returns For live streams, it returns the duration of the current segment.\n */\n",
850
+ "docComment": "/**\n * Duration of the current media in seconds, if appropriate.\n *\n * @remarks\n *\n * For live streams, it returns the duration of the current segment.\n *\n * @returns Time in seconds\n */\n",
770
851
  "excerptTokens": [
771
852
  {
772
853
  "kind": "Content",
@@ -794,10 +875,134 @@
794
875
  "isAbstract": false,
795
876
  "name": "getDuration"
796
877
  },
878
+ {
879
+ "kind": "Method",
880
+ "canonicalReference": "@gcorevideo/player!Player#getVolume:member(1)",
881
+ "docComment": "/**\n * Gets the current volume of the media content being played.\n *\n * @returns a number between 0 and 1\n */\n",
882
+ "excerptTokens": [
883
+ {
884
+ "kind": "Content",
885
+ "text": "getVolume(): "
886
+ },
887
+ {
888
+ "kind": "Content",
889
+ "text": "number"
890
+ },
891
+ {
892
+ "kind": "Content",
893
+ "text": ";"
894
+ }
895
+ ],
896
+ "isStatic": false,
897
+ "returnTypeTokenRange": {
898
+ "startIndex": 1,
899
+ "endIndex": 2
900
+ },
901
+ "releaseTag": "Beta",
902
+ "isProtected": false,
903
+ "overloadIndex": 1,
904
+ "parameters": [],
905
+ "isOptional": false,
906
+ "isAbstract": false,
907
+ "name": "getVolume"
908
+ },
909
+ {
910
+ "kind": "Method",
911
+ "canonicalReference": "@gcorevideo/player!Player#isDvrEnabled:member(1)",
912
+ "docComment": "/**\n * Indicates whether DVR is enabled.\n */\n",
913
+ "excerptTokens": [
914
+ {
915
+ "kind": "Content",
916
+ "text": "isDvrEnabled(): "
917
+ },
918
+ {
919
+ "kind": "Content",
920
+ "text": "boolean"
921
+ },
922
+ {
923
+ "kind": "Content",
924
+ "text": ";"
925
+ }
926
+ ],
927
+ "isStatic": false,
928
+ "returnTypeTokenRange": {
929
+ "startIndex": 1,
930
+ "endIndex": 2
931
+ },
932
+ "releaseTag": "Beta",
933
+ "isProtected": false,
934
+ "overloadIndex": 1,
935
+ "parameters": [],
936
+ "isOptional": false,
937
+ "isAbstract": false,
938
+ "name": "isDvrEnabled"
939
+ },
940
+ {
941
+ "kind": "Method",
942
+ "canonicalReference": "@gcorevideo/player!Player#isDvrInUse:member(1)",
943
+ "docComment": "/**\n * Indicates whether DVR is in use.\n *\n * @remarks\n *\n * DVR mode, if it is enabled, is triggered we a user seeks behind the live edge.\n */\n",
944
+ "excerptTokens": [
945
+ {
946
+ "kind": "Content",
947
+ "text": "isDvrInUse(): "
948
+ },
949
+ {
950
+ "kind": "Content",
951
+ "text": "boolean"
952
+ },
953
+ {
954
+ "kind": "Content",
955
+ "text": ";"
956
+ }
957
+ ],
958
+ "isStatic": false,
959
+ "returnTypeTokenRange": {
960
+ "startIndex": 1,
961
+ "endIndex": 2
962
+ },
963
+ "releaseTag": "Beta",
964
+ "isProtected": false,
965
+ "overloadIndex": 1,
966
+ "parameters": [],
967
+ "isOptional": false,
968
+ "isAbstract": false,
969
+ "name": "isDvrInUse"
970
+ },
971
+ {
972
+ "kind": "Method",
973
+ "canonicalReference": "@gcorevideo/player!Player#isPlaying:member(1)",
974
+ "docComment": "/**\n * Indicates the playing state.\n */\n",
975
+ "excerptTokens": [
976
+ {
977
+ "kind": "Content",
978
+ "text": "isPlaying(): "
979
+ },
980
+ {
981
+ "kind": "Content",
982
+ "text": "boolean"
983
+ },
984
+ {
985
+ "kind": "Content",
986
+ "text": ";"
987
+ }
988
+ ],
989
+ "isStatic": false,
990
+ "returnTypeTokenRange": {
991
+ "startIndex": 1,
992
+ "endIndex": 2
993
+ },
994
+ "releaseTag": "Beta",
995
+ "isProtected": false,
996
+ "overloadIndex": 1,
997
+ "parameters": [],
998
+ "isOptional": false,
999
+ "isAbstract": false,
1000
+ "name": "isPlaying"
1001
+ },
797
1002
  {
798
1003
  "kind": "Method",
799
1004
  "canonicalReference": "@gcorevideo/player!Player#mute:member(1)",
800
- "docComment": "/**\n * Mutes the player.\n */\n",
1005
+ "docComment": "/**\n * Mutes the sound of the video.\n */\n",
801
1006
  "excerptTokens": [
802
1007
  {
803
1008
  "kind": "Content",
@@ -828,11 +1033,11 @@
828
1033
  {
829
1034
  "kind": "Method",
830
1035
  "canonicalReference": "@gcorevideo/player!Player#off:member(1)",
831
- "docComment": "/**\n * Removes a listener from a player event\n *\n * @param event - See {@link PlayerEvent}\n *\n * @param handler - See {@link PlayerEventHandler}\n */\n",
1036
+ "docComment": "/**\n * Removes a previously added event listener\n *\n * @param event - See {@link PlayerEvent}\n *\n * @param handler - a callback attached earlier to that event type\n */\n",
832
1037
  "excerptTokens": [
833
1038
  {
834
1039
  "kind": "Content",
835
- "text": "off<T extends "
1040
+ "text": "off<E extends "
836
1041
  },
837
1042
  {
838
1043
  "kind": "Reference",
@@ -845,7 +1050,7 @@
845
1050
  },
846
1051
  {
847
1052
  "kind": "Content",
848
- "text": "T"
1053
+ "text": "E"
849
1054
  },
850
1055
  {
851
1056
  "kind": "Content",
@@ -858,7 +1063,7 @@
858
1063
  },
859
1064
  {
860
1065
  "kind": "Content",
861
- "text": "<T>"
1066
+ "text": "<E>"
862
1067
  },
863
1068
  {
864
1069
  "kind": "Content",
@@ -875,7 +1080,7 @@
875
1080
  ],
876
1081
  "typeParameters": [
877
1082
  {
878
- "typeParameterName": "T",
1083
+ "typeParameterName": "E",
879
1084
  "constraintTokenRange": {
880
1085
  "startIndex": 1,
881
1086
  "endIndex": 2
@@ -919,11 +1124,11 @@
919
1124
  {
920
1125
  "kind": "Method",
921
1126
  "canonicalReference": "@gcorevideo/player!Player#on:member(1)",
922
- "docComment": "/**\n * Adds a listener to a player event\n *\n * @param event - See {@link PlayerEvent}\n *\n * @param handler - See {@link PlayerEventHandler}\n */\n",
1127
+ "docComment": "/**\n * Adds a listener to a player event\n *\n * @param event - event type, see {@link PlayerEvent}\n *\n * @param handler - a callback function to handle the event\n */\n",
923
1128
  "excerptTokens": [
924
1129
  {
925
1130
  "kind": "Content",
926
- "text": "on<T extends "
1131
+ "text": "on<E extends "
927
1132
  },
928
1133
  {
929
1134
  "kind": "Reference",
@@ -936,7 +1141,7 @@
936
1141
  },
937
1142
  {
938
1143
  "kind": "Content",
939
- "text": "T"
1144
+ "text": "E"
940
1145
  },
941
1146
  {
942
1147
  "kind": "Content",
@@ -949,7 +1154,7 @@
949
1154
  },
950
1155
  {
951
1156
  "kind": "Content",
952
- "text": "<T>"
1157
+ "text": "<E>"
953
1158
  },
954
1159
  {
955
1160
  "kind": "Content",
@@ -966,7 +1171,7 @@
966
1171
  ],
967
1172
  "typeParameters": [
968
1173
  {
969
- "typeParameterName": "T",
1174
+ "typeParameterName": "E",
970
1175
  "constraintTokenRange": {
971
1176
  "startIndex": 1,
972
1177
  "endIndex": 2
@@ -1072,7 +1277,7 @@
1072
1277
  {
1073
1278
  "kind": "Method",
1074
1279
  "canonicalReference": "@gcorevideo/player!Player.registerPlugin:member(1)",
1075
- "docComment": "/**\n * Registers a plugin.\n *\n * @param plugin - plugin to register\n */\n",
1280
+ "docComment": "/**\n * Registers a plugin.\n *\n * @remarks\n *\n * Use this method to extend the player with custom behavior. The plugin class must inherit from one of the Clappr UIPlugin, UIContainerPlugin or CorePlugin classes. A core plugin will be initialized and attached to the player when the player is initialized. A UI plugin will be initialized and attached to the player container is initialized.\n *\n * @param plugin - a plugin class\n *\n * @example\n * ```ts\n * import MyPlugin from './MyPlugin.js'\n *\n * Player.registerPlugin(MyPlugin)\n * ```\n *\n * @see\n *\n * {@link https://github.com/clappr/clappr/wiki/Architecture}\n */\n",
1076
1281
  "excerptTokens": [
1077
1282
  {
1078
1283
  "kind": "Content",
@@ -1121,15 +1326,16 @@
1121
1326
  {
1122
1327
  "kind": "Method",
1123
1328
  "canonicalReference": "@gcorevideo/player!Player#resize:member(1)",
1124
- "docComment": "/**\n * Resizes the player container element and everything within it.\n *\n * @param newSize - new size of the player\n */\n",
1329
+ "docComment": "/**\n * Resizes the player container element and everything within it.\n *\n * @remarks\n *\n * Use this method when the player itself does not detect properly the change in size of its container element. It can be a case for orientation change on some mobile devices.\n *\n * @param newSize - new size of the player\n */\n",
1125
1330
  "excerptTokens": [
1126
1331
  {
1127
1332
  "kind": "Content",
1128
1333
  "text": "resize(newSize: "
1129
1334
  },
1130
1335
  {
1131
- "kind": "Content",
1132
- "text": "{\n width: number;\n height: number;\n }"
1336
+ "kind": "Reference",
1337
+ "text": "ContainerSize",
1338
+ "canonicalReference": "@gcorevideo/player!ContainerSize:type"
1133
1339
  },
1134
1340
  {
1135
1341
  "kind": "Content",
@@ -1169,7 +1375,7 @@
1169
1375
  {
1170
1376
  "kind": "Method",
1171
1377
  "canonicalReference": "@gcorevideo/player!Player#seek:member(1)",
1172
- "docComment": "/**\n * Seeks to the given time.\n *\n * @param time - time to seek to in seconds\n */\n",
1378
+ "docComment": "/**\n * Seeks to the given time.\n *\n * @param time - time to seek to in seconds (since the beginning of the stream)\n */\n",
1173
1379
  "excerptTokens": [
1174
1380
  {
1175
1381
  "kind": "Content",
@@ -1214,6 +1420,54 @@
1214
1420
  "isAbstract": false,
1215
1421
  "name": "seek"
1216
1422
  },
1423
+ {
1424
+ "kind": "Method",
1425
+ "canonicalReference": "@gcorevideo/player!Player#setVolume:member(1)",
1426
+ "docComment": "/**\n * Sets the current volume of the media content being played.\n *\n * @param volume - a number between 0 and 1\n */\n",
1427
+ "excerptTokens": [
1428
+ {
1429
+ "kind": "Content",
1430
+ "text": "setVolume(volume: "
1431
+ },
1432
+ {
1433
+ "kind": "Content",
1434
+ "text": "number"
1435
+ },
1436
+ {
1437
+ "kind": "Content",
1438
+ "text": "): "
1439
+ },
1440
+ {
1441
+ "kind": "Content",
1442
+ "text": "void"
1443
+ },
1444
+ {
1445
+ "kind": "Content",
1446
+ "text": ";"
1447
+ }
1448
+ ],
1449
+ "isStatic": false,
1450
+ "returnTypeTokenRange": {
1451
+ "startIndex": 3,
1452
+ "endIndex": 4
1453
+ },
1454
+ "releaseTag": "Beta",
1455
+ "isProtected": false,
1456
+ "overloadIndex": 1,
1457
+ "parameters": [
1458
+ {
1459
+ "parameterName": "volume",
1460
+ "parameterTypeTokenRange": {
1461
+ "startIndex": 1,
1462
+ "endIndex": 2
1463
+ },
1464
+ "isOptional": false
1465
+ }
1466
+ ],
1467
+ "isOptional": false,
1468
+ "isAbstract": false,
1469
+ "name": "setVolume"
1470
+ },
1217
1471
  {
1218
1472
  "kind": "Method",
1219
1473
  "canonicalReference": "@gcorevideo/player!Player#stop:member(1)",
@@ -1248,7 +1502,7 @@
1248
1502
  {
1249
1503
  "kind": "Method",
1250
1504
  "canonicalReference": "@gcorevideo/player!Player#unmute:member(1)",
1251
- "docComment": "/**\n * Unmutes the player.\n */\n",
1505
+ "docComment": "/**\n * Unmutes the video sound.\n */\n",
1252
1506
  "excerptTokens": [
1253
1507
  {
1254
1508
  "kind": "Content",
@@ -1279,7 +1533,7 @@
1279
1533
  {
1280
1534
  "kind": "Method",
1281
1535
  "canonicalReference": "@gcorevideo/player!Player.unregisterPlugin:member(1)",
1282
- "docComment": "/**\n * Unregisters a plugin.\n *\n * @param plugin - plugin to unregister\n */\n",
1536
+ "docComment": "/**\n * Unregisters a plugin registered earlier with {@link Player.registerPlugin}.\n *\n * @param plugin - a plugin class\n */\n",
1283
1537
  "excerptTokens": [
1284
1538
  {
1285
1539
  "kind": "Content",
@@ -1328,6 +1582,32 @@
1328
1582
  ],
1329
1583
  "implementsTokenRanges": []
1330
1584
  },
1585
+ {
1586
+ "kind": "TypeAlias",
1587
+ "canonicalReference": "@gcorevideo/player!PlayerComponentType:type",
1588
+ "docComment": "/**\n * Subsystems of a player component.\n *\n * @beta\n */\n",
1589
+ "excerptTokens": [
1590
+ {
1591
+ "kind": "Content",
1592
+ "text": "export type PlayerComponentType = "
1593
+ },
1594
+ {
1595
+ "kind": "Content",
1596
+ "text": "'container' | 'core' | 'playback'"
1597
+ },
1598
+ {
1599
+ "kind": "Content",
1600
+ "text": ";"
1601
+ }
1602
+ ],
1603
+ "fileUrlPath": "src/playback.types.ts",
1604
+ "releaseTag": "Beta",
1605
+ "name": "PlayerComponentType",
1606
+ "typeTokenRange": {
1607
+ "startIndex": 1,
1608
+ "endIndex": 2
1609
+ }
1610
+ },
1331
1611
  {
1332
1612
  "kind": "Interface",
1333
1613
  "canonicalReference": "@gcorevideo/player!PlayerConfig:interface",
@@ -1647,7 +1927,7 @@
1647
1927
  {
1648
1928
  "kind": "TypeAlias",
1649
1929
  "canonicalReference": "@gcorevideo/player!PlayerDebugSettings:type",
1650
- "docComment": "/**\n * @remarks\n *\n * true is equivalent to 'all', false is equivalent to 'none'\n *\n * @beta\n */\n",
1930
+ "docComment": "/**\n * @remarks\n *\n * `true` is equivalent to `'all'`, `false` is equivalent to `'none'`\n *\n * @beta\n */\n",
1651
1931
  "excerptTokens": [
1652
1932
  {
1653
1933
  "kind": "Content",
@@ -1678,7 +1958,7 @@
1678
1958
  {
1679
1959
  "kind": "TypeAlias",
1680
1960
  "canonicalReference": "@gcorevideo/player!PlayerDebugTag:type",
1681
- "docComment": "/**\n * @beta\n */\n",
1961
+ "docComment": "/**\n * Debug output category selector\n *\n * @beta\n */\n",
1682
1962
  "excerptTokens": [
1683
1963
  {
1684
1964
  "kind": "Content",
@@ -1739,7 +2019,49 @@
1739
2019
  },
1740
2020
  {
1741
2021
  "kind": "EnumMember",
1742
- "canonicalReference": "@gcorevideo/player!PlayerEvent.Pause:member",
2022
+ "canonicalReference": "@gcorevideo/player!PlayerEvent.Error:member",
2023
+ "docComment": "/**\n * An error occurred. Parameters: {@link PlaybackError}\n */\n",
2024
+ "excerptTokens": [
2025
+ {
2026
+ "kind": "Content",
2027
+ "text": "Error = "
2028
+ },
2029
+ {
2030
+ "kind": "Content",
2031
+ "text": "\"error\""
2032
+ }
2033
+ ],
2034
+ "initializerTokenRange": {
2035
+ "startIndex": 1,
2036
+ "endIndex": 2
2037
+ },
2038
+ "releaseTag": "Beta",
2039
+ "name": "Error"
2040
+ },
2041
+ {
2042
+ "kind": "EnumMember",
2043
+ "canonicalReference": "@gcorevideo/player!PlayerEvent.Fullscreen:member",
2044
+ "docComment": "/**\n * The player has switched to or from the fullscreen mode. Parameters:`boolean` isFullscreen\n */\n",
2045
+ "excerptTokens": [
2046
+ {
2047
+ "kind": "Content",
2048
+ "text": "Fullscreen = "
2049
+ },
2050
+ {
2051
+ "kind": "Content",
2052
+ "text": "\"fullscreen\""
2053
+ }
2054
+ ],
2055
+ "initializerTokenRange": {
2056
+ "startIndex": 1,
2057
+ "endIndex": 2
2058
+ },
2059
+ "releaseTag": "Beta",
2060
+ "name": "Fullscreen"
2061
+ },
2062
+ {
2063
+ "kind": "EnumMember",
2064
+ "canonicalReference": "@gcorevideo/player!PlayerEvent.Pause:member",
1743
2065
  "docComment": "/**\n * Playback has been paused.\n */\n",
1744
2066
  "excerptTokens": [
1745
2067
  {
@@ -1800,6 +2122,48 @@
1800
2122
  "releaseTag": "Beta",
1801
2123
  "name": "Ready"
1802
2124
  },
2125
+ {
2126
+ "kind": "EnumMember",
2127
+ "canonicalReference": "@gcorevideo/player!PlayerEvent.Resize:member",
2128
+ "docComment": "/**\n * The player's container has been resized. Parameters: {@link ContainerSize}\n */\n",
2129
+ "excerptTokens": [
2130
+ {
2131
+ "kind": "Content",
2132
+ "text": "Resize = "
2133
+ },
2134
+ {
2135
+ "kind": "Content",
2136
+ "text": "\"resize\""
2137
+ }
2138
+ ],
2139
+ "initializerTokenRange": {
2140
+ "startIndex": 1,
2141
+ "endIndex": 2
2142
+ },
2143
+ "releaseTag": "Beta",
2144
+ "name": "Resize"
2145
+ },
2146
+ {
2147
+ "kind": "EnumMember",
2148
+ "canonicalReference": "@gcorevideo/player!PlayerEvent.Seek:member",
2149
+ "docComment": "/**\n * The player is seeking to a new position.\n */\n",
2150
+ "excerptTokens": [
2151
+ {
2152
+ "kind": "Content",
2153
+ "text": "Seek = "
2154
+ },
2155
+ {
2156
+ "kind": "Content",
2157
+ "text": "\"seek\""
2158
+ }
2159
+ ],
2160
+ "initializerTokenRange": {
2161
+ "startIndex": 1,
2162
+ "endIndex": 2
2163
+ },
2164
+ "releaseTag": "Beta",
2165
+ "name": "Seek"
2166
+ },
1803
2167
  {
1804
2168
  "kind": "EnumMember",
1805
2169
  "canonicalReference": "@gcorevideo/player!PlayerEvent.Stop:member",
@@ -1820,17 +2184,59 @@
1820
2184
  },
1821
2185
  "releaseTag": "Beta",
1822
2186
  "name": "Stop"
2187
+ },
2188
+ {
2189
+ "kind": "EnumMember",
2190
+ "canonicalReference": "@gcorevideo/player!PlayerEvent.TimeUpdate:member",
2191
+ "docComment": "/**\n * The current playback time has changed. Parameters: {@link TimePosition}\n */\n",
2192
+ "excerptTokens": [
2193
+ {
2194
+ "kind": "Content",
2195
+ "text": "TimeUpdate = "
2196
+ },
2197
+ {
2198
+ "kind": "Content",
2199
+ "text": "\"timeupdate\""
2200
+ }
2201
+ ],
2202
+ "initializerTokenRange": {
2203
+ "startIndex": 1,
2204
+ "endIndex": 2
2205
+ },
2206
+ "releaseTag": "Beta",
2207
+ "name": "TimeUpdate"
2208
+ },
2209
+ {
2210
+ "kind": "EnumMember",
2211
+ "canonicalReference": "@gcorevideo/player!PlayerEvent.VolumeUpdate:member",
2212
+ "docComment": "/**\n * The volume has changed. Parameters: `number` volume in the range 0..1\n */\n",
2213
+ "excerptTokens": [
2214
+ {
2215
+ "kind": "Content",
2216
+ "text": "VolumeUpdate = "
2217
+ },
2218
+ {
2219
+ "kind": "Content",
2220
+ "text": "\"volumeupdate\""
2221
+ }
2222
+ ],
2223
+ "initializerTokenRange": {
2224
+ "startIndex": 1,
2225
+ "endIndex": 2
2226
+ },
2227
+ "releaseTag": "Beta",
2228
+ "name": "VolumeUpdate"
1823
2229
  }
1824
2230
  ]
1825
2231
  },
1826
2232
  {
1827
2233
  "kind": "TypeAlias",
1828
2234
  "canonicalReference": "@gcorevideo/player!PlayerEventHandler:type",
1829
- "docComment": "/**\n * @beta\n */\n",
2235
+ "docComment": "/**\n * Type of a listener callback function for a player event. See the description of the event parameters in {@link PlayerEvent}.\n *\n * @beta\n */\n",
1830
2236
  "excerptTokens": [
1831
2237
  {
1832
2238
  "kind": "Content",
1833
- "text": "export type PlayerEventHandler<T extends "
2239
+ "text": "export type PlayerEventHandler<E extends "
1834
2240
  },
1835
2241
  {
1836
2242
  "kind": "Reference",
@@ -1843,7 +2249,16 @@
1843
2249
  },
1844
2250
  {
1845
2251
  "kind": "Content",
1846
- "text": "() => void"
2252
+ "text": "(...args: "
2253
+ },
2254
+ {
2255
+ "kind": "Reference",
2256
+ "text": "PlayerEventParams",
2257
+ "canonicalReference": "@gcorevideo/player!PlayerEventParams:type"
2258
+ },
2259
+ {
2260
+ "kind": "Content",
2261
+ "text": "<E>) => void"
1847
2262
  },
1848
2263
  {
1849
2264
  "kind": "Content",
@@ -1855,7 +2270,7 @@
1855
2270
  "name": "PlayerEventHandler",
1856
2271
  "typeParameters": [
1857
2272
  {
1858
- "typeParameterName": "T",
2273
+ "typeParameterName": "E",
1859
2274
  "constraintTokenRange": {
1860
2275
  "startIndex": 1,
1861
2276
  "endIndex": 2
@@ -1868,7 +2283,127 @@
1868
2283
  ],
1869
2284
  "typeTokenRange": {
1870
2285
  "startIndex": 3,
1871
- "endIndex": 4
2286
+ "endIndex": 6
2287
+ }
2288
+ },
2289
+ {
2290
+ "kind": "TypeAlias",
2291
+ "canonicalReference": "@gcorevideo/player!PlayerEventParams:type",
2292
+ "docComment": "/**\n * @beta\n */\n",
2293
+ "excerptTokens": [
2294
+ {
2295
+ "kind": "Content",
2296
+ "text": "export type PlayerEventParams<E extends "
2297
+ },
2298
+ {
2299
+ "kind": "Reference",
2300
+ "text": "PlayerEvent",
2301
+ "canonicalReference": "@gcorevideo/player!PlayerEvent:enum"
2302
+ },
2303
+ {
2304
+ "kind": "Content",
2305
+ "text": "> = "
2306
+ },
2307
+ {
2308
+ "kind": "Content",
2309
+ "text": "E extends "
2310
+ },
2311
+ {
2312
+ "kind": "Reference",
2313
+ "text": "PlayerEvent.Seek",
2314
+ "canonicalReference": "@gcorevideo/player!PlayerEvent.Seek:member"
2315
+ },
2316
+ {
2317
+ "kind": "Content",
2318
+ "text": " ? [number] : E extends "
2319
+ },
2320
+ {
2321
+ "kind": "Reference",
2322
+ "text": "PlayerEvent.VolumeUpdate",
2323
+ "canonicalReference": "@gcorevideo/player!PlayerEvent.VolumeUpdate:member"
2324
+ },
2325
+ {
2326
+ "kind": "Content",
2327
+ "text": " ? [number] : E extends "
2328
+ },
2329
+ {
2330
+ "kind": "Reference",
2331
+ "text": "PlayerEvent.TimeUpdate",
2332
+ "canonicalReference": "@gcorevideo/player!PlayerEvent.TimeUpdate:member"
2333
+ },
2334
+ {
2335
+ "kind": "Content",
2336
+ "text": " ? ["
2337
+ },
2338
+ {
2339
+ "kind": "Reference",
2340
+ "text": "TimePosition",
2341
+ "canonicalReference": "@gcorevideo/player!TimePosition:interface"
2342
+ },
2343
+ {
2344
+ "kind": "Content",
2345
+ "text": "] : E extends "
2346
+ },
2347
+ {
2348
+ "kind": "Reference",
2349
+ "text": "PlayerEvent.Resize",
2350
+ "canonicalReference": "@gcorevideo/player!PlayerEvent.Resize:member"
2351
+ },
2352
+ {
2353
+ "kind": "Content",
2354
+ "text": " ? [{\n width: number;\n height: number;\n}] : E extends "
2355
+ },
2356
+ {
2357
+ "kind": "Reference",
2358
+ "text": "PlayerEvent.Fullscreen",
2359
+ "canonicalReference": "@gcorevideo/player!PlayerEvent.Fullscreen:member"
2360
+ },
2361
+ {
2362
+ "kind": "Content",
2363
+ "text": " ? [boolean] : E extends "
2364
+ },
2365
+ {
2366
+ "kind": "Reference",
2367
+ "text": "PlayerEvent.Error",
2368
+ "canonicalReference": "@gcorevideo/player!PlayerEvent.Error:member"
2369
+ },
2370
+ {
2371
+ "kind": "Content",
2372
+ "text": " ? ["
2373
+ },
2374
+ {
2375
+ "kind": "Reference",
2376
+ "text": "PlaybackError",
2377
+ "canonicalReference": "@gcorevideo/player!PlaybackError:interface"
2378
+ },
2379
+ {
2380
+ "kind": "Content",
2381
+ "text": "] : []"
2382
+ },
2383
+ {
2384
+ "kind": "Content",
2385
+ "text": ";"
2386
+ }
2387
+ ],
2388
+ "fileUrlPath": "src/Player.ts",
2389
+ "releaseTag": "Beta",
2390
+ "name": "PlayerEventParams",
2391
+ "typeParameters": [
2392
+ {
2393
+ "typeParameterName": "E",
2394
+ "constraintTokenRange": {
2395
+ "startIndex": 1,
2396
+ "endIndex": 2
2397
+ },
2398
+ "defaultTypeTokenRange": {
2399
+ "startIndex": 0,
2400
+ "endIndex": 0
2401
+ }
2402
+ }
2403
+ ],
2404
+ "typeTokenRange": {
2405
+ "startIndex": 3,
2406
+ "endIndex": 20
1872
2407
  }
1873
2408
  },
1874
2409
  {
@@ -1920,7 +2455,7 @@
1920
2455
  {
1921
2456
  "kind": "PropertySignature",
1922
2457
  "canonicalReference": "@gcorevideo/player!PlayerMediaSourceDesc#mimeType:member",
1923
- "docComment": "/**\n * The MIME type of the media source (e.g. \"video/mp4\", \"application/x-mpegURL\")\n */\n",
2458
+ "docComment": "/**\n * The MIME type of the media source (e.g. `\"video/mp4\"`, `\"application/x-mpegURL\"`). Necessary if the type cannot be detected from file extension of the source URL.\n */\n",
1924
2459
  "excerptTokens": [
1925
2460
  {
1926
2461
  "kind": "Content",
@@ -2001,74 +2536,204 @@
2001
2536
  }
2002
2537
  },
2003
2538
  {
2004
- "kind": "TypeAlias",
2005
- "canonicalReference": "@gcorevideo/player!QualityLevel:type",
2006
- "docComment": "/**\n * @beta\n */\n",
2539
+ "kind": "Interface",
2540
+ "canonicalReference": "@gcorevideo/player!QualityLevel:interface",
2541
+ "docComment": "/**\n * A level of quality within a media source.\n *\n * @beta\n */\n",
2007
2542
  "excerptTokens": [
2008
2543
  {
2009
2544
  "kind": "Content",
2010
- "text": "export type QualityLevel = "
2011
- },
2012
- {
2013
- "kind": "Content",
2014
- "text": "{\n level: number;\n width: number;\n height: number;\n bitrate: number;\n}"
2015
- },
2016
- {
2017
- "kind": "Content",
2018
- "text": ";"
2545
+ "text": "export interface QualityLevel "
2019
2546
  }
2020
2547
  ],
2021
2548
  "fileUrlPath": "src/playback.types.ts",
2022
2549
  "releaseTag": "Beta",
2023
2550
  "name": "QualityLevel",
2024
- "typeTokenRange": {
2025
- "startIndex": 1,
2026
- "endIndex": 2
2027
- }
2028
- },
2029
- {
2030
- "kind": "TypeAlias",
2031
- "canonicalReference": "@gcorevideo/player!TimePosition:type",
2032
- "docComment": "/**\n * For the plugin development\n *\n * @beta\n */\n",
2033
- "excerptTokens": [
2034
- {
2035
- "kind": "Content",
2036
- "text": "export type TimePosition = "
2037
- },
2038
- {
2039
- "kind": "Content",
2040
- "text": "{\n current: "
2041
- },
2551
+ "preserveMemberOrder": false,
2552
+ "members": [
2042
2553
  {
2043
- "kind": "Reference",
2044
- "text": "TimeValue",
2045
- "canonicalReference": "@gcorevideo/player!TimeValue:type"
2554
+ "kind": "PropertySignature",
2555
+ "canonicalReference": "@gcorevideo/player!QualityLevel#bitrate:member",
2556
+ "docComment": "/**\n * Bitrate of the video, bps.\n */\n",
2557
+ "excerptTokens": [
2558
+ {
2559
+ "kind": "Content",
2560
+ "text": "bitrate: "
2561
+ },
2562
+ {
2563
+ "kind": "Content",
2564
+ "text": "number"
2565
+ },
2566
+ {
2567
+ "kind": "Content",
2568
+ "text": ";"
2569
+ }
2570
+ ],
2571
+ "isReadonly": false,
2572
+ "isOptional": false,
2573
+ "releaseTag": "Beta",
2574
+ "name": "bitrate",
2575
+ "propertyTypeTokenRange": {
2576
+ "startIndex": 1,
2577
+ "endIndex": 2
2578
+ }
2046
2579
  },
2047
2580
  {
2048
- "kind": "Content",
2049
- "text": ";\n total: "
2581
+ "kind": "PropertySignature",
2582
+ "canonicalReference": "@gcorevideo/player!QualityLevel#height:member",
2583
+ "docComment": "/**\n * Height of the video, pixels.\n */\n",
2584
+ "excerptTokens": [
2585
+ {
2586
+ "kind": "Content",
2587
+ "text": "height: "
2588
+ },
2589
+ {
2590
+ "kind": "Content",
2591
+ "text": "number"
2592
+ },
2593
+ {
2594
+ "kind": "Content",
2595
+ "text": ";"
2596
+ }
2597
+ ],
2598
+ "isReadonly": false,
2599
+ "isOptional": false,
2600
+ "releaseTag": "Beta",
2601
+ "name": "height",
2602
+ "propertyTypeTokenRange": {
2603
+ "startIndex": 1,
2604
+ "endIndex": 2
2605
+ }
2050
2606
  },
2051
2607
  {
2052
- "kind": "Reference",
2053
- "text": "TimeValue",
2054
- "canonicalReference": "@gcorevideo/player!TimeValue:type"
2608
+ "kind": "PropertySignature",
2609
+ "canonicalReference": "@gcorevideo/player!QualityLevel#level:member",
2610
+ "docComment": "/**\n * Zero-based index of the quality level.\n */\n",
2611
+ "excerptTokens": [
2612
+ {
2613
+ "kind": "Content",
2614
+ "text": "level: "
2615
+ },
2616
+ {
2617
+ "kind": "Content",
2618
+ "text": "number"
2619
+ },
2620
+ {
2621
+ "kind": "Content",
2622
+ "text": ";"
2623
+ }
2624
+ ],
2625
+ "isReadonly": false,
2626
+ "isOptional": false,
2627
+ "releaseTag": "Beta",
2628
+ "name": "level",
2629
+ "propertyTypeTokenRange": {
2630
+ "startIndex": 1,
2631
+ "endIndex": 2
2632
+ }
2055
2633
  },
2056
2634
  {
2057
- "kind": "Content",
2058
- "text": ";\n}"
2059
- },
2635
+ "kind": "PropertySignature",
2636
+ "canonicalReference": "@gcorevideo/player!QualityLevel#width:member",
2637
+ "docComment": "/**\n * Width of the video, pixels.\n */\n",
2638
+ "excerptTokens": [
2639
+ {
2640
+ "kind": "Content",
2641
+ "text": "width: "
2642
+ },
2643
+ {
2644
+ "kind": "Content",
2645
+ "text": "number"
2646
+ },
2647
+ {
2648
+ "kind": "Content",
2649
+ "text": ";"
2650
+ }
2651
+ ],
2652
+ "isReadonly": false,
2653
+ "isOptional": false,
2654
+ "releaseTag": "Beta",
2655
+ "name": "width",
2656
+ "propertyTypeTokenRange": {
2657
+ "startIndex": 1,
2658
+ "endIndex": 2
2659
+ }
2660
+ }
2661
+ ],
2662
+ "extendsTokenRanges": []
2663
+ },
2664
+ {
2665
+ "kind": "Interface",
2666
+ "canonicalReference": "@gcorevideo/player!TimePosition:interface",
2667
+ "docComment": "/**\n * Current playback time and total duration of the media.\n *\n * @beta\n */\n",
2668
+ "excerptTokens": [
2060
2669
  {
2061
2670
  "kind": "Content",
2062
- "text": ";"
2671
+ "text": "export interface TimePosition "
2063
2672
  }
2064
2673
  ],
2065
2674
  "fileUrlPath": "src/playback.types.ts",
2066
2675
  "releaseTag": "Beta",
2067
2676
  "name": "TimePosition",
2068
- "typeTokenRange": {
2069
- "startIndex": 1,
2070
- "endIndex": 6
2071
- }
2677
+ "preserveMemberOrder": false,
2678
+ "members": [
2679
+ {
2680
+ "kind": "PropertySignature",
2681
+ "canonicalReference": "@gcorevideo/player!TimePosition#current:member",
2682
+ "docComment": "/**\n * Current playback time, 0..duration, seconds.\n */\n",
2683
+ "excerptTokens": [
2684
+ {
2685
+ "kind": "Content",
2686
+ "text": "current: "
2687
+ },
2688
+ {
2689
+ "kind": "Reference",
2690
+ "text": "TimeValue",
2691
+ "canonicalReference": "@gcorevideo/player!TimeValue:type"
2692
+ },
2693
+ {
2694
+ "kind": "Content",
2695
+ "text": ";"
2696
+ }
2697
+ ],
2698
+ "isReadonly": false,
2699
+ "isOptional": false,
2700
+ "releaseTag": "Beta",
2701
+ "name": "current",
2702
+ "propertyTypeTokenRange": {
2703
+ "startIndex": 1,
2704
+ "endIndex": 2
2705
+ }
2706
+ },
2707
+ {
2708
+ "kind": "PropertySignature",
2709
+ "canonicalReference": "@gcorevideo/player!TimePosition#total:member",
2710
+ "docComment": "/**\n * Total duration of the media, seconds.\n */\n",
2711
+ "excerptTokens": [
2712
+ {
2713
+ "kind": "Content",
2714
+ "text": "total: "
2715
+ },
2716
+ {
2717
+ "kind": "Reference",
2718
+ "text": "TimeValue",
2719
+ "canonicalReference": "@gcorevideo/player!TimeValue:type"
2720
+ },
2721
+ {
2722
+ "kind": "Content",
2723
+ "text": ";"
2724
+ }
2725
+ ],
2726
+ "isReadonly": false,
2727
+ "isOptional": false,
2728
+ "releaseTag": "Beta",
2729
+ "name": "total",
2730
+ "propertyTypeTokenRange": {
2731
+ "startIndex": 1,
2732
+ "endIndex": 2
2733
+ }
2734
+ }
2735
+ ],
2736
+ "extendsTokenRanges": []
2072
2737
  },
2073
2738
  {
2074
2739
  "kind": "TypeAlias",
@@ -2082,7 +2747,7 @@
2082
2747
  {
2083
2748
  "kind": "Reference",
2084
2749
  "text": "TimePosition",
2085
- "canonicalReference": "@gcorevideo/player!TimePosition:type"
2750
+ "canonicalReference": "@gcorevideo/player!TimePosition:interface"
2086
2751
  },
2087
2752
  {
2088
2753
  "kind": "Content",
@@ -2113,7 +2778,7 @@
2113
2778
  {
2114
2779
  "kind": "Reference",
2115
2780
  "text": "TimePosition",
2116
- "canonicalReference": "@gcorevideo/player!TimePosition:type"
2781
+ "canonicalReference": "@gcorevideo/player!TimePosition:interface"
2117
2782
  },
2118
2783
  {
2119
2784
  "kind": "Content",
@@ -2135,7 +2800,7 @@
2135
2800
  {
2136
2801
  "kind": "TypeAlias",
2137
2802
  "canonicalReference": "@gcorevideo/player!TimeValue:type",
2138
- "docComment": "/**\n * Playback time in seconds since the beginning of the stream (or a segment for the live streams) For the plugin development\n *\n * @beta\n */\n",
2803
+ "docComment": "/**\n * Playback time in seconds since the beginning of the stream (or a segment for the live streams)\n *\n * @beta\n */\n",
2139
2804
  "excerptTokens": [
2140
2805
  {
2141
2806
  "kind": "Content",
@@ -2187,7 +2852,7 @@
2187
2852
  {
2188
2853
  "kind": "TypeAlias",
2189
2854
  "canonicalReference": "@gcorevideo/player!TranslationSettings:type",
2190
- "docComment": "/**\n * [language][key] =\\> string\n *\n * @example\n * ```\n * {\n * en: {\n * play: 'Play',\n * ...\n * },\n * es: {\n * play: 'Reproducir',\n * ...\n * },\n * ...\n * }\n * ```\n *\n * @beta\n */\n",
2855
+ "docComment": "/**\n * Localization strings for the player UI.\n *\n * @remarks\n *\n * The keys are language codes, and the values are objects with keys being the translation keys and values being the translations.\n *\n * This dictionary is used to localize the player UI, including the error messages and is shared across all the player components (including the plugins).\n *\n * @example\n * ```\n * {\n * en: {\n * play: 'Play',\n * ...\n * },\n * es: {\n * play: 'Reproducir',\n * ...\n * },\n * ...\n * }\n * ```\n *\n * @beta\n */\n",
2191
2856
  "excerptTokens": [
2192
2857
  {
2193
2858
  "kind": "Content",
@@ -2254,7 +2919,7 @@
2254
2919
  {
2255
2920
  "kind": "TypeAlias",
2256
2921
  "canonicalReference": "@gcorevideo/player!TransportPreference:type",
2257
- "docComment": "/**\n * @beta\n */\n",
2922
+ "docComment": "/**\n * Preferred media delivery protocol\n *\n * @beta\n */\n",
2258
2923
  "excerptTokens": [
2259
2924
  {
2260
2925
  "kind": "Content",