@srgssr/pillarbox-web 1.29.0 → 1.31.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.
- package/dist/pillarbox-core.cjs +1 -1
- package/dist/pillarbox-core.es.js +1 -1
- package/dist/pillarbox.cjs +79 -25
- package/dist/pillarbox.cjs.map +1 -1
- package/dist/pillarbox.es.js +79 -25
- package/dist/pillarbox.es.js.map +1 -1
- package/dist/pillarbox.umd.js +79 -25
- package/dist/pillarbox.umd.js.map +1 -1
- package/dist/pillarbox.umd.min.js +1 -1
- package/dist/pillarbox.umd.min.js.map +1 -1
- package/dist/types/src/middleware/srgssr.d.ts +44 -2
- package/dist/types/src/middleware/srgssr.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/pillarbox-core.cjs
CHANGED
package/dist/pillarbox.cjs
CHANGED
|
@@ -94,7 +94,7 @@ function _toPropertyKey(t) {
|
|
|
94
94
|
return "symbol" == typeof i ? i : i + "";
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
-
const version = "1.
|
|
97
|
+
const version = "1.30.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' */
|
|
@@ -3653,13 +3653,8 @@ class SrgSsr {
|
|
|
3653
3653
|
static addBlockedSegments(_x) {
|
|
3654
3654
|
return _asyncToGenerator(function* (player, segments = []) {
|
|
3655
3655
|
const trackId = 'srgssr-blocked-segments';
|
|
3656
|
-
const
|
|
3657
|
-
|
|
3658
|
-
const blockedSegments = segments.filter(segment => segment.blockReason);
|
|
3659
|
-
if (!blockedSegments.length) return;
|
|
3660
|
-
blockedSegments.forEach(segment => {
|
|
3661
|
-
SrgSsr.addTextTrackCue(segmentTrack, segment);
|
|
3662
|
-
});
|
|
3656
|
+
const blockedSegmentsToAdd = SrgSsr.getBlockedSegments(segments);
|
|
3657
|
+
yield SrgSsr.createTextTrack(player, trackId, blockedSegmentsToAdd);
|
|
3663
3658
|
}).apply(this, arguments);
|
|
3664
3659
|
}
|
|
3665
3660
|
|
|
@@ -3699,7 +3694,29 @@ class SrgSsr {
|
|
|
3699
3694
|
static addTextTrackCue(textTrack, data) {
|
|
3700
3695
|
const startTime = (Number.isFinite(data.markIn) ? data.markIn : data.fullLengthMarkIn) / 1000;
|
|
3701
3696
|
const endTime = (Number.isFinite(data.markOut) ? data.markOut : data.fullLengthMarkOut) / 1000;
|
|
3702
|
-
|
|
3697
|
+
const text = JSON.stringify(data);
|
|
3698
|
+
const cue = new VTTCue(startTime, endTime, text);
|
|
3699
|
+
if (data.urn) {
|
|
3700
|
+
cue.id = data.urn;
|
|
3701
|
+
}
|
|
3702
|
+
textTrack.addCue(cue);
|
|
3703
|
+
}
|
|
3704
|
+
|
|
3705
|
+
/**
|
|
3706
|
+
* Add a new cues to a text track with the given array.
|
|
3707
|
+
*
|
|
3708
|
+
* @param {TextTrack} textTrack
|
|
3709
|
+
* @param {Array.<
|
|
3710
|
+
* Segment |
|
|
3711
|
+
* Chapter |
|
|
3712
|
+
* TimeInterval>
|
|
3713
|
+
* } cues SRG SSR's cues-like representation
|
|
3714
|
+
*/
|
|
3715
|
+
static addTextTrackCues(textTrack, cues = []) {
|
|
3716
|
+
if (!Array.isArray(cues)) return;
|
|
3717
|
+
cues.forEach(cue => {
|
|
3718
|
+
SrgSsr.addTextTrackCue(textTrack, cue);
|
|
3719
|
+
});
|
|
3703
3720
|
}
|
|
3704
3721
|
|
|
3705
3722
|
/**
|
|
@@ -3727,12 +3744,8 @@ class SrgSsr {
|
|
|
3727
3744
|
static addChapters(_x2, _x3) {
|
|
3728
3745
|
return _asyncToGenerator(function* (player, chapterUrn, chapters = []) {
|
|
3729
3746
|
const trackId = 'srgssr-chapters';
|
|
3730
|
-
const
|
|
3731
|
-
|
|
3732
|
-
chapters.forEach(chapter => {
|
|
3733
|
-
if (chapterUrn !== chapter.fullLengthUrn) return;
|
|
3734
|
-
SrgSsr.addTextTrackCue(chapterTrack, chapter);
|
|
3735
|
-
});
|
|
3747
|
+
const chaptersToAdd = SrgSsr.getChapters(chapterUrn, chapters);
|
|
3748
|
+
yield SrgSsr.createTextTrack(player, trackId, chaptersToAdd);
|
|
3736
3749
|
}).apply(this, arguments);
|
|
3737
3750
|
}
|
|
3738
3751
|
|
|
@@ -3745,11 +3758,8 @@ class SrgSsr {
|
|
|
3745
3758
|
static addIntervals(_x4) {
|
|
3746
3759
|
return _asyncToGenerator(function* (player, intervals = []) {
|
|
3747
3760
|
const trackId = 'srgssr-intervals';
|
|
3748
|
-
const
|
|
3749
|
-
|
|
3750
|
-
intervals.forEach(interval => {
|
|
3751
|
-
SrgSsr.addTextTrackCue(intervalTrack, interval);
|
|
3752
|
-
});
|
|
3761
|
+
const instervalsToAdd = SrgSsr.getIntervals(intervals);
|
|
3762
|
+
yield SrgSsr.createTextTrack(player, trackId, instervalsToAdd);
|
|
3753
3763
|
}).apply(this, arguments);
|
|
3754
3764
|
}
|
|
3755
3765
|
|
|
@@ -3860,11 +3870,16 @@ class SrgSsr {
|
|
|
3860
3870
|
*
|
|
3861
3871
|
* @param {Player} player
|
|
3862
3872
|
* @param {String} trackId Text track unique ID
|
|
3873
|
+
* @param {Array.<
|
|
3874
|
+
* Segment |
|
|
3875
|
+
* Chapter |
|
|
3876
|
+
* TimeInterval>
|
|
3877
|
+
* } cues SRG SSR's cues-like representation
|
|
3863
3878
|
*
|
|
3864
3879
|
* @returns {Promise<TextTrack>}
|
|
3865
3880
|
*/
|
|
3866
|
-
static createTextTrack(
|
|
3867
|
-
return _asyncToGenerator(function* () {
|
|
3881
|
+
static createTextTrack(_x5, _x6) {
|
|
3882
|
+
return _asyncToGenerator(function* (player, trackId, cues = []) {
|
|
3868
3883
|
const removeTrack = player.textTracks().getTrackById(trackId);
|
|
3869
3884
|
if (removeTrack) {
|
|
3870
3885
|
player.textTracks().removeTrack(removeTrack);
|
|
@@ -3881,9 +3896,10 @@ class SrgSsr {
|
|
|
3881
3896
|
}));
|
|
3882
3897
|
}, 100);
|
|
3883
3898
|
});
|
|
3899
|
+
SrgSsr.addTextTrackCues(textTrack, cues);
|
|
3884
3900
|
player.textTracks().addTrack(textTrack);
|
|
3885
3901
|
return textTrack;
|
|
3886
|
-
})();
|
|
3902
|
+
}).apply(this, arguments);
|
|
3887
3903
|
}
|
|
3888
3904
|
|
|
3889
3905
|
/**
|
|
@@ -4018,6 +4034,44 @@ class SrgSsr {
|
|
|
4018
4034
|
return isBlocked ? blockedSegment : undefined;
|
|
4019
4035
|
}
|
|
4020
4036
|
|
|
4037
|
+
/**
|
|
4038
|
+
* Get blocked segments.
|
|
4039
|
+
*
|
|
4040
|
+
* @param {Player} player
|
|
4041
|
+
* @param {Array<Segment>} [segments=[]]
|
|
4042
|
+
*
|
|
4043
|
+
* @returns {Array<Segment>}
|
|
4044
|
+
*/
|
|
4045
|
+
static getBlockedSegments(segments = []) {
|
|
4046
|
+
if (!Array.isArray(segments) || !segments.length) return [];
|
|
4047
|
+
return segments.filter(segment => segment.blockReason);
|
|
4048
|
+
}
|
|
4049
|
+
|
|
4050
|
+
/**
|
|
4051
|
+
* Get chapters related to the main chapter.
|
|
4052
|
+
*
|
|
4053
|
+
* @param {string} chapterUrn The URN of the main chapter.
|
|
4054
|
+
* @param {Array.<Chapter>} [chapters=[]]
|
|
4055
|
+
*
|
|
4056
|
+
* @returns {Array.<Chapter>}
|
|
4057
|
+
*/
|
|
4058
|
+
static getChapters(chapterUrn, chapters = []) {
|
|
4059
|
+
if (!Array.isArray(chapters) || !chapters.length) return [];
|
|
4060
|
+
return chapters.filter(chapter => chapterUrn === chapter.fullLengthUrn);
|
|
4061
|
+
}
|
|
4062
|
+
|
|
4063
|
+
/**
|
|
4064
|
+
* Get intervals.
|
|
4065
|
+
*
|
|
4066
|
+
* @param {Array<TimeInterval>} [segments=[]]
|
|
4067
|
+
*
|
|
4068
|
+
* @returns {Array<TimeInterval>}
|
|
4069
|
+
*/
|
|
4070
|
+
static getIntervals(intervals = []) {
|
|
4071
|
+
if (!Array.isArray(intervals) || !intervals.length) return [];
|
|
4072
|
+
return intervals;
|
|
4073
|
+
}
|
|
4074
|
+
|
|
4021
4075
|
/**
|
|
4022
4076
|
* Get mediaComposition from an URN.
|
|
4023
4077
|
*
|
|
@@ -4026,7 +4080,7 @@ class SrgSsr {
|
|
|
4026
4080
|
*
|
|
4027
4081
|
* @returns {Promise<MediaComposition>}
|
|
4028
4082
|
*/
|
|
4029
|
-
static getMediaComposition(
|
|
4083
|
+
static getMediaComposition(_x7) {
|
|
4030
4084
|
return _asyncToGenerator(function* (urn, handleRequest = new DataProvider().handleRequest()) {
|
|
4031
4085
|
const data = yield handleRequest(urn);
|
|
4032
4086
|
return Object.assign(new MediaComposition(), data);
|
|
@@ -4253,7 +4307,7 @@ class SrgSsr {
|
|
|
4253
4307
|
var _ref = _asyncToGenerator(function* (srcObj, next) {
|
|
4254
4308
|
return SrgSsr.handleSetSource(player, srcObj, next);
|
|
4255
4309
|
});
|
|
4256
|
-
return function setSource(
|
|
4310
|
+
return function setSource(_x8, _x9) {
|
|
4257
4311
|
return _ref.apply(this, arguments);
|
|
4258
4312
|
};
|
|
4259
4313
|
}()
|