@vtx/player 1.1.1 → 1.1.3

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 (110) hide show
  1. package/lib/api/fetch.js +75 -51
  2. package/lib/api/fetch.js.map +1 -1
  3. package/lib/api/index.js +70 -20
  4. package/lib/api/index.js.map +1 -1
  5. package/lib/api/types.d.ts +7 -6
  6. package/lib/bill-player/index.js +111 -59
  7. package/lib/bill-player/index.js.map +1 -1
  8. package/lib/bill-player/style/css.js +9 -0
  9. package/lib/bill-player/style/css.js.map +1 -1
  10. package/lib/bill-player/style/index.js +9 -0
  11. package/lib/bill-player/style/index.js.map +1 -1
  12. package/lib/components/set-tag-video/index.js +34 -6
  13. package/lib/components/set-tag-video/index.js.map +1 -1
  14. package/lib/components/set-tag-video/style/css.js.map +1 -1
  15. package/lib/components/set-tag-video/style/index.js.map +1 -1
  16. package/lib/components/split-screen/index.d.ts +1 -1
  17. package/lib/components/split-screen/index.js +14 -3
  18. package/lib/components/split-screen/index.js.map +1 -1
  19. package/lib/components/split-screen/style/css.js.map +1 -1
  20. package/lib/components/split-screen/style/index.js.map +1 -1
  21. package/lib/components/tag-video/index.js +38 -10
  22. package/lib/components/tag-video/index.js.map +1 -1
  23. package/lib/components/tag-video/style/css.js.map +1 -1
  24. package/lib/components/tag-video/style/index.js.map +1 -1
  25. package/lib/components/video-scale/index.d.ts +1 -1
  26. package/lib/components/video-scale/index.js +9 -2
  27. package/lib/components/video-scale/index.js.map +1 -1
  28. package/lib/components/video-scale/style/css.js.map +1 -1
  29. package/lib/components/video-scale/style/index.js.map +1 -1
  30. package/lib/context/index.js +4 -0
  31. package/lib/context/index.js.map +1 -1
  32. package/lib/controls/index.d.ts +3 -3
  33. package/lib/controls/index.js +97 -33
  34. package/lib/controls/index.js.map +1 -1
  35. package/lib/controls/style/css.js +5 -0
  36. package/lib/controls/style/css.js.map +1 -1
  37. package/lib/controls/style/index.js +5 -0
  38. package/lib/controls/style/index.js.map +1 -1
  39. package/lib/history-control/index.d.ts +2 -2
  40. package/lib/history-control/index.js +114 -57
  41. package/lib/history-control/index.js.map +1 -1
  42. package/lib/history-control/style/css.js +6 -0
  43. package/lib/history-control/style/css.js.map +1 -1
  44. package/lib/history-control/style/index.js +6 -0
  45. package/lib/history-control/style/index.js.map +1 -1
  46. package/lib/history-control-v2/components/grid-item/index.js +75 -35
  47. package/lib/history-control-v2/components/grid-item/index.js.map +1 -1
  48. package/lib/history-control-v2/components/panel/index.js +110 -39
  49. package/lib/history-control-v2/components/panel/index.js.map +1 -1
  50. package/lib/history-control-v2/context.js +2 -0
  51. package/lib/history-control-v2/context.js.map +1 -1
  52. package/lib/history-control-v2/index.d.ts +5 -5
  53. package/lib/history-control-v2/index.js +169 -102
  54. package/lib/history-control-v2/index.js.map +1 -1
  55. package/lib/history-control-v2/interface.d.ts +3 -3
  56. package/lib/history-control-v2/style/css.js +10 -0
  57. package/lib/history-control-v2/style/css.js.map +1 -1
  58. package/lib/history-control-v2/style/index.js +10 -0
  59. package/lib/history-control-v2/style/index.js.map +1 -1
  60. package/lib/history-control-v2/utils.d.ts +1 -1
  61. package/lib/history-control-v2/utils.js +23 -1
  62. package/lib/history-control-v2/utils.js.map +1 -1
  63. package/lib/history-player/index.d.ts +1 -1
  64. package/lib/history-player/index.js +118 -73
  65. package/lib/history-player/index.js.map +1 -1
  66. package/lib/history-player/style/css.js +3 -0
  67. package/lib/history-player/style/css.js.map +1 -1
  68. package/lib/history-player/style/index.js +3 -0
  69. package/lib/history-player/style/index.js.map +1 -1
  70. package/lib/hooks/useSettings.js +6 -1
  71. package/lib/hooks/useSettings.js.map +1 -1
  72. package/lib/icons/index.js +171 -23
  73. package/lib/icons/index.js.map +1 -1
  74. package/lib/index.js +10 -0
  75. package/lib/index.js.map +1 -1
  76. package/lib/live-channel-player/index.js +67 -31
  77. package/lib/live-channel-player/index.js.map +1 -1
  78. package/lib/live-channel-player/style/css.js +1 -0
  79. package/lib/live-channel-player/style/css.js.map +1 -1
  80. package/lib/live-channel-player/style/index.js +1 -0
  81. package/lib/live-channel-player/style/index.js.map +1 -1
  82. package/lib/live-control/index.d.ts +2 -2
  83. package/lib/live-control/index.js +84 -32
  84. package/lib/live-control/index.js.map +1 -1
  85. package/lib/live-control/style/css.js +4 -0
  86. package/lib/live-control/style/css.js.map +1 -1
  87. package/lib/live-control/style/index.js +4 -0
  88. package/lib/live-control/style/index.js.map +1 -1
  89. package/lib/live-control-v2/index.d.ts +3 -3
  90. package/lib/live-control-v2/index.js +155 -60
  91. package/lib/live-control-v2/index.js.map +1 -1
  92. package/lib/live-control-v2/style/css.js +7 -0
  93. package/lib/live-control-v2/style/css.js.map +1 -1
  94. package/lib/live-control-v2/style/index.js +7 -0
  95. package/lib/live-control-v2/style/index.js.map +1 -1
  96. package/lib/live-player/index.d.ts +11 -2
  97. package/lib/live-player/index.js +71 -34
  98. package/lib/live-player/index.js.map +1 -1
  99. package/lib/live-player/style/css.js +2 -0
  100. package/lib/live-player/style/css.js.map +1 -1
  101. package/lib/live-player/style/index.js +2 -0
  102. package/lib/live-player/style/index.js.map +1 -1
  103. package/lib/player/index.d.ts +2 -1
  104. package/lib/player/index.js +131 -49
  105. package/lib/player/index.js.map +1 -1
  106. package/lib/typings/h5player.d.ts +1 -0
  107. package/lib/utils/index.d.ts +3 -3
  108. package/lib/utils/index.js +86 -16
  109. package/lib/utils/index.js.map +1 -1
  110. package/package.json +1 -1
