@srgssr/pillarbox-web 1.28.0 → 1.29.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.
@@ -3,7 +3,7 @@
3
3
  const videojs = require('video.js');
4
4
  require('videojs-contrib-eme');
5
5
 
6
- const version = "1.27.0";
6
+ const version = "1.28.0";
7
7
 
8
8
  /** @import VJSPlayer from 'video.js/dist/types/player' */
9
9
  /** @import AudioTrack from 'video.js/dist/types/tracks/audio-track' */
@@ -1,7 +1,7 @@
1
1
  import videojs from 'video.js';
2
2
  import 'videojs-contrib-eme';
3
3
 
4
- const version = "1.27.0";
4
+ const version = "1.28.0";
5
5
 
6
6
  /** @import VJSPlayer from 'video.js/dist/types/player' */
7
7
  /** @import AudioTrack from 'video.js/dist/types/tracks/audio-track' */
@@ -94,7 +94,7 @@ function _toPropertyKey(t) {
94
94
  return "symbol" == typeof i ? i : i + "";
95
95
  }
96
96
 
97
- const version = "1.27.0";
97
+ const version = "1.28.0";
98
98
 
99
99
  /** @import VJSPlayer from 'video.js/dist/types/player' */
100
100
  /** @import AudioTrack from 'video.js/dist/types/tracks/audio-track' */
