@cloud-app-dev/vidc 3.0.33 → 3.0.35
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/es/CustomRenderSelect/index.d.ts +3 -1
- package/es/CustomRenderSelect/index.js +14 -2
- package/es/DisableMark/index.js +7 -1
- package/es/Player/util.d.ts +1 -1
- package/es/Player/util.js +1 -1
- package/es/ScreenPlayer/RatePick.d.ts +6 -0
- package/es/ScreenPlayer/RatePick.js +59 -0
- package/es/ScreenPlayer/RecordTools.js +9 -1
- package/es/ScreenPlayer/index.css +14 -1
- package/package.json +1 -1
|
@@ -5,6 +5,8 @@ interface ICustomRenderSelectProps extends SelectProps {
|
|
|
5
5
|
children?: React.ReactNode;
|
|
6
6
|
value: any;
|
|
7
7
|
customRender: (value: any) => JSX.Element;
|
|
8
|
+
onChange: (value: any) => void;
|
|
9
|
+
selectAotoClose?: boolean;
|
|
8
10
|
}
|
|
9
|
-
declare function CustomRenderSelect({ children, value, customRender, popupClassName, getPopupContainer, ...props }: ICustomRenderSelectProps): JSX.Element;
|
|
11
|
+
declare function CustomRenderSelect({ children, value, customRender, popupClassName, getPopupContainer, onChange, selectAotoClose, ...props }: ICustomRenderSelectProps): JSX.Element;
|
|
10
12
|
export default CustomRenderSelect;
|
|
@@ -26,7 +26,10 @@ function CustomRenderSelect(_a) {
|
|
|
26
26
|
customRender = _a.customRender,
|
|
27
27
|
popupClassName = _a.popupClassName,
|
|
28
28
|
getPopupContainer = _a.getPopupContainer,
|
|
29
|
-
|
|
29
|
+
onChange = _a.onChange,
|
|
30
|
+
_a$selectAotoClose = _a.selectAotoClose,
|
|
31
|
+
selectAotoClose = _a$selectAotoClose === void 0 ? true : _a$selectAotoClose,
|
|
32
|
+
props = __rest(_a, ["children", "value", "customRender", "popupClassName", "getPopupContainer", "onChange", "selectAotoClose"]);
|
|
30
33
|
|
|
31
34
|
var classname = useMemo(function () {
|
|
32
35
|
return "custom-render-select-dropdown-".concat(_uuid());
|
|
@@ -52,6 +55,14 @@ function CustomRenderSelect(_a) {
|
|
|
52
55
|
return set(false);
|
|
53
56
|
}, getDoms, ['click']);
|
|
54
57
|
|
|
58
|
+
var onSelectChange = function onSelectChange(v) {
|
|
59
|
+
onChange && onChange(v);
|
|
60
|
+
|
|
61
|
+
if (selectAotoClose) {
|
|
62
|
+
set(false);
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
|
|
55
66
|
return /*#__PURE__*/React.createElement("div", {
|
|
56
67
|
className: "custom-render-select",
|
|
57
68
|
ref: domRef
|
|
@@ -61,7 +72,8 @@ function CustomRenderSelect(_a) {
|
|
|
61
72
|
getPopupContainer: getPopupContainer ? getPopupContainer : function () {
|
|
62
73
|
return domRef.current.parentElement.parentElement;
|
|
63
74
|
},
|
|
64
|
-
open: open
|
|
75
|
+
open: open,
|
|
76
|
+
onChange: onSelectChange
|
|
65
77
|
}), children), /*#__PURE__*/React.createElement("div", {
|
|
66
78
|
className: "custom-render-box",
|
|
67
79
|
onClick: toggle
|
package/es/DisableMark/index.js
CHANGED
|
@@ -4,7 +4,13 @@ export default function DisableMark(_ref) {
|
|
|
4
4
|
var children = _ref.children,
|
|
5
5
|
disabled = _ref.disabled,
|
|
6
6
|
width = _ref.width;
|
|
7
|
-
return /*#__PURE__*/React.createElement(
|
|
7
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
8
|
+
style: {
|
|
9
|
+
width: '100%',
|
|
10
|
+
height: 'max-content',
|
|
11
|
+
position: 'relative'
|
|
12
|
+
}
|
|
13
|
+
}, disabled ? /*#__PURE__*/React.createElement("div", {
|
|
8
14
|
className: "disable-mark",
|
|
9
15
|
style: {
|
|
10
16
|
width: width
|
package/es/Player/util.d.ts
CHANGED
|
@@ -20,7 +20,7 @@ export declare const playUnload: (video: HTMLVideoElement, flv?: Flvjs.Player, h
|
|
|
20
20
|
* 获取播放文件类型
|
|
21
21
|
* @param {*} url
|
|
22
22
|
*/
|
|
23
|
-
export declare function getVideoType(url: string): "flv" | "native" | "
|
|
23
|
+
export declare function getVideoType(url: string): "flv" | "native" | "hls";
|
|
24
24
|
export declare function timeStamp(second: number): string;
|
|
25
25
|
export declare function getRandom(): string;
|
|
26
26
|
export declare function tryCatch(fn: () => void | Promise<any>): Promise<void>;
|
package/es/Player/util.js
CHANGED
|
@@ -110,7 +110,7 @@ export function getVideoType(url) {
|
|
|
110
110
|
return 'native';
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
-
return url.indexOf('.flv') > -1 ? 'flv' : url.indexOf('.m3u8') > -1 ? '
|
|
113
|
+
return url.indexOf('.flv') > -1 ? 'flv' : url.indexOf('.m3u8') > -1 ? 'hls' : 'native';
|
|
114
114
|
}
|
|
115
115
|
export function timeStamp(second) {
|
|
116
116
|
// 转换为式分秒
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import "antd/lib/select/style";
|
|
2
|
+
import _Select from "antd/lib/select";
|
|
3
|
+
import _useUpdateEffect from "ahooks/es/useUpdateEffect";
|
|
4
|
+
|
|
5
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
6
|
+
|
|
7
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
8
|
+
|
|
9
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
10
|
+
|
|
11
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
12
|
+
|
|
13
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
14
|
+
|
|
15
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
16
|
+
|
|
17
|
+
import React, { useState } from 'react';
|
|
18
|
+
import CustomRenderSelect from '../CustomRenderSelect';
|
|
19
|
+
|
|
20
|
+
function RatePick(_ref) {
|
|
21
|
+
var onChange = _ref.onChange;
|
|
22
|
+
|
|
23
|
+
var _useState = useState({
|
|
24
|
+
rate: 1
|
|
25
|
+
}),
|
|
26
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
27
|
+
state = _useState2[0],
|
|
28
|
+
setState = _useState2[1];
|
|
29
|
+
|
|
30
|
+
_useUpdateEffect(function () {
|
|
31
|
+
return onChange(state.rate);
|
|
32
|
+
}, []);
|
|
33
|
+
|
|
34
|
+
return /*#__PURE__*/React.createElement(CustomRenderSelect, {
|
|
35
|
+
value: state.rate,
|
|
36
|
+
popupClassName: "rate-select-dropdown ",
|
|
37
|
+
customRender: function customRender() {
|
|
38
|
+
return /*#__PURE__*/React.createElement("span", {
|
|
39
|
+
className: "select-current-rate-item"
|
|
40
|
+
}, "\u500D\u901F x".concat(state.rate));
|
|
41
|
+
},
|
|
42
|
+
onChange: function onChange(v) {
|
|
43
|
+
return setState({
|
|
44
|
+
rate: v
|
|
45
|
+
});
|
|
46
|
+
},
|
|
47
|
+
placement: "topLeft"
|
|
48
|
+
}, /*#__PURE__*/React.createElement(_Select.Option, {
|
|
49
|
+
value: 2
|
|
50
|
+
}, "x2"), /*#__PURE__*/React.createElement(_Select.Option, {
|
|
51
|
+
value: 1.5
|
|
52
|
+
}, "x1.5"), /*#__PURE__*/React.createElement(_Select.Option, {
|
|
53
|
+
value: 1
|
|
54
|
+
}, "x1"), /*#__PURE__*/React.createElement(_Select.Option, {
|
|
55
|
+
value: 0.5
|
|
56
|
+
}, "x0.5"));
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export default RatePick;
|
|
@@ -22,6 +22,7 @@ import TimeSelect from './TimeSelect';
|
|
|
22
22
|
import TimeMode from './TimeMode';
|
|
23
23
|
import useFullscreen from '../useFullscreen';
|
|
24
24
|
import Volume from '../Player/contraller_bar/volume';
|
|
25
|
+
import RatePick from './RatePick';
|
|
25
26
|
|
|
26
27
|
function RecordTools(_ref) {
|
|
27
28
|
var containerRef = _ref.containerRef,
|
|
@@ -73,6 +74,11 @@ function RecordTools(_ref) {
|
|
|
73
74
|
snapshot === null || snapshot === void 0 ? void 0 : snapshot(player === null || player === void 0 ? void 0 : player.api.snapshot());
|
|
74
75
|
};
|
|
75
76
|
|
|
77
|
+
var ratechange = function ratechange(value) {
|
|
78
|
+
var player = getPlayerItem();
|
|
79
|
+
player === null || player === void 0 ? void 0 : player.api.setPlaybackRate(value);
|
|
80
|
+
};
|
|
81
|
+
|
|
76
82
|
var player = getPlayerItem();
|
|
77
83
|
|
|
78
84
|
_useUpdateEffect(function () {
|
|
@@ -137,7 +143,9 @@ function RecordTools(_ref) {
|
|
|
137
143
|
color: 'var(--primary)'
|
|
138
144
|
} : null,
|
|
139
145
|
title: "\u9010\u5E27\u64AD\u653E"
|
|
140
|
-
})),
|
|
146
|
+
})), /*#__PURE__*/React.createElement(RatePick, {
|
|
147
|
+
onChange: ratechange
|
|
148
|
+
}), oneWinExtTools), /*#__PURE__*/React.createElement("div", {
|
|
141
149
|
className: "player-tools-mid"
|
|
142
150
|
}, /*#__PURE__*/React.createElement("div", {
|
|
143
151
|
className: "player-tools-item",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
}
|
|
44
44
|
.split-screen-player-wrapper .player-tools {
|
|
45
45
|
height: 42px;
|
|
46
|
-
background-color:
|
|
46
|
+
background-color: #242c3d;
|
|
47
47
|
padding: 0 10px;
|
|
48
48
|
display: flex;
|
|
49
49
|
align-items: center;
|
|
@@ -151,3 +151,16 @@
|
|
|
151
151
|
.custom-select-dropdown .cloudapp-select-item {
|
|
152
152
|
font-size: var(--fs-small);
|
|
153
153
|
}
|
|
154
|
+
.select-current-rate-item {
|
|
155
|
+
color: var(--gray1);
|
|
156
|
+
font-size: 12px;
|
|
157
|
+
border: 1px solid var(--gray1);
|
|
158
|
+
padding: 2px 0;
|
|
159
|
+
display: inline-block;
|
|
160
|
+
width: 64px;
|
|
161
|
+
border-radius: 2px;
|
|
162
|
+
cursor: pointer;
|
|
163
|
+
text-align: center;
|
|
164
|
+
position: relative;
|
|
165
|
+
top: 4px;
|
|
166
|
+
}
|