@@ -4,64 +4,93 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
+
7
8
  var _jsxRuntime = require("react/jsx-runtime");
9
+
8
10
  var _react = require("react");
11
+
12
+ var _setTagVideo = _interopRequireDefault(require("../../../components/set-tag-video"));
13
+
14
+ var _tagVideo = _interopRequireDefault(require("../../../components/tag-video"));
15
+
9
16
  var _controls = require("../../../controls");
17
+
10
18
  var _historyPlayer = _interopRequireDefault(require("../../../history-player"));
19
+
11
20
  var _context = require("../../context");
21
+
12
22
  var _utils = require("../../utils");
23
+
13
24
  var _ahooks = require("ahooks");
25
+
14
26
  var _lodash = _interopRequireDefault(require("lodash"));
27
+
15
28
  var _moment = _interopRequireDefault(require("moment"));
16
- var _setTagVideo = _interopRequireDefault(require("../../../components/set-tag-video"));
17
- var _tagVideo = _interopRequireDefault(require("../../../components/tag-video"));
29
+
18
30
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
31
+
19
32
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
33
+
20
34
  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."); }
35
+
21
36
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
37
+
22
38
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
39
+
23
40
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
41
+
24
42
  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."); }
43
+
25
44
  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); }
26
- 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; }
27
- 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; } }
45
+
46
+ 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; }
47
+
48
+ 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; }
49
+
28
50
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
51
+
29
52
  var GridItem = function GridItem(props) {
30
53
  var _useContext = (0, _react.useContext)(_context.historyControlV2Context),
31
- loading = _useContext.loading,
32
- channels = _useContext.channels,
33
- setChannels = _useContext.setChannels,
34
- activeIndex = _useContext.activeIndex,
35
- setTimeLinePosition = _useContext.setTimeLinePosition; // setTimeLinePosition
54
+ loading = _useContext.loading,
55
+ channels = _useContext.channels,
56
+ setChannels = _useContext.setChannels,
57
+ activeIndex = _useContext.activeIndex,
58
+ setTimeLinePosition = _useContext.setTimeLinePosition; // setTimeLinePosition
59
+
60
+
36
61
  var active = props.active,
37
- onTimeChange = props.onTimeChange,
38
- onClick = props.onClick,
39
- onClose = props.onClose,
40
- onScreenshot = props.onScreenshot,
41
- scale = props.scale,
42
- _props$palyIndex = props.palyIndex,
43
- palyIndex = _props$palyIndex === void 0 ? 0 : _props$palyIndex,
44
- _props$channel = props.channel,
45
- channel = _props$channel === void 0 ? _utils.DEFAULT_PLAY_PARAMS : _props$channel;
62
+ onTimeChange = props.onTimeChange,
63
+ onClick = props.onClick,
64
+ onClose = props.onClose,
65
+ onScreenshot = props.onScreenshot,
66
+ scale = props.scale,
67
+ _props$palyIndex = props.palyIndex,
68
+ palyIndex = _props$palyIndex === void 0 ? 0 : _props$palyIndex,
69
+ _props$channel = props.channel,
70
+ channel = _props$channel === void 0 ? _utils.DEFAULT_PLAY_PARAMS : _props$channel;
71
+
46
72
  var _useState = (0, _react.useState)(false),
47
- _useState2 = _slicedToArray(_useState, 2),
48
- tagSetShow = _useState2[0],
49
- setTagSetShow = _useState2[1];
73
+ _useState2 = _slicedToArray(_useState, 2),
74
+ tagSetShow = _useState2[0],
75
+ setTagSetShow = _useState2[1];
76
+
50
77
  var url = channel.url,
51
- startTime = channel.startTime,
52
- endTime = channel.endTime,
53
- channelName = channel.channelName,
54
- deviceName = channel.deviceName,
55
- hasLabel = channel.hasLabel;
78
+ startTime = channel.startTime,
79
+ endTime = channel.endTime,
80
+ channelName = channel.channelName,
81
+ deviceName = channel.deviceName,
82
+ hasLabel = channel.hasLabel;
83
+
56
84
  var _useSetState = (0, _ahooks.useSetState)({
57
- width: '100%',
58
- height: '100%'
59
- }),
60
- _useSetState2 = _slicedToArray(_useSetState, 2),
61
- _useSetState2$ = _useSetState2[0],
62
- width = _useSetState2$.width,
63
- height = _useSetState2$.height,
64
- setState = _useSetState2[1];
85
+ width: '100%',
86
+ height: '100%'
87
+ }),
88
+ _useSetState2 = _slicedToArray(_useSetState, 2),
89
+ _useSetState2$ = _useSetState2[0],
90
+ width = _useSetState2$.width,
91
+ height = _useSetState2$.height,
92
+ setState = _useSetState2[1];
93
+
65
94
  var gridItemRef = (0, _react.useRef)(null);
