@vtx/player 1.10.19 → 1.12.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.
- package/lib/api/fetch.js +68 -71
- package/lib/api/fetch.js.map +1 -1
- package/lib/api/index.js +33 -51
- package/lib/api/index.js.map +1 -1
- package/lib/api/types.d.ts +14 -7
- package/lib/api/types.js +0 -1
- package/lib/api/types.js.map +1 -1
- package/lib/bd/PlayerManager.js +8 -7
- package/lib/bd/PlayerManager.js.map +1 -1
- package/lib/bd2.x/PlayerManager.d.ts +71 -0
- package/lib/bd2.x/PlayerManager.js +228 -0
- package/lib/bd2.x/PlayerManager.js.map +1 -0
- package/lib/bd2.x/swfobject-all.d.ts +11 -0
- package/lib/bd2.x/swfobject-all.js +158 -0
- package/lib/bd2.x/swfobject-all.js.map +1 -0
- package/lib/bd2.x/swfobject.d.ts +40 -0
- package/lib/bd2.x/swfobject.js +722 -0
- package/lib/bd2.x/swfobject.js.map +1 -0
- package/lib/bill-player/index.d.ts +1 -1
- package/lib/bill-player/index.js +32 -32
- package/lib/bill-player/index.js.map +1 -1
- package/lib/components/download-tag/index.js +19 -18
- package/lib/components/download-tag/index.js.map +1 -1
- package/lib/components/set-tag-video/index.js +25 -24
- package/lib/components/set-tag-video/index.js.map +1 -1
- package/lib/components/split-screen/index.d.ts +1 -1
- package/lib/components/split-screen/index.js +3 -5
- package/lib/components/split-screen/index.js.map +1 -1
- package/lib/components/tag-video/index.js +16 -13
- package/lib/components/tag-video/index.js.map +1 -1
- package/lib/components/video-scale/index.d.ts +1 -1
- package/lib/components/video-scale/index.js +16 -15
- package/lib/components/video-scale/index.js.map +1 -1
- package/lib/config.d.ts +1 -1
- package/lib/config.js +1 -2
- package/lib/config.js.map +1 -1
- package/lib/context/index.js +3 -5
- package/lib/context/index.js.map +1 -1
- package/lib/controls/index.d.ts +13 -12
- package/lib/controls/index.js +44 -42
- package/lib/controls/index.js.map +1 -1
- package/lib/h264/PlayerManager.js +8 -7
- package/lib/h264/PlayerManager.js.map +1 -1
- package/lib/history-control/index.d.ts +2 -2
- package/lib/history-control/index.js +24 -23
- package/lib/history-control/index.js.map +1 -1
- package/lib/history-control-v2/components/grid-item/index.js +33 -13
- package/lib/history-control-v2/components/grid-item/index.js.map +1 -1
- package/lib/history-control-v2/components/panel/VideoTable.d.ts +4 -2
- package/lib/history-control-v2/components/panel/VideoTable.js +283 -74
- package/lib/history-control-v2/components/panel/VideoTable.js.map +1 -1
- package/lib/history-control-v2/components/panel/index.d.ts +1 -0
- package/lib/history-control-v2/components/panel/index.js +51 -26
- package/lib/history-control-v2/components/panel/index.js.map +1 -1
- package/lib/history-control-v2/context.js +1 -2
- package/lib/history-control-v2/context.js.map +1 -1
- package/lib/history-control-v2/index.d.ts +4 -4
- package/lib/history-control-v2/index.js +77 -77
- package/lib/history-control-v2/index.js.map +1 -1
- package/lib/history-control-v2/interface.d.ts +20 -11
- package/lib/history-control-v2/utils.d.ts +1 -1
- package/lib/history-control-v2/utils.js +51 -27
- package/lib/history-control-v2/utils.js.map +1 -1
- package/lib/history-player/index.d.ts +20 -1
- package/lib/history-player/index.js +238 -185
- package/lib/history-player/index.js.map +1 -1
- package/lib/hooks/useSettings.js +1 -2
- package/lib/hooks/useSettings.js.map +1 -1
- package/lib/hooks/useTranslation.d.ts +14 -0
- package/lib/hooks/useTranslation.js +204 -0
- package/lib/hooks/useTranslation.js.map +1 -0
- package/lib/icc/PlayerManager.js +9 -8
- package/lib/icc/PlayerManager.js.map +1 -1
- package/lib/icc/api.d.ts +1 -68
- package/lib/icc/api.js +7 -3
- package/lib/icc/api.js.map +1 -1
- package/lib/icons/index.d.ts +38 -38
- package/lib/icons/index.js +101 -467
- package/lib/icons/index.js.map +1 -1
- package/lib/index.d.ts +2 -0
- package/lib/index.js +38 -1
- package/lib/index.js.map +1 -1
- package/lib/live-channel-player/index.d.ts +1 -1
- package/lib/live-channel-player/index.js +28 -32
- package/lib/live-channel-player/index.js.map +1 -1
- package/lib/live-control/index.d.ts +4 -2
- package/lib/live-control/index.js +29 -19
- package/lib/live-control/index.js.map +1 -1
- package/lib/live-control-v2/index.d.ts +5 -3
- package/lib/live-control-v2/index.js +22 -22
- package/lib/live-control-v2/index.js.map +1 -1
- package/lib/live-player/index.d.ts +1 -0
- package/lib/live-player/index.js +169 -143
- package/lib/live-player/index.js.map +1 -1
- package/lib/locales/en.json +93 -0
- package/lib/locales/index.d.ts +20 -0
- package/lib/locales/index.js +105 -0
- package/lib/locales/index.js.map +1 -0
- package/lib/locales/zh-CN.json +93 -0
- package/lib/mpegts/PlayerManager.js +14 -8
- package/lib/mpegts/PlayerManager.js.map +1 -1
- package/lib/player/BdPlayer.d.ts +7 -2
- package/lib/player/BdPlayer.js +138 -47
- package/lib/player/BdPlayer.js.map +1 -1
- package/lib/player/BdPlayer2.d.ts +117 -0
- package/lib/player/BdPlayer2.js +341 -0
- package/lib/player/BdPlayer2.js.map +1 -0
- package/lib/player/FlvPlayer.d.ts +2 -1
- package/lib/player/FlvPlayer.js +17 -20
- package/lib/player/FlvPlayer.js.map +1 -1
- package/lib/player/H264Player.d.ts +2 -1
- package/lib/player/H264Player.js +17 -20
- package/lib/player/H264Player.js.map +1 -1
- package/lib/player/HkcarwsPlayer.d.ts +10 -1
- package/lib/player/HkcarwsPlayer.js +149 -36
- package/lib/player/HkcarwsPlayer.js.map +1 -1
- package/lib/player/HkwsPlayer.d.ts +19 -1
- package/lib/player/HkwsPlayer.js +178 -90
- package/lib/player/HkwsPlayer.js.map +1 -1
- package/lib/player/HlsPlayer.d.ts +2 -1
- package/lib/player/HlsPlayer.js +17 -20
- package/lib/player/HlsPlayer.js.map +1 -1
- package/lib/player/IccwsPlayer.d.ts +2 -1
- package/lib/player/IccwsPlayer.js +19 -22
- package/lib/player/IccwsPlayer.js.map +1 -1
- package/lib/player/IframePlayer.d.ts +2 -1
- package/lib/player/IframePlayer.js +8 -7
- package/lib/player/IframePlayer.js.map +1 -1
- package/lib/player/Mp4Player.d.ts +2 -1
- package/lib/player/Mp4Player.js +17 -20
- package/lib/player/Mp4Player.js.map +1 -1
- package/lib/player/RslPlayer.d.ts +2 -1
- package/lib/player/RslPlayer.js +17 -20
- package/lib/player/RslPlayer.js.map +1 -1
- package/lib/player/VtxHlsPlayer.d.ts +2 -1
- package/lib/player/VtxHlsPlayer.js +17 -20
- package/lib/player/VtxHlsPlayer.js.map +1 -1
- package/lib/player/VtxwhepPlayer.d.ts +2 -1
- package/lib/player/VtxwhepPlayer.js +17 -20
- package/lib/player/VtxwhepPlayer.js.map +1 -1
- package/lib/player/VtxwsPlayer.d.ts +2 -1
- package/lib/player/VtxwsPlayer.js +16 -19
- package/lib/player/VtxwsPlayer.js.map +1 -1
- package/lib/player/Web34Player.d.ts +172 -0
- package/lib/player/Web34Player.js +1912 -0
- package/lib/player/Web34Player.js.map +1 -0
- package/lib/player/WebrtcPlayer.d.ts +2 -1
- package/lib/player/WebrtcPlayer.js +17 -20
- package/lib/player/WebrtcPlayer.js.map +1 -1
- package/lib/player/WfsPlayer.d.ts +2 -1
- package/lib/player/WfsPlayer.js +17 -20
- package/lib/player/WfsPlayer.js.map +1 -1
- package/lib/player/YsyPlayer.d.ts +116 -0
- package/lib/player/YsyPlayer.js +273 -0
- package/lib/player/YsyPlayer.js.map +1 -0
- package/lib/player/index.d.ts +4 -1
- package/lib/player/index.js +22 -1
- package/lib/player/index.js.map +1 -1
- package/lib/player/indexOld.d.ts +2 -1
- package/lib/player/indexOld.js +98 -101
- package/lib/player/indexOld.js.map +1 -1
- package/lib/rsl/PlayerManager.d.ts +1 -1
- package/lib/rsl/PlayerManager.js +10 -9
- package/lib/rsl/PlayerManager.js.map +1 -1
- package/lib/typings/h5player.d.ts +33 -1
- package/lib/utils/index.d.ts +1 -1
- package/lib/utils/index.js +16 -27
- package/lib/utils/index.js.map +1 -1
- package/lib/vtxHls/PlayerManager.js +8 -7
- package/lib/vtxHls/PlayerManager.js.map +1 -1
- package/lib/vtxHls/WhepManager.js +11 -10
- package/lib/vtxHls/WhepManager.js.map +1 -1
- package/lib/webrtc/PlayerManager.js +8 -7
- package/lib/webrtc/PlayerManager.js.map +1 -1
- package/lib/wfs/PlayerManager.js +8 -7
- package/lib/wfs/PlayerManager.js.map +1 -1
- package/package.json +5 -1
package/lib/context/index.js
CHANGED
|
@@ -5,12 +5,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports["default"] = exports.PlayerThemeContext = void 0;
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
function _interopRequireDefault(
|
|
9
|
-
var PlayerThemeContext = /*#__PURE__*/_react["default"].createContext({
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
9
|
+
var PlayerThemeContext = exports.PlayerThemeContext = /*#__PURE__*/_react["default"].createContext({
|
|
10
10
|
theme: 'light'
|
|
11
11
|
});
|
|
12
|
-
exports.PlayerThemeContext = PlayerThemeContext;
|
|
13
12
|
var PlayerThemeProvider = PlayerThemeContext.Provider;
|
|
14
|
-
var _default = PlayerThemeProvider;
|
|
15
|
-
exports["default"] = _default;
|
|
13
|
+
var _default = exports["default"] = PlayerThemeProvider;
|
|
16
14
|
//# sourceMappingURL=index.js.map
|
package/lib/context/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","e","__esModule","PlayerThemeContext","exports","React","createContext","theme","PlayerThemeProvider","Provider","_default"],"sources":["context/index.js"],"sourcesContent":["import React from 'react';\nexport const PlayerThemeContext = React.createContext({\n theme: 'light',\n});\nconst PlayerThemeProvider = PlayerThemeContext.Provider;\nexport default PlayerThemeProvider;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA0B,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,gBAAAA,CAAA;AACnB,IAAME,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,gBAAGE,iBAAK,CAACC,aAAa,CAAC;EAClDC,KAAK,EAAE;AACX,CAAC,CAAC;AACF,IAAMC,mBAAmB,GAAGL,kBAAkB,CAACM,QAAQ;AAAC,IAAAC,QAAA,GAAAN,OAAA,cACzCI,mBAAmB","ignoreList":[]}
|
package/lib/controls/index.d.ts
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import { CloudControlParams } from '../api/types';
|
|
2
|
+
import { CloudControlCommandType, CloudControlParams } from '../api/types';
|
|
3
3
|
interface VolumeControlProps {
|
|
4
4
|
container: HTMLDivElement | null;
|
|
5
5
|
player?: any;
|
|
6
6
|
defaultValue?: number;
|
|
7
7
|
}
|
|
8
8
|
/** 音量控制 */
|
|
9
|
-
export declare const VolumeControl: (props: VolumeControlProps) => JSX.Element;
|
|
10
|
-
|
|
9
|
+
export declare const VolumeControl: (props: VolumeControlProps) => import("react").JSX.Element;
|
|
10
|
+
type SpeedValue = 0.5 | 1 | 2 | 4 | 8;
|
|
11
11
|
interface SpeedControlProps {
|
|
12
12
|
container: HTMLDivElement | null;
|
|
13
13
|
player?: any;
|
|
14
14
|
defaultValue?: SpeedValue;
|
|
15
15
|
}
|
|
16
16
|
/** 速度控制 */
|
|
17
|
-
export declare const SpeedControl: (props: SpeedControlProps) => JSX.Element;
|
|
17
|
+
export declare const SpeedControl: (props: SpeedControlProps) => import("react").JSX.Element;
|
|
18
18
|
interface ErrorStateProps {
|
|
19
19
|
/** 重试回调 */
|
|
20
20
|
onClick?: () => void;
|
|
21
21
|
}
|
|
22
|
-
export declare const ErrorState: (props: ErrorStateProps) => JSX.Element;
|
|
23
|
-
export declare const LoadingState: () => JSX.Element;
|
|
22
|
+
export declare const ErrorState: (props: ErrorStateProps) => import("react").JSX.Element;
|
|
23
|
+
export declare const LoadingState: () => import("react").JSX.Element;
|
|
24
24
|
interface PlayerHeaderProps {
|
|
25
25
|
/** 名称 */
|
|
26
26
|
name: string;
|
|
@@ -29,7 +29,7 @@ interface PlayerHeaderProps {
|
|
|
29
29
|
extraButton?: React.ReactNode;
|
|
30
30
|
}
|
|
31
31
|
/** 播放器头部 */
|
|
32
|
-
export declare const PlayerHeader: (props: PlayerHeaderProps) => JSX.Element;
|
|
32
|
+
export declare const PlayerHeader: (props: PlayerHeaderProps) => import("react").JSX.Element;
|
|
33
33
|
interface TalkControlProps {
|
|
34
34
|
/** 播放器 */
|
|
35
35
|
player?: any;
|
|
@@ -42,15 +42,16 @@ interface TalkControlProps {
|
|
|
42
42
|
* 对讲控制器
|
|
43
43
|
* @returns
|
|
44
44
|
*/
|
|
45
|
-
export declare const TalkControl: (props: TalkControlProps) => JSX.Element;
|
|
46
|
-
export
|
|
47
|
-
export
|
|
45
|
+
export declare const TalkControl: (props: TalkControlProps) => import("react").JSX.Element;
|
|
46
|
+
export type CloudControlType = 'all' | 'onlyFocus' | 'onlyRotate' | 'none';
|
|
47
|
+
export type CloudControlPanelProps = {
|
|
48
48
|
query: Omit<CloudControlParams, 'action' | 'command'>;
|
|
49
49
|
type: CloudControlType;
|
|
50
50
|
hasCloudControl?: boolean;
|
|
51
|
+
localControl?: (action: 0 | 1, command: CloudControlCommandType) => void;
|
|
51
52
|
};
|
|
52
53
|
/** 云台控制面板 */
|
|
53
|
-
export declare const CloudControlPanel: (props: CloudControlPanelProps) => JSX.Element;
|
|
54
|
+
export declare const CloudControlPanel: (props: CloudControlPanelProps) => import("react").JSX.Element;
|
|
54
55
|
interface InfoPanelProps {
|
|
55
56
|
/** 是否显示 */
|
|
56
57
|
showInfo: boolean | 'leftTop' | 'leftBottom' | 'rightTop' | 'rightBottom';
|
|
@@ -58,5 +59,5 @@ interface InfoPanelProps {
|
|
|
58
59
|
info: Array<Array<string>>;
|
|
59
60
|
}
|
|
60
61
|
/** 信息展示 */
|
|
61
|
-
export declare const InfoPanel: (props: InfoPanelProps) => JSX.Element;
|
|
62
|
+
export declare const InfoPanel: (props: InfoPanelProps) => import("react").JSX.Element;
|
|
62
63
|
export {};
|
package/lib/controls/index.js
CHANGED
|
@@ -8,6 +8,7 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _api = require("../api");
|
|
10
10
|
var _icons = require("../icons");
|
|
11
|
+
var _locales = require("../locales");
|
|
11
12
|
var _utils = require("@vtx/utils");
|
|
12
13
|
var _ahooks = require("ahooks");
|
|
13
14
|
var _message = _interopRequireDefault(require("antd/lib/message"));
|
|
@@ -17,16 +18,16 @@ var _space = _interopRequireDefault(require("antd/lib/space"));
|
|
|
17
18
|
var _spin = _interopRequireDefault(require("antd/lib/spin"));
|
|
18
19
|
var _arrow = _interopRequireDefault(require("./images/arrow.png"));
|
|
19
20
|
var _error = _interopRequireDefault(require("./images/error.png"));
|
|
20
|
-
function _interopRequireDefault(
|
|
21
|
-
function _slicedToArray(
|
|
21
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
22
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
22
23
|
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."); }
|
|
23
|
-
function _unsupportedIterableToArray(
|
|
24
|
-
function _arrayLikeToArray(
|
|
25
|
-
function _iterableToArrayLimit(
|
|
26
|
-
function _arrayWithHoles(
|
|
24
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
25
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
26
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
27
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } // import Player from '../player/indexOld';
|
|
27
28
|
// import Button from 'antd/lib/button';
|
|
28
29
|
/** 音量控制 */
|
|
29
|
-
var VolumeControl = function VolumeControl(props) {
|
|
30
|
+
var VolumeControl = exports.VolumeControl = function VolumeControl(props) {
|
|
30
31
|
var _props$defaultValue = props.defaultValue,
|
|
31
32
|
defaultValue = _props$defaultValue === void 0 ? 0 : _props$defaultValue,
|
|
32
33
|
player = props.player,
|
|
@@ -88,12 +89,12 @@ var VolumeControl = function VolumeControl(props) {
|
|
|
88
89
|
}));
|
|
89
90
|
};
|
|
90
91
|
/** 速度控制 */
|
|
91
|
-
exports.
|
|
92
|
-
var SpeedControl = function SpeedControl(props) {
|
|
92
|
+
var SpeedControl = exports.SpeedControl = function SpeedControl(props) {
|
|
93
93
|
var _props$defaultValue2 = props.defaultValue,
|
|
94
94
|
defaultValue = _props$defaultValue2 === void 0 ? 1 : _props$defaultValue2,
|
|
95
95
|
player = props.player,
|
|
96
96
|
container = props.container;
|
|
97
|
+
var messages = (0, _locales.getLocaleMessages)();
|
|
97
98
|
var _useState3 = (0, _react.useState)(defaultValue),
|
|
98
99
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
99
100
|
value = _useState4[0],
|
|
@@ -136,15 +137,15 @@ var SpeedControl = function SpeedControl(props) {
|
|
|
136
137
|
}, {
|
|
137
138
|
children: (0, _jsxRuntime.jsx)("div", Object.assign({
|
|
138
139
|
className: "vtx-player-speed-control",
|
|
139
|
-
title:
|
|
140
|
+
title: messages.controls.speed
|
|
140
141
|
}, {
|
|
141
142
|
children: "".concat(value.toFixed(1), "x")
|
|
142
143
|
}))
|
|
143
144
|
}));
|
|
144
145
|
};
|
|
145
|
-
exports.
|
|
146
|
-
var ErrorState = function ErrorState(props) {
|
|
146
|
+
var ErrorState = exports.ErrorState = function ErrorState(props) {
|
|
147
147
|
var _onClick = props.onClick;
|
|
148
|
+
var messages = (0, _locales.getLocaleMessages)();
|
|
148
149
|
var wrapHeight = document.getElementsByClassName('vtx-live-player')[0].clientHeight;
|
|
149
150
|
return (0, _jsxRuntime.jsxs)("div", Object.assign({
|
|
150
151
|
className: "error-container"
|
|
@@ -154,16 +155,15 @@ var ErrorState = function ErrorState(props) {
|
|
|
154
155
|
onClick: function onClick() {
|
|
155
156
|
return _onClick && _onClick();
|
|
156
157
|
},
|
|
157
|
-
alt:
|
|
158
|
+
alt: messages.controls.playErrorAlt
|
|
158
159
|
}), wrapHeight >= 150 && (0, _jsxRuntime.jsx)("span", Object.assign({
|
|
159
160
|
className: "text"
|
|
160
161
|
}, {
|
|
161
|
-
children:
|
|
162
|
+
children: messages.controls.playErrorRetry
|
|
162
163
|
}))]
|
|
163
164
|
}));
|
|
164
165
|
};
|
|
165
|
-
exports.
|
|
166
|
-
var LoadingState = function LoadingState() {
|
|
166
|
+
var LoadingState = exports.LoadingState = function LoadingState() {
|
|
167
167
|
return (0, _jsxRuntime.jsx)("div", Object.assign({
|
|
168
168
|
className: "loading-container"
|
|
169
169
|
}, {
|
|
@@ -173,8 +173,7 @@ var LoadingState = function LoadingState() {
|
|
|
173
173
|
}));
|
|
174
174
|
};
|
|
175
175
|
/** 播放器头部 */
|
|
176
|
-
exports.
|
|
177
|
-
var PlayerHeader = function PlayerHeader(props) {
|
|
176
|
+
var PlayerHeader = exports.PlayerHeader = function PlayerHeader(props) {
|
|
178
177
|
var name = props.name,
|
|
179
178
|
onClose = props.onClose,
|
|
180
179
|
extraButton = props.extraButton;
|
|
@@ -202,11 +201,11 @@ var PlayerHeader = function PlayerHeader(props) {
|
|
|
202
201
|
* 对讲控制器
|
|
203
202
|
* @returns
|
|
204
203
|
*/
|
|
205
|
-
exports.
|
|
206
|
-
var TalkControl = function TalkControl(props) {
|
|
204
|
+
var TalkControl = exports.TalkControl = function TalkControl(props) {
|
|
207
205
|
var player = props.player,
|
|
208
206
|
deviceId = props.deviceId,
|
|
209
207
|
channelNum = props.channelNum;
|
|
208
|
+
var messages = (0, _locales.getLocaleMessages)();
|
|
210
209
|
var _useState5 = (0, _react.useState)(true),
|
|
211
210
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
212
211
|
active = _useState6[0],
|
|
@@ -224,7 +223,7 @@ var TalkControl = function TalkControl(props) {
|
|
|
224
223
|
linkMode: 'wss'
|
|
225
224
|
}).then(function (res) {
|
|
226
225
|
if (!res.url) {
|
|
227
|
-
_message["default"].error(
|
|
226
|
+
_message["default"].error(messages.controls.talkNotConfigured);
|
|
228
227
|
} else {
|
|
229
228
|
var urls = res.url.split('/proxy');
|
|
230
229
|
var str = '';
|
|
@@ -251,15 +250,20 @@ var TalkControl = function TalkControl(props) {
|
|
|
251
250
|
});
|
|
252
251
|
};
|
|
253
252
|
/** 云台控制面板 */
|
|
254
|
-
exports.
|
|
255
|
-
var CloudControlPanel = function CloudControlPanel(props) {
|
|
253
|
+
var CloudControlPanel = exports.CloudControlPanel = function CloudControlPanel(props) {
|
|
256
254
|
var query = props.query,
|
|
257
|
-
type = props.type
|
|
255
|
+
type = props.type,
|
|
256
|
+
localControl = props.localControl;
|
|
257
|
+
var messages = (0, _locales.getLocaleMessages)();
|
|
258
258
|
var _useRequest = (0, _ahooks.useRequest)(_api.cloudControl, {
|
|
259
259
|
manual: true
|
|
260
260
|
}),
|
|
261
261
|
run = _useRequest.run;
|
|
262
262
|
var handleEvent = function handleEvent(action, command) {
|
|
263
|
+
if (localControl) {
|
|
264
|
+
localControl(action, command);
|
|
265
|
+
return;
|
|
266
|
+
}
|
|
263
267
|
run(Object.assign(Object.assign({}, query), {
|
|
264
268
|
action: action,
|
|
265
269
|
command: command
|
|
@@ -306,53 +310,52 @@ var CloudControlPanel = function CloudControlPanel(props) {
|
|
|
306
310
|
className: "buttons"
|
|
307
311
|
}, {
|
|
308
312
|
children: [(0, _jsxRuntime.jsx)(CloudControlButton, {
|
|
309
|
-
text:
|
|
313
|
+
text: messages.controls.zoom,
|
|
310
314
|
onAddDown: function onAddDown() {
|
|
311
|
-
return handleEvent(0, 'ZOOM_IN');
|
|
315
|
+
return handleEvent(localControl ? 1 : 0, 'ZOOM_IN');
|
|
312
316
|
},
|
|
313
317
|
onAddUp: function onAddUp() {
|
|
314
|
-
return handleEvent(1, 'ZOOM_IN');
|
|
318
|
+
return handleEvent(localControl ? 0 : 1, 'ZOOM_IN');
|
|
315
319
|
},
|
|
316
320
|
onReduceDown: function onReduceDown() {
|
|
317
|
-
return handleEvent(0, 'ZOOM_OUT');
|
|
321
|
+
return handleEvent(localControl ? 1 : 0, 'ZOOM_OUT');
|
|
318
322
|
},
|
|
319
323
|
onReduceUp: function onReduceUp() {
|
|
320
|
-
return handleEvent(1, 'ZOOM_OUT');
|
|
324
|
+
return handleEvent(localControl ? 0 : 1, 'ZOOM_OUT');
|
|
321
325
|
}
|
|
322
326
|
}), (0, _jsxRuntime.jsx)(CloudControlButton, {
|
|
323
|
-
text:
|
|
327
|
+
text: messages.controls.iris,
|
|
324
328
|
onAddDown: function onAddDown() {
|
|
325
|
-
return handleEvent(0, 'IRIS_ENLARGE');
|
|
329
|
+
return handleEvent(localControl ? 1 : 0, 'IRIS_ENLARGE');
|
|
326
330
|
},
|
|
327
331
|
onAddUp: function onAddUp() {
|
|
328
|
-
return handleEvent(1, 'IRIS_ENLARGE');
|
|
332
|
+
return handleEvent(localControl ? 0 : 1, 'IRIS_ENLARGE');
|
|
329
333
|
},
|
|
330
334
|
onReduceDown: function onReduceDown() {
|
|
331
|
-
return handleEvent(0, 'IRIS_REDUCE');
|
|
335
|
+
return handleEvent(localControl ? 1 : 0, 'IRIS_REDUCE');
|
|
332
336
|
},
|
|
333
337
|
onReduceUp: function onReduceUp() {
|
|
334
|
-
return handleEvent(1, 'IRIS_REDUCE');
|
|
338
|
+
return handleEvent(localControl ? 0 : 1, 'IRIS_REDUCE');
|
|
335
339
|
}
|
|
336
340
|
}), (0, _jsxRuntime.jsx)(CloudControlButton, {
|
|
337
|
-
text:
|
|
341
|
+
text: messages.controls.focus,
|
|
338
342
|
onAddDown: function onAddDown() {
|
|
339
|
-
return handleEvent(0, 'FOCUS_NEAR');
|
|
343
|
+
return handleEvent(localControl ? 1 : 0, 'FOCUS_NEAR');
|
|
340
344
|
},
|
|
341
345
|
onAddUp: function onAddUp() {
|
|
342
|
-
return handleEvent(1, 'FOCUS_NEAR');
|
|
346
|
+
return handleEvent(localControl ? 0 : 1, 'FOCUS_NEAR');
|
|
343
347
|
},
|
|
344
348
|
onReduceDown: function onReduceDown() {
|
|
345
|
-
return handleEvent(0, 'FOCUS_FAR');
|
|
349
|
+
return handleEvent(localControl ? 1 : 0, 'FOCUS_FAR');
|
|
346
350
|
},
|
|
347
351
|
onReduceUp: function onReduceUp() {
|
|
348
|
-
return handleEvent(1, 'FOCUS_FAR');
|
|
352
|
+
return handleEvent(localControl ? 0 : 1, 'FOCUS_FAR');
|
|
349
353
|
}
|
|
350
354
|
})]
|
|
351
355
|
}))]
|
|
352
356
|
}));
|
|
353
357
|
};
|
|
354
358
|
/** 云台控制箭头 */
|
|
355
|
-
exports.CloudControlPanel = CloudControlPanel;
|
|
356
359
|
var CloudControlArrow = function CloudControlArrow(props) {
|
|
357
360
|
var _props$name = props.name,
|
|
358
361
|
name = _props$name === void 0 ? '' : _props$name,
|
|
@@ -417,7 +420,7 @@ var STYLE = {
|
|
|
417
420
|
}
|
|
418
421
|
};
|
|
419
422
|
/** 信息展示 */
|
|
420
|
-
var InfoPanel = function InfoPanel(props) {
|
|
423
|
+
var InfoPanel = exports.InfoPanel = function InfoPanel(props) {
|
|
421
424
|
var showInfo = props.showInfo,
|
|
422
425
|
info = props.info;
|
|
423
426
|
var position = showInfo ? showInfo === true ? 'rightTop' : showInfo : false;
|
|
@@ -432,5 +435,4 @@ var InfoPanel = function InfoPanel(props) {
|
|
|
432
435
|
})
|
|
433
436
|
})) : (0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {});
|
|
434
437
|
};
|
|
435
|
-
exports.InfoPanel = InfoPanel;
|
|
436
438
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_jsxRuntime","require","_react","_api","_icons","_utils","_ahooks","_message","_interopRequireDefault","_popover","_slider","_space","_spin","_arrow","_error","obj","__esModule","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","_i","Symbol","iterator","_arr","_n","_d","_s","_e","next","done","push","value","err","isArray","VolumeControl","props","_props$defaultValue","defaultValue","player","container","_useState","useState","_useState2","setValue","preValueRef","useRef","handleChange","val","current","setVolume","content","_jsxs","assign","className","children","_jsx","Slider","vertical","onChange","max","handleVisibleChange","visible","style","opacity","removeProperty","handleMuted","Popover","title","overlayClassName","onVisibleChange","getPopupContainer","document","getElementsByClassName","onClick","VolumeMutedIcon","VolumeLargeIcon","VolumeSmallIcon","exports","SpeedControl","_props$defaultValue2","_useState3","_useState4","setSpeed","list","map","concat","toFixed","ErrorState","wrapHeight","clientHeight","src","errorImg","alt","LoadingState","Spin","size","PlayerHeader","onClose","extraButton","CloseIcon","e","stopPropagation","TalkControl","deviceId","channelNum","_useState5","_useState6","active","setActive","handleClick","stopTalk","then","getTalkUrl","tenantId","getVtxToken","linkMode","res","url","message","error","urls","split","str","startsWith","location","host","startTalk","TalkIcon","TalkDisableIcon","CloudControlPanel","query","type","_useRequest","useRequest","cloudControl","manual","run","handleEvent","action","command","_Fragment","CloudControlArrow","event","Space","CloudControlButton","text","onAddDown","onAddUp","onReduceDown","onReduceUp","_props$name","arrowImg","onMouseDown","onMouseUp","STYLE","leftTop","left","top","leftBottom","bottom","rightTop","right","rightBottom","InfoPanel","showInfo","info","position","item","index"],"sources":["controls/index.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { useRef, useState } from 'react';\nimport { cloudControl } from '../api';\nimport { getTalkUrl } from '../api';\nimport { CloseIcon, TalkDisableIcon, TalkIcon, VolumeLargeIcon, VolumeMutedIcon, VolumeSmallIcon, } from '../icons';\n// import Player from '../player/indexOld';\nimport { getVtxToken } from '@vtx/utils';\nimport { useRequest } from 'ahooks';\n// import Button from 'antd/lib/button';\nimport message from 'antd/lib/message';\nimport Popover from 'antd/lib/popover';\nimport Slider from 'antd/lib/slider';\nimport Space from 'antd/lib/space';\nimport Spin from 'antd/lib/spin';\nimport arrowImg from './images/arrow.png';\nimport errorImg from './images/error.png';\n/** 音量控制 */\nexport const VolumeControl = (props) => {\n const { defaultValue = 0, player, container } = props;\n const [value, setValue] = useState(defaultValue);\n const preValueRef = useRef(defaultValue);\n const handleChange = (val) => {\n preValueRef.current = val;\n player === null || player === void 0 ? void 0 : player.setVolume(val);\n setValue(val);\n };\n const content = (_jsxs(\"div\", Object.assign({ className: \"volume-content\" }, { children: [_jsx(\"span\", Object.assign({ className: \"value\" }, { children: value })), _jsx(Slider, { vertical: true, value: value, onChange: handleChange, max: 100 })] })));\n const handleVisibleChange = (visible) => {\n if (container) {\n if (visible) {\n container.style.opacity = '1';\n }\n else {\n container.style.removeProperty('opacity');\n }\n }\n };\n const handleMuted = () => {\n if (value === 0) {\n handleChange(preValueRef.current);\n }\n else {\n handleChange(0);\n }\n };\n return (_jsx(Popover, Object.assign({ title: null, content: content, overlayClassName: \"player-control-popover\", onVisibleChange: handleVisibleChange, getPopupContainer: () => {\n return (document.getElementsByClassName('vtx-live-player')[0] ||\n document.getElementsByClassName('vtx-history-player')[0]);\n } }, { children: _jsx(\"div\", Object.assign({ onClick: handleMuted }, { children: value === 0 ? (_jsx(VolumeMutedIcon, {})) : value > 50 ? (_jsx(VolumeLargeIcon, {})) : (_jsx(VolumeSmallIcon, {})) })) })));\n};\n/** 速度控制 */\nexport const SpeedControl = (props) => {\n const { defaultValue = 1, player, container } = props;\n const [value, setValue] = useState(defaultValue);\n const handleChange = (val) => {\n player === null || player === void 0 ? void 0 : player.setSpeed(val);\n setValue(val);\n };\n const content = () => {\n const list = [0.5, 1, 2, 4, 8];\n return (_jsx(\"div\", Object.assign({ className: \"speed-content\" }, { children: list.map((i) => (_jsx(\"div\", Object.assign({ className: \"item\", onClick: () => handleChange(i) }, { children: `${i.toFixed(1)}x` }), i))) })));\n };\n const handleVisibleChange = (visible) => {\n if (container) {\n if (visible) {\n container.style.opacity = '1';\n }\n else {\n container.style.removeProperty('opacity');\n }\n }\n };\n return (_jsx(Popover, Object.assign({ title: null, content: content, overlayClassName: \"player-control-popover\", onVisibleChange: handleVisibleChange }, { children: _jsx(\"div\", Object.assign({ className: \"vtx-player-speed-control\", title: \"\\u500D\\u901F\" }, { children: `${value.toFixed(1)}x` })) })));\n};\nexport const ErrorState = (props) => {\n const { onClick } = props;\n const wrapHeight = document.getElementsByClassName('vtx-live-player')[0].clientHeight;\n return (_jsxs(\"div\", Object.assign({ className: \"error-container\" }, { children: [_jsx(\"img\", { src: errorImg, onClick: () => onClick && onClick(), alt: \"\\u64AD\\u653E\\u9519\\u8BEF\" }), wrapHeight >= 150 && _jsx(\"span\", Object.assign({ className: \"text\" }, { children: \"\\u89C6\\u9891\\u64AD\\u653E\\u5931\\u8D25\\uFF0C\\u8BF7\\u7A0D\\u540E\\u91CD\\u8BD5\" }))] })));\n};\nexport const LoadingState = () => {\n return (_jsx(\"div\", Object.assign({ className: \"loading-container\" }, { children: _jsx(Spin, { size: \"large\" }) })));\n};\n/** 播放器头部 */\nexport const PlayerHeader = (props) => {\n const { name, onClose, extraButton } = props;\n return (_jsxs(\"div\", Object.assign({ className: \"vtx-player-header\" }, { children: [_jsx(\"span\", Object.assign({ className: \"title\", title: name }, { children: name })), extraButton ? extraButton : null, _jsx(\"span\", Object.assign({ className: \"close\" }, { children: _jsx(CloseIcon, { onClick: (e) => {\n onClose();\n e.stopPropagation();\n } }) }))] })));\n};\n/**\n * 对讲控制器\n * @returns\n */\nexport const TalkControl = (props) => {\n const { player, deviceId, channelNum } = props;\n const [active, setActive] = useState(true);\n const handleClick = () => {\n if (!active) {\n player === null || player === void 0 ? void 0 : player.stopTalk().then(() => setActive(true));\n }\n else {\n getTalkUrl({\n deviceId,\n channelNum,\n tenantId: getVtxToken('tenantId'),\n linkMode: 'wss',\n }).then((res) => {\n if (!res.url) {\n message.error('未设置语音对讲!');\n }\n else {\n const urls = res.url.split('/proxy');\n let str = '';\n if (res.url.startsWith('wss')) {\n str = res.url;\n }\n else {\n str = `wss://${location.host}/proxy${urls[1]}`;\n }\n player === null || player === void 0 ? void 0 : player.startTalk(str).then(() => setActive(false));\n }\n });\n }\n };\n return (_jsx(\"div\", { children: active ? (_jsx(TalkIcon, { active: true, onClick: handleClick })) : (_jsx(TalkDisableIcon, { active: false, onClick: handleClick })) }));\n};\n/** 云台控制面板 */\nexport const CloudControlPanel = (props) => {\n const { query, type } = props;\n const { run } = useRequest(cloudControl, { manual: true });\n const handleEvent = (action, command) => {\n run(Object.assign(Object.assign({}, query), { action, command }));\n };\n return (_jsxs(\"div\", Object.assign({ className: \"cloud-control-panel\" }, { children: [type !== 'onlyFocus' && (_jsxs(_Fragment, { children: [_jsx(CloudControlArrow, { name: \"up\", event: handleEvent, type: \"UP\" }), _jsx(CloudControlArrow, { name: \"down\", event: handleEvent, type: \"DOWN\" }), _jsx(CloudControlArrow, { name: \"left\", event: handleEvent, type: \"LEFT\" }), _jsx(CloudControlArrow, { name: \"right\", event: handleEvent, type: \"RIGHT\" }), _jsx(CloudControlArrow, { name: \"left-up\", event: handleEvent, type: \"LEFT_UP\" }), _jsx(CloudControlArrow, { name: \"left-down\", event: handleEvent, type: \"LEFT_DOWN\" }), _jsx(CloudControlArrow, { name: \"right-up\", event: handleEvent, type: \"RIGHT_UP\" }), _jsx(CloudControlArrow, { name: \"right-down\", event: handleEvent, type: \"RIGHT_DOWN\" })] })), type !== 'onlyRotate' && (_jsxs(Space, Object.assign({ className: \"buttons\" }, { children: [_jsx(CloudControlButton, { text: \"\\u7126\\u8DDD\", onAddDown: () => handleEvent(0, 'ZOOM_IN'), onAddUp: () => handleEvent(1, 'ZOOM_IN'), onReduceDown: () => handleEvent(0, 'ZOOM_OUT'), onReduceUp: () => handleEvent(1, 'ZOOM_OUT') }), _jsx(CloudControlButton, { text: \"\\u5149\\u5708\", onAddDown: () => handleEvent(0, 'IRIS_ENLARGE'), onAddUp: () => handleEvent(1, 'IRIS_ENLARGE'), onReduceDown: () => handleEvent(0, 'IRIS_REDUCE'), onReduceUp: () => handleEvent(1, 'IRIS_REDUCE') }), _jsx(CloudControlButton, { text: \"\\u8DDD\\u79BB\", onAddDown: () => handleEvent(0, 'FOCUS_NEAR'), onAddUp: () => handleEvent(1, 'FOCUS_NEAR'), onReduceDown: () => handleEvent(0, 'FOCUS_FAR'), onReduceUp: () => handleEvent(1, 'FOCUS_FAR') })] })))] })));\n};\n/** 云台控制箭头 */\nconst CloudControlArrow = (props) => {\n const { name = '', event, type } = props;\n return (_jsx(\"img\", { className: `arrow ${name}`, src: arrowImg, onMouseDown: () => event(1, type), onMouseUp: () => event(0, type) }));\n};\n/** 云台控制按钮 */\nconst CloudControlButton = (props) => {\n const { text, onAddDown, onAddUp, onReduceDown, onReduceUp } = props;\n return (_jsxs(\"div\", Object.assign({ className: \"control-button\" }, { children: [_jsx(\"span\", Object.assign({ className: \"icon\", onMouseDown: onReduceDown, onMouseUp: onReduceUp }, { children: \"+\" })), _jsx(\"span\", Object.assign({ className: \"text\" }, { children: text })), _jsx(\"span\", Object.assign({ className: \"icon\", onMouseDown: onAddDown, onMouseUp: onAddUp }, { children: \"-\" }))] })));\n};\nconst STYLE = {\n leftTop: {\n left: 8,\n top: 8,\n },\n leftBottom: {\n left: 8,\n bottom: 8,\n },\n rightTop: {\n right: 8,\n top: 8,\n },\n rightBottom: {\n right: 8,\n bottom: 8,\n },\n};\n/** 信息展示 */\nexport const InfoPanel = (props) => {\n const { showInfo, info } = props;\n const position = showInfo ? (showInfo === true ? 'rightTop' : showInfo) : false;\n return position ? (_jsx(\"div\", Object.assign({ className: \"infoPanel\", style: STYLE[position] }, { children: info === null || info === void 0 ? void 0 : info.map((item, index) => {\n return _jsx(\"div\", { children: `${item[0]}: ${item[1]}` }, index);\n }) }))) : (_jsx(_Fragment, {}));\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_jsxRuntime","require","_react","_api","_icons","_locales","_utils","_ahooks","_message","_interopRequireDefault","_popover","_slider","_space","_spin","_arrow","_error","e","__esModule","_slicedToArray","r","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","t","toString","call","slice","constructor","name","Array","from","test","length","n","l","Symbol","iterator","i","u","f","o","next","Object","done","push","value","isArray","VolumeControl","exports","props","_props$defaultValue","defaultValue","player","container","_useState","useState","_useState2","setValue","preValueRef","useRef","handleChange","val","current","setVolume","content","_jsxs","assign","className","children","_jsx","Slider","vertical","onChange","max","handleVisibleChange","visible","style","opacity","removeProperty","handleMuted","Popover","title","overlayClassName","onVisibleChange","getPopupContainer","document","getElementsByClassName","onClick","VolumeMutedIcon","VolumeLargeIcon","VolumeSmallIcon","SpeedControl","_props$defaultValue2","messages","getLocaleMessages","_useState3","_useState4","setSpeed","list","map","concat","toFixed","controls","speed","ErrorState","wrapHeight","clientHeight","src","errorImg","alt","playErrorAlt","playErrorRetry","LoadingState","Spin","size","PlayerHeader","onClose","extraButton","CloseIcon","stopPropagation","TalkControl","deviceId","channelNum","_useState5","_useState6","active","setActive","handleClick","stopTalk","then","getTalkUrl","tenantId","getVtxToken","linkMode","res","url","message","error","talkNotConfigured","urls","split","str","startsWith","location","host","startTalk","TalkIcon","TalkDisableIcon","CloudControlPanel","query","type","localControl","_useRequest","useRequest","cloudControl","manual","run","handleEvent","action","command","_Fragment","CloudControlArrow","event","Space","CloudControlButton","text","zoom","onAddDown","onAddUp","onReduceDown","onReduceUp","iris","focus","_props$name","arrowImg","onMouseDown","onMouseUp","STYLE","leftTop","left","top","leftBottom","bottom","rightTop","right","rightBottom","InfoPanel","showInfo","info","position","item","index"],"sources":["controls/index.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { useRef, useState } from 'react';\nimport { cloudControl } from '../api';\nimport { getTalkUrl } from '../api';\nimport { CloseIcon, TalkDisableIcon, TalkIcon, VolumeLargeIcon, VolumeMutedIcon, VolumeSmallIcon, } from '../icons';\nimport { getLocaleMessages } from '../locales';\n// import Player from '../player/indexOld';\nimport { getVtxToken } from '@vtx/utils';\nimport { useRequest } from 'ahooks';\n// import Button from 'antd/lib/button';\nimport message from 'antd/lib/message';\nimport Popover from 'antd/lib/popover';\nimport Slider from 'antd/lib/slider';\nimport Space from 'antd/lib/space';\nimport Spin from 'antd/lib/spin';\nimport arrowImg from './images/arrow.png';\nimport errorImg from './images/error.png';\n/** 音量控制 */\nexport const VolumeControl = (props) => {\n const { defaultValue = 0, player, container } = props;\n const [value, setValue] = useState(defaultValue);\n const preValueRef = useRef(defaultValue);\n const handleChange = (val) => {\n preValueRef.current = val;\n player === null || player === void 0 ? void 0 : player.setVolume(val);\n setValue(val);\n };\n const content = (_jsxs(\"div\", Object.assign({ className: \"volume-content\" }, { children: [_jsx(\"span\", Object.assign({ className: \"value\" }, { children: value })), _jsx(Slider, { vertical: true, value: value, onChange: handleChange, max: 100 })] })));\n const handleVisibleChange = (visible) => {\n if (container) {\n if (visible) {\n container.style.opacity = '1';\n }\n else {\n container.style.removeProperty('opacity');\n }\n }\n };\n const handleMuted = () => {\n if (value === 0) {\n handleChange(preValueRef.current);\n }\n else {\n handleChange(0);\n }\n };\n return (_jsx(Popover, Object.assign({ title: null, content: content, overlayClassName: \"player-control-popover\", onVisibleChange: handleVisibleChange, getPopupContainer: () => {\n return (document.getElementsByClassName('vtx-live-player')[0] ||\n document.getElementsByClassName('vtx-history-player')[0]);\n } }, { children: _jsx(\"div\", Object.assign({ onClick: handleMuted }, { children: value === 0 ? (_jsx(VolumeMutedIcon, {})) : value > 50 ? (_jsx(VolumeLargeIcon, {})) : (_jsx(VolumeSmallIcon, {})) })) })));\n};\n/** 速度控制 */\nexport const SpeedControl = (props) => {\n const { defaultValue = 1, player, container } = props;\n const messages = getLocaleMessages();\n const [value, setValue] = useState(defaultValue);\n const handleChange = (val) => {\n player === null || player === void 0 ? void 0 : player.setSpeed(val);\n setValue(val);\n };\n const content = () => {\n const list = [0.5, 1, 2, 4, 8];\n return (_jsx(\"div\", Object.assign({ className: \"speed-content\" }, { children: list.map((i) => (_jsx(\"div\", Object.assign({ className: \"item\", onClick: () => handleChange(i) }, { children: `${i.toFixed(1)}x` }), i))) })));\n };\n const handleVisibleChange = (visible) => {\n if (container) {\n if (visible) {\n container.style.opacity = '1';\n }\n else {\n container.style.removeProperty('opacity');\n }\n }\n };\n return (_jsx(Popover, Object.assign({ title: null, content: content, overlayClassName: \"player-control-popover\", onVisibleChange: handleVisibleChange }, { children: _jsx(\"div\", Object.assign({ className: \"vtx-player-speed-control\", title: messages.controls.speed }, { children: `${value.toFixed(1)}x` })) })));\n};\nexport const ErrorState = (props) => {\n const { onClick } = props;\n const messages = getLocaleMessages();\n const wrapHeight = document.getElementsByClassName('vtx-live-player')[0].clientHeight;\n return (_jsxs(\"div\", Object.assign({ className: \"error-container\" }, { children: [_jsx(\"img\", { src: errorImg, onClick: () => onClick && onClick(), alt: messages.controls.playErrorAlt }), wrapHeight >= 150 && _jsx(\"span\", Object.assign({ className: \"text\" }, { children: messages.controls.playErrorRetry }))] })));\n};\nexport const LoadingState = () => {\n return (_jsx(\"div\", Object.assign({ className: \"loading-container\" }, { children: _jsx(Spin, { size: \"large\" }) })));\n};\n/** 播放器头部 */\nexport const PlayerHeader = (props) => {\n const { name, onClose, extraButton } = props;\n return (_jsxs(\"div\", Object.assign({ className: \"vtx-player-header\" }, { children: [_jsx(\"span\", Object.assign({ className: \"title\", title: name }, { children: name })), extraButton ? extraButton : null, _jsx(\"span\", Object.assign({ className: \"close\" }, { children: _jsx(CloseIcon, { onClick: (e) => {\n onClose();\n e.stopPropagation();\n } }) }))] })));\n};\n/**\n * 对讲控制器\n * @returns\n */\nexport const TalkControl = (props) => {\n const { player, deviceId, channelNum } = props;\n const messages = getLocaleMessages();\n const [active, setActive] = useState(true);\n const handleClick = () => {\n if (!active) {\n player === null || player === void 0 ? void 0 : player.stopTalk().then(() => setActive(true));\n }\n else {\n getTalkUrl({\n deviceId,\n channelNum,\n tenantId: getVtxToken('tenantId'),\n linkMode: 'wss',\n }).then((res) => {\n if (!res.url) {\n message.error(messages.controls.talkNotConfigured);\n }\n else {\n const urls = res.url.split('/proxy');\n let str = '';\n if (res.url.startsWith('wss')) {\n str = res.url;\n }\n else {\n str = `wss://${location.host}/proxy${urls[1]}`;\n }\n player === null || player === void 0 ? void 0 : player.startTalk(str).then(() => setActive(false));\n }\n });\n }\n };\n return (_jsx(\"div\", { children: active ? (_jsx(TalkIcon, { active: true, onClick: handleClick })) : (_jsx(TalkDisableIcon, { active: false, onClick: handleClick })) }));\n};\n/** 云台控制面板 */\nexport const CloudControlPanel = (props) => {\n const { query, type, localControl } = props;\n const messages = getLocaleMessages();\n const { run } = useRequest(cloudControl, { manual: true });\n const handleEvent = (action, command) => {\n if (localControl) {\n localControl(action, command);\n return;\n }\n run(Object.assign(Object.assign({}, query), { action, command }));\n };\n return (_jsxs(\"div\", Object.assign({ className: \"cloud-control-panel\" }, { children: [type !== 'onlyFocus' && (_jsxs(_Fragment, { children: [_jsx(CloudControlArrow, { name: \"up\", event: handleEvent, type: \"UP\" }), _jsx(CloudControlArrow, { name: \"down\", event: handleEvent, type: \"DOWN\" }), _jsx(CloudControlArrow, { name: \"left\", event: handleEvent, type: \"LEFT\" }), _jsx(CloudControlArrow, { name: \"right\", event: handleEvent, type: \"RIGHT\" }), _jsx(CloudControlArrow, { name: \"left-up\", event: handleEvent, type: \"LEFT_UP\" }), _jsx(CloudControlArrow, { name: \"left-down\", event: handleEvent, type: \"LEFT_DOWN\" }), _jsx(CloudControlArrow, { name: \"right-up\", event: handleEvent, type: \"RIGHT_UP\" }), _jsx(CloudControlArrow, { name: \"right-down\", event: handleEvent, type: \"RIGHT_DOWN\" })] })), type !== 'onlyRotate' && (_jsxs(Space, Object.assign({ className: \"buttons\" }, { children: [_jsx(CloudControlButton, { text: messages.controls.zoom, onAddDown: () => handleEvent(localControl ? 1 : 0, 'ZOOM_IN'), onAddUp: () => handleEvent(localControl ? 0 : 1, 'ZOOM_IN'), onReduceDown: () => handleEvent(localControl ? 1 : 0, 'ZOOM_OUT'), onReduceUp: () => handleEvent(localControl ? 0 : 1, 'ZOOM_OUT') }), _jsx(CloudControlButton, { text: messages.controls.iris, onAddDown: () => handleEvent(localControl ? 1 : 0, 'IRIS_ENLARGE'), onAddUp: () => handleEvent(localControl ? 0 : 1, 'IRIS_ENLARGE'), onReduceDown: () => handleEvent(localControl ? 1 : 0, 'IRIS_REDUCE'), onReduceUp: () => handleEvent(localControl ? 0 : 1, 'IRIS_REDUCE') }), _jsx(CloudControlButton, { text: messages.controls.focus, onAddDown: () => handleEvent(localControl ? 1 : 0, 'FOCUS_NEAR'), onAddUp: () => handleEvent(localControl ? 0 : 1, 'FOCUS_NEAR'), onReduceDown: () => handleEvent(localControl ? 1 : 0, 'FOCUS_FAR'), onReduceUp: () => handleEvent(localControl ? 0 : 1, 'FOCUS_FAR') })] })))] })));\n};\n/** 云台控制箭头 */\nconst CloudControlArrow = (props) => {\n const { name = '', event, type } = props;\n return (_jsx(\"img\", { className: `arrow ${name}`, src: arrowImg, onMouseDown: () => event(1, type), onMouseUp: () => event(0, type) }));\n};\n/** 云台控制按钮 */\nconst CloudControlButton = (props) => {\n const { text, onAddDown, onAddUp, onReduceDown, onReduceUp } = props;\n return (_jsxs(\"div\", Object.assign({ className: \"control-button\" }, { children: [_jsx(\"span\", Object.assign({ className: \"icon\", onMouseDown: onReduceDown, onMouseUp: onReduceUp }, { children: \"+\" })), _jsx(\"span\", Object.assign({ className: \"text\" }, { children: text })), _jsx(\"span\", Object.assign({ className: \"icon\", onMouseDown: onAddDown, onMouseUp: onAddUp }, { children: \"-\" }))] })));\n};\nconst STYLE = {\n leftTop: {\n left: 8,\n top: 8,\n },\n leftBottom: {\n left: 8,\n bottom: 8,\n },\n rightTop: {\n right: 8,\n top: 8,\n },\n rightBottom: {\n right: 8,\n bottom: 8,\n },\n};\n/** 信息展示 */\nexport const InfoPanel = (props) => {\n const { showInfo, info } = props;\n const position = showInfo ? (showInfo === true ? 'rightTop' : showInfo) : false;\n return position ? (_jsx(\"div\", Object.assign({ className: \"infoPanel\", style: STYLE[position] }, { children: info === null || info === void 0 ? void 0 : info.map((item, index) => {\n return _jsx(\"div\", { children: `${item[0]}: ${item[1]}` }, index);\n }) }))) : (_jsx(_Fragment, {}));\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,9 +4,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports["default"] = void 0;
|
|
7
|
-
function
|
|
8
|
-
function
|
|
9
|
-
function
|
|
7
|
+
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); }
|
|
8
|
+
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
|
|
9
|
+
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
|
|
10
|
+
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
|
|
11
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
12
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
10
13
|
/**
|
|
11
14
|
*/
|
|
12
15
|
var H264PlayerManager = /*#__PURE__*/function () {
|
|
@@ -20,7 +23,7 @@ var H264PlayerManager = /*#__PURE__*/function () {
|
|
|
20
23
|
/**
|
|
21
24
|
* 初始化实时预览播放器
|
|
22
25
|
*/
|
|
23
|
-
_createClass(H264PlayerManager, [{
|
|
26
|
+
return _createClass(H264PlayerManager, [{
|
|
24
27
|
key: "initPlayer",
|
|
25
28
|
value: function initPlayer(opt) {
|
|
26
29
|
var jmuxer = new JMuxer({
|
|
@@ -123,8 +126,6 @@ var H264PlayerManager = /*#__PURE__*/function () {
|
|
|
123
126
|
// this.player.jumpPlayByTime(time);
|
|
124
127
|
}
|
|
125
128
|
}]);
|
|
126
|
-
return H264PlayerManager;
|
|
127
129
|
}();
|
|
128
|
-
var _default = H264PlayerManager;
|
|
129
|
-
exports["default"] = _default;
|
|
130
|
+
var _default = exports["default"] = H264PlayerManager;
|
|
130
131
|
//# sourceMappingURL=PlayerManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlayerManager.js","names":["H264PlayerManager","opt","_classCallCheck","player","id","url","initPlayer","_createClass","key","value","jmuxer","JMuxer","node","mode","flushingTime","fps","clearBuffer","debug","xhr","XMLHttpRequest","async","open","responseType","onreadystatechange","event","readyState","feed","video","Uint8Array","response","send","pause","recordPlayer","play","playSpeed","speed","close","destroy","setFullScreen","setPlayerAdapter","playerAdapter","setPlayerNum","number","setSelectIndex","index","jumpPlayByTime","time","_default","exports"],"sources":["h264/PlayerManager.js"],"sourcesContent":["/**\n */\nclass H264PlayerManager {\n constructor(opt) {\n this.player = null;\n this.id = opt.id;\n this.url = opt.url;\n this.initPlayer();\n }\n /**\n * 初始化实时预览播放器\n */\n initPlayer(opt) {\n const jmuxer = new JMuxer({\n node: 'playerh264',\n mode: 'video',\n flushingTime: 1000,\n fps: 12,\n clearBuffer: false,\n debug: true,\n });\n var xhr = new XMLHttpRequest();\n var async = true;\n if (!this.url)\n return;\n xhr.open('GET', this.url, async);\n xhr.responseType = 'arraybuffer';\n xhr.onreadystatechange = function (event) {\n if (xhr.readyState === 4) {\n jmuxer.feed({\n video: new Uint8Array(xhr.response),\n });\n this.player = jmuxer;\n }\n };\n xhr.send(null);\n }\n pause() {\n this.recordPlayer && this.player.pause();\n }\n /**\n * 录像暂停后播放\n * 只有暂停后的录像调用才有效\n */\n play() {\n //\n }\n /**\n * 倍速播放\n * @param {number} speed 速率 0.125 0.25 0.5 1 2 4 8 共7种速率\n */\n playSpeed(speed) {\n // this.recordPlayer && this.recordPlayer.playSpeed(speed);\n }\n /**\n * 关闭播放器\n * @param {number} index 可选,关闭指定索引的窗口的播放器,不传则表示关闭所有播放器\n */\n close() {\n this.player && this.player.destroy();\n }\n /**\n * 设置全屏\n */\n setFullScreen() {\n // this.player.setFullScreen();\n }\n /**\n * 设置窗口自适应还是拉伸\n * @param {string} playerAdapter selfAdaption 自适应 | stretching 拉伸\n */\n setPlayerAdapter(playerAdapter) {\n // this.player.setPlayerAdapter(playerAdapter);\n }\n /**\n * 控制视频播放器显示的路数: 1 4 9 16 25,不会超过最大显示路数\n * @param {number} number\n */\n setPlayerNum(number) {\n // this.player.setPlayerNum(number);\n }\n /**\n * 设置选中的播放器的索引\n * @param {number} index\n */\n setSelectIndex(index) {\n // this.player.setSelectIndex(index);\n }\n /**\n * 录像跳转播放\n * @param {string} time HH:mm:ss格式\n */\n jumpPlayByTime(time) {\n // this.player.jumpPlayByTime(time);\n }\n}\nexport default H264PlayerManager;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"PlayerManager.js","names":["H264PlayerManager","opt","_classCallCheck","player","id","url","initPlayer","_createClass","key","value","jmuxer","JMuxer","node","mode","flushingTime","fps","clearBuffer","debug","xhr","XMLHttpRequest","async","open","responseType","onreadystatechange","event","readyState","feed","video","Uint8Array","response","send","pause","recordPlayer","play","playSpeed","speed","close","destroy","setFullScreen","setPlayerAdapter","playerAdapter","setPlayerNum","number","setSelectIndex","index","jumpPlayByTime","time","_default","exports"],"sources":["h264/PlayerManager.js"],"sourcesContent":["/**\n */\nclass H264PlayerManager {\n constructor(opt) {\n this.player = null;\n this.id = opt.id;\n this.url = opt.url;\n this.initPlayer();\n }\n /**\n * 初始化实时预览播放器\n */\n initPlayer(opt) {\n const jmuxer = new JMuxer({\n node: 'playerh264',\n mode: 'video',\n flushingTime: 1000,\n fps: 12,\n clearBuffer: false,\n debug: true,\n });\n var xhr = new XMLHttpRequest();\n var async = true;\n if (!this.url)\n return;\n xhr.open('GET', this.url, async);\n xhr.responseType = 'arraybuffer';\n xhr.onreadystatechange = function (event) {\n if (xhr.readyState === 4) {\n jmuxer.feed({\n video: new Uint8Array(xhr.response),\n });\n this.player = jmuxer;\n }\n };\n xhr.send(null);\n }\n pause() {\n this.recordPlayer && this.player.pause();\n }\n /**\n * 录像暂停后播放\n * 只有暂停后的录像调用才有效\n */\n play() {\n //\n }\n /**\n * 倍速播放\n * @param {number} speed 速率 0.125 0.25 0.5 1 2 4 8 共7种速率\n */\n playSpeed(speed) {\n // this.recordPlayer && this.recordPlayer.playSpeed(speed);\n }\n /**\n * 关闭播放器\n * @param {number} index 可选,关闭指定索引的窗口的播放器,不传则表示关闭所有播放器\n */\n close() {\n this.player && this.player.destroy();\n }\n /**\n * 设置全屏\n */\n setFullScreen() {\n // this.player.setFullScreen();\n }\n /**\n * 设置窗口自适应还是拉伸\n * @param {string} playerAdapter selfAdaption 自适应 | stretching 拉伸\n */\n setPlayerAdapter(playerAdapter) {\n // this.player.setPlayerAdapter(playerAdapter);\n }\n /**\n * 控制视频播放器显示的路数: 1 4 9 16 25,不会超过最大显示路数\n * @param {number} number\n */\n setPlayerNum(number) {\n // this.player.setPlayerNum(number);\n }\n /**\n * 设置选中的播放器的索引\n * @param {number} index\n */\n setSelectIndex(index) {\n // this.player.setSelectIndex(index);\n }\n /**\n * 录像跳转播放\n * @param {string} time HH:mm:ss格式\n */\n jumpPlayByTime(time) {\n // this.player.jumpPlayByTime(time);\n }\n}\nexport default H264PlayerManager;\n"],"mappings":";;;;;;;;;;;;AAAA;AACA;AADA,IAEMA,iBAAiB;EACnB,SAAAA,kBAAYC,GAAG,EAAE;IAAAC,eAAA,OAAAF,iBAAA;IACb,IAAI,CAACG,MAAM,GAAG,IAAI;IAClB,IAAI,CAACC,EAAE,GAAGH,GAAG,CAACG,EAAE;IAChB,IAAI,CAACC,GAAG,GAAGJ,GAAG,CAACI,GAAG;IAClB,IAAI,CAACC,UAAU,CAAC,CAAC;EACrB;EACA;AACJ;AACA;EAFI,OAAAC,YAAA,CAAAP,iBAAA;IAAAQ,GAAA;IAAAC,KAAA,EAGA,SAAAH,UAAUA,CAACL,GAAG,EAAE;MACZ,IAAMS,MAAM,GAAG,IAAIC,MAAM,CAAC;QACtBC,IAAI,EAAE,YAAY;QAClBC,IAAI,EAAE,OAAO;QACbC,YAAY,EAAE,IAAI;QAClBC,GAAG,EAAE,EAAE;QACPC,WAAW,EAAE,KAAK;QAClBC,KAAK,EAAE;MACX,CAAC,CAAC;MACF,IAAIC,GAAG,GAAG,IAAIC,cAAc,CAAC,CAAC;MAC9B,IAAIC,KAAK,GAAG,IAAI;MAChB,IAAI,CAAC,IAAI,CAACf,GAAG,EACT;MACJa,GAAG,CAACG,IAAI,CAAC,KAAK,EAAE,IAAI,CAAChB,GAAG,EAAEe,KAAK,CAAC;MAChCF,GAAG,CAACI,YAAY,GAAG,aAAa;MAChCJ,GAAG,CAACK,kBAAkB,GAAG,UAAUC,KAAK,EAAE;QACtC,IAAIN,GAAG,CAACO,UAAU,KAAK,CAAC,EAAE;UACtBf,MAAM,CAACgB,IAAI,CAAC;YACRC,KAAK,EAAE,IAAIC,UAAU,CAACV,GAAG,CAACW,QAAQ;UACtC,CAAC,CAAC;UACF,IAAI,CAAC1B,MAAM,GAAGO,MAAM;QACxB;MACJ,CAAC;MACDQ,GAAG,CAACY,IAAI,CAAC,IAAI,CAAC;IAClB;EAAC;IAAAtB,GAAA;IAAAC,KAAA,EACD,SAAAsB,KAAKA,CAAA,EAAG;MACJ,IAAI,CAACC,YAAY,IAAI,IAAI,CAAC7B,MAAM,CAAC4B,KAAK,CAAC,CAAC;IAC5C;IACA;AACJ;AACA;AACA;EAHI;IAAAvB,GAAA;IAAAC,KAAA,EAIA,SAAAwB,IAAIA,CAAA,EAAG;MACH;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAAzB,GAAA;IAAAC,KAAA,EAIA,SAAAyB,SAASA,CAACC,KAAK,EAAE;MACb;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAA3B,GAAA;IAAAC,KAAA,EAIA,SAAA2B,KAAKA,CAAA,EAAG;MACJ,IAAI,CAACjC,MAAM,IAAI,IAAI,CAACA,MAAM,CAACkC,OAAO,CAAC,CAAC;IACxC;IACA;AACJ;AACA;EAFI;IAAA7B,GAAA;IAAAC,KAAA,EAGA,SAAA6B,aAAaA,CAAA,EAAG;MACZ;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAA9B,GAAA;IAAAC,KAAA,EAIA,SAAA8B,gBAAgBA,CAACC,aAAa,EAAE;MAC5B;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAAhC,GAAA;IAAAC,KAAA,EAIA,SAAAgC,YAAYA,CAACC,MAAM,EAAE;MACjB;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAAlC,GAAA;IAAAC,KAAA,EAIA,SAAAkC,cAAcA,CAACC,KAAK,EAAE;MAClB;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAApC,GAAA;IAAAC,KAAA,EAIA,SAAAoC,cAAcA,CAACC,IAAI,EAAE;MACjB;IAAA;EACH;AAAA;AAAA,IAAAC,QAAA,GAAAC,OAAA,cAEUhD,iBAAiB","ignoreList":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { GetHistoryUrlParams } from '../api/types';
|
|
3
|
-
export
|
|
3
|
+
export type HistoryControlHandle = {
|
|
4
4
|
load: (channel: GetHistoryUrlParams) => void;
|
|
5
5
|
};
|
|
6
6
|
interface HistoryControlProps {
|
|
@@ -25,7 +25,7 @@ interface HistoryControlProps {
|
|
|
25
25
|
* 历史视频控制器
|
|
26
26
|
*/
|
|
27
27
|
export declare const HistoryControl: import("react").ForwardRefExoticComponent<HistoryControlProps & import("react").RefAttributes<HistoryControlHandle>>;
|
|
28
|
-
export
|
|
28
|
+
export type UrlsTableItemType = {
|
|
29
29
|
/** 序号 */
|
|
30
30
|
index: number;
|
|
31
31
|
/** 设备名称 */
|