@desynova-digital/player 4.0.12 → 4.0.14
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/components/Video.js +8 -3
- package/components/control-bar/CaptionControlMenuButton.js +20 -5
- package/components/control-bar/ControlBar.js +5 -4
- package/components/settings-menu-control/CameraControl.js +60 -0
- package/components/settings-menu-control/SettingsMenu.js +34 -1
- package/package.json +1 -1
- package/reducers/player.js +1 -1
package/components/Video.js
CHANGED
|
@@ -440,7 +440,11 @@ var Video = exports["default"] = /*#__PURE__*/function (_Component) {
|
|
|
440
440
|
src = _this$props4.src,
|
|
441
441
|
activeAudio = _this$props4.player.activeAudio,
|
|
442
442
|
currentSubtitleObj = _this$props4.currentSubtitleObj,
|
|
443
|
-
markers = _this$props4.markers
|
|
443
|
+
markers = _this$props4.markers,
|
|
444
|
+
playerType = _this$props4.playerType;
|
|
445
|
+
if (markers && markers !== newProps.markers && newProps.markers) {
|
|
446
|
+
this.displaySubtitle(newProps.markers);
|
|
447
|
+
}
|
|
444
448
|
if (newProps.src !== src) {
|
|
445
449
|
var isM3U8 = this.state.isM3U8;
|
|
446
450
|
if (_hls["default"].isSupported() && isM3U8) {
|
|
@@ -1139,13 +1143,14 @@ var Video = exports["default"] = /*#__PURE__*/function (_Component) {
|
|
|
1139
1143
|
userEmail = _this$props31.userEmail,
|
|
1140
1144
|
theme = _this$props31.theme,
|
|
1141
1145
|
player = _this$props31.player,
|
|
1142
|
-
playerType = _this$props31.playerType
|
|
1146
|
+
playerType = _this$props31.playerType,
|
|
1147
|
+
markers = _this$props31.markers;
|
|
1143
1148
|
var _this$state2 = this.state,
|
|
1144
1149
|
isBuffering = _this$state2.isBuffering,
|
|
1145
1150
|
watermark = _this$state2.watermark,
|
|
1146
1151
|
currentSubtitleObj = _this$state2.currentSubtitleObj;
|
|
1147
1152
|
var children = this.getChildren(this.props);
|
|
1148
|
-
var isSubtitleActive = player.SubtitleStatus
|
|
1153
|
+
var isSubtitleActive = player.SubtitleStatus && playerType === "default" || playerType === 'subtitle' && markers && markers.length;
|
|
1149
1154
|
return /*#__PURE__*/_react["default"].createElement(VideoBlock, {
|
|
1150
1155
|
className: "video-react-player-block",
|
|
1151
1156
|
ref: function ref(c) {
|
|
@@ -75,14 +75,29 @@ var CaptionControlMenuButton = /*#__PURE__*/function (_Component) {
|
|
|
75
75
|
filterSelectedSubtitle(subtitleData[0].subtitle_info_id);
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
|
+
}, {
|
|
79
|
+
key: "componentDidUpdate",
|
|
80
|
+
value: function componentDidUpdate(prevProps) {
|
|
81
|
+
var _this$props3 = this.props,
|
|
82
|
+
subtitleData = _this$props3.subtitleData,
|
|
83
|
+
actions = _this$props3.actions,
|
|
84
|
+
filterSelectedSubtitle = _this$props3.filterSelectedSubtitle,
|
|
85
|
+
player = _this$props3.player;
|
|
86
|
+
if (subtitleData !== prevProps.subtitleData && subtitleData.length && player.activeCaption === 'Off') {
|
|
87
|
+
actions.handleCaptionTrackChange(subtitleData[0].title);
|
|
88
|
+
filterSelectedSubtitle(subtitleData[0].subtitle_info_id);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
78
91
|
}, {
|
|
79
92
|
key: "render",
|
|
80
93
|
value: function render() {
|
|
81
|
-
var _this$
|
|
82
|
-
SubtitleStatus = _this$
|
|
83
|
-
theme = _this$
|
|
84
|
-
subtitleData = _this$
|
|
85
|
-
|
|
94
|
+
var _this$props4 = this.props,
|
|
95
|
+
SubtitleStatus = _this$props4.player.SubtitleStatus,
|
|
96
|
+
theme = _this$props4.theme,
|
|
97
|
+
subtitleData = _this$props4.subtitleData,
|
|
98
|
+
playerType = _this$props4.playerType;
|
|
99
|
+
var showCaptionButton = subtitleData && subtitleData.length && playerType === 'default';
|
|
100
|
+
return showCaptionButton ? /*#__PURE__*/_react["default"].createElement("div", {
|
|
86
101
|
style: {
|
|
87
102
|
marginRight: '10px'
|
|
88
103
|
}
|
|
@@ -223,10 +223,11 @@ var ControlBar = exports["default"] = /*#__PURE__*/function (_Component) {
|
|
|
223
223
|
// playerType={playerType}
|
|
224
224
|
// key="caption-control-menu-button"
|
|
225
225
|
// />,
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
226
|
+
// <CameraButton
|
|
227
|
+
// order={9}
|
|
228
|
+
// playerType={playerType}
|
|
229
|
+
// />,
|
|
230
|
+
_react["default"].createElement(_SubtitleMovementMenu["default"], _extends({}, this.props, {
|
|
230
231
|
key: "subtitle-movement-menu",
|
|
231
232
|
order: 8
|
|
232
233
|
})), /*#__PURE__*/_react["default"].createElement(_AudioTracksMenuButton["default"], _extends({}, this.props, {
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
var _components = require("@desynova-digital/components");
|
|
12
|
+
var _tokens = require("@desynova-digital/tokens");
|
|
13
|
+
var _utils = require("../../utils");
|
|
14
|
+
var _templateObject;
|
|
15
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
16
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
17
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
18
|
+
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
19
|
+
var propTypes = {
|
|
20
|
+
actions: _propTypes["default"].object.isRequired,
|
|
21
|
+
player: _propTypes["default"].object.isRequired,
|
|
22
|
+
theme: _propTypes["default"].string,
|
|
23
|
+
orientationType: _propTypes["default"].string
|
|
24
|
+
};
|
|
25
|
+
var CameraControlBlock = _styledComponents["default"].div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n background: transparent;\n font-family: SFUIText-Medium;\n font-size: 12px;\n text-transform: uppercase;\n justify-content: flex-start;\n align-items: center;\n &:hover {\n background: ", ";\n }\n p {\n margin-left: 10px;\n white-space: nowrap;\n }\n"])), function (props) {
|
|
26
|
+
return props.theme ? _tokens.colors[props.theme].videoPlayer.rgbaThemeColor : 'rgba(0, 206, 198, 0.1)';
|
|
27
|
+
});
|
|
28
|
+
var CameraControl = function CameraControl(_ref) {
|
|
29
|
+
var actions = _ref.actions,
|
|
30
|
+
player = _ref.player,
|
|
31
|
+
theme = _ref.theme,
|
|
32
|
+
title = _ref.title,
|
|
33
|
+
iconName = _ref.iconName,
|
|
34
|
+
video = _ref.video,
|
|
35
|
+
frameRate = _ref.frameRate,
|
|
36
|
+
initialTime = _ref.initialTime,
|
|
37
|
+
onTakeSnapshot = _ref.onTakeSnapshot,
|
|
38
|
+
isPortrait = _ref.isPortrait;
|
|
39
|
+
var handleClick = function handleClick() {
|
|
40
|
+
var timeObj = {
|
|
41
|
+
"thumbnail": (0, _utils.secondsToTime)(video.currentTime, frameRate, initialTime),
|
|
42
|
+
"thumbnail_seconds": video.currentTime
|
|
43
|
+
};
|
|
44
|
+
onTakeSnapshot(timeObj, isPortrait);
|
|
45
|
+
};
|
|
46
|
+
return /*#__PURE__*/_react["default"].createElement(CameraControlBlock, {
|
|
47
|
+
theme: theme,
|
|
48
|
+
onClick: function onClick() {
|
|
49
|
+
return handleClick();
|
|
50
|
+
}
|
|
51
|
+
}, /*#__PURE__*/_react["default"].createElement(_components.Icon, {
|
|
52
|
+
name: iconName,
|
|
53
|
+
width: 20,
|
|
54
|
+
height: 20,
|
|
55
|
+
color: "#333333"
|
|
56
|
+
}), /*#__PURE__*/_react["default"].createElement("p", null, title));
|
|
57
|
+
};
|
|
58
|
+
CameraControl.propTypes = propTypes;
|
|
59
|
+
CameraControl.displayName = 'CameraControl';
|
|
60
|
+
var _default = exports["default"] = CameraControl;
|
|
@@ -12,8 +12,9 @@ var _SafeAreaControl = _interopRequireDefault(require("./SafeAreaControl"));
|
|
|
12
12
|
var _PlaybackRateControl = _interopRequireDefault(require("./PlaybackRateControl"));
|
|
13
13
|
var _ParentMenuComponent = _interopRequireDefault(require("./ParentMenuComponent"));
|
|
14
14
|
var _ChildMenuComponent = _interopRequireDefault(require("./ChildMenuComponent"));
|
|
15
|
+
var _CameraControl = _interopRequireDefault(require("./CameraControl"));
|
|
15
16
|
var _lodash = require("lodash");
|
|
16
|
-
var _excluded = ["player", "actions", "style", "disablePlayerActions", "theme", "playerType", "subtitleData"];
|
|
17
|
+
var _excluded = ["player", "actions", "style", "disablePlayerActions", "theme", "playerType", "subtitleData", "enablePlayerActions", "video", "frameRate", "initialTime", "onTakeSnapshot"];
|
|
17
18
|
var _templateObject;
|
|
18
19
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
19
20
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
@@ -52,6 +53,11 @@ function SettingsMenu(_ref) {
|
|
|
52
53
|
theme = _ref.theme,
|
|
53
54
|
playerType = _ref.playerType,
|
|
54
55
|
subtitleData = _ref.subtitleData,
|
|
56
|
+
enablePlayerActions = _ref.enablePlayerActions,
|
|
57
|
+
video = _ref.video,
|
|
58
|
+
frameRate = _ref.frameRate,
|
|
59
|
+
initialTime = _ref.initialTime,
|
|
60
|
+
onTakeSnapshot = _ref.onTakeSnapshot,
|
|
55
61
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
56
62
|
var _useState = (0, _react.useState)(true),
|
|
57
63
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -97,6 +103,33 @@ function SettingsMenu(_ref) {
|
|
|
97
103
|
theme: theme,
|
|
98
104
|
player: player,
|
|
99
105
|
actions: actions
|
|
106
|
+
})), (playerType === 'tagging' || enablePlayerActions.includes('screenshots')) && /*#__PURE__*/_react["default"].createElement("div", {
|
|
107
|
+
className: "settings-menu-tile safe-area"
|
|
108
|
+
}, /*#__PURE__*/_react["default"].createElement(_CameraControl["default"], {
|
|
109
|
+
theme: theme,
|
|
110
|
+
playerType: playerType,
|
|
111
|
+
player: player,
|
|
112
|
+
actions: actions,
|
|
113
|
+
video: video,
|
|
114
|
+
frameRate: frameRate,
|
|
115
|
+
initialTime: initialTime,
|
|
116
|
+
onTakeSnapshot: onTakeSnapshot,
|
|
117
|
+
isPortrait: false,
|
|
118
|
+
title: "LANDSCAPE SCREENSHOT",
|
|
119
|
+
iconName: "landscape-screenshot"
|
|
120
|
+
})), (playerType === 'tagging' || enablePlayerActions.includes('screenshots')) && /*#__PURE__*/_react["default"].createElement("div", {
|
|
121
|
+
className: "settings-menu-tile safe-area"
|
|
122
|
+
}, /*#__PURE__*/_react["default"].createElement(_CameraControl["default"], {
|
|
123
|
+
theme: theme,
|
|
124
|
+
player: player,
|
|
125
|
+
actions: actions,
|
|
126
|
+
video: video,
|
|
127
|
+
frameRate: frameRate,
|
|
128
|
+
initialTime: initialTime,
|
|
129
|
+
onTakeSnapshot: onTakeSnapshot,
|
|
130
|
+
isPortrait: true,
|
|
131
|
+
title: "PORTRAIT SCREENSHOT",
|
|
132
|
+
iconName: "portrait-screenshot"
|
|
100
133
|
})), /*#__PURE__*/_react["default"].createElement("div", {
|
|
101
134
|
className: "settings-menu-tile playback"
|
|
102
135
|
}, /*#__PURE__*/_react["default"].createElement(_PlaybackRateControl["default"], {
|
package/package.json
CHANGED
package/reducers/player.js
CHANGED
|
@@ -50,7 +50,7 @@ var initialState = {
|
|
|
50
50
|
// state used to show the value of selected subtitle
|
|
51
51
|
markerCreate: false,
|
|
52
52
|
rewindActive: false,
|
|
53
|
-
SubtitleStatus:
|
|
53
|
+
SubtitleStatus: false,
|
|
54
54
|
// state used to show whether subtitle will be shown on player or not
|
|
55
55
|
HLSConfig: {
|
|
56
56
|
debug: true,
|