66
95
  var gridItemSize = (0, _ahooks.useSize)(gridItemRef);
67
96
  (0, _react.useEffect)(function () {
@@ -73,6 +102,7 @@ var GridItem = function GridItem(props) {
73
102
  height: gridItemSize.height - 26
74
103
  });
75
104
  break;
105
+
76
106
  case '4*3':
77
107
  if (gridItemSize.width / 4 < (gridItemSize.height - 26) / 3) {
78
108
  setState({
@@ -85,7 +115,9 @@ var GridItem = function GridItem(props) {
85
115
  height: '100%'
86
116
  });
87
117
  }
118
+
88
119
  break;
120
+
89
121
  case '16*9':
90
122
  if (gridItemSize.width / 16 < (gridItemSize.height - 26) / 9) {
91
123
  setState({
@@ -98,6 +130,7 @@ var GridItem = function GridItem(props) {
98
130
  height: '100%'
99
131
  });
100
132
  }
133
+
101
134
  break;
102
135
  }
103
136
  }
@@ -105,27 +138,33 @@ var GridItem = function GridItem(props) {
105
138
  var historyPlayerProps = {
106
139
  url: url,
107
140
  startTime: startTime,
108
- endTime: endTime
141
+ endTime: endTime,
142
+ type: channel === null || channel === void 0 ? void 0 : channel.player
109
143
  };
110
144
  var isExpanded = false;
111
145
  var showInfo = false;
112
146
  var info = [];
147
+
113
148
  var handleTimeChange = function handleTimeChange(time, speed) {
114
149
  if (time !== '' && channels[palyIndex].tagId == '' && channels[palyIndex].index != -1 && (0, _moment["default"])(time).diff((0, _moment["default"])(channels[palyIndex].endTime), 'seconds') >= 0) {
115
150
  var newChannels = _toConsumableArray(channels);
151
+
116
152
  var length = channels[palyIndex].tableList.length;
117
153
  var index = channels[palyIndex].index + 1 % length;
118
154
  newChannels[palyIndex].index = index;
119
155
  newChannels[palyIndex].startTime = channels[palyIndex].tableList[index].beginTime;
120
156
  newChannels[palyIndex].endTime = channels[palyIndex].tableList[index].endTime;
157
+ newChannels[palyIndex].player = channels[palyIndex].player;
121
158
  setChannels(newChannels);
122
159
  }
160
+
123
161
  if (palyIndex === activeIndex) {
124
162
  var progress = (0, _moment["default"])(time).diff((0, _moment["default"])(startTime).startOf('day'), 'seconds') / (24 * 60 * 60) * 100;
125
163
  setTimeLinePosition(progress);
126
164
  onTimeChange && onTimeChange(time, speed);
127
165
  }
128
166
  };
167
+
129
168
  return (0, _jsxRuntime.jsx)("div", Object.assign({
130
169
  className: "grid-item-container ".concat(active ? 'active' : '', " ").concat(loading ? '' : 'emptyImg'),
131
170
  onClick: onClick,
@@ -166,6 +205,7 @@ var GridItem = function GridItem(props) {
166
205
  })
167
206
  }));
168
207
  };
208
+
169
209
  var _default = GridItem;
170
210
  exports["default"] = _default;