@@ -3650,21 +3650,17 @@ class SrgSsr {
3650
3650
  * @param {Player} player
3651
3651
  * @param {Array<Segment>} [segments=[]]
3652
3652
  */
3653
- static addBlockedSegments(player, segments = []) {
3654
- const trackId = 'srgssr-blocked-segments';
3655
- const removeTrack = player.textTracks().getTrackById(trackId);
3656
- if (removeTrack) {
3657
- player.textTracks().removeTrack(removeTrack);
3658
- }
3659
- if (!Array.isArray(segments) || !segments.length) return;
3660
- const blockedSegments = segments.filter(segment => segment.blockReason);
3661
- if (!blockedSegments.length) return;
3662
- SrgSsr.createTextTrack(player, trackId).then(segmentTrack => {
3653
+ static addBlockedSegments(_x) {
3654
+ return _asyncToGenerator(function* (player, segments = []) {
3655
+ const trackId = 'srgssr-blocked-segments';
3656
+ const segmentTrack = yield SrgSsr.createTextTrack(player, trackId);
3657
+ if (!Array.isArray(segments) || !segments.length) return;
3658
+ const blockedSegments = segments.filter(segment => segment.blockReason);
3659
+ if (!blockedSegments.length) return;
3663
3660
  blockedSegments.forEach(segment => {
3664
3661
  SrgSsr.addTextTrackCue(segmentTrack, segment);
3665
3662
  });
3666
- player.textTracks().addTrack(segmentTrack);
3667
- });
3663
+ }).apply(this, arguments);
3668
3664
  }
3669
3665
 
3670
3666
  /**
@@ -3728,20 +3724,16 @@ class SrgSsr {
3728
3724
  * @param {string} chapterUrn The URN of the main chapter.
3729
3725
  * @param {Array.<Chapter>} [chapters=[]]
3730
3726
  */
3731
- static addChapters(player, chapterUrn, chapters = []) {
3732
- const trackId = 'srgssr-chapters';
3733
- const removeTrack = player.textTracks().getTrackById(trackId);
3734
- if (removeTrack) {
3735
- player.textTracks().removeTrack(removeTrack);
3736
- }
3737
- if (!Array.isArray(chapters) || !chapters.length) return;
3738
- SrgSsr.createTextTrack(player, trackId).then(chapterTrack => {
3727
+ static addChapters(_x2, _x3) {
3728
+ return _asyncToGenerator(function* (player, chapterUrn, chapters = []) {
3729
+ const trackId = 'srgssr-chapters';
3730
+ const chapterTrack = yield SrgSsr.createTextTrack(player, trackId);
3731
+ if (!Array.isArray(chapters) || !chapters.length) return;
3739
3732
  chapters.forEach(chapter => {
3740
3733
  if (chapterUrn !== chapter.fullLengthUrn) return;
3741
3734
  SrgSsr.addTextTrackCue(chapterTrack, chapter);
3742
3735
  });
3743
- player.textTracks().addTrack(chapterTrack);
3744
- });
3736
+ }).apply(this, arguments);
3745
3737
  }
3746
3738
 
3747
3739
  /**
@@ -3750,19 +3742,15 @@ class SrgSsr {
3750
3742
  * @param {Player} player
3751
3743
  * @param {Array.<TimeInterval>} [intervals=[]]
3752
3744
  */
3753
- static addIntervals(player, intervals = []) {
3754
- const trackId = 'srgssr-intervals';
3755
- const removeTrack = player.textTracks().getTrackById(trackId);
3756
- if (removeTrack) {
3757
- player.textTracks().removeTrack(removeTrack);
3758
- }
3759
- if (!Array.isArray(intervals) || !intervals.length) return;
3760
- SrgSsr.createTextTrack(player, trackId).then(intervalTrack => {
3745
+ static addIntervals(_x4) {
3746
+ return _asyncToGenerator(function* (player, intervals = []) {
3747
+ const trackId = 'srgssr-intervals';
3748
+ const intervalTrack = yield SrgSsr.createTextTrack(player, trackId);
3749
+ if (!Array.isArray(intervals) || !intervals.length) return;
3761
3750
  intervals.forEach(interval => {
3762
3751
  SrgSsr.addTextTrackCue(intervalTrack, interval);
3763
3752
  });
3764
- player.textTracks().addTrack(intervalTrack);
3765
- });
3753
+ }).apply(this, arguments);
3766
3754
  }
3767
3755
 
3768
3756
  /**
@@ -3866,7 +3854,9 @@ class SrgSsr {
3866
3854
  }
3867
3855
 
3868
3856
  /**
3869
- * Create a new metadata text track.
3857
+ * Create a new metadata text track and add it to the player.
3858
+ *
3859
+ * If a text track with the same trackId exists, it is deleted beforehand.
3870
3860
  *
3871
3861
  * @param {Player} player
3872
3862
  * @param {String} trackId Text track unique ID
@@ -3874,17 +3864,26 @@ class SrgSsr {
3874
3864
  * @returns {Promise<TextTrack>}
3875
3865
  */
3876
3866
  static createTextTrack(player, trackId) {
3877
- // See https://github.com/videojs/video.js/issues/8519
3878
- return new Promise(resolve => {
3879
- setTimeout(() => {
3880
- resolve(new pillarbox.TextTrack({
3881
- id: trackId,
3882
- kind: 'metadata',
3883
- label: trackId,
3884
- tech: player.tech(true)
3885
- }));
3886
- }, 100);
3887
- });
3867
+ return _asyncToGenerator(function* () {
3868
+ const removeTrack = player.textTracks().getTrackById(trackId);
3869
+ if (removeTrack) {
3870
+ player.textTracks().removeTrack(removeTrack);
3871
+ }
3872
+
3873
+ // See https://github.com/videojs/video.js/issues/8519
3874
+ const textTrack = yield new Promise(resolve => {
3875
+ setTimeout(() => {
3876
+ resolve(new pillarbox.TextTrack({
3877
+ id: trackId,
3878
+ kind: 'metadata',
3879
+ label: trackId,
3880
+ tech: player.tech(true)
3881
+ }));
3882
+ }, 100);
3883
+ });
3884
+ player.textTracks().addTrack(textTrack);
3885
+ return textTrack;
3886
+ })();
3888
3887
  }
3889
3888
 
3890
3889
  /**
@@ -4027,7 +4026,7 @@ class SrgSsr {
4027
4026
  *
4028
4027
  * @returns {Promise<MediaComposition>}
4029
4028
  */
4030
- static getMediaComposition(_x) {
4029
+ static getMediaComposition(_x5) {
4031
4030
  return _asyncToGenerator(function* (urn, handleRequest = new DataProvider().handleRequest()) {
4032
4031
  const data = yield handleRequest(urn);
4033
4032
  return Object.assign(new MediaComposition(), data);
@@ -4254,7 +4253,7 @@ class SrgSsr {
4254
4253
  var _ref = _asyncToGenerator(function* (srcObj, next) {
4255
4254
  return SrgSsr.handleSetSource(player, srcObj, next);
4256
4255
  });
4257
- return function setSource(_x2, _x3) {
4256
+ return function setSource(_x6, _x7) {
4258
4257
  return _ref.apply(this, arguments);
4259
4258
  };
4260
4259
  }()