@vtx/player 1.7.12 → 1.7.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. package/README.md +2 -2
  2. package/lib/api/fetch.js +62 -91
  3. package/lib/api/fetch.js.map +1 -1
  4. package/lib/api/index.js +18 -63
  5. package/lib/api/index.js.map +1 -1
  6. package/lib/api/types.d.ts +6 -6
  7. package/lib/bd/PlayerManager.js +38 -68
  8. package/lib/bd/PlayerManager.js.map +1 -1
  9. package/lib/bill-player/index.d.ts +1 -1
  10. package/lib/bill-player/index.js +66 -121
  11. package/lib/bill-player/index.js.map +1 -1
  12. package/lib/bill-player/style/css.js +0 -9
  13. package/lib/bill-player/style/css.js.map +1 -1
  14. package/lib/bill-player/style/index.js +0 -9
  15. package/lib/bill-player/style/index.js.map +1 -1
  16. package/lib/bill-player/style/index.less +297 -297
  17. package/lib/components/set-tag-video/index.js +6 -34
  18. package/lib/components/set-tag-video/index.js.map +1 -1
  19. package/lib/components/set-tag-video/style/css.js.map +1 -1
  20. package/lib/components/set-tag-video/style/index.js.map +1 -1
  21. package/lib/components/set-tag-video/style/index.less +125 -125
  22. package/lib/components/split-screen/index.d.ts +1 -1
  23. package/lib/components/split-screen/index.js +3 -14
  24. package/lib/components/split-screen/index.js.map +1 -1
  25. package/lib/components/split-screen/style/css.js.map +1 -1
  26. package/lib/components/split-screen/style/index.js.map +1 -1
  27. package/lib/components/tag-video/index.js +10 -38
  28. package/lib/components/tag-video/index.js.map +1 -1
  29. package/lib/components/tag-video/style/css.js.map +1 -1
  30. package/lib/components/tag-video/style/index.js.map +1 -1
  31. package/lib/components/tag-video/style/index.less +69 -69
  32. package/lib/components/video-scale/index.d.ts +1 -1
  33. package/lib/components/video-scale/index.js +2 -9
  34. package/lib/components/video-scale/index.js.map +1 -1
  35. package/lib/components/video-scale/style/css.js.map +1 -1
  36. package/lib/components/video-scale/style/index.js.map +1 -1
  37. package/lib/context/index.js +0 -4
  38. package/lib/context/index.js.map +1 -1
  39. package/lib/controls/index.d.ts +11 -11
  40. package/lib/controls/index.js +46 -108
  41. package/lib/controls/index.js.map +1 -1
  42. package/lib/controls/style/css.js +0 -5
  43. package/lib/controls/style/css.js.map +1 -1
  44. package/lib/controls/style/index.js +0 -5
  45. package/lib/controls/style/index.js.map +1 -1
  46. package/lib/controls/style/index.less +188 -188
  47. package/lib/h264/PlayerManager.js +18 -27
  48. package/lib/h264/PlayerManager.js.map +1 -1
  49. package/lib/history-control/index.d.ts +2 -2
  50. package/lib/history-control/index.js +61 -121
  51. package/lib/history-control/index.js.map +1 -1
  52. package/lib/history-control/style/css.js +0 -6
  53. package/lib/history-control/style/css.js.map +1 -1
  54. package/lib/history-control/style/index.js +0 -6
  55. package/lib/history-control/style/index.js.map +1 -1
  56. package/lib/history-control/style/index.less +252 -252
  57. package/lib/history-control-v2/components/grid-item/index.js +38 -77
  58. package/lib/history-control-v2/components/grid-item/index.js.map +1 -1
  59. package/lib/history-control-v2/components/panel/index.js +44 -114
  60. package/lib/history-control-v2/components/panel/index.js.map +1 -1
  61. package/lib/history-control-v2/context.js +0 -2
  62. package/lib/history-control-v2/context.js.map +1 -1
  63. package/lib/history-control-v2/index.d.ts +4 -4
  64. package/lib/history-control-v2/index.js +97 -166
  65. package/lib/history-control-v2/index.js.map +1 -1
  66. package/lib/history-control-v2/style/css.js +0 -10
  67. package/lib/history-control-v2/style/css.js.map +1 -1
  68. package/lib/history-control-v2/style/index.js +0 -10
  69. package/lib/history-control-v2/style/index.js.map +1 -1
  70. package/lib/history-control-v2/style/index.less +437 -437
  71. package/lib/history-control-v2/utils.js +1 -21
  72. package/lib/history-control-v2/utils.js.map +1 -1
  73. package/lib/history-player/index.d.ts +1 -1
  74. package/lib/history-player/index.js +146 -205
  75. package/lib/history-player/index.js.map +1 -1
  76. package/lib/history-player/style/css.js +0 -3
  77. package/lib/history-player/style/css.js.map +1 -1
  78. package/lib/history-player/style/index.js +0 -3
  79. package/lib/history-player/style/index.js.map +1 -1
  80. package/lib/history-player/style/index.less +102 -102
  81. package/lib/hooks/useSettings.js +1 -6
  82. package/lib/hooks/useSettings.js.map +1 -1
  83. package/lib/icc/PlayerManager.js +26 -57
  84. package/lib/icc/PlayerManager.js.map +1 -1
  85. package/lib/icc/api.d.ts +0 -68
  86. package/lib/icc/api.js +2 -16
  87. package/lib/icc/api.js.map +1 -1
  88. package/lib/icons/index.d.ts +36 -36
  89. package/lib/icons/index.js +23 -171
  90. package/lib/icons/index.js.map +1 -1
  91. package/lib/icons/index.less +32 -32
  92. package/lib/index.js +0 -10
  93. package/lib/index.js.map +1 -1
  94. package/lib/live-channel-player/index.d.ts +1 -1
  95. package/lib/live-channel-player/index.js +32 -67
  96. package/lib/live-channel-player/index.js.map +1 -1
  97. package/lib/live-channel-player/style/css.js +0 -1
  98. package/lib/live-channel-player/style/css.js.map +1 -1
  99. package/lib/live-channel-player/style/index.js +0 -1
  100. package/lib/live-channel-player/style/index.js.map +1 -1
  101. package/lib/live-control/index.d.ts +2 -2
  102. package/lib/live-control/index.js +36 -86
  103. package/lib/live-control/index.js.map +1 -1
  104. package/lib/live-control/style/css.js +0 -4
  105. package/lib/live-control/style/css.js.map +1 -1
  106. package/lib/live-control/style/index.js +0 -4
  107. package/lib/live-control/style/index.js.map +1 -1
  108. package/lib/live-control/style/index.less +99 -99
  109. package/lib/live-control-v2/index.d.ts +3 -3
  110. package/lib/live-control-v2/index.js +109 -141
  111. package/lib/live-control-v2/index.js.map +1 -1
  112. package/lib/live-control-v2/style/css.js +0 -7
  113. package/lib/live-control-v2/style/css.js.map +1 -1
  114. package/lib/live-control-v2/style/index.js +0 -7
  115. package/lib/live-control-v2/style/index.js.map +1 -1
  116. package/lib/live-control-v2/style/index.less +192 -192
  117. package/lib/live-player/index.d.ts +2 -0
  118. package/lib/live-player/index.js +96 -136
  119. package/lib/live-player/index.js.map +1 -1
  120. package/lib/live-player/style/css.js +0 -2
  121. package/lib/live-player/style/css.js.map +1 -1
  122. package/lib/live-player/style/index.js +0 -2
  123. package/lib/live-player/style/index.js.map +1 -1
  124. package/lib/live-player/style/index.less +75 -75
  125. package/lib/player/index.d.ts +1 -1
  126. package/lib/player/index.js +79 -244
  127. package/lib/player/index.js.map +1 -1
  128. package/lib/rsl/PlayerManager.js +18 -64
  129. package/lib/rsl/PlayerManager.js.map +1 -1
  130. package/lib/typings/@vtx/utils/index.d.ts +28 -28
  131. package/lib/typings/h5player.d.ts +146 -146
  132. package/lib/typings/webrtcplayer.d.ts +56 -56
  133. package/lib/typings/wsplayer.d.ts +99 -99
  134. package/lib/utils/index.d.ts +1 -1
  135. package/lib/utils/index.js +12 -91
  136. package/lib/utils/index.js.map +1 -1
  137. package/lib/vite-env.d.ts +1 -1
  138. package/lib/vtxHls/PlayerManager.js +6 -20
  139. package/lib/vtxHls/PlayerManager.js.map +1 -1
  140. package/lib/vtxHls/WhepManager.js +9 -72
  141. package/lib/vtxHls/WhepManager.js.map +1 -1
  142. package/lib/webrtc/PlayerManager.js +28 -41
  143. package/lib/webrtc/PlayerManager.js.map +1 -1
  144. package/package.json +125 -125