171
211
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_jsxRuntime","require","_react","_controls","_historyPlayer","_interopRequireDefault","_context","_utils","_ahooks","_lodash","_moment","_setTagVideo","_tagVideo","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","GridItem","props","_useContext","useContext","historyControlV2Context","loading","channels","setChannels","activeIndex","setTimeLinePosition","active","onTimeChange","onClick","onClose","onScreenshot","scale","_props$palyIndex","palyIndex","_props$channel","channel","DEFAULT_PLAY_PARAMS","_useState","useState","_useState2","tagSetShow","setTagSetShow","url","startTime","endTime","channelName","deviceName","hasLabel","_useSetState","useSetState","width","height","_useSetState2","_useSetState2$","setState","gridItemRef","useRef","gridItemSize","useSize","useEffect","historyPlayerProps","isExpanded","showInfo","info","handleTimeChange","time","speed","tagId","index","moment","diff","newChannels","tableList","beginTime","progress","startOf","_jsx","assign","className","concat","ref","children","channelNum","_jsxs","_Fragment","PlayerHeader","extraButton","TagVideo","style","HistoryPlayer","controlBottom","_","throttle","controlVisible","SetTagVideo","screenshot","_default","exports"],"sources":["history-control-v2/components/grid-item/index.js"],"sourcesContent":["import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useContext, useEffect, useRef, useState } from 'react';\nimport { PlayerHeader } from '../../../controls';\nimport HistoryPlayer from '../../../history-player';\nimport { historyControlV2Context } from '../../context';\nimport { DEFAULT_PLAY_PARAMS } from '../../utils';\nimport { useSetState, useSize } from 'ahooks';\nimport _ from 'lodash';\nimport moment from 'moment';\nimport SetTagVideo from '../../../components/set-tag-video';\nimport TagVideo from '../../../components/tag-video';\nconst GridItem = (props) => {\n const { loading, channels, setChannels, activeIndex, setTimeLinePosition } = useContext(historyControlV2Context); // setTimeLinePosition\n const { active, onTimeChange, onClick, onClose, onScreenshot, scale, palyIndex = 0, channel = DEFAULT_PLAY_PARAMS } = props;\n const [tagSetShow, setTagSetShow] = useState(false);\n const { url, startTime, endTime, channelName, deviceName, hasLabel } = channel;\n const [{ width, height }, setState] = useSetState({\n width: '100%',\n height: '100%',\n });\n const gridItemRef = useRef(null);\n const gridItemSize = useSize(gridItemRef);\n useEffect(() => {\n if ((gridItemSize === null || gridItemSize === void 0 ? void 0 : gridItemSize.width) && (gridItemSize === null || gridItemSize === void 0 ? void 0 : gridItemSize.height)) {\n switch (scale) {\n case '100%':\n setState({\n width: '100%',\n height: gridItemSize.height - 26,\n });\n break;\n case '4*3':\n if (gridItemSize.width / 4 < (gridItemSize.height - 26) / 3) {\n setState({\n width: '100%',\n height: (gridItemSize.width / 4) * 3,\n });\n }\n else {\n setState({\n width: ((gridItemSize.height - 26) / 3) * 4,\n height: '100%',\n });\n }\n break;\n case '16*9':\n if (gridItemSize.width / 16 < (gridItemSize.height - 26) / 9) {\n setState({\n width: '100%',\n height: (gridItemSize.width / 16) * 9,\n });\n }\n else {\n setState({\n width: ((gridItemSize.height - 26) / 9) * 16,\n height: '100%',\n });\n }\n break;\n }\n }\n }, [gridItemSize, scale]);\n const historyPlayerProps = {\n url,\n startTime,\n endTime,\n };\n const isExpanded = false;\n const showInfo = false;\n const info = [];\n const handleTimeChange = (time, speed) => {\n if (time !== '' && channels[palyIndex].tagId == '' && channels[palyIndex].index != -1 && moment(time).diff(moment(channels[palyIndex].endTime), 'seconds') >= 0) {\n const newChannels = [...channels];\n const length = channels[palyIndex].tableList.length;\n const index = channels[palyIndex].index + 1 % length;\n newChannels[palyIndex].index = index;\n newChannels[palyIndex].startTime = channels[palyIndex].tableList[index].beginTime;\n newChannels[palyIndex].endTime = channels[palyIndex].tableList[index].endTime;\n setChannels(newChannels);\n }\n if (palyIndex === activeIndex) {\n const progress = (moment(time).diff(moment(startTime).startOf('day'), 'seconds') / (24 * 60 * 60)) *\n 100;\n setTimeLinePosition(progress);\n onTimeChange && onTimeChange(time, speed);\n }\n };\n return (_jsx(\"div\", Object.assign({ className: `grid-item-container ${active ? 'active' : ''} ${loading ? '' : 'emptyImg'}`, onClick: onClick, ref: gridItemRef }, { children: channel.channelNum && (_jsxs(_Fragment, { children: [_jsx(PlayerHeader, { name: `${deviceName}-${channelName}`, onClose: onClose, extraButton: hasLabel ? _jsx(TagVideo, { channel: channel }) : null }), _jsx(\"div\", Object.assign({ className: \"player-container\" }, { children: historyPlayerProps.url && historyPlayerProps.startTime && historyPlayerProps.endTime && (_jsx(\"div\", Object.assign({ style: { width, height } }, { children: _jsx(HistoryPlayer, Object.assign({}, historyPlayerProps, { controlBottom: isExpanded ? 235 : 0, onTimeChange: _.throttle(handleTimeChange, 999), showInfo: showInfo, info: info, controlVisible: tagSetShow, activeIndex: palyIndex, extraButton: _jsx(SetTagVideo, { tagSetShow: tagSetShow, setTagSetShow: setTagSetShow, channel: channel }), screenshot: onScreenshot })) }))) }))] })) })));\n};\nexport default GridItem;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["GridItem","props","useContext","historyControlV2Context","loading","channels","setChannels","activeIndex","setTimeLinePosition","active","onTimeChange","onClick","onClose","onScreenshot","scale","palyIndex","channel","DEFAULT_PLAY_PARAMS","useState","tagSetShow","setTagSetShow","url","startTime","endTime","channelName","deviceName","hasLabel","useSetState","width","height","setState","gridItemRef","useRef","gridItemSize","useSize","useEffect","historyPlayerProps","type","player","isExpanded","showInfo","info","handleTimeChange","time","speed","tagId","index","moment","diff","newChannels","length","tableList","beginTime","progress","startOf","_jsx","Object","assign","className","ref","children","channelNum","_jsxs","_Fragment","PlayerHeader","name","extraButton","TagVideo","style","HistoryPlayer","controlBottom","_","throttle","controlVisible","SetTagVideo","screenshot"],"sources":["history-control-v2/components/grid-item/index.js"],"sourcesContent":["import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useContext, useEffect, useRef, useState } from 'react';\nimport SetTagVideo from '../../../components/set-tag-video';\nimport TagVideo from '../../../components/tag-video';\nimport { PlayerHeader } from '../../../controls';\nimport HistoryPlayer from '../../../history-player';\nimport { historyControlV2Context } from '../../context';\nimport { DEFAULT_PLAY_PARAMS } from '../../utils';\nimport { useSetState, useSize } from 'ahooks';\nimport _ from 'lodash';\nimport moment from 'moment';\nconst GridItem = (props) => {\n const { loading, channels, setChannels, activeIndex, setTimeLinePosition } = useContext(historyControlV2Context); // setTimeLinePosition\n const { active, onTimeChange, onClick, onClose, onScreenshot, scale, palyIndex = 0, channel = DEFAULT_PLAY_PARAMS, } = props;\n const [tagSetShow, setTagSetShow] = useState(false);\n const { url, startTime, endTime, channelName, deviceName, hasLabel } = channel;\n const [{ width, height }, setState] = useSetState({\n width: '100%',\n height: '100%',\n });\n const gridItemRef = useRef(null);\n const gridItemSize = useSize(gridItemRef);\n useEffect(() => {\n if ((gridItemSize === null || gridItemSize === void 0 ? void 0 : gridItemSize.width) && (gridItemSize === null || gridItemSize === void 0 ? void 0 : gridItemSize.height)) {\n switch (scale) {\n case '100%':\n setState({\n width: '100%',\n height: gridItemSize.height - 26,\n });\n break;\n case '4*3':\n if (gridItemSize.width / 4 < (gridItemSize.height - 26) / 3) {\n setState({\n width: '100%',\n height: (gridItemSize.width / 4) * 3,\n });\n }\n else {\n setState({\n width: ((gridItemSize.height - 26) / 3) * 4,\n height: '100%',\n });\n }\n break;\n case '16*9':\n if (gridItemSize.width / 16 < (gridItemSize.height - 26) / 9) {\n setState({\n width: '100%',\n height: (gridItemSize.width / 16) * 9,\n });\n }\n else {\n setState({\n width: ((gridItemSize.height - 26) / 9) * 16,\n height: '100%',\n });\n }\n break;\n }\n }\n }, [gridItemSize, scale]);\n const historyPlayerProps = {\n url,\n startTime,\n endTime,\n type: channel === null || channel === void 0 ? void 0 : channel.player,\n };\n const isExpanded = false;\n const showInfo = false;\n const info = [];\n const handleTimeChange = (time, speed) => {\n if (time !== '' &&\n channels[palyIndex].tagId == '' &&\n channels[palyIndex].index != -1 &&\n moment(time).diff(moment(channels[palyIndex].endTime), 'seconds') >= 0) {\n const newChannels = [...channels];\n const length = channels[palyIndex].tableList.length;\n const index = channels[palyIndex].index + (1 % length);\n newChannels[palyIndex].index = index;\n newChannels[palyIndex].startTime = channels[palyIndex].tableList[index].beginTime;\n newChannels[palyIndex].endTime = channels[palyIndex].tableList[index].endTime;\n newChannels[palyIndex].player = channels[palyIndex].player;\n setChannels(newChannels);\n }\n if (palyIndex === activeIndex) {\n const progress = (moment(time).diff(moment(startTime).startOf('day'), 'seconds') / (24 * 60 * 60)) *\n 100;\n setTimeLinePosition(progress);\n onTimeChange && onTimeChange(time, speed);\n }\n };\n return (_jsx(\"div\", Object.assign({ className: `grid-item-container ${active ? 'active' : ''} ${loading ? '' : 'emptyImg'}`, onClick: onClick, ref: gridItemRef }, { children: channel.channelNum && (_jsxs(_Fragment, { children: [_jsx(PlayerHeader, { name: `${deviceName}-${channelName}`, onClose: onClose, extraButton: hasLabel ? _jsx(TagVideo, { channel: channel }) : null }), _jsx(\"div\", Object.assign({ className: \"player-container\" }, { children: historyPlayerProps.url &&\n historyPlayerProps.startTime &&\n historyPlayerProps.endTime && (_jsx(\"div\", Object.assign({ style: { width, height } }, { children: _jsx(HistoryPlayer, Object.assign({}, historyPlayerProps, { controlBottom: isExpanded ? 235 : 0, onTimeChange: _.throttle(handleTimeChange, 999), showInfo: showInfo, info: info, controlVisible: tagSetShow, activeIndex: palyIndex, extraButton: _jsx(SetTagVideo, { tagSetShow: tagSetShow, setTagSetShow: setTagSetShow, channel: channel }), screenshot: onScreenshot })) }))) }))] })) })));\n};\nexport default GridItem;\n"],"mappings":"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"}
@@ -4,58 +4,89 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = exports.HistoryControlV2Panel = void 0;
7
+
7
8
  var _jsxRuntime = require("react/jsx-runtime");
9
+
8
10
  var _react = require("react");
11
+
9
12
  var _reactCollapsed = _interopRequireDefault(require("react-collapsed"));
13
+
10
14
  var _api = require("../../../api");
15
+
11
16
  var _icons = require("../../../icons");
17
+
12
18
  var _utils = require("../../../utils");
19
+
13
20
  var _context = require("../../context");
21
+
14
22
  var _collapse = _interopRequireDefault(require("../../images/collapse.png"));
23
+
15
24
  var _utils2 = require("../../utils");
25
+
16
26
  var _ahooks = require("ahooks");
27
+
17
28
  var _button = _interopRequireDefault(require("antd/lib/button"));
29
+
18
30
  var _message = _interopRequireDefault(require("antd/lib/message"));
31
+
19
32
  var _table = _interopRequireDefault(require("antd/lib/table"));
33
+
20
34
  var _tooltip = _interopRequireDefault(require("antd/lib/tooltip"));
35
+
21
36
  var _moment = _interopRequireDefault(require("moment"));
37
+
22
38
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
39
+
23
40
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
41
+
24
42
  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."); }
43
+
25
44
  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); }
