@cloud-app-dev/vidc 3.0.2 → 3.0.5
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/.umirc.ts +12 -7
- package/es/Drawer/index.css +1 -0
- package/es/LoaderApp/utils.d.ts +1 -1
- package/es/Map/AMap.d.ts +6841 -1308
- package/es/Map/BasicMap/AMapInstance.d.ts +4 -3
- package/es/Map/BasicMap/AMapInstance.js +18 -3
- package/es/Map/BasicMap/LeafletInstance.d.ts +3 -3
- package/es/Map/ClusterLayer/hook.d.ts +4 -4
- package/es/Map/ClusterLayer/hook.js +20 -24
- package/es/Map/ClusterLayer/index.d.ts +1 -0
- package/es/Map/ClusterLayer/index.js +1 -0
- package/es/Map/Config/utils.js +2 -2
- package/es/Map/InfoWindow/MakerLikeWindow.d.ts +4 -0
- package/es/Map/InfoWindow/MakerLikeWindow.js +103 -0
- package/es/Map/InfoWindow/demo.js +48 -21
- package/es/Map/InfoWindow/index.d.ts +7 -5
- package/es/Map/InfoWindow/index.js +7 -6
- package/es/Map/interface.d.ts +1 -1
- package/es/Map/useMarker/index.d.ts +2 -2
- package/es/Map/useMarker/index.js +3 -19
- package/es/Player/demo.js +4 -3
- package/es/Player/event/errorEvent.js +3 -8
- package/es/Player/frontend_player.js +6 -12
- package/es/Player/iconfont.d.ts +1 -1
- package/es/Player/iconfont.js +1 -1
- package/es/Player/segment_player.js +46 -7
- package/es/Player/single_player.d.ts +2 -2
- package/es/Player/single_player.js +7 -2
- package/es/Player/style/iconfont.ttf +0 -0
- package/es/Player/style/iconfont.woff +0 -0
- package/es/Player/style/iconfont.woff2 +0 -0
- package/es/ScreenPlayer/Live.js +9 -1
- package/es/ScreenPlayer/LiveTools.d.ts +3 -1
- package/es/ScreenPlayer/LiveTools.js +83 -43
- package/es/ScreenPlayer/PlayerWithExt.js +37 -6
- package/es/ScreenPlayer/Record.d.ts +5 -0
- package/es/ScreenPlayer/Record.js +21 -19
- package/es/ScreenPlayer/RecordTools.d.ts +3 -1
- package/es/ScreenPlayer/RecordTools.js +99 -46
- package/es/ScreenPlayer/ScreenSelect.d.ts +7 -0
- package/es/ScreenPlayer/ScreenSelect.js +28 -0
- package/es/ScreenPlayer/SegmentTimeLine.js +8 -2
- package/es/ScreenPlayer/TimeSelect.d.ts +7 -0
- package/es/ScreenPlayer/TimeSelect.js +129 -0
- package/es/ScreenPlayer/TimeSlider.js +12 -10
- package/es/ScreenPlayer/demo.d.ts +1 -1
- package/es/ScreenPlayer/demo.js +7 -3
- package/es/ScreenPlayer/demo2.js +1 -1
- package/es/ScreenPlayer/index.css +58 -1
- package/es/ScreenPlayer/useVideoFit.d.ts +1 -1
- package/es/ScreenPlayer/useVideoFit.js +4 -2
- package/es/Timeout/index.d.ts +8 -9
- package/es/Timeout/index.js +17 -23
- package/package.json +1 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import _useUpdate from "ahooks/es/useUpdate";
|
|
1
2
|
import _useFullscreen3 from "ahooks/es/useFullscreen";
|
|
2
3
|
|
|
3
4
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
@@ -13,7 +14,9 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
|
13
14
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
14
15
|
|
|
15
16
|
import React from 'react';
|
|
16
|
-
import
|
|
17
|
+
import IconFont from '../Player/iconfont';
|
|
18
|
+
import ScreenSelect from './ScreenSelect';
|
|
19
|
+
import TimeSelect from './TimeSelect';
|
|
17
20
|
|
|
18
21
|
function RecordTools(_ref) {
|
|
19
22
|
var containerRef = _ref.containerRef,
|
|
@@ -21,23 +24,30 @@ function RecordTools(_ref) {
|
|
|
21
24
|
screenNum = _ref.screenNum,
|
|
22
25
|
getPlayerItem = _ref.getPlayerItem,
|
|
23
26
|
mode = _ref.mode,
|
|
27
|
+
toggleFit = _ref.toggleFit,
|
|
24
28
|
fit = _ref.fit,
|
|
25
|
-
|
|
29
|
+
time = _ref.time,
|
|
30
|
+
onTimeChange = _ref.onTimeChange;
|
|
26
31
|
|
|
27
32
|
var _useFullscreen = _useFullscreen3(containerRef),
|
|
28
33
|
_useFullscreen2 = _slicedToArray(_useFullscreen, 2),
|
|
29
34
|
isFullscreen = _useFullscreen2[0],
|
|
30
|
-
toggleFullscreen = _useFullscreen2[1].toggleFullscreen;
|
|
35
|
+
toggleFullscreen = _useFullscreen2[1].toggleFullscreen;
|
|
36
|
+
|
|
37
|
+
var update = _useUpdate(); // 播放状态控制
|
|
31
38
|
|
|
32
39
|
|
|
33
40
|
var playToggle = function playToggle() {
|
|
34
|
-
var player = getPlayerItem();
|
|
41
|
+
var player = getPlayerItem(); // eslint-disable-next-line @typescript-eslint/no-unused-expressions
|
|
42
|
+
|
|
35
43
|
player ? player.video.paused ? player.api.play() : player.api.pause() : undefined;
|
|
44
|
+
update();
|
|
36
45
|
}; // 重连
|
|
37
46
|
|
|
38
47
|
|
|
39
48
|
var reload = function reload() {
|
|
40
|
-
var player = getPlayerItem();
|
|
49
|
+
var player = getPlayerItem(); // eslint-disable-next-line @typescript-eslint/no-unused-expressions
|
|
50
|
+
|
|
41
51
|
player ? player.reload ? player.reload() : player.api.reload() : undefined;
|
|
42
52
|
};
|
|
43
53
|
|
|
@@ -46,57 +56,100 @@ function RecordTools(_ref) {
|
|
|
46
56
|
return player ? player.api.snapshot() : undefined;
|
|
47
57
|
};
|
|
48
58
|
|
|
59
|
+
var player = getPlayerItem();
|
|
49
60
|
return /*#__PURE__*/React.createElement("div", {
|
|
50
61
|
className: "player-tools"
|
|
51
62
|
}, /*#__PURE__*/React.createElement("div", {
|
|
52
|
-
className: "
|
|
53
|
-
},
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
63
|
+
className: "player-tools-left"
|
|
64
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
65
|
+
className: "player-tools-item"
|
|
66
|
+
}, /*#__PURE__*/React.createElement(IconFont, {
|
|
67
|
+
type: "lm-player-volume-close",
|
|
68
|
+
title: "\u97F3\u91CF"
|
|
69
|
+
})), /*#__PURE__*/React.createElement("span", {
|
|
70
|
+
className: "player-tools-item"
|
|
71
|
+
}, /*#__PURE__*/React.createElement(IconFont, {
|
|
72
|
+
type: "lm-player-xiangji1fill",
|
|
73
|
+
title: "\u622A\u56FE",
|
|
74
|
+
onClick: snapshot
|
|
75
|
+
})), /*#__PURE__*/React.createElement("span", {
|
|
76
|
+
className: "player-tools-item",
|
|
77
|
+
onClick: reload
|
|
78
|
+
}, /*#__PURE__*/React.createElement(IconFont, {
|
|
79
|
+
type: "lm-player-Refresh_Main",
|
|
80
|
+
title: "\u91CD\u8F7D"
|
|
81
|
+
})), /*#__PURE__*/React.createElement("span", {
|
|
82
|
+
className: "player-tools-item"
|
|
83
|
+
}, /*#__PURE__*/React.createElement(IconFont, {
|
|
84
|
+
type: "lm-player-YesorNo_No_Dark",
|
|
85
|
+
title: "\u5173\u95ED\u5F53\u524D"
|
|
86
|
+
})), /*#__PURE__*/React.createElement("span", {
|
|
87
|
+
className: "player-tools-item"
|
|
88
|
+
}, /*#__PURE__*/React.createElement(IconFont, {
|
|
89
|
+
type: "lm-player-S_Edit_LoadDown",
|
|
90
|
+
title: "\u4E0B\u8F7D\u5F53\u524D\u5F55\u50CF"
|
|
91
|
+
}))), /*#__PURE__*/React.createElement("div", {
|
|
92
|
+
className: "player-tools-mid"
|
|
93
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
94
|
+
className: "player-tools-item",
|
|
95
|
+
onClick: playToggle
|
|
96
|
+
}, player && !player.video.paused ? /*#__PURE__*/React.createElement(IconFont, {
|
|
97
|
+
type: "lm-player-Pause_Main",
|
|
98
|
+
title: "\u6682\u505C"
|
|
99
|
+
}) : /*#__PURE__*/React.createElement(IconFont, {
|
|
100
|
+
type: "lm-player-Play_Main",
|
|
101
|
+
title: "\u64AD\u653E"
|
|
102
|
+
})), /*#__PURE__*/React.createElement(TimeSelect, {
|
|
103
|
+
time: time,
|
|
104
|
+
onChange: onTimeChange
|
|
65
105
|
}), /*#__PURE__*/React.createElement("span", {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
106
|
+
className: "player-tools-item",
|
|
107
|
+
onClick: playToggle
|
|
108
|
+
}, player && !player.video.paused ? /*#__PURE__*/React.createElement(IconFont, {
|
|
109
|
+
type: "lm-player-Pause_Main",
|
|
110
|
+
title: "\u6682\u505C"
|
|
111
|
+
}) : /*#__PURE__*/React.createElement(IconFont, {
|
|
112
|
+
type: "lm-player-Play_Main",
|
|
113
|
+
title: "\u64AD\u653E"
|
|
114
|
+
}))), /*#__PURE__*/React.createElement("div", {
|
|
115
|
+
className: "player-tools-right"
|
|
116
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
117
|
+
className: "player-tools-item"
|
|
118
|
+
}, /*#__PURE__*/React.createElement(IconFont, {
|
|
119
|
+
type: "lm-player-YesorNo_No_Dark",
|
|
120
|
+
title: "\u5173\u95ED\u6240\u6709"
|
|
121
|
+
})), /*#__PURE__*/React.createElement("span", {
|
|
122
|
+
className: "player-tools-item",
|
|
74
123
|
onClick: function onClick() {
|
|
75
124
|
return updateState({
|
|
76
125
|
mode: mode === 1 ? 2 : 1
|
|
77
126
|
});
|
|
78
127
|
}
|
|
79
|
-
},
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
}, "\u64AD\u653E/\u6682\u505C"), /*#__PURE__*/React.createElement("span", {
|
|
85
|
-
style: {
|
|
86
|
-
padding: 6
|
|
87
|
-
},
|
|
88
|
-
onClick: reload
|
|
89
|
-
}, "\u91CD\u8FDE"), /*#__PURE__*/React.createElement("span", {
|
|
90
|
-
style: {
|
|
91
|
-
padding: 6
|
|
92
|
-
},
|
|
128
|
+
}, /*#__PURE__*/React.createElement(IconFont, {
|
|
129
|
+
type: "lm-player-YesorNo_No_Dark",
|
|
130
|
+
title: "\u5207\u6362".concat(mode === 1 ? '插件' : '浏览器', "\u6A21\u5F0F")
|
|
131
|
+
})), /*#__PURE__*/React.createElement("span", {
|
|
132
|
+
className: "player-tools-item",
|
|
93
133
|
onClick: toggleFit
|
|
94
|
-
}, fit === 'fill' ?
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
134
|
+
}, fit === 'fill' ? /*#__PURE__*/React.createElement(IconFont, {
|
|
135
|
+
type: "lm-player-S_View_ScreenSizeFull",
|
|
136
|
+
title: "\u81EA\u9002\u5E94"
|
|
137
|
+
}) : /*#__PURE__*/React.createElement(IconFont, {
|
|
138
|
+
type: "lm-player-S_View_ScreenSizeFull",
|
|
139
|
+
title: "\u586B\u5145"
|
|
140
|
+
})), /*#__PURE__*/React.createElement(ScreenSelect, {
|
|
141
|
+
screenNum: screenNum,
|
|
142
|
+
updateState: updateState
|
|
143
|
+
}), /*#__PURE__*/React.createElement("span", {
|
|
144
|
+
className: "player-tools-item",
|
|
145
|
+
onClick: toggleFullscreen
|
|
146
|
+
}, isFullscreen ? /*#__PURE__*/React.createElement(IconFont, {
|
|
147
|
+
type: "lm-player-ExitFull_Main",
|
|
148
|
+
title: "\u5168\u5C4F"
|
|
149
|
+
}) : /*#__PURE__*/React.createElement(IconFont, {
|
|
150
|
+
type: "lm-player-Full_Main",
|
|
151
|
+
title: "\u5168\u5C4F"
|
|
152
|
+
}))));
|
|
100
153
|
}
|
|
101
154
|
|
|
102
155
|
export default RecordTools;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import "antd/lib/tooltip/style";
|
|
2
|
+
import _Tooltip from "antd/lib/tooltip";
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { ScreenType } from './utils';
|
|
5
|
+
|
|
6
|
+
function ScreenSelect(_ref) {
|
|
7
|
+
var screenNum = _ref.screenNum,
|
|
8
|
+
updateState = _ref.updateState;
|
|
9
|
+
return /*#__PURE__*/React.createElement(_Tooltip, {
|
|
10
|
+
title: /*#__PURE__*/React.createElement("div", null, ScreenType.map(function (item) {
|
|
11
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
12
|
+
key: "".concat(item.name),
|
|
13
|
+
style: {
|
|
14
|
+
padding: 6
|
|
15
|
+
},
|
|
16
|
+
onClick: function onClick() {
|
|
17
|
+
return updateState({
|
|
18
|
+
screenNum: item.name
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
}, item.name);
|
|
22
|
+
}))
|
|
23
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
24
|
+
className: "player-tools-item"
|
|
25
|
+
}, screenNum));
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export default ScreenSelect;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import _useThrottleFn2 from "ahooks/es/useThrottleFn";
|
|
2
2
|
import _useSize from "ahooks/es/useSize";
|
|
3
|
+
import moment from 'moment';
|
|
3
4
|
import React, { useEffect, useRef } from 'react';
|
|
4
5
|
import TimeSlider from './TimeSlider';
|
|
5
6
|
|
|
@@ -18,10 +19,15 @@ function SegmentTimeLine(_ref) {
|
|
|
18
19
|
run = _useThrottleFn.run;
|
|
19
20
|
|
|
20
21
|
useEffect(function () {
|
|
22
|
+
var time = begin !== null && begin !== void 0 ? begin : moment().set({
|
|
23
|
+
hours: 0,
|
|
24
|
+
minutes: 0,
|
|
25
|
+
seconds: 0
|
|
26
|
+
}).valueOf();
|
|
21
27
|
var timeLine = new TimeSlider(ref.current, {
|
|
22
28
|
onTimeChange: run,
|
|
23
|
-
start_timestamp:
|
|
24
|
-
current_timestamp:
|
|
29
|
+
start_timestamp: time - 12 * 3600 * 1000,
|
|
30
|
+
current_timestamp: time,
|
|
25
31
|
timecell: timeCell
|
|
26
32
|
});
|
|
27
33
|
return function () {
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import "antd/lib/button/style";
|
|
2
|
+
import _Button from "antd/lib/button";
|
|
3
|
+
import "antd/lib/input-number/style";
|
|
4
|
+
import _InputNumber from "antd/lib/input-number";
|
|
5
|
+
import "antd/lib/popover/style";
|
|
6
|
+
import _Popover from "antd/lib/popover";
|
|
7
|
+
import _useUpdateEffect from "ahooks/es/useUpdateEffect";
|
|
8
|
+
|
|
9
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
10
|
+
|
|
11
|
+
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."); }
|
|
12
|
+
|
|
13
|
+
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); }
|
|
14
|
+
|
|
15
|
+
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; }
|
|
16
|
+
|
|
17
|
+
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; }
|
|
18
|
+
|
|
19
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
20
|
+
|
|
21
|
+
import React, { useMemo, useState } from 'react';
|
|
22
|
+
import moment from 'moment';
|
|
23
|
+
|
|
24
|
+
function TimeSelect(_ref) {
|
|
25
|
+
var time = _ref.time,
|
|
26
|
+
onChange = _ref.onChange;
|
|
27
|
+
|
|
28
|
+
var _useState = useState(function () {
|
|
29
|
+
var m = time ? moment(time) : moment().set({
|
|
30
|
+
hours: 0,
|
|
31
|
+
minutes: 0,
|
|
32
|
+
seconds: 0
|
|
33
|
+
});
|
|
34
|
+
return [m.hours(), m.minutes(), m.seconds()];
|
|
35
|
+
}),
|
|
36
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
37
|
+
values = _useState2[0],
|
|
38
|
+
setValues = _useState2[1];
|
|
39
|
+
|
|
40
|
+
var timeStr = useMemo(function () {
|
|
41
|
+
var m = time ? moment(time) : moment().set({
|
|
42
|
+
hours: 0,
|
|
43
|
+
minutes: 0,
|
|
44
|
+
seconds: 0
|
|
45
|
+
});
|
|
46
|
+
return m.format('HH:mm:ss');
|
|
47
|
+
}, [time]);
|
|
48
|
+
|
|
49
|
+
var onChangeTime = function onChangeTime() {
|
|
50
|
+
var m = time ? moment(time) : moment().set({
|
|
51
|
+
hours: 0,
|
|
52
|
+
minutes: 0,
|
|
53
|
+
seconds: 0
|
|
54
|
+
});
|
|
55
|
+
var newTime = m.set({
|
|
56
|
+
hours: values[0],
|
|
57
|
+
minutes: values[1],
|
|
58
|
+
seconds: values[2]
|
|
59
|
+
}).valueOf();
|
|
60
|
+
console.log(values, newTime);
|
|
61
|
+
onChange && onChange(newTime);
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
_useUpdateEffect(function () {
|
|
65
|
+
var m = time ? moment(time) : moment().set({
|
|
66
|
+
hours: 0,
|
|
67
|
+
minutes: 0,
|
|
68
|
+
seconds: 0
|
|
69
|
+
});
|
|
70
|
+
setValues([m.hours(), m.minutes(), m.seconds()]);
|
|
71
|
+
}, [time]);
|
|
72
|
+
|
|
73
|
+
var formatter = function formatter(value) {
|
|
74
|
+
return String(value).length === 1 ? "0".concat(value) : value + '';
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
return /*#__PURE__*/React.createElement(_Popover, {
|
|
78
|
+
content: /*#__PURE__*/React.createElement("div", {
|
|
79
|
+
className: "player-time-select"
|
|
80
|
+
}, /*#__PURE__*/React.createElement(_InputNumber, {
|
|
81
|
+
size: "small",
|
|
82
|
+
style: {
|
|
83
|
+
width: 36
|
|
84
|
+
},
|
|
85
|
+
formatter: formatter,
|
|
86
|
+
controls: false,
|
|
87
|
+
value: values[0],
|
|
88
|
+
onChange: function onChange(v) {
|
|
89
|
+
return setValues(function (old) {
|
|
90
|
+
return [v, old[1], old[2]];
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
}), ":", /*#__PURE__*/React.createElement(_InputNumber, {
|
|
94
|
+
size: "small",
|
|
95
|
+
style: {
|
|
96
|
+
width: 36
|
|
97
|
+
},
|
|
98
|
+
formatter: formatter,
|
|
99
|
+
controls: false,
|
|
100
|
+
value: values[1],
|
|
101
|
+
onChange: function onChange(v) {
|
|
102
|
+
return setValues(function (old) {
|
|
103
|
+
return [old[0], v, old[2]];
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
}), ":", /*#__PURE__*/React.createElement(_InputNumber, {
|
|
107
|
+
size: "small",
|
|
108
|
+
style: {
|
|
109
|
+
width: 36
|
|
110
|
+
},
|
|
111
|
+
formatter: formatter,
|
|
112
|
+
controls: false,
|
|
113
|
+
value: values[2],
|
|
114
|
+
onChange: function onChange(v) {
|
|
115
|
+
return setValues(function (old) {
|
|
116
|
+
return [old[0], old[1], v];
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
}), /*#__PURE__*/React.createElement(_Button, {
|
|
120
|
+
size: "small",
|
|
121
|
+
type: "primary",
|
|
122
|
+
onClick: onChangeTime
|
|
123
|
+
}, "\u786E\u5B9A"))
|
|
124
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
125
|
+
className: "player-record-time"
|
|
126
|
+
}, timeStr));
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
export default TimeSelect;
|
|
@@ -88,13 +88,15 @@ var TimeSlider = /*#__PURE__*/function () {
|
|
|
88
88
|
|
|
89
89
|
this.mousemoveFunc2 = function (e) {
|
|
90
90
|
if (!_this.g_isMousedown) {
|
|
91
|
-
var pos_x = _this.get_cursor_x_position(e);
|
|
91
|
+
var pos_x = _this.get_cursor_x_position(e); // const px_per_ms = this.canvansW / (this.hours_per_ruler * 60 * 60 * 1000); // px/ms
|
|
92
|
+
// const current_timestamp = this.start_timestamp + pos_x / px_per_ms;
|
|
92
93
|
|
|
93
|
-
var px_per_ms = _this.canvansW / (_this.hours_per_ruler * 60 * 60 * 1000); // px/ms
|
|
94
94
|
|
|
95
|
-
_this.
|
|
95
|
+
var ms_per_px = _this.hours_per_ruler * 3600 * 1000 / _this.canvansW; // ms/px
|
|
96
96
|
|
|
97
|
-
var
|
|
97
|
+
var current_timestamp = _this.start_timestamp + pos_x * ms_per_px;
|
|
98
|
+
|
|
99
|
+
_this.clearCanvas();
|
|
98
100
|
|
|
99
101
|
_this.init(_this.start_timestamp, _this.timecell, true);
|
|
100
102
|
|
|
@@ -103,7 +105,7 @@ var TimeSlider = /*#__PURE__*/function () {
|
|
|
103
105
|
_this.ctx.fillStyle = hoverLineColor;
|
|
104
106
|
_this.ctx.font = "10px Arial";
|
|
105
107
|
|
|
106
|
-
_this.ctx.fillText(_this.changeTime(
|
|
108
|
+
_this.ctx.fillText(_this.changeTime(current_timestamp), pos_x - 50, 12);
|
|
107
109
|
}
|
|
108
110
|
};
|
|
109
111
|
/**
|
|
@@ -120,12 +122,12 @@ var TimeSlider = /*#__PURE__*/function () {
|
|
|
120
122
|
// click 事件
|
|
121
123
|
_this.g_isMousedown = false;
|
|
122
124
|
|
|
123
|
-
var
|
|
125
|
+
var pos_x = _this.get_cursor_x_position(e); //鼠标距离 px
|
|
124
126
|
|
|
125
127
|
|
|
126
|
-
var ms_per_px = _this.
|
|
128
|
+
var ms_per_px = _this.hours_per_ruler * 3600 * 1000 / _this.canvansW; // ms/px
|
|
127
129
|
|
|
128
|
-
var current_timestamp = _this.start_timestamp +
|
|
130
|
+
var current_timestamp = _this.start_timestamp + pos_x * ms_per_px;
|
|
129
131
|
|
|
130
132
|
var timecellItem = _this.timecell.find(function (v) {
|
|
131
133
|
return current_timestamp >= v.beginTime && current_timestamp < v.endTime;
|
|
@@ -136,11 +138,11 @@ var TimeSlider = /*#__PURE__*/function () {
|
|
|
136
138
|
return;
|
|
137
139
|
}
|
|
138
140
|
|
|
139
|
-
_this.current_timestamp =
|
|
141
|
+
_this.current_timestamp = current_timestamp;
|
|
140
142
|
|
|
141
143
|
_this.set_time_to_middle(_this.current_timestamp);
|
|
142
144
|
|
|
143
|
-
_this.options.onTimeChange && _this.options.onTimeChange(
|
|
145
|
+
_this.options.onTimeChange && _this.options.onTimeChange(current_timestamp);
|
|
144
146
|
}
|
|
145
147
|
|
|
146
148
|
document.removeEventListener('mousemove', _this.mousemoveFunc);
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
export default function (): JSX.Element;
|
|
2
|
+
export default function App(): JSX.Element;
|
package/es/ScreenPlayer/demo.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import "antd/lib/config-provider/style";
|
|
2
|
+
import _ConfigProvider from "antd/lib/config-provider";
|
|
1
3
|
import React from 'react';
|
|
2
4
|
import LivePlayer from './Live';
|
|
3
5
|
var list = [{
|
|
@@ -13,13 +15,15 @@ var list = [{
|
|
|
13
15
|
url: 'https://6a75ef90-0-server.antelopecloud.cn/flv_live?app=live&token=557997490_3356491776_1691725056_86b4dd8105fea7b1180408a63d17b37b',
|
|
14
16
|
type: 'flv'
|
|
15
17
|
}];
|
|
16
|
-
export default function () {
|
|
17
|
-
return /*#__PURE__*/React.createElement(
|
|
18
|
+
export default function App() {
|
|
19
|
+
return /*#__PURE__*/React.createElement(_ConfigProvider, {
|
|
20
|
+
prefixCls: "cloudapp"
|
|
21
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
18
22
|
style: {
|
|
19
23
|
width: 1200,
|
|
20
24
|
height: 800
|
|
21
25
|
}
|
|
22
26
|
}, /*#__PURE__*/React.createElement(LivePlayer, {
|
|
23
27
|
list: list
|
|
24
|
-
}));
|
|
28
|
+
})));
|
|
25
29
|
}
|
package/es/ScreenPlayer/demo2.js
CHANGED
|
@@ -28,7 +28,7 @@ import RecordPlayer from './Record';
|
|
|
28
28
|
import moment from 'moment';
|
|
29
29
|
import Service from '../Service';
|
|
30
30
|
import { completionSegments } from './utils';
|
|
31
|
-
var token = "eyJhbGciOiJIUzI1NiJ9.
|
|
31
|
+
var token = "eyJhbGciOiJIUzI1NiJ9.eyJvcmdhbml6YXRpb25JZCI6IjEwMDEwMTAwMDQ0NSIsImV4dCI6MTY2MTY1NjgzMTU3MywidWlkIjoiMTAxMDAwMDAwNjk5IiwidmFsaWRTdGF0ZSI6MTA0NDA2LCJyb2xlSWQiOlsxMDAwMDAxMTA1MTgsMTAwMDAwMTEwNzI4XSwidmFsaWRUaW1lIjoxNzA0MzgzOTk5MDAwLCJvcHRDZW50ZXJJZCI6IjEwMDEwMDAwMDIzMyIsInVzZXJUeXBlIjoxMDA3MDQsImlhdCI6MTY2MTM5NzYzMTU3M30.OWPxfPgFBWqGJaRsYLSAZohn2AarhbkOuWLa1bwgZE4";
|
|
32
32
|
var cids = ['538509097', '539172446'];
|
|
33
33
|
|
|
34
34
|
var query = function query(_ref) {
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
height: 100%;
|
|
4
4
|
box-sizing: border-box;
|
|
5
5
|
user-select: none;
|
|
6
|
+
min-width: 600px;
|
|
6
7
|
}
|
|
7
8
|
.split-screen-player-wrapper .player-layout {
|
|
8
9
|
height: calc(100% - 42px);
|
|
9
|
-
border-bottom: 1px solid var(--gray12);
|
|
10
10
|
}
|
|
11
11
|
.split-screen-player-wrapper .player-layout .player-with-ext-layout {
|
|
12
12
|
float: left;
|
|
@@ -19,9 +19,60 @@
|
|
|
19
19
|
.split-screen-player-wrapper .player-layout .player-with-ext-layout.player-current-index .lm-player-ext-layout {
|
|
20
20
|
border: 1px solid var(--primary);
|
|
21
21
|
}
|
|
22
|
+
.split-screen-player-wrapper .player-record-time {
|
|
23
|
+
width: 100%;
|
|
24
|
+
height: 100%;
|
|
25
|
+
text-align: center;
|
|
26
|
+
background-color: var(--gray11);
|
|
27
|
+
line-height: 42px;
|
|
28
|
+
padding: 0 16px;
|
|
29
|
+
font-size: 16px;
|
|
30
|
+
color: var(--gray1);
|
|
31
|
+
margin: 0 20px;
|
|
32
|
+
}
|
|
22
33
|
.split-screen-player-wrapper .player-tools {
|
|
23
34
|
height: 42px;
|
|
24
35
|
background-color: var(--gray12);
|
|
36
|
+
padding: 0 10px;
|
|
37
|
+
display: flex;
|
|
38
|
+
align-items: center;
|
|
39
|
+
justify-content: space-between;
|
|
40
|
+
}
|
|
41
|
+
.split-screen-player-wrapper .player-tools .player-tools-left,
|
|
42
|
+
.split-screen-player-wrapper .player-tools .player-tools-right {
|
|
43
|
+
min-width: 35%;
|
|
44
|
+
display: flex;
|
|
45
|
+
align-items: center;
|
|
46
|
+
}
|
|
47
|
+
.split-screen-player-wrapper .player-tools .player-tools-right {
|
|
48
|
+
justify-content: flex-end;
|
|
49
|
+
margin-right: 0;
|
|
50
|
+
margin-left: 4px;
|
|
51
|
+
}
|
|
52
|
+
.split-screen-player-wrapper .player-tools .player-tools-mid {
|
|
53
|
+
display: flex;
|
|
54
|
+
align-items: center;
|
|
55
|
+
justify-self: center;
|
|
56
|
+
height: 100%;
|
|
57
|
+
}
|
|
58
|
+
.split-screen-player-wrapper .player-tools .player-tools-mid .player-tools-item {
|
|
59
|
+
margin: 0;
|
|
60
|
+
}
|
|
61
|
+
.split-screen-player-wrapper .player-tools .player-tools-item {
|
|
62
|
+
font-size: 18px;
|
|
63
|
+
width: 32px;
|
|
64
|
+
height: 32px;
|
|
65
|
+
color: var(--gray1);
|
|
66
|
+
text-align: center;
|
|
67
|
+
cursor: pointer;
|
|
68
|
+
margin-right: 4px;
|
|
69
|
+
}
|
|
70
|
+
.split-screen-player-wrapper .player-tools .player-tools-item .lm-player-iconfont {
|
|
71
|
+
font-size: 20px;
|
|
72
|
+
}
|
|
73
|
+
.split-screen-player-wrapper .player-tools .player-tools-item:hover {
|
|
74
|
+
background-color: var(--gray11);
|
|
75
|
+
border-radius: var(--radius1);
|
|
25
76
|
}
|
|
26
77
|
.split-screen-player-wrapper.split-screen-player-wrapper-record .record-time-line {
|
|
27
78
|
width: 100%;
|
|
@@ -47,3 +98,9 @@
|
|
|
47
98
|
.split-screen-player-wrapper.split-screen-player-wrapper-record .player-layout {
|
|
48
99
|
height: calc(100% - 42px - 60px);
|
|
49
100
|
}
|
|
101
|
+
.player-time-select {
|
|
102
|
+
width: 190px;
|
|
103
|
+
display: flex;
|
|
104
|
+
justify-content: space-around;
|
|
105
|
+
align-items: center;
|
|
106
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export default function useVideoFit(containerRef: React.MutableRefObject<HTMLDivElement>, deps
|
|
2
|
+
export default function useVideoFit(containerRef: React.MutableRefObject<HTMLDivElement>, deps?: any[]): {
|
|
3
3
|
fit: string;
|
|
4
4
|
toggleFit: () => void;
|
|
5
5
|
};
|
|
@@ -21,7 +21,9 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
|
21
21
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
22
22
|
|
|
23
23
|
import { useEffect, useMemo } from 'react';
|
|
24
|
-
export default function useVideoFit(containerRef
|
|
24
|
+
export default function useVideoFit(containerRef) {
|
|
25
|
+
var deps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
26
|
+
|
|
25
27
|
var _useToggle = _useToggle3('contain', 'fill'),
|
|
26
28
|
_useToggle2 = _slicedToArray(_useToggle, 2),
|
|
27
29
|
fit = _useToggle2[0],
|
|
@@ -35,7 +37,7 @@ export default function useVideoFit(containerRef, deps) {
|
|
|
35
37
|
var videos = containerRef.current.querySelectorAll('video');
|
|
36
38
|
Array.from(videos).forEach(function (item) {
|
|
37
39
|
item.style.objectFit = fit;
|
|
38
|
-
});
|
|
40
|
+
}); // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
39
41
|
}, [].concat(_toConsumableArray(deps), [fit]));
|
|
40
42
|
return useMemo(function () {
|
|
41
43
|
return {
|
package/es/Timeout/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { BasicTarget } from 'ahooks/es/utils/domTarget';
|
|
3
|
-
import 'antd/es/modal/style/css';
|
|
4
3
|
interface ITimeoutProps {
|
|
5
4
|
/**
|
|
6
|
-
|
|
5
|
+
* 容器
|
|
6
|
+
* @default `document.body`
|
|
7
7
|
*/
|
|
8
8
|
contianer?: BasicTarget;
|
|
9
9
|
/**
|
|
@@ -14,20 +14,19 @@ interface ITimeoutProps {
|
|
|
14
14
|
* 超时动作,默认退出登录
|
|
15
15
|
*/
|
|
16
16
|
onTimeout?: () => void;
|
|
17
|
+
/**
|
|
18
|
+
* 忽略的情况
|
|
19
|
+
*/
|
|
20
|
+
ignore?: () => boolean;
|
|
17
21
|
}
|
|
18
22
|
/**
|
|
19
|
-
*
|
|
23
|
+
* @desc 用户创建界面超时回调
|
|
20
24
|
*/
|
|
21
|
-
declare function Timeout({ contianer, time, onTimeout }: ITimeoutProps): JSX.Element;
|
|
25
|
+
declare function Timeout({ contianer, time, onTimeout, ignore }: ITimeoutProps): JSX.Element;
|
|
22
26
|
declare namespace Timeout {
|
|
23
27
|
var defaultProps: {
|
|
24
28
|
time: number;
|
|
25
29
|
contianer: HTMLElement;
|
|
26
|
-
onTimeout: typeof defaultTimeoutAction;
|
|
27
30
|
};
|
|
28
31
|
}
|
|
29
|
-
declare function defaultTimeoutAction(): {
|
|
30
|
-
destroy: () => void;
|
|
31
|
-
update: (configUpdate: import("antd").ModalFuncProps | ((prevConfig: import("antd").ModalFuncProps) => import("antd").ModalFuncProps)) => void;
|
|
32
|
-
};
|
|
33
32
|
export default Timeout;
|