@@ -4,47 +4,26 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
-
8
7
  var _jsxRuntime = require("react/jsx-runtime");
9
-
10
8
  var _react = require("react");
11
-
12
9
  var _api = require("../api");
13
-
14
10
  var _controls = require("../controls");
15
-
16
11
  var _icons = require("../icons");
17
-
18
12
  var _livePlayer = _interopRequireDefault(require("../live-player"));
19
-
20
13
  var _ahooks = require("ahooks");
21
-
22
14
  var _space = _interopRequireDefault(require("antd/lib/space"));
23
-
24
15
  var _tooltip = _interopRequireDefault(require("antd/lib/tooltip"));
25
-
26
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
27
-
28
17
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
29
-
30
18
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
31
-
32
19
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
33
-
34
20
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
35
-
36
21
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
37
-
38
22
  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."); }
39
-
40
23
  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); }
41
-
42
- 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; }
43
-
44
- 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; }
45
-
46
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
47
-
24
+ 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; }
25
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
26
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } // import { Space, Tooltip } from 'antd';
48
27
  var DEFAULT_GRID = 2;
49
28
  var DEFAULT_ACTIVE = 0;
50
29
  var DEFAULT_CHANNELS = Array(9).fill({
@@ -53,43 +32,37 @@ var DEFAULT_CHANNELS = Array(9).fill({
53
32
  /**
54
33
  * 实时分屏组件
55
34
  */
56
-
57
35
  var LiveControl = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
58
36
  var _props$height = props.height,
59
- height = _props$height === void 0 ? '100%' : _props$height,
60
- _props$width = props.width,
61
- width = _props$width === void 0 ? '100%' : _props$width,
62
- onExpandChange = props.onExpandChange,
63
- onChannelChange = props.onChannelChange,
64
- polling = props.polling,
65
- _props$isDark = props.isDark,
66
- isDark = _props$isDark === void 0 ? false : _props$isDark;
67
-
37
+ height = _props$height === void 0 ? '100%' : _props$height,
38
+ _props$width = props.width,
39
+ width = _props$width === void 0 ? '100%' : _props$width,
40
+ onExpandChange = props.onExpandChange,
41
+ onChannelChange = props.onChannelChange,
42
+ polling = props.polling,
43
+ _props$isDark = props.isDark,
44
+ isDark = _props$isDark === void 0 ? false : _props$isDark;
68
45
  var _useSetState = (0, _ahooks.useSetState)({
69
- expand: true,
70
- grid: DEFAULT_GRID,
71
- activeIndex: DEFAULT_ACTIVE,
72
- channels: DEFAULT_CHANNELS
73
- }),
74
- _useSetState2 = _slicedToArray(_useSetState, 2),
75
- state = _useSetState2[0],
76
- setState = _useSetState2[1];
77
-
46
+ expand: true,
47
+ grid: DEFAULT_GRID,
48
+ activeIndex: DEFAULT_ACTIVE,
49
+ channels: DEFAULT_CHANNELS
50
+ }),
51
+ _useSetState2 = _slicedToArray(_useSetState, 2),
52
+ state = _useSetState2[0],
53
+ setState = _useSetState2[1];
78
54
  var wrapRef = (0, _react.useRef)(null);
79
-
80
55
  var _useFullscreen = (0, _ahooks.useFullscreen)(wrapRef),
81
- _useFullscreen2 = _slicedToArray(_useFullscreen, 2),
82
- isFullscreen = _useFullscreen2[0],
83
- toggleFullscreen = _useFullscreen2[1].toggleFullscreen;
84
-
85
- var channelRef = (0, _react.useRef)(DEFAULT_CHANNELS); // 实时视频轮询
86
-
56
+ _useFullscreen2 = _slicedToArray(_useFullscreen, 2),
57
+ isFullscreen = _useFullscreen2[0],
58
+ toggleFullscreen = _useFullscreen2[1].toggleFullscreen;
59
+ var channelRef = (0, _react.useRef)(DEFAULT_CHANNELS);
60
+ // 实时视频轮询
87
61
  (0, _ahooks.useInterval)(function () {
88
62
  // 是否有视频正在播放
89
63
  var hasVideo = state.channels.some(function (item) {
90
64
  return item.channelNum;
91
65
  });
92
-
93
66
  if (polling && hasVideo) {
94
67
  setState({
95
68
  channels: DEFAULT_CHANNELS
@@ -108,7 +81,6 @@ var LiveControl = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
108
81
  var index = state.channels.findIndex(function (c) {
109
82
  return c.channelId && channel.channelId && c.channelNum === channel.channelNum;
110
83
  });
111
-
112
84
  if (~index) {
113
85
  setState({
114
86
  activeIndex: index
@@ -116,7 +88,6 @@ var LiveControl = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
116
88
  } else {
117
89
  // 播放该通道
118
90
  var newChannels = _toConsumableArray(state.channels);
119
-
120
91
  var activeIndex = getActiveIndex(newChannels, state.grid, state.activeIndex);
121
92
  newChannels[activeIndex] = channel;
122
93
  setState({
@@ -127,16 +98,14 @@ var LiveControl = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
127
98
  },
128
99
  multiLoad: function multiLoad(channels) {
129
100
  var grid = 1;
130
- if (channels.length > 1) grid = 2; // if (channels.length > 4) grid = 3;
131
-
101
+ if (channels.length > 1) grid = 2;
102
+ // if (channels.length > 4) grid = 3;
132
103
  var newChannels = [];
133
-
134
104
  for (var i = 0; i < 9; i++) {
135
105
  newChannels.push(channels[i] ? channels[i] : {
136
106
  channelNum: ''
137
107
  });
138
108
  }
139
-
140
109
  setState({
141
110
  grid: grid,
142
111
  channels: newChannels
@@ -146,11 +115,9 @@ var LiveControl = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
146
115
  var index = state.channels.findIndex(function (c) {
147
116
  return c.channelNum === channelNum;
148
117
  });
149
-
150
118
  if (~index) {
151
119
  // 卸载通道
152
120
  var newChannels = _toConsumableArray(state.channels);
153
-
154
121
  newChannels[index] = {
155
122
  channelNum: ''
156
123
  };
@@ -163,7 +130,6 @@ var LiveControl = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
163
130
  });
164
131
  (0, _react.useEffect)(function () {
165
132
  channelRef.current = state.channels;
166
-
167
133
  if (onChannelChange) {
168
134
  onChannelChange(state.channels.filter(function (c) {
169
135
  return !!c.channelNum;
@@ -172,23 +138,19 @@ var LiveControl = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
172
138
  }));
173
139
  }
174
140
  }, [state.channels]);
175
-
176
141
  var handleCloseAll = function handleCloseAll() {
177
142
  setState({
178
143
  channels: DEFAULT_CHANNELS
179
144
  });
180
145
  };
181
-
182
146
  var handleExpand = function handleExpand() {
183
147
  onExpandChange && onExpandChange(!state.expand);
184
148
  setState({
185
149
  expand: !state.expand
186
150
  });
187
151
  };
188
-
189
152
  var getGridItems = function getGridItems() {
190
153
  var items = [];
191
-
192
154
  var _loop = function _loop(i) {
193
155
  var element = (0, _jsxRuntime.jsx)(GridItem, {
194
156
  active: state.activeIndex === i,
@@ -200,7 +162,6 @@ var LiveControl = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
200
162
  channel: state.channels[i],
201
163
  onClose: function onClose() {
202
164
  var newChannels = _toConsumableArray(state.channels);
203
-
204
165
  newChannels[i] = {
205
166
  channelNum: ''
206
167
  };
@@ -211,14 +172,11 @@ var LiveControl = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
211
172
  }, i);
212
173
  items.push(element);
213
174
  };
214
-
215
175
  for (var i = 0; i < state.grid * state.grid; i++) {
216
176
  _loop(i);
217
177
  }
218
-
219
178
  return items;
220
179
  };
221
-
222
180
  return (0, _jsxRuntime.jsxs)("div", Object.assign({
223
181
  className: "vtx-live-control".concat(isDark ? ' live-dark' : ''),
224
182
  ref: wrapRef,
@@ -319,22 +277,19 @@ var LiveControl = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
319
277
  }));
320
278
  });
321
279
  LiveControl.displayName = 'LiveControl';
322
-
323
280
  var GridItem = function GridItem(props) {
324
281
  var active = props.active,
325
- onClick = props.onClick,
326
- channel = props.channel,
327
- onClose = props.onClose;
282
+ onClick = props.onClick,
283
+ channel = props.channel,
284
+ onClose = props.onClose;
328
285
  var empty = !channel.channelNum;
329
-
330
286
  var _useRequest = (0, _ahooks.useRequest)(function () {
331
- return (0, _api.getPreviewUrl)(channel);
332
- }, {
333
- ready: !!channel.channelNum,
334
- refreshDeps: [channel.channelNum]
335
- }),
336
- data = _useRequest.data;
337
-
287
+ return (0, _api.getPreviewUrl)(channel);
288
+ }, {
289
+ ready: !!channel.channelNum,
290
+ refreshDeps: [channel.channelNum]
291
+ }),
292
+ data = _useRequest.data;
338
293
  var name = "".concat(data === null || data === void 0 ? void 0 : data.deviceName, "-").concat(data === null || data === void 0 ? void 0 : data.channelName);
339
294
  return (0, _jsxRuntime.jsx)("div", Object.assign({
340
295
  className: "grid-item-container ".concat(active ? 'active' : ''),
@@ -349,6 +304,7 @@ var GridItem = function GridItem(props) {
349
304
  }, {
350
305
  children: (0, _jsxRuntime.jsx)(_livePlayer["default"], {
351
306
  url: data.url,
307
+ beenHasVideo: data.beenHasVideo,
352
308
  type: (data === null || data === void 0 ? void 0 : data.player) || '',
353
309
  enableAgent: (data === null || data === void 0 ? void 0 : data.enableAgent) || false,
354
310
  captureName: name,
@@ -366,22 +322,16 @@ var GridItem = function GridItem(props) {
366
322
  * @param currentIndex 当前索引
367
323
  * @returns
368
324
  */
369
-
370
-
371
325
  var getActiveIndex = function getActiveIndex(channels, grid, currentIndex) {
372
326
  var currentChannels = channels.slice(0, grid * grid);
373
-
374
327
  for (var i = currentIndex + 1; i < currentChannels.length; i++) {
375
328
  if (!currentChannels[i].channelNum) return i;
376
329
  }
377
-
378
330
  for (var _i2 = 0; _i2 < currentIndex; _i2++) {
379
331
  if (!currentChannels[_i2].channelNum) return _i2;
380
332
  }
381
-
382
333
  return currentIndex;
383
334
  };
384
-
385
335
  var _default = LiveControl;
386
336
  exports["default"] = _default;
387
337
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["DEFAULT_GRID","DEFAULT_ACTIVE","DEFAULT_CHANNELS","Array","fill","channelNum","LiveControl","forwardRef","props","ref","height","width","onExpandChange","onChannelChange","polling","isDark","useSetState","expand","grid","activeIndex","channels","state","setState","wrapRef","useRef","useFullscreen","isFullscreen","toggleFullscreen","channelRef","useInterval","hasVideo","some","item","timer","setTimeout","current","clearTimeout","useImperativeHandle","load","channel","index","findIndex","c","channelId","newChannels","getActiveIndex","multiLoad","length","i","push","unLoad","useEffect","filter","map","handleCloseAll","handleExpand","getGridItems","items","element","_jsx","GridItem","active","onClick","onClose","_jsxs","Object","assign","className","style","children","Space","size","align","Tooltip","title","display","FoldIcon","ExpandIcon","CloseAllIcon","Grid1x1Icon","Grid2x2Icon","Grid3x3Icon","ExitFullScreenIcon","FullScreenIcon","displayName","empty","useRequest","getPreviewUrl","ready","refreshDeps","data","name","deviceName","channelName","_Fragment","PlayerHeader","VtxLivePlayer","url","type","player","enableAgent","captureName","showInfo","info","currentIndex","currentChannels","slice"],"sources":["live-control/index.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { forwardRef, useEffect, useImperativeHandle, useRef } from 'react';\nimport { getPreviewUrl } from '../api';\nimport { PlayerHeader } from '../controls';\nimport { CloseAllIcon, ExitFullScreenIcon, ExpandIcon, FoldIcon, FullScreenIcon, Grid1x1Icon, Grid2x2Icon, Grid3x3Icon, } from '../icons';\nimport VtxLivePlayer from '../live-player';\nimport { useFullscreen, useInterval, useRequest, useSetState } from 'ahooks';\nimport Space from 'antd/lib/space';\n// import { Space, Tooltip } from 'antd';\nimport Tooltip from 'antd/lib/tooltip';\nconst DEFAULT_GRID = 2;\nconst DEFAULT_ACTIVE = 0;\nconst DEFAULT_CHANNELS = Array(9).fill({ channelNum: '' });\n/**\n * 实时分屏组件\n */\nconst LiveControl = forwardRef((props, ref) => {\n const { height = '100%', width = '100%', onExpandChange, onChannelChange, polling, isDark = false, } = props;\n const [state, setState] = useSetState({\n expand: true,\n grid: DEFAULT_GRID,\n activeIndex: DEFAULT_ACTIVE,\n channels: DEFAULT_CHANNELS,\n });\n const wrapRef = useRef(null);\n const [isFullscreen, { toggleFullscreen }] = useFullscreen(wrapRef);\n const channelRef = useRef(DEFAULT_CHANNELS);\n // 实时视频轮询\n useInterval(() => {\n // 是否有视频正在播放\n const hasVideo = state.channels.some((item) => item.channelNum);\n if (polling && hasVideo) {\n setState({\n channels: DEFAULT_CHANNELS,\n });\n const timer = setTimeout(() => {\n setState({\n channels: channelRef.current,\n });\n clearTimeout(timer);\n }, 0);\n }\n }, polling);\n useImperativeHandle(ref, () => {\n return {\n load: (channel) => {\n const index = state.channels.findIndex((c) => c.channelId && channel.channelId && c.channelNum === channel.channelNum);\n if (~index) {\n setState({ activeIndex: index }); // 如果通道号已经存在,则设置激活索引为该通道\n }\n else {\n // 播放该通道\n const newChannels = [...state.channels];\n const activeIndex = getActiveIndex(newChannels, state.grid, state.activeIndex);\n newChannels[activeIndex] = channel;\n setState({ channels: newChannels, activeIndex });\n }\n },\n multiLoad: (channels) => {\n let grid = 1;\n if (channels.length > 1)\n grid = 2;\n // if (channels.length > 4) grid = 3;\n const newChannels = [];\n for (let i = 0; i < 9; i++) {\n newChannels.push(channels[i] ? channels[i] : { channelNum: '' });\n }\n setState({ grid, channels: newChannels });\n },\n unLoad: (channelNum) => {\n const index = state.channels.findIndex((c) => c.channelNum === channelNum);\n if (~index) {\n // 卸载通道\n const newChannels = [...state.channels];\n newChannels[index] = { channelNum: '' };\n setState({ channels: newChannels });\n }\n },\n };\n });\n useEffect(() => {\n channelRef.current = state.channels;\n if (onChannelChange) {\n onChannelChange(state.channels.filter((c) => !!c.channelNum).map((c) => c.channelNum));\n }\n }, [state.channels]);\n const handleCloseAll = () => {\n setState({ channels: DEFAULT_CHANNELS });\n };\n const handleExpand = () => {\n onExpandChange && onExpandChange(!state.expand);\n setState({ expand: !state.expand });\n };\n const getGridItems = () => {\n const items = [];\n for (let i = 0; i < state.grid * state.grid; i++) {\n const element = (_jsx(GridItem, { active: state.activeIndex === i, onClick: () => setState({ activeIndex: i }), channel: state.channels[i], onClose: () => {\n const newChannels = [...state.channels];\n newChannels[i] = { channelNum: '' };\n setState({ channels: newChannels });\n } }, i));\n items.push(element);\n }\n return items;\n };\n return (_jsxs(\"div\", Object.assign({ className: `vtx-live-control${isDark ? ' live-dark' : ''}`, ref: wrapRef, style: { height, width } }, { children: [_jsx(\"div\", Object.assign({ className: `player-grid-container _${state.grid}` }, { children: getGridItems() })), _jsxs(\"div\", Object.assign({ className: \"controls\" }, { children: [_jsx(Space, Object.assign({ className: \"left\", size: 12, align: \"center\" }, { children: onExpandChange && (_jsx(Tooltip, Object.assign({ title: state.expand ? '收起' : '展开' }, { children: _jsx(\"div\", Object.assign({ onClick: handleExpand, style: { display: 'flex' } }, { children: state.expand ? _jsx(FoldIcon, {}) : _jsx(ExpandIcon, {}) })) }))) })), _jsxs(Space, Object.assign({ className: \"right\", size: 12, align: \"center\" }, { children: [_jsx(Tooltip, Object.assign({ title: \"\\u5168\\u90E8\\u5173\\u95ED\" }, { children: _jsx(\"div\", { children: _jsx(CloseAllIcon, { onClick: handleCloseAll }) }) })), _jsx(Tooltip, Object.assign({ title: \"1\\u5206\\u5C4F\" }, { children: _jsx(\"div\", { children: _jsx(Grid1x1Icon, { active: state.grid === 1, onClick: () => setState({ grid: 1 }) }) }) })), _jsx(Tooltip, Object.assign({ title: \"4\\u5206\\u5C4F\" }, { children: _jsx(\"div\", { children: _jsx(Grid2x2Icon, { active: state.grid === 2, onClick: () => setState({ grid: 2 }) }) }) })), _jsx(Tooltip, Object.assign({ title: \"9\\u5206\\u5C4F\" }, { children: _jsx(\"div\", { children: _jsx(Grid3x3Icon, { active: state.grid === 3, onClick: () => setState({ grid: 3 }) }) }) })), _jsx(Tooltip, Object.assign({ title: \"\\u5168\\u5C4F\" }, { children: _jsx(\"div\", { children: isFullscreen ? (_jsx(ExitFullScreenIcon, { onClick: toggleFullscreen })) : (_jsx(FullScreenIcon, { onClick: toggleFullscreen })) }) }))] }))] }))] })));\n});\nLiveControl.displayName = 'LiveControl';\nconst GridItem = (props) => {\n const { active, onClick, channel, onClose } = props;\n const empty = !channel.channelNum;\n const { data } = useRequest(() => getPreviewUrl(channel), {\n ready: !!channel.channelNum,\n refreshDeps: [channel.channelNum],\n });\n const name = `${data === null || data === void 0 ? void 0 : data.deviceName}-${data === null || data === void 0 ? void 0 : data.channelName}`;\n return (_jsx(\"div\", Object.assign({ className: `grid-item-container ${active ? 'active' : ''}`, onClick: onClick }, { children: data && !empty && (_jsxs(_Fragment, { children: [_jsx(PlayerHeader, { name: name, onClose: onClose }), _jsx(\"div\", Object.assign({ className: \"content\" }, { children: _jsx(VtxLivePlayer, { url: data.url, type: (data === null || data === void 0 ? void 0 : data.player) || '', enableAgent: (data === null || data === void 0 ? void 0 : data.enableAgent) || false, captureName: name, showInfo: channel.showInfo, info: channel.info }) }))] })) })));\n};\n/**\n * 获取当前激活的网格\n * @param channels 现有通道数组\n * @param grid 当前网格状态\n * @param currentIndex 当前索引\n * @returns\n */\nconst getActiveIndex = (channels, grid, currentIndex) => {\n const currentChannels = channels.slice(0, grid * grid);\n for (let i = currentIndex + 1; i < currentChannels.length; i++) {\n if (!currentChannels[i].channelNum)\n return i;\n }\n for (let i = 0; i < currentIndex; i++) {\n if (!currentChannels[i].channelNum)\n return i;\n }\n return currentIndex;\n};\nexport default LiveControl;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_jsxRuntime","require","_react","_api","_controls","_icons","_livePlayer","_interopRequireDefault","_ahooks","_space","_tooltip","obj","__esModule","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","i","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","n","Object","prototype","toString","call","slice","constructor","name","test","len","length","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","DEFAULT_GRID","DEFAULT_ACTIVE","DEFAULT_CHANNELS","fill","channelNum","LiveControl","forwardRef","props","ref","_props$height","height","_props$width","width","onExpandChange","onChannelChange","polling","_props$isDark","isDark","_useSetState","useSetState","expand","grid","activeIndex","channels","_useSetState2","state","setState","wrapRef","useRef","_useFullscreen","useFullscreen","_useFullscreen2","isFullscreen","toggleFullscreen","channelRef","useInterval","hasVideo","some","item","timer","setTimeout","current","clearTimeout","useImperativeHandle","load","channel","index","findIndex","c","channelId","newChannels","getActiveIndex","multiLoad","unLoad","useEffect","filter","map","handleCloseAll","handleExpand","getGridItems","items","_loop","element","_jsx","GridItem","active","onClick","onClose","_jsxs","assign","className","concat","style","children","Space","size","align","Tooltip","title","display","FoldIcon","ExpandIcon","CloseAllIcon","Grid1x1Icon","Grid2x2Icon","Grid3x3Icon","ExitFullScreenIcon","FullScreenIcon","displayName","empty","_useRequest","useRequest","getPreviewUrl","ready","refreshDeps","data","deviceName","channelName","_Fragment","PlayerHeader","VtxLivePlayer","url","beenHasVideo","type","player","enableAgent","captureName","showInfo","info","currentIndex","currentChannels","_default","exports"],"sources":["live-control/index.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { forwardRef, useEffect, useImperativeHandle, useRef } from 'react';\nimport { getPreviewUrl } from '../api';\nimport { PlayerHeader } from '../controls';\nimport { CloseAllIcon, ExitFullScreenIcon, ExpandIcon, FoldIcon, FullScreenIcon, Grid1x1Icon, Grid2x2Icon, Grid3x3Icon, } from '../icons';\nimport VtxLivePlayer from '../live-player';\nimport { useFullscreen, useInterval, useRequest, useSetState } from 'ahooks';\nimport Space from 'antd/lib/space';\n// import { Space, Tooltip } from 'antd';\nimport Tooltip from 'antd/lib/tooltip';\nconst DEFAULT_GRID = 2;\nconst DEFAULT_ACTIVE = 0;\nconst DEFAULT_CHANNELS = Array(9).fill({ channelNum: '' });\n/**\n * 实时分屏组件\n */\nconst LiveControl = forwardRef((props, ref) => {\n const { height = '100%', width = '100%', onExpandChange, onChannelChange, polling, isDark = false, } = props;\n const [state, setState] = useSetState({\n expand: true,\n grid: DEFAULT_GRID,\n activeIndex: DEFAULT_ACTIVE,\n channels: DEFAULT_CHANNELS,\n });\n const wrapRef = useRef(null);\n const [isFullscreen, { toggleFullscreen }] = useFullscreen(wrapRef);\n const channelRef = useRef(DEFAULT_CHANNELS);\n // 实时视频轮询\n useInterval(() => {\n // 是否有视频正在播放\n const hasVideo = state.channels.some((item) => item.channelNum);\n if (polling && hasVideo) {\n setState({\n channels: DEFAULT_CHANNELS,\n });\n const timer = setTimeout(() => {\n setState({\n channels: channelRef.current,\n });\n clearTimeout(timer);\n }, 0);\n }\n }, polling);\n useImperativeHandle(ref, () => {\n return {\n load: (channel) => {\n const index = state.channels.findIndex((c) => c.channelId && channel.channelId && c.channelNum === channel.channelNum);\n if (~index) {\n setState({ activeIndex: index }); // 如果通道号已经存在,则设置激活索引为该通道\n }\n else {\n // 播放该通道\n const newChannels = [...state.channels];\n const activeIndex = getActiveIndex(newChannels, state.grid, state.activeIndex);\n newChannels[activeIndex] = channel;\n setState({ channels: newChannels, activeIndex });\n }\n },\n multiLoad: (channels) => {\n let grid = 1;\n if (channels.length > 1)\n grid = 2;\n // if (channels.length > 4) grid = 3;\n const newChannels = [];\n for (let i = 0; i < 9; i++) {\n newChannels.push(channels[i] ? channels[i] : { channelNum: '' });\n }\n setState({ grid, channels: newChannels });\n },\n unLoad: (channelNum) => {\n const index = state.channels.findIndex((c) => c.channelNum === channelNum);\n if (~index) {\n // 卸载通道\n const newChannels = [...state.channels];\n newChannels[index] = { channelNum: '' };\n setState({ channels: newChannels });\n }\n },\n };\n });\n useEffect(() => {\n channelRef.current = state.channels;\n if (onChannelChange) {\n onChannelChange(state.channels.filter((c) => !!c.channelNum).map((c) => c.channelNum));\n }\n }, [state.channels]);\n const handleCloseAll = () => {\n setState({ channels: DEFAULT_CHANNELS });\n };\n const handleExpand = () => {\n onExpandChange && onExpandChange(!state.expand);\n setState({ expand: !state.expand });\n };\n const getGridItems = () => {\n const items = [];\n for (let i = 0; i < state.grid * state.grid; i++) {\n const element = (_jsx(GridItem, { active: state.activeIndex === i, onClick: () => setState({ activeIndex: i }), channel: state.channels[i], onClose: () => {\n const newChannels = [...state.channels];\n newChannels[i] = { channelNum: '' };\n setState({ channels: newChannels });\n } }, i));\n items.push(element);\n }\n return items;\n };\n return (_jsxs(\"div\", Object.assign({ className: `vtx-live-control${isDark ? ' live-dark' : ''}`, ref: wrapRef, style: { height, width } }, { children: [_jsx(\"div\", Object.assign({ className: `player-grid-container _${state.grid}` }, { children: getGridItems() })), _jsxs(\"div\", Object.assign({ className: \"controls\" }, { children: [_jsx(Space, Object.assign({ className: \"left\", size: 12, align: \"center\" }, { children: onExpandChange && (_jsx(Tooltip, Object.assign({ title: state.expand ? '收起' : '展开' }, { children: _jsx(\"div\", Object.assign({ onClick: handleExpand, style: { display: 'flex' } }, { children: state.expand ? _jsx(FoldIcon, {}) : _jsx(ExpandIcon, {}) })) }))) })), _jsxs(Space, Object.assign({ className: \"right\", size: 12, align: \"center\" }, { children: [_jsx(Tooltip, Object.assign({ title: \"\\u5168\\u90E8\\u5173\\u95ED\" }, { children: _jsx(\"div\", { children: _jsx(CloseAllIcon, { onClick: handleCloseAll }) }) })), _jsx(Tooltip, Object.assign({ title: \"1\\u5206\\u5C4F\" }, { children: _jsx(\"div\", { children: _jsx(Grid1x1Icon, { active: state.grid === 1, onClick: () => setState({ grid: 1 }) }) }) })), _jsx(Tooltip, Object.assign({ title: \"4\\u5206\\u5C4F\" }, { children: _jsx(\"div\", { children: _jsx(Grid2x2Icon, { active: state.grid === 2, onClick: () => setState({ grid: 2 }) }) }) })), _jsx(Tooltip, Object.assign({ title: \"9\\u5206\\u5C4F\" }, { children: _jsx(\"div\", { children: _jsx(Grid3x3Icon, { active: state.grid === 3, onClick: () => setState({ grid: 3 }) }) }) })), _jsx(Tooltip, Object.assign({ title: \"\\u5168\\u5C4F\" }, { children: _jsx(\"div\", { children: isFullscreen ? (_jsx(ExitFullScreenIcon, { onClick: toggleFullscreen })) : (_jsx(FullScreenIcon, { onClick: toggleFullscreen })) }) }))] }))] }))] })));\n});\nLiveControl.displayName = 'LiveControl';\nconst GridItem = (props) => {\n const { active, onClick, channel, onClose } = props;\n const empty = !channel.channelNum;\n const { data } = useRequest(() => getPreviewUrl(channel), {\n ready: !!channel.channelNum,\n refreshDeps: [channel.channelNum],\n });\n const name = `${data === null || data === void 0 ? void 0 : data.deviceName}-${data === null || data === void 0 ? void 0 : data.channelName}`;\n return (_jsx(\"div\", Object.assign({ className: `grid-item-container ${active ? 'active' : ''}`, onClick: onClick }, { children: data && !empty && (_jsxs(_Fragment, { children: [_jsx(PlayerHeader, { name: name, onClose: onClose }), _jsx(\"div\", Object.assign({ className: \"content\" }, { children: _jsx(VtxLivePlayer, { url: data.url, beenHasVideo: data.beenHasVideo, type: (data === null || data === void 0 ? void 0 : data.player) || '', enableAgent: (data === null || data === void 0 ? void 0 : data.enableAgent) || false, captureName: name, showInfo: channel.showInfo, info: channel.info }) }))] })) })));\n};\n/**\n * 获取当前激活的网格\n * @param channels 现有通道数组\n * @param grid 当前网格状态\n * @param currentIndex 当前索引\n * @returns\n */\nconst getActiveIndex = (channels, grid, currentIndex) => {\n const currentChannels = channels.slice(0, grid * grid);\n for (let i = currentIndex + 1; i < currentChannels.length; i++) {\n if (!currentChannels[i].channelNum)\n return i;\n }\n for (let i = 0; i < currentIndex; i++) {\n if (!currentChannels[i].channelNum)\n return i;\n }\n return currentIndex;\n};\nexport default LiveControl;\n"],"mappings":"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"}
@@ -1,12 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  require("./index.css");
4
-
5
4
  require("../../controls/style/css");
6
-
7
5
  require("../../live-player/style/css");
8
-
9
6
  require("antd/lib/space/style/css");
10
-
11
7
  require("antd/lib/tooltip/style/css");
12
8
  //# sourceMappingURL=css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"css.js","names":[],"sources":["live-control/style/index.js"],"sourcesContent":["import './index.less';\nimport '../../controls/style';\nimport '../../live-player/style';\nimport 'antd/lib/space/style';\nimport 'antd/lib/space/style';\nimport 'antd/lib/tooltip/style';\n"],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AAEA"}
1
+ {"version":3,"file":"css.js","names":["require"],"sources":["live-control/style/index.js"],"sourcesContent":["import './index.less';\nimport '../../controls/style';\nimport '../../live-player/style';\nimport 'antd/lib/space/style';\nimport 'antd/lib/space/style';\nimport 'antd/lib/tooltip/style';\n"],"mappings":";;AAAAA,OAAA;AACAA,OAAA;AACAA,OAAA;AACAA,OAAA;AAEAA,OAAA"}
@@ -1,12 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  require("./index.less");
4
-
5
4
  require("../../controls/style");
6
-
7
5
  require("../../live-player/style");
8
-
9
6
  require("antd/lib/space/style");
10
-
11
7
  require("antd/lib/tooltip/style");
12
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["live-control/style/index.js"],"sourcesContent":["import './index.less';\nimport '../../controls/style';\nimport '../../live-player/style';\nimport 'antd/lib/space/style';\nimport 'antd/lib/space/style';\nimport 'antd/lib/tooltip/style';\n"],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AAEA"}
1
+ {"version":3,"file":"index.js","names":["require"],"sources":["live-control/style/index.js"],"sourcesContent":["import './index.less';\nimport '../../controls/style';\nimport '../../live-player/style';\nimport 'antd/lib/space/style';\nimport 'antd/lib/space/style';\nimport 'antd/lib/tooltip/style';\n"],"mappings":";;AAAAA,OAAA;AACAA,OAAA;AACAA,OAAA;AACAA,OAAA;AAEAA,OAAA"}
@@ -1,99 +1,99 @@
1
- .live-dark {
2
- .grid-item-container {
3
- background-color: rgba(0, 59, 64, 0.45) !important;
4
- }
5
- .controls {
6
- background: rgba(0, 59, 64, 0.3) !important;
7
- }
8
- .control-icon {
9
- &:hover {
10
- fill: #95fff9;
11
- }
12
-
13
- &.active {
14
- fill: #95fff9;
15
- }
16
- }
17
- }
18
- .theme-body {
19
- .grid-item-container {
20
- background: var(--backgroundContainer) !important;
21
- }
22
- .controls {
23
- background: var(--backgroundContainer) !important;
24
- }
25
- .control-icon {
26
- &:hover {
27
- fill: var(--borderColor);
28
- }
29
-
30
- &.active {
31
- fill: var(--borderColor);
32
- }
33
- }
34
- }
35
-
36
- .vtx-live-control {
37
- display: flex;
38
- flex-direction: column;
39
-
40
- .player-grid-container {
41
- display: grid;
42
- flex-grow: 1;
43
- grid-gap: 1px;
44
- height: 0;
45
- background-color: rgba(0, 0, 0, 0.8);
46
-
47
- &._1 {
48
- grid-template-rows: 1fr;
49
- grid-template-columns: 1fr;
50
- }
51
-
52
- &._2 {
53
- grid-template-rows: 1fr 1fr;
54
- grid-template-columns: 1fr 1fr;
55
- }
56
-
57
- &._3 {
58
- grid-template-rows: 1fr 1fr 1fr;
59
- grid-template-columns: 1fr 1fr 1fr;
60
- }
61
-
62
- .grid-item-container {
63
- display: flex;
64
- flex-direction: column;
65
- min-width: 0;
66
- min-height: 0;
67
- background-color: #2b3d51;
68
- background-image: url('../images/empty.png');
69
- background-repeat: no-repeat;
70
- background-position: center;
71
-
72
- &.active {
73
- box-shadow: 0 0 0 1px #52c41a;
74
- }
75
-
76
- > .content {
77
- flex-grow: 1;
78
- height: 0;
79
- }
80
- }
81
- }
82
-
83
- .controls {
84
- display: flex;
85
- align-items: center;
86
- width: 100%;
87
- height: 32px;
88
- padding: 0 12px;
89
- background-color: #243241;
90
-
91
- .right {
92
- margin-left: auto;
93
-
94
- > div {
95
- height: 24px;
96
- }
97
- }
98
- }
99
- }
1
+ .live-dark {
2
+ .grid-item-container {
3
+ background-color: rgba(0, 59, 64, 0.45) !important;
4
+ }
5
+ .controls {
6
+ background: rgba(0, 59, 64, 0.3) !important;
7
+ }
8
+ .control-icon {
9
+ &:hover {
10
+ fill: #95fff9;
11
+ }
12
+
13
+ &.active {
14
+ fill: #95fff9;
15
+ }
16
+ }
17
+ }
18
+ .theme-body {
19
+ .grid-item-container {
20
+ background: var(--backgroundContainer) !important;
21
+ }
22
+ .controls {
23
+ background: var(--backgroundContainer) !important;
24
+ }
25
+ .control-icon {
26
+ &:hover {
27
+ fill: var(--borderColor);
28
+ }
29
+
30
+ &.active {
31
+ fill: var(--borderColor);
32
+ }
33
+ }
34
+ }
35
+
36
+ .vtx-live-control {
37
+ display: flex;
38
+ flex-direction: column;
39
+
40
+ .player-grid-container {
41
+ display: grid;
42
+ flex-grow: 1;
43
+ grid-gap: 1px;
44
+ height: 0;
45
+ background-color: rgba(0, 0, 0, 0.8);
46
+
47
+ &._1 {
48
+ grid-template-rows: 1fr;
49
+ grid-template-columns: 1fr;
50
+ }
51
+
52
+ &._2 {
53
+ grid-template-rows: 1fr 1fr;
54
+ grid-template-columns: 1fr 1fr;
55
+ }
56
+
57
+ &._3 {
58
+ grid-template-rows: 1fr 1fr 1fr;
59
+ grid-template-columns: 1fr 1fr 1fr;
60
+ }
61
+
62
+ .grid-item-container {
63
+ display: flex;
64
+ flex-direction: column;
65
+ min-width: 0;
66
+ min-height: 0;
67
+ background-color: #2b3d51;
68
+ background-image: url('../images/empty.png');
69
+ background-repeat: no-repeat;
70
+ background-position: center;
71
+
72
+ &.active {
73
+ box-shadow: 0 0 0 1px #52c41a;
74
+ }
75
+
76
+ > .content {
77
+ flex-grow: 1;
78
+ height: 0;
79
+ }
80
+ }
81
+ }
82
+
83
+ .controls {
84
+ display: flex;
85
+ align-items: center;
86
+ width: 100%;
87
+ height: 32px;
88
+ padding: 0 12px;
89
+ background-color: #243241;
90
+
91
+ .right {
92
+ margin-left: auto;
93
+
94
+ > div {
95
+ height: 24px;
96
+ }
97
+ }
98
+ }
99
+ }
@@ -1,7 +1,7 @@
1
1
  import React, { ReactElement } from 'react';
2
2
  import { ISplitScreenGrid } from '../components/split-screen';
3
3
  import { IVideoScaleValue } from '../components/video-scale';
4
- export declare type LiveControlV2Handle = {
4
+ export type LiveControlV2Handle = {
5
5
  /** 设置窗口 */
6
6
  setGrid: (grid: ISplitScreenGrid) => void;
7
7
  /** 加载视频 */
@@ -39,7 +39,7 @@ interface LiveControlV2Props {
39
39
  extraDom?: ReactElement | undefined;
40
40
  defaultGrid?: ISplitScreenGrid;
41
41
  }
42
- export declare type ChannelType = {
42
+ export type ChannelType = {
43
43
  /** 通道号 */
44
44
  channelNum?: string;
45
45
  /** 通道id */
@@ -59,5 +59,5 @@ export declare type ChannelType = {
59
59
  * 实时分屏组件
60
60
  */
61
61
  declare const LiveControlV2: React.ForwardRefExoticComponent<LiveControlV2Props & React.RefAttributes<LiveControlV2Handle>>;
62
- export declare type CloudControlType = 'all' | 'onlyFocus' | 'onlyRotate' | 'none';
62
+ export type CloudControlType = 'all' | 'onlyFocus' | 'onlyRotate' | 'none';
63
63
  export default LiveControlV2;