45
+
26
46
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
47
+
27
48
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
28
- 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; }
49
+
50
+ 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; }
51
+
29
52
  var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
30
53
  var _useContext = (0, _react.useContext)(_context.historyControlV2Context),
31
- channels = _useContext.channels,
32
- setChannels = _useContext.setChannels,
33
- setLoading = _useContext.setLoading,
34
- activeIndex = _useContext.activeIndex,
35
- setActiveIndex = _useContext.setActiveIndex,
36
- timeLinePosition = _useContext.timeLinePosition;
54
+ channels = _useContext.channels,
55
+ setChannels = _useContext.setChannels,
56
+ setLoading = _useContext.setLoading,
57
+ activeIndex = _useContext.activeIndex,
58
+ setActiveIndex = _useContext.setActiveIndex,
59
+ timeLinePosition = _useContext.timeLinePosition;
60
+
37
61
  var realChannels = channels.filter(function (item) {
38
62
  return item.channelNum !== '';
39
63
  });
40
64
  var segmentsRef = (0, _react.useRef)(null);
65
+
41
66
  var getRef = function getRef() {
42
67
  return segmentsRef.current;
43
68
  };
69
+
44
70
  var onVideoClose = props.onVideoClose;
71
+
45
72
  var _useCollapse = (0, _reactCollapsed["default"])({
46
- defaultExpanded: true // 默认展开
47
- }),
48
- getCollapseProps = _useCollapse.getCollapseProps,
49
- getToggleProps = _useCollapse.getToggleProps,
50
- isExpanded = _useCollapse.isExpanded;
73
+ defaultExpanded: true // 默认展开
74
+
75
+ }),
76
+ getCollapseProps = _useCollapse.getCollapseProps,
77
+ getToggleProps = _useCollapse.getToggleProps,
78
+ isExpanded = _useCollapse.isExpanded;
79
+
51
80
  var _useRequest = (0, _ahooks.useRequest)(_api.getHistoryUrls, {
52
- manual: true
53
- }),
54
- runAsync = _useRequest.runAsync;
81
+ manual: true
82
+ }),
83
+ runAsync = _useRequest.runAsync;
84
+
55
85
  var _useRequest2 = (0, _ahooks.useRequest)(_api.getPlaybackUrlSingle, {
56
- manual: true
57
- }),
58
- GetHKV2Url = _useRequest2.runAsync;
86
+ manual: true
87
+ }),
88
+ GetHKV2Url = _useRequest2.runAsync;
89
+
59
90
  var columns = [{
60
91
  title: '序号',
61
92
  dataIndex: 'index',
@@ -66,12 +97,14 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
66
97
  width: 90,
67
98
  render: function render(_, record, index) {
68
99
  var _a;
100
+
69
101
  var active = ((_a = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _a === void 0 ? void 0 : _a.index) === index;
70
102
  return (0, _jsxRuntime.jsx)(_button["default"], Object.assign({
71
103
  className: "play-btn ".concat(active ? 'active' : ''),
72
104
  onClick: function onClick() {
73
105
  if (active) {
74
106
  var newChannels = _toConsumableArray(channels);
107
+
75
108
  newChannels[activeIndex].index = -1;
76
109
  newChannels[activeIndex].startTime = '';
77
110
  newChannels[activeIndex].endTime = '';
@@ -79,15 +112,18 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
79
112
  onVideoClose && onVideoClose(newChannels[activeIndex]);
80
113
  } else {
81
114
  // eslint-disable-next-line no-inner-declarations
82
- var deal = function deal(url) {
115
+ var deal = function deal(url, player) {
83
116
  var newChannels = _toConsumableArray(channels);
117
+
84
118
  newChannels[activeIndex].index = index;
85
119
  newChannels[activeIndex].startTime = record.beginTime;
86
120
  newChannels[activeIndex].endTime = record.endTime;
87
121
  newChannels[activeIndex].tagId = '';
88
122
  newChannels[activeIndex].url = url || record.url;
123
+ newChannels[activeIndex].player = player || '';
89
124
  setChannels(newChannels);
90
125
  };
126
+
91
127
  if (record.hkType === 'HK_CAR_CLOUD_V2') {
92
128
  GetHKV2Url({
93
129
  code: record.code,
@@ -97,7 +133,7 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
97
133
  channelNum: record.channelNum,
98
134
  tenantId: (0, _utils.getUrlParam)('tenantId')
99
135
  }).then(function (data) {
100
- deal(data.playbackUrl);
136
+ deal(data.playbackUrl, (data === null || data === void 0 ? void 0 : data.player) || '');
101
137
  });
102
138
  } else {
103
139
  deal();
@@ -135,6 +171,7 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
135
171
  width: 110,
136
172
  dataIndex: 'size'
137
173
  }];
174
+
138
175
  var loadData = function loadData(channel) {
139
176
  setLoading(true);
140
177
  runAsync({
@@ -148,10 +185,13 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
148
185
  if (res.length > 25) {
149
186
  _message["default"].info('最多播放25个视频通道');
150
187
  }
188
+
151
189
  var newIds = _toConsumableArray(res).map(function (item) {
152
190
  return "".concat(item.deviceId).concat(item.channelNum);
153
191
  });
192
+
154
193
  var newChannels = _toConsumableArray(channels);
194
+
155
195
  channels.map(function (item, index) {
156
196
  if (!newIds.includes("".concat(item.deviceId).concat(item.channelNum))) {
157
197
  newChannels[index] = Object.assign({
@@ -160,7 +200,7 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
160
200
  }
161
201
  });
162
202
  var fetchArr = [],
163
- fetchIndexArr = [];
203
+ fetchIndexArr = [];
164
204
  res.filter(function (item, index) {
165
205
  return index < 25;
166
206
  }).map(function (item) {
@@ -169,17 +209,22 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
169
209
  * 优化第一条数据的开始时间不要早于请求的开始时间
170
210
  * 最后一条的结束时间不要晚于请求的结束时间
171
211
  */
212
+
213
+
172
214
  if (item.list.length) {
173
215
  if ((0, _moment["default"])((_b = (_a = item.list) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.beginTime).diff((0, _moment["default"])(channel.beginTime), 'seconds') < 0) {
174
216
  item.list[0].beginTime = channel.beginTime;
175
217
  }
218
+
176
219
  if ((0, _moment["default"])((_d = (_c = item.list) === null || _c === void 0 ? void 0 : _c[item.list.length - 1]) === null || _d === void 0 ? void 0 : _d.endTime).diff((0, _moment["default"])(channel.endTime), 'seconds') > 0) {
177
220
  item.list[item.list.length - 1].endTime = channel.endTime;
178
221
  }
179
222
  }
223
+
180
224
  var result = (_e = newChannels.filter(function (citem) {
181
225
  return citem.deviceId === item.deviceId && citem.channelNum === item.channelNum;
182
226
  })) === null || _e === void 0 ? void 0 : _e[0];
227
+
183
228
  if (result) {
184
229
  var isClose = newChannels[result.channelIndex].index === -1 && newChannels[result.channelIndex].tagId === '';
185
230
  newChannels[result.channelIndex] = Object.assign(Object.assign({}, newChannels[result.channelIndex]), {
@@ -192,12 +237,14 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
192
237
  var channelIndex = (_l = (_k = newChannels.filter(function (item) {
193
238
  return item.channelNum === '';
194
239
  })) === null || _k === void 0 ? void 0 : _k[0]) === null || _l === void 0 ? void 0 : _l.channelIndex;
240
+
195
241
  if (typeof channelIndex == 'number') {
196
242
  // 过滤跨天的数据
197
243
  item.list = item.list.filter(function (e) {
198
244
  return e.beginTime.slice(0, 10) === e.endTime.slice(0, 10);
199
245
  });
200
246
  var data = (0, _utils2.getChannelData)(item, channel);
247
+
201
248
  if (data.hkType === 'HK_CAR_CLOUD_V2') {
202
249
  fetchArr.push(GetHKV2Url({
203
250
  code: data.code,
@@ -209,17 +256,20 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
209
256
  }));
210
257
  fetchIndexArr.push(channelIndex);
211
258
  }
259
+
212
260
  newChannels[channelIndex] = Object.assign(Object.assign({}, newChannels[channelIndex]), data);
213
261
  } else {
214
262
  _message["default"].error('没有多余的播放位置');
215
263
  }
216
264
  }
217
265
  });
266
+
218
267
  if (fetchArr.length) {
219
268
  Promise.all(fetchArr).then(function (data) {
220
269
  data.forEach(function (e, index) {
221
270
  newChannels[fetchIndexArr[index]] = Object.assign(Object.assign({}, newChannels[fetchIndexArr[index]]), {
222
- url: e.playbackUrl
271
+ url: e.playbackUrl,
272
+ player: (e === null || e === void 0 ? void 0 : e.player) || ''
223
273
  });
224
274
  });
225
275
  setChannels(newChannels);
@@ -230,9 +280,11 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
230
280
  } else {
231
281
  _message["default"].info('未查询到视频');
232
282
  }
283
+
233
284
  setLoading(false);
234
285
  });
235
286
  };
287
+
236
288
  (0, _react.useImperativeHandle)(ref, function () {
237
289
  return {
238
290
  load: function load(channel) {
@@ -273,6 +325,7 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
273
325
  channelName: channels === null || channels === void 0 ? void 0 : channels[activeIndex].channelName,
274
326
  onClick: function onClick(index, startTime, endTime) {
275
327
  var newChannels = _toConsumableArray(channels);
328
+
276
329
  newChannels[activeIndex] = Object.assign(Object.assign({}, newChannels[activeIndex]), {
277
330
  index: index,
278
331
  startTime: (0, _moment["default"])(startTime).format(_utils.TimeFormat.params),
@@ -340,6 +393,7 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
340
393
  },
341
394
  rowClassName: function rowClassName(_, index) {
342
395
  var _a;
396
+
343
397
  return index === ((_a = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _a === void 0 ? void 0 : _a.index) ? 'active' : '';
344
398
  }
345
399
  })
@@ -351,10 +405,12 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
351
405
  });
352
406
  });
353
407
  exports.HistoryControlV2Panel = HistoryControlV2Panel;
408
+
354
409
  var TimeLine = function TimeLine() {
355
410
  var getSplitLines = function getSplitLines() {
356
411
  var result = [];
357
412
  var step = 100 / 24;
413
+
358
414
  for (var i = 0; i < 25; i++) {
359
415
  var element = (0, _jsxRuntime.jsx)("div", Object.assign({
360
416
  className: "line",
@@ -370,8 +426,10 @@ var TimeLine = function TimeLine() {
370
426
  }), i);
371
427
  result.push(element);
372
428
  }
429
+
373
430
  return result;
374
431
  };
432
+
375
433
  return (0, _jsxRuntime.jsxs)("div", Object.assign({
376
434
  className: "time-axis"
377
435
  }, {
@@ -384,39 +442,46 @@ var TimeLine = function TimeLine() {
384
442
  }))]
385
443
  }));
386
444
  };
445
+
387
446
  var ONEDAY_MILL = 24 * 60 * 60 * 1000;
447
+
388
448
  var TimeVerticalLine = function TimeVerticalLine(_ref) {
389
449
  var getRef = _ref.getRef,
390
- history = _ref.history,
391
- _onClick = _ref.onClick,
392
- channelName = _ref.channelName;
450
+ history = _ref.history,
451
+ _onClick = _ref.onClick,
452
+ channelName = _ref.channelName;
453
+
393
454
  var _a;
455
+
394
456
  var mouse = (0, _ahooks.useMouse)(getRef());
395
457
  var elementX = mouse.elementX,
396
- elementY = mouse.elementY,
397
- elementW = mouse.elementW,
398
- elementH = mouse.elementH;
399
- var visible = elementX >= 0 && elementY >= 0 && elementX <= elementW && elementY <= elementH;
400
- // 计算elementX在整个宽度的占比,根据占比在一天中的比例算出具体时间,最后判断这个时间是否在某段视频中。在则显示提示时间。
458
+ elementY = mouse.elementY,
459
+ elementW = mouse.elementW,
460
+ elementH = mouse.elementH;
461
+ var visible = elementX >= 0 && elementY >= 0 && elementX <= elementW && elementY <= elementH; // 计算elementX在整个宽度的占比,根据占比在一天中的比例算出具体时间,最后判断这个时间是否在某段视频中。在则显示提示时间。
462
+
401
463
  var percent = elementX / elementW;
402
464
  var time = (0, _moment["default"])((0, _moment["default"])(history.start).valueOf() + percent * ONEDAY_MILL).format(_utils.TimeFormat.params);
403
465
  var flag = false,
404
- playStart = -1,
405
- playEnd = -1,
406
- index = -1;
466
+ playStart = -1,
467
+ playEnd = -1,
468
+ index = -1;
407
469
  var now = (0, _moment["default"])(time).valueOf();
470
+
408
471
  for (var i = 0; i < ((_a = history.list) === null || _a === void 0 ? void 0 : _a.length); i++) {
409
472
  var begin = (0, _moment["default"])(history.list[i].beginTime).valueOf(),
410
- end = (0, _moment["default"])(history.list[i].endTime).valueOf();
473
+ end = (0, _moment["default"])(history.list[i].endTime).valueOf();
474
+
411
475
  if (now >= begin && now <= end) {
412
- index = i;
413
- // url = history.list[i].playbackUrl;
476
+ index = i; // url = history.list[i].playbackUrl;
477
+
414
478
  playStart = now;
415
479
  playEnd = end;
416
480
  flag = true;
417
481
  break;
418
482
  }
419
483
  }
484
+
420
485
  return visible ? flag ? (0, _jsxRuntime.jsx)(_tooltip["default"], Object.assign({
421
486
  title: "".concat(channelName || '', " ").concat(time)
422
487
  }, {
@@ -439,20 +504,25 @@ var TimeVerticalLine = function TimeVerticalLine(_ref) {
439
504
  }
440
505
  }) : (0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {});
441
506
  };
507
+
442
508
  var getSegments = function getSegments(props) {
443
509
  var _props$list = props.list,
444
- list = _props$list === void 0 ? [] : _props$list,
445
- start = props.start,
446
- end = props.end;
510
+ list = _props$list === void 0 ? [] : _props$list,
511
+ start = props.start,
512
+ end = props.end;
447
513
  var startTime = (0, _moment["default"])(start);
448
514
  var endTime = (0, _moment["default"])(end);
449
515
  var total = endTime.diff(startTime, 'seconds'); // 总时间
516
+
450
517
  var result = list === null || list === void 0 ? void 0 : list.map(function (i) {
451
518
  var itemStart = (0, _moment["default"])(i.beginTime).diff(startTime, 'seconds') > 0 ? (0, _moment["default"])(i.beginTime) : startTime;
452
519
  var itemEnd = (0, _moment["default"])(i.endTime);
453
520
  var itemTotal = itemEnd.diff(itemStart, 'seconds'); // 分段总时间
521
+
454
522
  var width = itemTotal / total * 100; // 分段时间占总时间百分比
523
+
455
524
  var left = itemStart.diff(startTime, 'seconds') / total * 100; // 分段其实时间
525
+
456
526
  return (0, _jsxRuntime.jsx)("div", {
457
527
  className: "segment",
458
528
  style: {
@@ -463,6 +533,7 @@ var getSegments = function getSegments(props) {
463
533
  });
464
534
  return result;
465
535
  };
536
+
466
537
  HistoryControlV2Panel.displayName = 'HistoryControlV2Panel';
467
538
  var _default = HistoryControlV2Panel;
468
539
  exports["default"] = _default;