@desynova-digital/player 4.2.0 → 4.2.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.
@@ -99,7 +99,8 @@ var propTypes = {
99
99
  userEmail: _propTypes.PropTypes.string,
100
100
  playerSelectedMarker: _propTypes.PropTypes.instanceOf(Object),
101
101
  theme: _propTypes.PropTypes.string,
102
- dubbedTracks: _propTypes.PropTypes.string
102
+ dubbedTracks: _propTypes.PropTypes.string,
103
+ additionalTracks: _propTypes.PropTypes.string
103
104
  };
104
105
  var defaultProps = {
105
106
  startTime: 0,
@@ -111,7 +112,8 @@ var defaultProps = {
111
112
  aspectRatio: 'auto',
112
113
  crossOrigin: 'anonymous',
113
114
  theme: 'dark',
114
- dubbedTracks: null
115
+ dubbedTracks: null,
116
+ additionalTracks: null
115
117
  };
116
118
  var SubTitleSection = _styledComponents["default"].div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n position: absolute;\n font-family: SFUIText-Regular;\n font-size: 16px;\n bottom: 20px;\n width: 100%;\n display: flex;\n justify-content: center;\n text-align: center;\n color: #ffffff;\n height: 90%;\n align-items: center;\n\n .subtitleContainer {\n border-radius: 4px;\n width: fit-content;\n background: #000000;\n opacity: 0.9;\n padding: ", ";\n line-height: 20px;\n position: absolute;\n\n i,\n em {\n font-style: italic; /* Override the font style for <em> tags inside elements with the class .someClass */\n }\n\n strong {\n font-weight: bold;\n }\n }\n .longSubtitleStyles {\n overflow-y: auto;\n height: fit-content;\n max-height: 70px;\n max-width: 75%;\n width: fit-content;\n }\n"])), function (props) {
117
119
  return props.currentSubtitleObj && props.currentSubtitleObj.line1 ? '8px 10px' : '0px';
@@ -252,7 +254,8 @@ var Video = exports["default"] = /*#__PURE__*/function (_Component) {
252
254
  };
253
255
  _this.video = null; // the html5 video
254
256
  _this.manager = new _Manager["default"](props.store);
255
- _this.dubbedTrackNames = null;
257
+ _this.dubbedTrackInfo = [];
258
+ _this.additionalTrackInfo = [];
256
259
  _this.getStyle = _this.getStyle.bind(_this);
257
260
  _this.getChildren = _this.getChildren.bind(_this);
258
261
  _this.play = _this.play.bind(_this);
@@ -299,8 +302,8 @@ var Video = exports["default"] = /*#__PURE__*/function (_Component) {
299
302
  return _createClass(Video, [{
300
303
  key: "combineM3U8Manifests",
301
304
  value: function () {
302
- var _combineM3U8Manifests = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2(originalUrl, dubbedUrl) {
303
- var fetchManifest, _yield$Promise$all, _yield$Promise$all2, originalContent, dubbedContent, extractAudioTracks, extractVideoStream, originalBase, dubbedBase, videoStreamUri, originalAudioTracks, dubbedAudioTracks, dubbedTrackNames, allTracksMap, allAudioTracks, combinedManifest, _i, _allAudioTracks, track;
305
+ var _combineM3U8Manifests = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2(originalUrl, dubbedUrl, additionalTrackUrl) {
306
+ var fetchManifest, fetchPromises, contents, originalContent, dubbedContent, additionalContent, extractAudioTracks, extractVideoStream, originalBase, dubbedBase, additionalBase, videoStreamUri, originalAudioTracks, dubbedAudioTracks, additionalAudioTracks, allTracksMap, allAudioTracks, combinedManifest, _i, _allAudioTracks, track;
304
307
  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
305
308
  while (1) switch (_context2.prev = _context2.next) {
306
309
  case 0:
@@ -327,17 +330,20 @@ var Video = exports["default"] = /*#__PURE__*/function (_Component) {
327
330
  }
328
331
  }, _callee);
329
332
  }));
330
- return function fetchManifest(_x3) {
333
+ return function fetchManifest(_x4) {
331
334
  return _ref.apply(this, arguments);
332
335
  };
333
- }();
334
- _context2.next = 3;
335
- return Promise.all([fetchManifest(originalUrl), fetchManifest(dubbedUrl)]);
336
- case 3:
337
- _yield$Promise$all = _context2.sent;
338
- _yield$Promise$all2 = _slicedToArray(_yield$Promise$all, 2);
339
- originalContent = _yield$Promise$all2[0];
340
- dubbedContent = _yield$Promise$all2[1];
336
+ }(); // Fetch all manifests
337
+ fetchPromises = [fetchManifest(originalUrl)];
338
+ if (dubbedUrl) fetchPromises.push(fetchManifest(dubbedUrl));
339
+ if (additionalTrackUrl) fetchPromises.push(fetchManifest(additionalTrackUrl));
340
+ _context2.next = 6;
341
+ return Promise.all(fetchPromises);
342
+ case 6:
343
+ contents = _context2.sent;
344
+ originalContent = contents[0];
345
+ dubbedContent = contents[1];
346
+ additionalContent = contents[2];
341
347
  extractAudioTracks = function extractAudioTracks(content, baseUrl) {
342
348
  var lines = content.split(/\r?\n/);
343
349
  var audioTracks = [];
@@ -387,15 +393,28 @@ var Video = exports["default"] = /*#__PURE__*/function (_Component) {
387
393
  };
388
394
  originalBase = originalUrl;
389
395
  dubbedBase = dubbedUrl;
396
+ additionalBase = additionalTrackUrl || originalUrl;
390
397
  videoStreamUri = extractVideoStream(originalContent, originalBase);
391
398
  originalAudioTracks = extractAudioTracks(originalContent, originalBase);
392
- dubbedAudioTracks = extractAudioTracks(dubbedContent, dubbedBase);
393
- dubbedTrackNames = dubbedAudioTracks.map(function (track) {
394
- return track.name;
399
+ dubbedAudioTracks = dubbedUrl ? extractAudioTracks(dubbedContent, dubbedBase) : [];
400
+ additionalAudioTracks = additionalTrackUrl ? extractAudioTracks(additionalContent, additionalBase) : [];
401
+ this.dubbedTrackInfo = dubbedAudioTracks.map(function (track) {
402
+ return {
403
+ name: track.name,
404
+ uri: track.uri,
405
+ language: track.language
406
+ };
407
+ });
408
+ this.additionalTrackInfo = additionalAudioTracks.map(function (track) {
409
+ return {
410
+ name: track.name,
411
+ uri: track.uri,
412
+ language: track.language
413
+ };
395
414
  });
396
415
  allTracksMap = new Map();
397
- [].concat(_toConsumableArray(originalAudioTracks), _toConsumableArray(dubbedAudioTracks)).forEach(function (track) {
398
- var key = track.name || track.language;
416
+ [].concat(_toConsumableArray(originalAudioTracks), _toConsumableArray(dubbedAudioTracks), _toConsumableArray(additionalAudioTracks)).forEach(function (track) {
417
+ var key = "".concat(track.name || track.language, "_").concat(track.uri || '');
399
418
  if (!allTracksMap.has(key)) {
400
419
  allTracksMap.set(key, track);
401
420
  }
@@ -411,15 +430,16 @@ var Video = exports["default"] = /*#__PURE__*/function (_Component) {
411
430
  }
412
431
  return _context2.abrupt("return", {
413
432
  combinedManifest: combinedManifest,
414
- dubbedTrackNames: dubbedTrackNames
433
+ dubbedTrackInfo: this.dubbedTrackInfo,
434
+ additionalTrackInfo: this.additionalTrackInfo
415
435
  });
416
- case 24:
436
+ case 30:
417
437
  case "end":
418
438
  return _context2.stop();
419
439
  }
420
- }, _callee2);
440
+ }, _callee2, this);
421
441
  }));
422
- function combineM3U8Manifests(_x, _x2) {
442
+ function combineM3U8Manifests(_x, _x2, _x3) {
423
443
  return _combineM3U8Manifests.apply(this, arguments);
424
444
  }
425
445
  return combineM3U8Manifests;
@@ -564,11 +584,13 @@ var Video = exports["default"] = /*#__PURE__*/function (_Component) {
564
584
  value: function setupHLS(originalSrc) {
565
585
  var _this4 = this;
566
586
  var dubbedTracksOverride = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
587
+ var additionalTracksOverride = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
567
588
  var _this$props6 = this.props,
568
589
  actions = _this$props6.actions,
569
590
  activeTrackIndex = _this$props6.activeTrackIndex;
570
591
  var self = this;
571
592
  var effectiveDubbedTracks = dubbedTracksOverride !== undefined ? dubbedTracksOverride : this.props.dubbedTracks;
593
+ var effectiveAdditionalTracks = additionalTracksOverride !== undefined ? additionalTracksOverride : this.props.additionalTracks;
572
594
  var attachAndLoad = function attachAndLoad(sourceUrl) {
573
595
  if (!self.hls) return;
574
596
  self.hls.attachMedia(self.video);
@@ -576,11 +598,15 @@ var Video = exports["default"] = /*#__PURE__*/function (_Component) {
576
598
  self.hls.loadSource(sourceUrl);
577
599
  });
578
600
  };
579
- if (effectiveDubbedTracks && effectiveDubbedTracks.length && effectiveDubbedTracks.trim() !== '') {
580
- this.combineM3U8Manifests(originalSrc, effectiveDubbedTracks).then(function (_ref2) {
601
+ var hasDubbed = effectiveDubbedTracks && effectiveDubbedTracks.trim() !== '';
602
+ var hasAdditionalTracks = effectiveAdditionalTracks && effectiveAdditionalTracks.trim() !== '';
603
+ if (hasDubbed || hasAdditionalTracks) {
604
+ this.combineM3U8Manifests(originalSrc, hasDubbed ? effectiveDubbedTracks : null, hasAdditionalTracks ? effectiveAdditionalTracks : null).then(function (_ref2) {
581
605
  var combinedManifest = _ref2.combinedManifest,
582
- dubbedTrackNames = _ref2.dubbedTrackNames;
583
- self.dubbedTrackNames = dubbedTrackNames;
606
+ dubbedTrackInfo = _ref2.dubbedTrackInfo,
607
+ additionalTrackInfo = _ref2.additionalTrackInfo;
608
+ self.dubbedTrackInfo = dubbedTrackInfo || [];
609
+ self.additionalTrackInfo = additionalTrackInfo || [];
584
610
  var blob = new Blob([combinedManifest], {
585
611
  type: 'application/vnd.apple.mpegurl'
586
612
  });
@@ -589,31 +615,52 @@ var Video = exports["default"] = /*#__PURE__*/function (_Component) {
589
615
  attachAndLoad(combinedUrl);
590
616
  })["catch"](function (err) {
591
617
  console.error('Failed to combine manifests, falling back to original', err);
592
- self.dubbedTrackNames = [];
618
+ self.dubbedTrackInfo = [];
619
+ self.additionalTrackInfo = [];
593
620
  attachAndLoad(originalSrc);
594
621
  });
595
622
  } else {
596
- self.dubbedTrackNames = [];
623
+ self.dubbedTrackInfo = [];
624
+ self.additionalTrackInfo = [];
597
625
  attachAndLoad(originalSrc);
598
626
  }
599
627
  this.hls.on(_hls["default"].Events.MANIFEST_PARSED, function (event, data) {
600
- var audioTracksWithFlag = (data.audioTracks || []).map(function (track) {
601
- if (self.dubbedTrackNames && self.dubbedTrackNames.includes(track.name)) {
602
- return _objectSpread(_objectSpread({}, track), {}, {
603
- isDubbedTrack: true
628
+ var audioTracksWithFlags = (data.audioTracks || []).map(function (track) {
629
+ var flaggedTrack = _objectSpread({}, track);
630
+ // Match by NAME and URI
631
+ if (self.dubbedTrackInfo && self.dubbedTrackInfo.length > 0) {
632
+ var matched = self.dubbedTrackInfo.some(function (dubbedTrack) {
633
+ return dubbedTrack.name === track.name && dubbedTrack.uri === track.url;
604
634
  });
635
+ if (matched) {
636
+ flaggedTrack.isDubbedTrack = true;
637
+ }
638
+ }
639
+ if (self.additionalTrackInfo && self.additionalTrackInfo.length > 0) {
640
+ var _matched = self.additionalTrackInfo.some(function (additionalTrack) {
641
+ return additionalTrack.name === track.name && additionalTrack.uri === track.url;
642
+ });
643
+ if (_matched) {
644
+ flaggedTrack.isAdditionalTrack = true;
645
+ }
605
646
  }
606
- return track;
647
+ return flaggedTrack;
607
648
  });
608
- actions.handleAudioTracks(audioTracksWithFlag);
649
+ actions.handleAudioTracks(audioTracksWithFlags);
609
650
  var defaultIndex;
610
- var firstDubbedIndex = audioTracksWithFlag.findIndex(function (t) {
611
- return t.isDubbedTrack;
651
+ var firstAdditionalIndex = audioTracksWithFlags.findIndex(function (t) {
652
+ return t.isAdditionalTrack;
612
653
  });
613
- if (firstDubbedIndex !== -1) {
654
+ var firstDubbedIndex = audioTracksWithFlags.findIndex(function (t) {
655
+ return t.isDubbedTrack && !t.isAdditionalTrack;
656
+ } // Don't override HD if already selected
657
+ );
658
+ if (firstAdditionalIndex !== -1) {
659
+ defaultIndex = firstAdditionalIndex;
660
+ } else if (firstDubbedIndex !== -1) {
614
661
  defaultIndex = firstDubbedIndex;
615
662
  } else {
616
- if (activeTrackIndex !== undefined && activeTrackIndex < audioTracksWithFlag.length) {
663
+ if (activeTrackIndex !== undefined && activeTrackIndex < audioTracksWithFlags.length) {
617
664
  defaultIndex = activeTrackIndex;
618
665
  } else {
619
666
  var autoselectIndex = data.audioTracks.findIndex(function (t) {
@@ -624,12 +671,12 @@ var Video = exports["default"] = /*#__PURE__*/function (_Component) {
624
671
  }
625
672
  self._desiredAudioTrackIndex = defaultIndex;
626
673
  var _onTrackSwitched = function onTrackSwitched(event, switchData) {
627
- var _audioTracksWithFlag$;
628
- var switchedTrack = audioTracksWithFlag.find(function (t) {
674
+ var _audioTracksWithFlags;
675
+ var switchedTrack = audioTracksWithFlags.find(function (t) {
629
676
  return t.id === switchData.id;
630
677
  });
631
678
  if (!switchedTrack) return;
632
- if (switchData.id !== ((_audioTracksWithFlag$ = audioTracksWithFlag[defaultIndex]) === null || _audioTracksWithFlag$ === void 0 ? void 0 : _audioTracksWithFlag$.id)) {
679
+ if (switchData.id !== ((_audioTracksWithFlags = audioTracksWithFlags[defaultIndex]) === null || _audioTracksWithFlags === void 0 ? void 0 : _audioTracksWithFlags.id)) {
633
680
  self.hls.audioTrack = defaultIndex;
634
681
  return;
635
682
  }
@@ -860,6 +907,7 @@ var Video = exports["default"] = /*#__PURE__*/function (_Component) {
860
907
  var _this$props9 = this.props,
861
908
  src = _this$props9.src,
862
909
  dubbedTracks = _this$props9.dubbedTracks,
910
+ additionalTracks = _this$props9.additionalTracks,
863
911
  activeAudio = _this$props9.player.activeAudio,
864
912
  currentSubtitleObj = _this$props9.currentSubtitleObj,
865
913
  markers = _this$props9.markers,
@@ -867,7 +915,7 @@ var Video = exports["default"] = /*#__PURE__*/function (_Component) {
867
915
  if (markers && markers !== newProps.markers && newProps.markers) {
868
916
  this.displaySubtitle(newProps.markers);
869
917
  }
870
- if (newProps.src !== src || newProps.dubbedTracks !== dubbedTracks) {
918
+ if (newProps.src !== src || newProps.dubbedTracks !== dubbedTracks || newProps.additionalTracks !== additionalTracks) {
871
919
  var isM3U8 = this.state.isM3U8;
872
920
  if (_hls["default"].isSupported() && isM3U8) {
873
921
  if (this.hls) {
@@ -889,7 +937,7 @@ var Video = exports["default"] = /*#__PURE__*/function (_Component) {
889
937
  var _this$manager$getStat3 = this.manager.getState(),
890
938
  HLSConfig = _this$manager$getStat3.player.HLSConfig;
891
939
  this.hls = new _hls["default"](HLSConfig);
892
- this.setupHLS(newProps.src, newProps.dubbedTracks);
940
+ this.setupHLS(newProps.src, newProps.dubbedTracks, newProps.additionalTracks);
893
941
  } else if (this.video) {
894
942
  this.video.src = newProps.src;
895
943
  }
@@ -32,7 +32,8 @@ function _taggedTemplateLiteral(e, t) { return t || (t = e.slice(0)), Object.fre
32
32
  var propTypes = {
33
33
  actions: _propTypes.PropTypes.instanceOf(Object),
34
34
  player: _propTypes.PropTypes.instanceOf(Object),
35
- theme: _propTypes.PropTypes.string
35
+ theme: _propTypes.PropTypes.string,
36
+ additionalTrackQuality: _propTypes.PropTypes.string
36
37
  };
37
38
  var AudioTrackBlock = (0, _styledComponents["default"])('div')(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n text-align: left;\n background: transparent;\n cursor: pointer;\n border-bottom: 1px solid #eeeeee;\n &:last-child {\n border: none;\n }\n &:hover,\n &:focus {\n background: ", ";\n }\n p {\n padding: 15px;\n font-family: SFUIText-Medium;\n font-size: 12px;\n white-space: nowrap;\n }\n"])), function (props) {
38
39
  return props.theme ? " ".concat(_tokens.colors[props.theme].videoPlayer.rgbaThemeColor) : 'rgba(0, 206, 198, 0.1)';
@@ -74,8 +75,16 @@ var AudioTracksMenuButton = /*#__PURE__*/function (_Component) {
74
75
  };
75
76
  });
76
77
  });
78
+ _defineProperty(_this, "toggleAdditionalAccordion", function () {
79
+ var additionalTrackQuality = _this.props.additionalTrackQuality;
80
+ _this.setState(function (prevState) {
81
+ return {
82
+ openAccordion: prevState.openAccordion === additionalTrackQuality ? null : additionalTrackQuality
83
+ };
84
+ });
85
+ });
77
86
  _this.state = {
78
- openAccordion: 'dubbed'
87
+ openAccordion: 'original'
79
88
  };
80
89
  return _this;
81
90
  }
@@ -100,23 +109,9 @@ var AudioTracksMenuButton = /*#__PURE__*/function (_Component) {
100
109
  }, {
101
110
  key: "ensureValidAudioTrack",
102
111
  value: function ensureValidAudioTrack() {
103
- var _this$props = this.props,
104
- player = _this$props.player,
105
- actions = _this$props.actions;
112
+ var player = this.props.player;
106
113
  var allTracks = player.audioTracksArr || [];
107
- var dubbedTracks = allTracks.filter(function (track) {
108
- return track.isDubbedTrack === true;
109
- });
110
114
  if (allTracks.length === 0) return;
111
- if (dubbedTracks.length) {
112
- this.setState({
113
- openAccordion: 'dubbed'
114
- });
115
- } else {
116
- this.setState({
117
- openAccordion: 'original'
118
- });
119
- }
120
115
  }
121
116
  }, {
122
117
  key: "changeTrack",
@@ -129,22 +124,28 @@ var AudioTracksMenuButton = /*#__PURE__*/function (_Component) {
129
124
  value: function render() {
130
125
  var _player$activeAudio,
131
126
  _this2 = this;
132
- var _this$props2 = this.props,
133
- player = _this$props2.player,
134
- actions = _this$props2.actions,
135
- theme = _this$props2.theme;
127
+ var _this$props = this.props,
128
+ player = _this$props.player,
129
+ actions = _this$props.actions,
130
+ theme = _this$props.theme,
131
+ activeVersion = _this$props.activeVersion,
132
+ additionalTrackQuality = _this$props.additionalTrackQuality;
136
133
  var openAccordion = this.state.openAccordion;
137
134
  var allTracks = player.audioTracksArr || [];
138
135
  var originalTracks = allTracks.filter(function (track) {
139
- return !track.isDubbedTrack;
136
+ return !track.isDubbedTrack && !track.isAdditionalTrack;
140
137
  });
141
138
  var dubbedTracks = allTracks.filter(function (track) {
142
139
  return track.isDubbedTrack === true;
143
140
  });
141
+ var additionalTrack = allTracks.filter(function (track) {
142
+ return track.isAdditionalTrack === true;
143
+ });
144
144
  var currentTrackName = ((_player$activeAudio = player.activeAudio) === null || _player$activeAudio === void 0 ? void 0 : _player$activeAudio.name) || 'No track playing';
145
145
  var hasOriginalTracks = originalTracks.length > 0;
146
146
  var hasDubbedTracks = dubbedTracks.length > 0;
147
- if (!hasOriginalTracks && !hasDubbedTracks) {
147
+ var hasAdditionalTracks = additionalTrack.length > 0;
148
+ if (!hasOriginalTracks && !hasDubbedTracks && !hasAdditionalTracks) {
148
149
  return null;
149
150
  }
150
151
  return /*#__PURE__*/_react["default"].createElement(_Menu["default"], {
@@ -158,7 +159,7 @@ var AudioTracksMenuButton = /*#__PURE__*/function (_Component) {
158
159
  position: "left"
159
160
  }, /*#__PURE__*/_react["default"].createElement("div", {
160
161
  className: "menu-container"
161
- }, hasDubbedTracks && /*#__PURE__*/_react["default"].createElement(NowPlayingContainer, null, /*#__PURE__*/_react["default"].createElement(NowPlayingLabel, null, "Now playing"), /*#__PURE__*/_react["default"].createElement(NowPlayingTrackName, {
162
+ }, (hasDubbedTracks || hasAdditionalTracks) && /*#__PURE__*/_react["default"].createElement(NowPlayingContainer, null, /*#__PURE__*/_react["default"].createElement(NowPlayingLabel, null, "Now playing"), /*#__PURE__*/_react["default"].createElement(NowPlayingTrackName, {
162
163
  theme: theme
163
164
  }, currentTrackName)), hasDubbedTracks && /*#__PURE__*/_react["default"].createElement(AccordionContainer, null, /*#__PURE__*/_react["default"].createElement(AccordionHeader, {
164
165
  theme: theme,
@@ -189,7 +190,36 @@ var AudioTracksMenuButton = /*#__PURE__*/function (_Component) {
189
190
  color: '#333333'
190
191
  }
191
192
  }, track.name || "Dubbed Track ".concat(index + 1)));
192
- }))), hasOriginalTracks && /*#__PURE__*/_react["default"].createElement(AccordionContainer, null, hasDubbedTracks && /*#__PURE__*/_react["default"].createElement(AccordionHeader, {
193
+ }))), hasAdditionalTracks && /*#__PURE__*/_react["default"].createElement(AccordionContainer, null, /*#__PURE__*/_react["default"].createElement(AccordionHeader, {
194
+ theme: theme,
195
+ onClick: this.toggleAdditionalAccordion
196
+ }, /*#__PURE__*/_react["default"].createElement(HeaderTitle, null, activeVersion.category, " ", additionalTrackQuality), /*#__PURE__*/_react["default"].createElement(HeaderIcon, {
197
+ isOpen: openAccordion === additionalTrackQuality
198
+ }, /*#__PURE__*/_react["default"].createElement(_components.Icon, {
199
+ color: "#999999",
200
+ name: "dropdown_more_icon"
201
+ }))), /*#__PURE__*/_react["default"].createElement(AccordionContent, {
202
+ isOpen: openAccordion === additionalTrackQuality
203
+ }, additionalTrack.map(function (track, index) {
204
+ return /*#__PURE__*/_react["default"].createElement(AudioTrackBlock, {
205
+ theme: theme,
206
+ onClick: function onClick() {
207
+ return _this2.changeTrack(track);
208
+ },
209
+ role: "presentation",
210
+ key: track.id || index,
211
+ style: player.activeAudio && player.activeAudio.id === track.id ? {
212
+ pointerEvents: 'none'
213
+ } : null
214
+ }, /*#__PURE__*/_react["default"].createElement("p", {
215
+ style: player.activeAudio && player.activeAudio.id === track.id ? {
216
+ color: theme ? "".concat(_tokens.colors[theme].videoPlayer.themeColor) : '#00cec6',
217
+ pointerEvents: 'none'
218
+ } : {
219
+ color: '#333333'
220
+ }
221
+ }, track.name || "Track ".concat(index + 1)));
222
+ }))), hasOriginalTracks && /*#__PURE__*/_react["default"].createElement(AccordionContainer, null, (hasDubbedTracks || hasAdditionalTracks) && /*#__PURE__*/_react["default"].createElement(AccordionHeader, {
193
223
  theme: theme,
194
224
  onClick: this.toggleOriginalAccordion
195
225
  }, /*#__PURE__*/_react["default"].createElement(HeaderTitle, null, "Original tracks"), /*#__PURE__*/_react["default"].createElement(HeaderIcon, {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@desynova-digital/player",
3
- "version": "4.2.0",
3
+ "version": "4.2.1",
4
4
  "description": "Video Player Package for Contido Application",
5
5
  "main": "index.js",
6
6
  "scripts": {