@vtx/player 1.0.0 → 1.0.2
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/index.d.ts +1 -0
- package/lib/api/index.js +10 -2
- package/lib/api/index.js.map +1 -1
- package/lib/api/types.d.ts +17 -0
- package/lib/history-control-v2/components/panel/index.js +66 -10
- package/lib/history-control-v2/components/panel/index.js.map +1 -1
- package/lib/history-control-v2/interface.d.ts +4 -1
- package/lib/history-control-v2/utils.js +8 -4
- package/lib/history-control-v2/utils.js.map +1 -1
- package/package.json +1 -1
package/lib/api/index.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export declare const getPreviewUrl: (data: Types.GetPreviewUrlParams) => Promise
|
|
|
5
5
|
export declare const getHistoryUrl: (data: Types.GetHistoryUrlParams) => Promise<Types.GetHistoryUrlResp>;
|
|
6
6
|
/** 获取历史地址 */
|
|
7
7
|
export declare const getHistoryUrls: (data: Types.GetHistoryUrlParams) => Promise<Types.GetHistoryUrlResp>;
|
|
8
|
+
export declare const getPlaybackUrlSingle: (data: Types.GetHKV2Url) => Promise<Types.GetHKV2UrlResp>;
|
|
8
9
|
/** 获取视频信息 */
|
|
9
10
|
export declare const loadVideoInfo: (data: Types.LoadVideoInfoParams) => Promise<Types.LoadVideoInfoResp>;
|
|
10
11
|
/** 云台控制 */
|
package/lib/api/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.videoLabelSave = exports.videoLabelList = exports.loadVideoInfo = exports.loadVideoChannel = exports.getVideoLabelById = exports.getPreviewUrl = exports.getHistoryUrls = exports.getHistoryUrl = exports.cloudControl = void 0;
|
|
6
|
+
exports.videoLabelSave = exports.videoLabelList = exports.loadVideoInfo = exports.loadVideoChannel = exports.getVideoLabelById = exports.getPreviewUrl = exports.getPlaybackUrlSingle = exports.getHistoryUrls = exports.getHistoryUrl = exports.cloudControl = void 0;
|
|
7
7
|
|
|
8
8
|
var _fetch = _interopRequireDefault(require("./fetch"));
|
|
9
9
|
|
|
@@ -71,10 +71,18 @@ var getHistoryUrls = function getHistoryUrls(data) {
|
|
|
71
71
|
data: data
|
|
72
72
|
});
|
|
73
73
|
};
|
|
74
|
+
|
|
75
|
+
exports.getHistoryUrls = getHistoryUrls;
|
|
76
|
+
|
|
77
|
+
var getPlaybackUrlSingle = function getPlaybackUrlSingle(data) {
|
|
78
|
+
return (0, _fetch["default"])('/cloud/vis/base/np/artemis/playbackUrlSingle.smvc', 'GET', {
|
|
79
|
+
data: data
|
|
80
|
+
});
|
|
81
|
+
};
|
|
74
82
|
/** 获取视频信息 */
|
|
75
83
|
|
|
76
84
|
|
|
77
|
-
exports.
|
|
85
|
+
exports.getPlaybackUrlSingle = getPlaybackUrlSingle;
|
|
78
86
|
|
|
79
87
|
var loadVideoInfo = function loadVideoInfo(data) {
|
|
80
88
|
return (0, _fetch["default"])('/cloud/vis/base/np/videoCommon/loadVideoInfos.smvc', 'GET', {
|
package/lib/api/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","apply","getPreviewUrl","data","Fetch","getHistoryUrl","getHistoryUrls","loadVideoInfo","cloudControl","videoLabelSave","videoLabelList","getVideoLabelById","loadVideoChannel","channelId","parameters","JSON","stringify","videoChannelId","parseResult","parse"],"sources":["api/index.js"],"sourcesContent":["var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport Fetch from './fetch';\n/** 获取预览地址 */\nexport const getPreviewUrl = (data) => Fetch('/cloud/vis/base/np/artemis/previewUrl.smvc', 'GET', {\n data,\n});\n/** 获取历史地址 */\nexport const getHistoryUrl = (data) => Fetch('/cloud/vis/base/np/artemis/playbackUrl.smvc', 'GET', {\n data,\n});\n/** 获取历史地址 */\nexport const getHistoryUrls = (data) => Fetch('/cloud/vis/base/np/artemis/playbackUrls.smvc', 'GET', {\n data,\n});\n/** 获取视频信息 */\nexport const loadVideoInfo = (data) => Fetch('/cloud/vis/base/np/videoCommon/loadVideoInfos.smvc', 'GET', {\n data,\n});\n/** 云台控制 */\nexport const cloudControl = (data) => Fetch('/cloud/vis/base/np/artemis/controlling.smvc', 'GET', {\n data,\n});\n/** 设置视频标签 */\nexport const videoLabelSave = (data) => Fetch('/cloud/vis/base/cp/videoLabel/save.smvc', 'POST', {\n data,\n});\n/** 获取视历史频标签list */\nexport const videoLabelList = (data) => Fetch('/cloud/vis/base/cp/videoLabel/list.smvc', 'GET', {\n data,\n});\n/** 根据Id查询历史视频标签 */\nexport const getVideoLabelById = (data) => Fetch('/cloud/vis/base/cp/videoLabel/get.smvc', 'GET', {\n data,\n});\n/**\n * 获取通道信息\n * @param channelId 通道ID\n * @returns\n */\nexport const loadVideoChannel = (channelId) => __awaiter(void 0, void 0, void 0, function* () {\n const result = yield Fetch('/cloud/vis/base/np/videoDevice/loadTheVideoChannel.smvc', 'GET', {\n data: { parameters: JSON.stringify({ videoChannelId: channelId }) },\n });\n const parseResult = JSON.parse(result);\n return parseResult[0];\n});\n"],"mappings":";;;;;;;AASA;;;;;;+CARA,oJ;;AADA,IAAIA,SAAS,GAAI,UAAQ,SAAKA,SAAd,IAA4B,UAAUC,OAAV,EAAmBC,UAAnB,EAA+BC,CAA/B,EAAkCC,SAAlC,EAA6C;EACrF,SAASC,KAAT,CAAeC,KAAf,EAAsB;IAAE,OAAOA,KAAK,YAAYH,CAAjB,GAAqBG,KAArB,GAA6B,IAAIH,CAAJ,CAAM,UAAUI,OAAV,EAAmB;MAAEA,OAAO,CAACD,KAAD,CAAP;IAAiB,CAA5C,CAApC;EAAoF;;EAC5G,OAAO,KAAKH,CAAC,KAAKA,CAAC,GAAGK,OAAT,CAAN,EAAyB,UAAUD,OAAV,EAAmBE,MAAnB,EAA2B;IACvD,SAASC,SAAT,CAAmBJ,KAAnB,EAA0B;MAAE,IAAI;QAAEK,IAAI,CAACP,SAAS,CAACQ,IAAV,CAAeN,KAAf,CAAD,CAAJ;MAA8B,CAApC,CAAqC,OAAOO,CAAP,EAAU;QAAEJ,MAAM,CAACI,CAAD,CAAN;MAAY;IAAE;;IAC3F,SAASC,QAAT,CAAkBR,KAAlB,EAAyB;MAAE,IAAI;QAAEK,IAAI,CAACP,SAAS,CAAC,OAAD,CAAT,CAAmBE,KAAnB,CAAD,CAAJ;MAAkC,CAAxC,CAAyC,OAAOO,CAAP,EAAU;QAAEJ,MAAM,CAACI,CAAD,CAAN;MAAY;IAAE;;IAC9F,SAASF,IAAT,CAAcI,MAAd,EAAsB;MAAEA,MAAM,CAACC,IAAP,GAAcT,OAAO,CAACQ,MAAM,CAACT,KAAR,CAArB,GAAsCD,KAAK,CAACU,MAAM,CAACT,KAAR,CAAL,CAAoBW,IAApB,CAAyBP,SAAzB,EAAoCI,QAApC,CAAtC;IAAsF;;IAC9GH,IAAI,CAAC,CAACP,SAAS,GAAGA,SAAS,CAACc,KAAV,CAAgBjB,OAAhB,EAAyBC,UAAU,IAAI,EAAvC,CAAb,EAAyDU,IAAzD,EAAD,CAAJ;EACH,CALM,CAAP;AAMH,CARD;;AAUA;AACO,IAAMO,aAAa,GAAG,SAAhBA,aAAgB,CAACC,IAAD;EAAA,OAAU,IAAAC,iBAAA,EAAM,4CAAN,EAAoD,KAApD,EAA2D;IAC9FD,IAAI,EAAJA;EAD8F,CAA3D,CAAV;AAAA,CAAtB;AAGP;;;;;AACO,IAAME,aAAa,GAAG,SAAhBA,aAAgB,CAACF,IAAD;EAAA,OAAU,IAAAC,iBAAA,EAAM,6CAAN,EAAqD,KAArD,EAA4D;IAC/FD,IAAI,EAAJA;EAD+F,CAA5D,CAAV;AAAA,CAAtB;AAGP;;;;;AACO,IAAMG,cAAc,GAAG,SAAjBA,cAAiB,CAACH,IAAD;EAAA,OAAU,IAAAC,iBAAA,EAAM,8CAAN,EAAsD,KAAtD,EAA6D;IACjGD,IAAI,EAAJA;EADiG,CAA7D,CAAV;AAAA,CAAvB;AAGP;;;;;AACO,
|
|
1
|
+
{"version":3,"file":"index.js","names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","apply","getPreviewUrl","data","Fetch","getHistoryUrl","getHistoryUrls","getPlaybackUrlSingle","loadVideoInfo","cloudControl","videoLabelSave","videoLabelList","getVideoLabelById","loadVideoChannel","channelId","parameters","JSON","stringify","videoChannelId","parseResult","parse"],"sources":["api/index.js"],"sourcesContent":["var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport Fetch from './fetch';\n/** 获取预览地址 */\nexport const getPreviewUrl = (data) => Fetch('/cloud/vis/base/np/artemis/previewUrl.smvc', 'GET', {\n data,\n});\n/** 获取历史地址 */\nexport const getHistoryUrl = (data) => Fetch('/cloud/vis/base/np/artemis/playbackUrl.smvc', 'GET', {\n data,\n});\n/** 获取历史地址 */\nexport const getHistoryUrls = (data) => Fetch('/cloud/vis/base/np/artemis/playbackUrls.smvc', 'GET', {\n data,\n});\nexport const getPlaybackUrlSingle = (data) => Fetch('/cloud/vis/base/np/artemis/playbackUrlSingle.smvc', 'GET', {\n data,\n});\n/** 获取视频信息 */\nexport const loadVideoInfo = (data) => Fetch('/cloud/vis/base/np/videoCommon/loadVideoInfos.smvc', 'GET', {\n data,\n});\n/** 云台控制 */\nexport const cloudControl = (data) => Fetch('/cloud/vis/base/np/artemis/controlling.smvc', 'GET', {\n data,\n});\n/** 设置视频标签 */\nexport const videoLabelSave = (data) => Fetch('/cloud/vis/base/cp/videoLabel/save.smvc', 'POST', {\n data,\n});\n/** 获取视历史频标签list */\nexport const videoLabelList = (data) => Fetch('/cloud/vis/base/cp/videoLabel/list.smvc', 'GET', {\n data,\n});\n/** 根据Id查询历史视频标签 */\nexport const getVideoLabelById = (data) => Fetch('/cloud/vis/base/cp/videoLabel/get.smvc', 'GET', {\n data,\n});\n/**\n * 获取通道信息\n * @param channelId 通道ID\n * @returns\n */\nexport const loadVideoChannel = (channelId) => __awaiter(void 0, void 0, void 0, function* () {\n const result = yield Fetch('/cloud/vis/base/np/videoDevice/loadTheVideoChannel.smvc', 'GET', {\n data: { parameters: JSON.stringify({ videoChannelId: channelId }) },\n });\n const parseResult = JSON.parse(result);\n return parseResult[0];\n});\n"],"mappings":"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"}
|
package/lib/api/types.d.ts
CHANGED
|
@@ -42,9 +42,11 @@ export interface HistoryUrlItem {
|
|
|
42
42
|
enableAgent: boolean;
|
|
43
43
|
/** 大小 */
|
|
44
44
|
size: number;
|
|
45
|
+
code: string;
|
|
45
46
|
}
|
|
46
47
|
/** 获取历史地址Resp */
|
|
47
48
|
export interface GetHistoryUrlResp {
|
|
49
|
+
hkType: string;
|
|
48
50
|
/** 设备ID */
|
|
49
51
|
deviceId: string;
|
|
50
52
|
/** 设备名称 */
|
|
@@ -92,6 +94,21 @@ export interface GetHistoryUrlParams {
|
|
|
92
94
|
/** 是否有id */
|
|
93
95
|
hasLabel?: boolean;
|
|
94
96
|
}
|
|
97
|
+
/** 获取海康视频V2版本播放url */
|
|
98
|
+
export interface GetHKV2Url {
|
|
99
|
+
code?: string;
|
|
100
|
+
channelNum?: string;
|
|
101
|
+
/** 设备ID */
|
|
102
|
+
deviceId?: string;
|
|
103
|
+
/** 开始时间,格式:2022-06-01 00:00:00 */
|
|
104
|
+
beginTime?: string;
|
|
105
|
+
/** 结束时间,格式:2022-06-01 23:59:59 */
|
|
106
|
+
endTime?: string;
|
|
107
|
+
tenantId: string;
|
|
108
|
+
}
|
|
109
|
+
export interface GetHKV2UrlResp {
|
|
110
|
+
playbackUrl: string;
|
|
111
|
+
}
|
|
95
112
|
/** 获取视频信息Params */
|
|
96
113
|
export interface LoadVideoInfoParams {
|
|
97
114
|
/** 业务ID */
|
|
@@ -82,6 +82,11 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
|
|
|
82
82
|
}),
|
|
83
83
|
runAsync = _useRequest.runAsync;
|
|
84
84
|
|
|
85
|
+
var _useRequest2 = (0, _ahooks.useRequest)(_api.getPlaybackUrlSingle, {
|
|
86
|
+
manual: true
|
|
87
|
+
}),
|
|
88
|
+
GetHKV2Url = _useRequest2.runAsync;
|
|
89
|
+
|
|
85
90
|
var columns = [{
|
|
86
91
|
title: '序号',
|
|
87
92
|
dataIndex: 'index',
|
|
@@ -106,14 +111,32 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
|
|
|
106
111
|
setChannels(newChannels);
|
|
107
112
|
onVideoClose && onVideoClose(newChannels[activeIndex]);
|
|
108
113
|
} else {
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
114
|
+
// eslint-disable-next-line no-inner-declarations
|
|
115
|
+
var deal = function deal(url) {
|
|
116
|
+
var newChannels = _toConsumableArray(channels);
|
|
117
|
+
|
|
118
|
+
newChannels[activeIndex].index = index;
|
|
119
|
+
newChannels[activeIndex].startTime = record.beginTime;
|
|
120
|
+
newChannels[activeIndex].endTime = record.endTime;
|
|
121
|
+
newChannels[activeIndex].tagId = '';
|
|
122
|
+
newChannels[activeIndex].url = url || record.url;
|
|
123
|
+
setChannels(newChannels);
|
|
124
|
+
};
|
|
125
|
+
|
|
126
|
+
if (record.hkType === 'HK_CAR_CLOUD_V2') {
|
|
127
|
+
GetHKV2Url({
|
|
128
|
+
code: record.code,
|
|
129
|
+
beginTime: record.beginTime,
|
|
130
|
+
endTime: record.endTime,
|
|
131
|
+
deviceId: record.deviceId,
|
|
132
|
+
channelNum: record.channelNum,
|
|
133
|
+
tenantId: (0, _utils.getUrlParam)('tenantId')
|
|
134
|
+
}).then(function (data) {
|
|
135
|
+
deal(data.playbackUrl);
|
|
136
|
+
});
|
|
137
|
+
} else {
|
|
138
|
+
deal();
|
|
139
|
+
}
|
|
117
140
|
}
|
|
118
141
|
}
|
|
119
142
|
}, {
|
|
@@ -174,6 +197,8 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
|
|
|
174
197
|
}, _utils2.DEFAULT_PLAY_PARAMS);
|
|
175
198
|
}
|
|
176
199
|
});
|
|
200
|
+
var fetchArr = [],
|
|
201
|
+
fetchIndexArr = [];
|
|
177
202
|
res.filter(function (item, index) {
|
|
178
203
|
return index < 25;
|
|
179
204
|
}).map(function (item) {
|
|
@@ -210,13 +235,44 @@ var HistoryControlV2Panel = /*#__PURE__*/(0, _react.forwardRef)(function (props,
|
|
|
210
235
|
})) === null || _h === void 0 ? void 0 : _h[0]) === null || _j === void 0 ? void 0 : _j.channelIndex;
|
|
211
236
|
|
|
212
237
|
if (typeof channelIndex == 'number') {
|
|
213
|
-
|
|
238
|
+
// 过滤跨天的数据
|
|
239
|
+
item.list = item.list.filter(function (e) {
|
|
240
|
+
return e.beginTime.slice(0, 10) === e.endTime.slice(0, 10);
|
|
241
|
+
});
|
|
242
|
+
var data = (0, _utils2.getChannelData)(item, channel);
|
|
243
|
+
|
|
244
|
+
if (data.hkType === 'HK_CAR_CLOUD_V2') {
|
|
245
|
+
fetchArr.push(GetHKV2Url({
|
|
246
|
+
code: data.code,
|
|
247
|
+
beginTime: data.startTime,
|
|
248
|
+
endTime: data.endTime,
|
|
249
|
+
deviceId: data.deviceId,
|
|
250
|
+
channelNum: data.channelNum,
|
|
251
|
+
tenantId: (0, _utils.getUrlParam)('tenantId')
|
|
252
|
+
}));
|
|
253
|
+
fetchIndexArr.push(channelIndex);
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
newChannels[channelIndex] = Object.assign(Object.assign({}, newChannels[channelIndex]), data);
|
|
214
257
|
} else {
|
|
215
258
|
_message["default"].error('没有多余的播放位置');
|
|
216
259
|
}
|
|
217
260
|
}
|
|
218
261
|
});
|
|
219
|
-
|
|
262
|
+
|
|
263
|
+
if (fetchArr.length) {
|
|
264
|
+
Promise.all(fetchArr).then(function (data) {
|
|
265
|
+
data.forEach(function (e, index) {
|
|
266
|
+
newChannels[fetchIndexArr[index]] = Object.assign(Object.assign({}, newChannels[fetchIndexArr[index]]), {
|
|
267
|
+
url: e.playbackUrl
|
|
268
|
+
});
|
|
269
|
+
});
|
|
270
|
+
console.log(newChannels);
|
|
271
|
+
setChannels(newChannels);
|
|
272
|
+
});
|
|
273
|
+
} else {
|
|
274
|
+
setChannels(newChannels);
|
|
275
|
+
}
|
|
220
276
|
} else {
|
|
221
277
|
_message["default"].info('未查询到视频');
|
|
222
278
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["HistoryControlV2Panel","forwardRef","props","ref","useContext","historyControlV2Context","channels","setChannels","setLoading","activeIndex","setActiveIndex","timeLinePosition","realChannels","filter","item","channelNum","segmentsRef","useRef","getRef","current","onVideoClose","useCollapse","defaultExpanded","getCollapseProps","getToggleProps","isExpanded","useRequest","getHistoryUrls","manual","runAsync","columns","title","dataIndex","width","key","render","_","record","index","_a","active","_jsx","Button","Object","assign","className","onClick","newChannels","startTime","endTime","beginTime","tagId","url","children","_jsxs","_Fragment","VideoCloseIcon","VideoPlayIcon","loadData","channel","deviceChannels","JSON","stringify","protocol","token","getUrlParam","then","res","Array","isArray","length","message","info","newIds","map","deviceId","includes","channelIndex","DEFAULT_PLAY_PARAMS","_b","_c","_d","_e","_f","_g","_h","_j","moment","list","diff","result","citem","isClose","getChannelData","error","useImperativeHandle","load","src","collapseBtnImg","alt","style","transform","TimeVerticalLine","history","segmentData","format","TimeFormat","params","getSegments","TimePositionIcon","left","TimeLine","display","Tooltip","channelName","flex","overflow","Table","dataSource","tableList","scroll","y","pagination","rowKey","guid","rowClassName","getSplitLines","step","i","element","push","ONEDAY_MILL","mouse","useMouse","elementX","elementY","elementW","elementH","visible","percent","time","start","valueOf","flag","playStart","playEnd","now","begin","end","total","itemStart","itemEnd","itemTotal","displayName"],"sources":["history-control-v2/components/panel/index.js"],"sourcesContent":["import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { forwardRef, useContext, useImperativeHandle, useRef } from 'react';\nimport useCollapse from 'react-collapsed';\nimport { getHistoryUrls } from '../../../api';\nimport { TimePositionIcon, VideoCloseIcon, VideoPlayIcon } from '../../../icons';\nimport { TimeFormat, guid, getUrlParam } from '../../../utils';\nimport { historyControlV2Context } from '../../context';\nimport collapseBtnImg from '../../images/collapse.png';\nimport { DEFAULT_PLAY_PARAMS, getChannelData } from '../../utils';\nimport { useMouse, useRequest } from 'ahooks';\nimport Button from 'antd/lib/button';\nimport message from 'antd/lib/message';\nimport Table from 'antd/lib/table';\nimport Tooltip from 'antd/lib/tooltip';\nimport moment from 'moment';\nexport const HistoryControlV2Panel = forwardRef((props, ref) => {\n const { channels, setChannels, setLoading, activeIndex, setActiveIndex, timeLinePosition } = useContext(historyControlV2Context);\n const realChannels = channels.filter(item => item.channelNum !== '');\n const segmentsRef = useRef(null);\n const getRef = () => {\n return segmentsRef.current;\n };\n const { onVideoClose } = props;\n const { getCollapseProps, getToggleProps, isExpanded } = useCollapse({\n defaultExpanded: false, // 默认展开\n });\n const { runAsync } = useRequest(getHistoryUrls, {\n manual: true,\n });\n const columns = [\n {\n title: '序号',\n dataIndex: 'index',\n width: 50,\n },\n {\n title: '播放视频',\n key: 'play',\n width: 90,\n render: (_, record, index) => {\n var _a;\n const active = ((_a = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _a === void 0 ? void 0 : _a.index) === index;\n return (_jsx(Button, Object.assign({ className: `play-btn ${active ? 'active' : ''}`, onClick: () => {\n if (active) {\n const newChannels = [...channels];\n newChannels[activeIndex].index = -1;\n newChannels[activeIndex].startTime = '';\n newChannels[activeIndex].endTime = '';\n setChannels(newChannels);\n onVideoClose && onVideoClose(newChannels[activeIndex]);\n }\n else {\n const newChannels = [...channels];\n newChannels[activeIndex].index = index;\n newChannels[activeIndex].startTime = record.beginTime;\n newChannels[activeIndex].endTime = record.endTime;\n newChannels[activeIndex].tagId = '';\n newChannels[activeIndex].url = record.url;\n setChannels(newChannels);\n }\n } }, { children: active ? (_jsxs(_Fragment, { children: [_jsx(VideoCloseIcon, { active: true }), \"\\u5173\\u95ED\"] })) : (_jsxs(_Fragment, { children: [_jsx(VideoPlayIcon, {}), \"\\u64AD\\u653E\"] })) })));\n },\n },\n {\n title: '设备名称',\n dataIndex: 'deviceName',\n },\n {\n title: '开始时间',\n dataIndex: 'beginTime',\n width: 170,\n },\n {\n title: '结束时间',\n dataIndex: 'endTime',\n width: 170,\n },\n {\n title: '持续时间',\n width: 130,\n dataIndex: 'duration',\n },\n {\n title: '视频大小',\n width: 110,\n dataIndex: 'size',\n },\n ];\n const loadData = (channel) => {\n setLoading(true);\n runAsync({\n deviceChannels: JSON.stringify(channel.deviceChannels),\n protocol: channel.protocol,\n beginTime: channel.beginTime,\n endTime: channel.endTime,\n token: getUrlParam('token')\n }).then((res) => {\n if (Array.isArray(res)) {\n if (res.length > 25) {\n message.info('最多播放25个视频通道');\n }\n const newIds = [...res].map((item) => { return `${item.deviceId}${item.channelNum}`; });\n const newChannels = [...channels];\n channels.map((item, index) => {\n if (!newIds.includes(`${item.deviceId}${item.channelNum}`)) {\n newChannels[index] = Object.assign({ channelIndex: index }, DEFAULT_PLAY_PARAMS);\n }\n });\n res.filter((item, index) => index < 25)\n .map((item) => {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j;\n /**\n * 优化第一条数据的开始时间不要早于请求的开始时间\n * 最后一条的结束时间不要晚于请求的结束时间\n */\n if (moment((_a = item.list) === null || _a === void 0 ? void 0 : _a[0].beginTime).diff(moment(channel.beginTime), 'seconds') < 0) {\n item.list[0].beginTime = channel.beginTime;\n }\n if (moment((_b = item.list) === null || _b === void 0 ? void 0 : _b[item.list.length - 1].endTime).diff(moment(channel.endTime), 'seconds') > 0) {\n item.list[item.list.length - 1].endTime = channel.endTime;\n }\n const result = (_c = newChannels.filter((citem) => citem.deviceId === item.deviceId && citem.channelNum === item.channelNum)) === null || _c === void 0 ? void 0 : _c[0];\n if (result) {\n const isClose = newChannels[result.channelIndex].index === -1 && newChannels[result.channelIndex].tagId === '';\n newChannels[result.channelIndex] = Object.assign(Object.assign({}, newChannels[result.channelIndex]), { \n // 如果当前既没有播放列表 又没有播放标签 再 开始以第一个播放\n index: isClose ? 0 : newChannels[result.channelIndex].index, startTime: isClose ? ((_e = (_d = item.list) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.beginTime) || channel.beginTime : newChannels[result.channelIndex].startTime, endTime: isClose ? ((_g = (_f = item.list) === null || _f === void 0 ? void 0 : _f[0]) === null || _g === void 0 ? void 0 : _g.beginTime) || channel.beginTime : newChannels[result.channelIndex].endTime });\n }\n else {\n const channelIndex = (_j = (_h = newChannels.filter((item) => item.channelNum === '')) === null || _h === void 0 ? void 0 : _h[0]) === null || _j === void 0 ? void 0 : _j.channelIndex;\n if (typeof channelIndex == 'number') {\n newChannels[channelIndex] = Object.assign(Object.assign({}, newChannels[channelIndex]), getChannelData(item, channel));\n }\n else {\n message.error('没有多余的播放位置');\n }\n }\n });\n setChannels(newChannels);\n }\n else {\n message.info('未查询到视频');\n }\n setLoading(false);\n });\n };\n useImperativeHandle(ref, () => {\n return {\n load: (channel) => {\n loadData(channel);\n },\n };\n });\n return (_jsx(_Fragment, { children: Array.isArray(realChannels) && realChannels.length > 0 ? (_jsxs(\"div\", Object.assign({ className: \"collapse-controls\" }, { children: [_jsx(\"div\", Object.assign({ className: \"action-bar\" }, getToggleProps({}), { children: _jsx(\"img\", { src: collapseBtnImg, alt: \"\", style: { transform: `rotate(${isExpanded ? 180 : 0}deg)` } }) })), _jsx(\"section\", Object.assign({ className: \"collapse-panel-container\" }, getCollapseProps(), { children: _jsxs(\"div\", Object.assign({ className: \"panels\" }, { children: [_jsxs(\"div\", Object.assign({ className: \"time-panel\" }, { children: [_jsxs(\"div\", Object.assign({ className: \"segments\", ref: segmentsRef }, { children: [_jsx(TimeVerticalLine, { getRef: getRef, history: channels === null || channels === void 0 ? void 0 : channels[activeIndex].segmentData, onClick: (index, startTime, endTime) => {\n const newChannels = [...channels];\n newChannels[activeIndex] = Object.assign(Object.assign({}, newChannels[activeIndex]), { index, startTime: moment(startTime).format(TimeFormat.params), endTime: moment(endTime).format(TimeFormat.params), tagId: '' });\n setChannels(newChannels);\n } }), getSegments(channels === null || channels === void 0 ? void 0 : channels[activeIndex].segmentData)] })), timeLinePosition >= 0 && (_jsx(TimePositionIcon, { className: \"time-line-icon\", style: {\n left: `${timeLinePosition}%`,\n } })), _jsx(TimeLine, {})] })), _jsxs(\"div\", Object.assign({ style: { display: 'flex' } }, { children: [_jsxs(\"div\", Object.assign({ className: \"panels-left\" }, { children: [_jsxs(\"div\", Object.assign({ className: \"panels-left-title\" }, { children: [\"\\u89C6\\u9891\\u901A\\u9053(\", realChannels.length, \")\"] })), _jsx(\"div\", Object.assign({ className: \"panels-left-wrap\" }, { children: realChannels.map((item, index) => {\n return (_jsx(\"div\", Object.assign({ className: `${activeIndex == index\n ? 'panels-left-content-active'\n : ''} panels-left-content`, onClick: () => {\n setActiveIndex(item.channelIndex);\n } }, { children: _jsx(Tooltip, Object.assign({ title: `${item.channelName}` }, { children: `${item.channelName}` })) }), `${item.deviceId}${item.channelNum}`));\n }) }))] })), _jsx(\"div\", Object.assign({ className: \"urls-panel\", style: { flex: 1, overflow: 'hidden', width: `100%` } }, { children: _jsx(Table, { className: \"history-url-table\", columns: columns, dataSource: (channels === null || channels === void 0 ? void 0 : channels[activeIndex].tableList) || [], scroll: { y: 100 }, pagination: false, rowKey: () => {\n return guid();\n }, rowClassName: (_, index) => { var _a; return index === ((_a = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _a === void 0 ? void 0 : _a.index) ? 'active' : ''; } }) }))] }))] })) }))] }))) : null }));\n});\nconst TimeLine = () => {\n const getSplitLines = () => {\n const result = [];\n const step = 100 / 24;\n for (let i = 0; i < 25; i++) {\n const element = (_jsx(\"div\", Object.assign({ className: \"line\", style: { left: `${step * i}%` } }, { children: _jsx(\"div\", Object.assign({ className: \"number\" }, { children: i >= 10 ? i : '0' + i })) }), i));\n result.push(element);\n }\n return result;\n };\n return (_jsxs(\"div\", Object.assign({ className: \"time-axis\" }, { children: [_jsx(\"div\", { className: \"axis\" }), _jsx(\"div\", Object.assign({ className: \"split-lines\" }, { children: getSplitLines() }))] })));\n};\nconst ONEDAY_MILL = 24 * 60 * 60 * 1000;\nconst TimeVerticalLine = ({ getRef, history, onClick }) => {\n var _a;\n const mouse = useMouse(getRef());\n const { elementX, elementY, elementW, elementH } = mouse;\n const visible = elementX >= 0 && elementY >= 0 && elementX <= elementW && elementY <= elementH;\n // 计算elementX在整个宽度的占比,根据占比在一天中的比例算出具体时间,最后判断这个时间是否在某段视频中。在则显示提示时间。\n const percent = elementX / elementW;\n const time = moment(moment(history.start).valueOf() + percent * ONEDAY_MILL).format(TimeFormat.params);\n let flag = false, playStart = -1, playEnd = -1, index = -1;\n const now = moment(time).valueOf();\n for (let i = 0; i < ((_a = history.list) === null || _a === void 0 ? void 0 : _a.length); i++) {\n const begin = moment(history.list[i].beginTime).valueOf(), end = moment(history.list[i].endTime).valueOf();\n if (now >= begin && now <= end) {\n index = i;\n // url = history.list[i].playbackUrl;\n playStart = now;\n playEnd = end;\n flag = true;\n break;\n }\n }\n return visible ? (flag ? (_jsx(Tooltip, Object.assign({ title: time }, { children: _jsx(\"div\", { className: \"timeline\", style: { left: elementX }, onClick: () => onClick(index, playStart, playEnd) }) }))) : (_jsx(\"div\", { className: \"timeline\", style: { left: elementX }, onClick: () => onClick(index, playStart, playEnd) }))) : (_jsx(_Fragment, {}));\n};\nconst getSegments = (props) => {\n const { list = [], start, end } = props;\n const startTime = moment(start);\n const endTime = moment(end);\n const total = endTime.diff(startTime, 'seconds'); // 总时间\n const result = list === null || list === void 0 ? void 0 : list.map((i) => {\n const itemStart = moment(i.beginTime).diff(startTime, 'seconds') > 0 ? moment(i.beginTime) : startTime;\n const itemEnd = moment(i.endTime);\n const itemTotal = itemEnd.diff(itemStart, 'seconds'); // 分段总时间\n const width = (itemTotal / total) * 100; // 分段时间占总时间百分比\n const left = (itemStart.diff(startTime, 'seconds') / total) * 100; // 分段其实时间\n return (_jsx(\"div\", { className: \"segment\", style: { width: `${width}%`, left: `${left < 0 ? 0 : left}%` } }, i.beginTime));\n });\n return result;\n};\nHistoryControlV2Panel.displayName = 'HistoryControlV2Panel';\nexport default HistoryControlV2Panel;\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;AACO,IAAMA,qBAAqB,gBAAG,IAAAC,iBAAA,EAAW,UAACC,KAAD,EAAQC,GAAR,EAAgB;EAC5D,kBAA6F,IAAAC,iBAAA,EAAWC,gCAAX,CAA7F;EAAA,IAAQC,QAAR,eAAQA,QAAR;EAAA,IAAkBC,WAAlB,eAAkBA,WAAlB;EAAA,IAA+BC,UAA/B,eAA+BA,UAA/B;EAAA,IAA2CC,WAA3C,eAA2CA,WAA3C;EAAA,IAAwDC,cAAxD,eAAwDA,cAAxD;EAAA,IAAwEC,gBAAxE,eAAwEA,gBAAxE;;EACA,IAAMC,YAAY,GAAGN,QAAQ,CAACO,MAAT,CAAgB,UAAAC,IAAI;IAAA,OAAIA,IAAI,CAACC,UAAL,KAAoB,EAAxB;EAAA,CAApB,CAArB;EACA,IAAMC,WAAW,GAAG,IAAAC,aAAA,EAAO,IAAP,CAApB;;EACA,IAAMC,MAAM,GAAG,SAATA,MAAS,GAAM;IACjB,OAAOF,WAAW,CAACG,OAAnB;EACH,CAFD;;EAGA,IAAQC,YAAR,GAAyBlB,KAAzB,CAAQkB,YAAR;;EACA,mBAAyD,IAAAC,0BAAA,EAAY;IACjEC,eAAe,EAAE,KADgD,CACzC;;EADyC,CAAZ,CAAzD;EAAA,IAAQC,gBAAR,gBAAQA,gBAAR;EAAA,IAA0BC,cAA1B,gBAA0BA,cAA1B;EAAA,IAA0CC,UAA1C,gBAA0CA,UAA1C;;EAGA,kBAAqB,IAAAC,kBAAA,EAAWC,mBAAX,EAA2B;IAC5CC,MAAM,EAAE;EADoC,CAA3B,CAArB;EAAA,IAAQC,QAAR,eAAQA,QAAR;;EAGA,IAAMC,OAAO,GAAG,CACZ;IACIC,KAAK,EAAE,IADX;IAEIC,SAAS,EAAE,OAFf;IAGIC,KAAK,EAAE;EAHX,CADY,EAMZ;IACIF,KAAK,EAAE,MADX;IAEIG,GAAG,EAAE,MAFT;IAGID,KAAK,EAAE,EAHX;IAIIE,MAAM,EAAE,gBAACC,CAAD,EAAIC,MAAJ,EAAYC,KAAZ,EAAsB;MAC1B,IAAIC,EAAJ;;MACA,IAAMC,MAAM,GAAG,CAAC,CAACD,EAAE,GAAGjC,QAAQ,KAAK,IAAb,IAAqBA,QAAQ,KAAK,KAAK,CAAvC,GAA2C,KAAK,CAAhD,GAAoDA,QAAQ,CAACG,WAAD,CAAlE,MAAqF,IAArF,IAA6F8B,EAAE,KAAK,KAAK,CAAzG,GAA6G,KAAK,CAAlH,GAAsHA,EAAE,CAACD,KAA1H,MAAqIA,KAApJ;MACA,OAAQ,IAAAG,eAAA,EAAKC,kBAAL,EAAaC,MAAM,CAACC,MAAP,CAAc;QAAEC,SAAS,qBAAcL,MAAM,GAAG,QAAH,GAAc,EAAlC,CAAX;QAAmDM,OAAO,EAAE,mBAAM;UAC7F,IAAIN,MAAJ,EAAY;YACR,IAAMO,WAAW,sBAAOzC,QAAP,CAAjB;;YACAyC,WAAW,CAACtC,WAAD,CAAX,CAAyB6B,KAAzB,GAAiC,CAAC,CAAlC;YACAS,WAAW,CAACtC,WAAD,CAAX,CAAyBuC,SAAzB,GAAqC,EAArC;YACAD,WAAW,CAACtC,WAAD,CAAX,CAAyBwC,OAAzB,GAAmC,EAAnC;YACA1C,WAAW,CAACwC,WAAD,CAAX;YACA3B,YAAY,IAAIA,YAAY,CAAC2B,WAAW,CAACtC,WAAD,CAAZ,CAA5B;UACH,CAPD,MAQK;YACD,IAAMsC,YAAW,sBAAOzC,QAAP,CAAjB;;YACAyC,YAAW,CAACtC,WAAD,CAAX,CAAyB6B,KAAzB,GAAiCA,KAAjC;YACAS,YAAW,CAACtC,WAAD,CAAX,CAAyBuC,SAAzB,GAAqCX,MAAM,CAACa,SAA5C;YACAH,YAAW,CAACtC,WAAD,CAAX,CAAyBwC,OAAzB,GAAmCZ,MAAM,CAACY,OAA1C;YACAF,YAAW,CAACtC,WAAD,CAAX,CAAyB0C,KAAzB,GAAiC,EAAjC;YACAJ,YAAW,CAACtC,WAAD,CAAX,CAAyB2C,GAAzB,GAA+Bf,MAAM,CAACe,GAAtC;YACA7C,WAAW,CAACwC,YAAD,CAAX;UACH;QACJ;MAlB8B,CAAd,EAkBZ;QAAEM,QAAQ,EAAEb,MAAM,GAAI,IAAAc,gBAAA,EAAMC,oBAAN,EAAiB;UAAEF,QAAQ,EAAE,CAAC,IAAAZ,eAAA,EAAKe,qBAAL,EAAqB;YAAEhB,MAAM,EAAE;UAAV,CAArB,CAAD,EAAyC,cAAzC;QAAZ,CAAjB,CAAJ,GAAiG,IAAAc,gBAAA,EAAMC,oBAAN,EAAiB;UAAEF,QAAQ,EAAE,CAAC,IAAAZ,eAAA,EAAKgB,oBAAL,EAAoB,EAApB,CAAD,EAA0B,cAA1B;QAAZ,CAAjB;MAAnH,CAlBY,CAAb,CAAR;IAmBH;EA1BL,CANY,EAkCZ;IACI1B,KAAK,EAAE,MADX;IAEIC,SAAS,EAAE;EAFf,CAlCY,EAsCZ;IACID,KAAK,EAAE,MADX;IAEIC,SAAS,EAAE,WAFf;IAGIC,KAAK,EAAE;EAHX,CAtCY,EA2CZ;IACIF,KAAK,EAAE,MADX;IAEIC,SAAS,EAAE,SAFf;IAGIC,KAAK,EAAE;EAHX,CA3CY,EAgDZ;IACIF,KAAK,EAAE,MADX;IAEIE,KAAK,EAAE,GAFX;IAGID,SAAS,EAAE;EAHf,CAhDY,EAqDZ;IACID,KAAK,EAAE,MADX;IAEIE,KAAK,EAAE,GAFX;IAGID,SAAS,EAAE;EAHf,CArDY,CAAhB;;EA2DA,IAAM0B,QAAQ,GAAG,SAAXA,QAAW,CAACC,OAAD,EAAa;IAC1BnD,UAAU,CAAC,IAAD,CAAV;IACAqB,QAAQ,CAAC;MACL+B,cAAc,EAAEC,IAAI,CAACC,SAAL,CAAeH,OAAO,CAACC,cAAvB,CADX;MAELG,QAAQ,EAAEJ,OAAO,CAACI,QAFb;MAGLb,SAAS,EAAES,OAAO,CAACT,SAHd;MAILD,OAAO,EAAEU,OAAO,CAACV,OAJZ;MAKLe,KAAK,EAAE,IAAAC,kBAAA,EAAY,OAAZ;IALF,CAAD,CAAR,CAMGC,IANH,CAMQ,UAACC,GAAD,EAAS;MACb,IAAIC,KAAK,CAACC,OAAN,CAAcF,GAAd,CAAJ,EAAwB;QACpB,IAAIA,GAAG,CAACG,MAAJ,GAAa,EAAjB,EAAqB;UACjBC,mBAAA,CAAQC,IAAR,CAAa,aAAb;QACH;;QACD,IAAMC,MAAM,GAAG,mBAAIN,GAAJ,EAASO,GAAT,CAAa,UAAC5D,IAAD,EAAU;UAAE,iBAAUA,IAAI,CAAC6D,QAAf,SAA0B7D,IAAI,CAACC,UAA/B;QAA8C,CAAvE,CAAf;;QACA,IAAMgC,WAAW,sBAAOzC,QAAP,CAAjB;;QACAA,QAAQ,CAACoE,GAAT,CAAa,UAAC5D,IAAD,EAAOwB,KAAP,EAAiB;UAC1B,IAAI,CAACmC,MAAM,CAACG,QAAP,WAAmB9D,IAAI,CAAC6D,QAAxB,SAAmC7D,IAAI,CAACC,UAAxC,EAAL,EAA4D;YACxDgC,WAAW,CAACT,KAAD,CAAX,GAAqBK,MAAM,CAACC,MAAP,CAAc;cAAEiC,YAAY,EAAEvC;YAAhB,CAAd,EAAuCwC,2BAAvC,CAArB;UACH;QACJ,CAJD;QAKAX,GAAG,CAACtD,MAAJ,CAAW,UAACC,IAAD,EAAOwB,KAAP;UAAA,OAAiBA,KAAK,GAAG,EAAzB;QAAA,CAAX,EACKoC,GADL,CACS,UAAC5D,IAAD,EAAU;UACf,IAAIyB,EAAJ,EAAQwC,EAAR,EAAYC,EAAZ,EAAgBC,EAAhB,EAAoBC,EAApB,EAAwBC,EAAxB,EAA4BC,EAA5B,EAAgCC,EAAhC,EAAoCC,EAApC;UACA;AACpB;AACA;AACA;;;UACoB,IAAI,IAAAC,kBAAA,EAAO,CAAChD,EAAE,GAAGzB,IAAI,CAAC0E,IAAX,MAAqB,IAArB,IAA6BjD,EAAE,KAAK,KAAK,CAAzC,GAA6C,KAAK,CAAlD,GAAsDA,EAAE,CAAC,CAAD,CAAF,CAAMW,SAAnE,EAA8EuC,IAA9E,CAAmF,IAAAF,kBAAA,EAAO5B,OAAO,CAACT,SAAf,CAAnF,EAA8G,SAA9G,IAA2H,CAA/H,EAAkI;YAC9HpC,IAAI,CAAC0E,IAAL,CAAU,CAAV,EAAatC,SAAb,GAAyBS,OAAO,CAACT,SAAjC;UACH;;UACD,IAAI,IAAAqC,kBAAA,EAAO,CAACR,EAAE,GAAGjE,IAAI,CAAC0E,IAAX,MAAqB,IAArB,IAA6BT,EAAE,KAAK,KAAK,CAAzC,GAA6C,KAAK,CAAlD,GAAsDA,EAAE,CAACjE,IAAI,CAAC0E,IAAL,CAAUlB,MAAV,GAAmB,CAApB,CAAF,CAAyBrB,OAAtF,EAA+FwC,IAA/F,CAAoG,IAAAF,kBAAA,EAAO5B,OAAO,CAACV,OAAf,CAApG,EAA6H,SAA7H,IAA0I,CAA9I,EAAiJ;YAC7InC,IAAI,CAAC0E,IAAL,CAAU1E,IAAI,CAAC0E,IAAL,CAAUlB,MAAV,GAAmB,CAA7B,EAAgCrB,OAAhC,GAA0CU,OAAO,CAACV,OAAlD;UACH;;UACD,IAAMyC,MAAM,GAAG,CAACV,EAAE,GAAGjC,WAAW,CAAClC,MAAZ,CAAmB,UAAC8E,KAAD;YAAA,OAAWA,KAAK,CAAChB,QAAN,KAAmB7D,IAAI,CAAC6D,QAAxB,IAAoCgB,KAAK,CAAC5E,UAAN,KAAqBD,IAAI,CAACC,UAAzE;UAAA,CAAnB,CAAN,MAAmH,IAAnH,IAA2HiE,EAAE,KAAK,KAAK,CAAvI,GAA2I,KAAK,CAAhJ,GAAoJA,EAAE,CAAC,CAAD,CAArK;;UACA,IAAIU,MAAJ,EAAY;YACR,IAAME,OAAO,GAAG7C,WAAW,CAAC2C,MAAM,CAACb,YAAR,CAAX,CAAiCvC,KAAjC,KAA2C,CAAC,CAA5C,IAAiDS,WAAW,CAAC2C,MAAM,CAACb,YAAR,CAAX,CAAiC1B,KAAjC,KAA2C,EAA5G;YACAJ,WAAW,CAAC2C,MAAM,CAACb,YAAR,CAAX,GAAmClC,MAAM,CAACC,MAAP,CAAcD,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkBG,WAAW,CAAC2C,MAAM,CAACb,YAAR,CAA7B,CAAd,EAAmE;cAClG;cACAvC,KAAK,EAAEsD,OAAO,GAAG,CAAH,GAAO7C,WAAW,CAAC2C,MAAM,CAACb,YAAR,CAAX,CAAiCvC,KAF4C;cAErCU,SAAS,EAAE4C,OAAO,GAAG,CAAC,CAACV,EAAE,GAAG,CAACD,EAAE,GAAGnE,IAAI,CAAC0E,IAAX,MAAqB,IAArB,IAA6BP,EAAE,KAAK,KAAK,CAAzC,GAA6C,KAAK,CAAlD,GAAsDA,EAAE,CAAC,CAAD,CAA9D,MAAuE,IAAvE,IAA+EC,EAAE,KAAK,KAAK,CAA3F,GAA+F,KAAK,CAApG,GAAwGA,EAAE,CAAChC,SAA5G,KAA0HS,OAAO,CAACT,SAArI,GAAiJH,WAAW,CAAC2C,MAAM,CAACb,YAAR,CAAX,CAAiC7B,SAF/J;cAE0KC,OAAO,EAAE2C,OAAO,GAAG,CAAC,CAACR,EAAE,GAAG,CAACD,EAAE,GAAGrE,IAAI,CAAC0E,IAAX,MAAqB,IAArB,IAA6BL,EAAE,KAAK,KAAK,CAAzC,GAA6C,KAAK,CAAlD,GAAsDA,EAAE,CAAC,CAAD,CAA9D,MAAuE,IAAvE,IAA+EC,EAAE,KAAK,KAAK,CAA3F,GAA+F,KAAK,CAApG,GAAwGA,EAAE,CAAClC,SAA5G,KAA0HS,OAAO,CAACT,SAArI,GAAiJH,WAAW,CAAC2C,MAAM,CAACb,YAAR,CAAX,CAAiC5B;YAF5W,CAAnE,CAAnC;UAGH,CALD,MAMK;YACD,IAAM4B,YAAY,GAAG,CAACS,EAAE,GAAG,CAACD,EAAE,GAAGtC,WAAW,CAAClC,MAAZ,CAAmB,UAACC,IAAD;cAAA,OAAUA,IAAI,CAACC,UAAL,KAAoB,EAA9B;YAAA,CAAnB,CAAN,MAAgE,IAAhE,IAAwEsE,EAAE,KAAK,KAAK,CAApF,GAAwF,KAAK,CAA7F,GAAiGA,EAAE,CAAC,CAAD,CAAzG,MAAkH,IAAlH,IAA0HC,EAAE,KAAK,KAAK,CAAtI,GAA0I,KAAK,CAA/I,GAAmJA,EAAE,CAACT,YAA3K;;YACA,IAAI,OAAOA,YAAP,IAAuB,QAA3B,EAAqC;cACjC9B,WAAW,CAAC8B,YAAD,CAAX,GAA4BlC,MAAM,CAACC,MAAP,CAAcD,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkBG,WAAW,CAAC8B,YAAD,CAA7B,CAAd,EAA4D,IAAAgB,sBAAA,EAAe/E,IAAf,EAAqB6C,OAArB,CAA5D,CAA5B;YACH,CAFD,MAGK;cACDY,mBAAA,CAAQuB,KAAR,CAAc,WAAd;YACH;UACJ;QACJ,CA7BD;QA8BAvF,WAAW,CAACwC,WAAD,CAAX;MACH,CA1CD,MA2CK;QACDwB,mBAAA,CAAQC,IAAR,CAAa,QAAb;MACH;;MACDhE,UAAU,CAAC,KAAD,CAAV;IACH,CAtDD;EAuDH,CAzDD;;EA0DA,IAAAuF,0BAAA,EAAoB5F,GAApB,EAAyB,YAAM;IAC3B,OAAO;MACH6F,IAAI,EAAE,cAACrC,OAAD,EAAa;QACfD,QAAQ,CAACC,OAAD,CAAR;MACH;IAHE,CAAP;EAKH,CAND;EAOA,OAAQ,IAAAlB,eAAA,EAAKc,oBAAL,EAAgB;IAAEF,QAAQ,EAAEe,KAAK,CAACC,OAAN,CAAczD,YAAd,KAA+BA,YAAY,CAAC0D,MAAb,GAAsB,CAArD,GAA0D,IAAAhB,gBAAA,EAAM,KAAN,EAAaX,MAAM,CAACC,MAAP,CAAc;MAAEC,SAAS,EAAE;IAAb,CAAd,EAAkD;MAAEQ,QAAQ,EAAE,CAAC,IAAAZ,eAAA,EAAK,KAAL,EAAYE,MAAM,CAACC,MAAP,CAAc;QAAEC,SAAS,EAAE;MAAb,CAAd,EAA2CrB,cAAc,CAAC,EAAD,CAAzD,EAA+D;QAAE6B,QAAQ,EAAE,IAAAZ,eAAA,EAAK,KAAL,EAAY;UAAEwD,GAAG,EAAEC,oBAAP;UAAuBC,GAAG,EAAE,EAA5B;UAAgCC,KAAK,EAAE;YAAEC,SAAS,mBAAY5E,UAAU,GAAG,GAAH,GAAS,CAA/B;UAAX;QAAvC,CAAZ;MAAZ,CAA/D,CAAZ,CAAD,EAAuM,IAAAgB,eAAA,EAAK,SAAL,EAAgBE,MAAM,CAACC,MAAP,CAAc;QAAEC,SAAS,EAAE;MAAb,CAAd,EAAyDtB,gBAAgB,EAAzE,EAA6E;QAAE8B,QAAQ,EAAE,IAAAC,gBAAA,EAAM,KAAN,EAAaX,MAAM,CAACC,MAAP,CAAc;UAAEC,SAAS,EAAE;QAAb,CAAd,EAAuC;UAAEQ,QAAQ,EAAE,CAAC,IAAAC,gBAAA,EAAM,KAAN,EAAaX,MAAM,CAACC,MAAP,CAAc;YAAEC,SAAS,EAAE;UAAb,CAAd,EAA2C;YAAEQ,QAAQ,EAAE,CAAC,IAAAC,gBAAA,EAAM,KAAN,EAAaX,MAAM,CAACC,MAAP,CAAc;cAAEC,SAAS,EAAE,UAAb;cAAyB1C,GAAG,EAAEa;YAA9B,CAAd,EAA2D;cAAEqC,QAAQ,EAAE,CAAC,IAAAZ,eAAA,EAAK6D,gBAAL,EAAuB;gBAAEpF,MAAM,EAAEA,MAAV;gBAAkBqF,OAAO,EAAEjG,QAAQ,KAAK,IAAb,IAAqBA,QAAQ,KAAK,KAAK,CAAvC,GAA2C,KAAK,CAAhD,GAAoDA,QAAQ,CAACG,WAAD,CAAR,CAAsB+F,WAArG;gBAAkH1D,OAAO,EAAE,iBAACR,KAAD,EAAQU,SAAR,EAAmBC,OAAnB,EAA+B;kBACrzB,IAAMF,WAAW,sBAAOzC,QAAP,CAAjB;;kBACAyC,WAAW,CAACtC,WAAD,CAAX,GAA2BkC,MAAM,CAACC,MAAP,CAAcD,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkBG,WAAW,CAACtC,WAAD,CAA7B,CAAd,EAA2D;oBAAE6B,KAAK,EAALA,KAAF;oBAASU,SAAS,EAAE,IAAAuC,kBAAA,EAAOvC,SAAP,EAAkByD,MAAlB,CAAyBC,iBAAA,CAAWC,MAApC,CAApB;oBAAiE1D,OAAO,EAAE,IAAAsC,kBAAA,EAAOtC,OAAP,EAAgBwD,MAAhB,CAAuBC,iBAAA,CAAWC,MAAlC,CAA1E;oBAAqHxD,KAAK,EAAE;kBAA5H,CAA3D,CAA3B;kBACA5C,WAAW,CAACwC,WAAD,CAAX;gBACH;cAJ8pB,CAAvB,CAAD,EAIjoB6D,WAAW,CAACtG,QAAQ,KAAK,IAAb,IAAqBA,QAAQ,KAAK,KAAK,CAAvC,GAA2C,KAAK,CAAhD,GAAoDA,QAAQ,CAACG,WAAD,CAAR,CAAsB+F,WAA3E,CAJsnB;YAAZ,CAA3D,CAAb,CAAD,EAInc7F,gBAAgB,IAAI,CAApB,IAA0B,IAAA8B,eAAA,EAAKoE,uBAAL,EAAuB;cAAEhE,SAAS,EAAE,gBAAb;cAA+BuD,KAAK,EAAE;gBAC1MU,IAAI,YAAKnG,gBAAL;cADsM;YAAtC,CAAvB,CAJya,EAMnjB,IAAA8B,eAAA,EAAKsE,QAAL,EAAe,EAAf,CANmjB;UAAZ,CAA3C,CAAb,CAAD,EAMrd,IAAAzD,gBAAA,EAAM,KAAN,EAAaX,MAAM,CAACC,MAAP,CAAc;YAAEwD,KAAK,EAAE;cAAEY,OAAO,EAAE;YAAX;UAAT,CAAd,EAA8C;YAAE3D,QAAQ,EAAE,CAAC,IAAAC,gBAAA,EAAM,KAAN,EAAaX,MAAM,CAACC,MAAP,CAAc;cAAEC,SAAS,EAAE;YAAb,CAAd,EAA4C;cAAEQ,QAAQ,EAAE,CAAC,IAAAC,gBAAA,EAAM,KAAN,EAAaX,MAAM,CAACC,MAAP,CAAc;gBAAEC,SAAS,EAAE;cAAb,CAAd,EAAkD;gBAAEQ,QAAQ,EAAE,CAAC,2BAAD,EAA8BzC,YAAY,CAAC0D,MAA3C,EAAmD,GAAnD;cAAZ,CAAlD,CAAb,CAAD,EAAyI,IAAA7B,eAAA,EAAK,KAAL,EAAYE,MAAM,CAACC,MAAP,CAAc;gBAAEC,SAAS,EAAE;cAAb,CAAd,EAAiD;gBAAEQ,QAAQ,EAAEzC,YAAY,CAAC8D,GAAb,CAAiB,UAAC5D,IAAD,EAAOwB,KAAP,EAAiB;kBACrZ,OAAQ,IAAAG,eAAA,EAAK,KAAL,EAAYE,MAAM,CAACC,MAAP,CAAc;oBAAEC,SAAS,YAAKpC,WAAW,IAAI6B,KAAf,GACxC,4BADwC,GAExC,EAFmC,yBAAX;oBAEEQ,OAAO,EAAE,mBAAM;sBAC3CpC,cAAc,CAACI,IAAI,CAAC+D,YAAN,CAAd;oBACH;kBAJ6B,CAAd,EAIX;oBAAExB,QAAQ,EAAE,IAAAZ,eAAA,EAAKwE,mBAAL,EAActE,MAAM,CAACC,MAAP,CAAc;sBAAEb,KAAK,YAAKjB,IAAI,CAACoG,WAAV;oBAAP,CAAd,EAAgD;sBAAE7D,QAAQ,YAAKvC,IAAI,CAACoG,WAAV;oBAAV,CAAhD,CAAd;kBAAZ,CAJW,CAAZ,YAIwHpG,IAAI,CAAC6D,QAJ7H,SAIwI7D,IAAI,CAACC,UAJ7I,EAAR;gBAKH,CANsX;cAAZ,CAAjD,CAAZ,CAAzI;YAAZ,CAA5C,CAAb,CAAD,EAMlF,IAAA0B,eAAA,EAAK,KAAL,EAAYE,MAAM,CAACC,MAAP,CAAc;cAAEC,SAAS,EAAE,YAAb;cAA2BuD,KAAK,EAAE;gBAAEe,IAAI,EAAE,CAAR;gBAAWC,QAAQ,EAAE,QAArB;gBAA+BnF,KAAK;cAApC;YAAlC,CAAd,EAAkG;cAAEoB,QAAQ,EAAE,IAAAZ,eAAA,EAAK4E,iBAAL,EAAY;gBAAExE,SAAS,EAAE,mBAAb;gBAAkCf,OAAO,EAAEA,OAA3C;gBAAoDwF,UAAU,EAAE,CAAChH,QAAQ,KAAK,IAAb,IAAqBA,QAAQ,KAAK,KAAK,CAAvC,GAA2C,KAAK,CAAhD,GAAoDA,QAAQ,CAACG,WAAD,CAAR,CAAsB8G,SAA3E,KAAyF,EAAzJ;gBAA6JC,MAAM,EAAE;kBAAEC,CAAC,EAAE;gBAAL,CAArK;gBAAiLC,UAAU,EAAE,KAA7L;gBAAoMC,MAAM,EAAE,kBAAM;kBACrW,OAAO,IAAAC,WAAA,GAAP;gBACH,CAFsJ;gBAEpJC,YAAY,EAAE,sBAACzF,CAAD,EAAIE,KAAJ,EAAc;kBAAE,IAAIC,EAAJ;;kBAAQ,OAAOD,KAAK,MAAM,CAACC,EAAE,GAAGjC,QAAQ,KAAK,IAAb,IAAqBA,QAAQ,KAAK,KAAK,CAAvC,GAA2C,KAAK,CAAhD,GAAoDA,QAAQ,CAACG,WAAD,CAAlE,MAAqF,IAArF,IAA6F8B,EAAE,KAAK,KAAK,CAAzG,GAA6G,KAAK,CAAlH,GAAsHA,EAAE,CAACD,KAA/H,CAAL,GAA6I,QAA7I,GAAwJ,EAA/J;gBAAoK;cAFtD,CAAZ;YAAZ,CAAlG,CAAZ,CANkF;UAAZ,CAA9C,CAAb,CANqd;QAAZ,CAAvC,CAAb;MAAZ,CAA7E,CAAhB,CAAvM;IAAZ,CAAlD,CAAb,CAA1D,GAc+O;EAd3P,CAAhB,CAAR;AAeH,CAzJoC,CAA9B;;;AA0JP,IAAMyE,QAAQ,GAAG,SAAXA,QAAW,GAAM;EACnB,IAAMe,aAAa,GAAG,SAAhBA,aAAgB,GAAM;IACxB,IAAMpC,MAAM,GAAG,EAAf;IACA,IAAMqC,IAAI,GAAG,MAAM,EAAnB;;IACA,KAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAG,EAApB,EAAwBA,CAAC,EAAzB,EAA6B;MACzB,IAAMC,OAAO,GAAI,IAAAxF,eAAA,EAAK,KAAL,EAAYE,MAAM,CAACC,MAAP,CAAc;QAAEC,SAAS,EAAE,MAAb;QAAqBuD,KAAK,EAAE;UAAEU,IAAI,YAAKiB,IAAI,GAAGC,CAAZ;QAAN;MAA5B,CAAd,EAAsE;QAAE3E,QAAQ,EAAE,IAAAZ,eAAA,EAAK,KAAL,EAAYE,MAAM,CAACC,MAAP,CAAc;UAAEC,SAAS,EAAE;QAAb,CAAd,EAAuC;UAAEQ,QAAQ,EAAE2E,CAAC,IAAI,EAAL,GAAUA,CAAV,GAAc,MAAMA;QAAhC,CAAvC,CAAZ;MAAZ,CAAtE,CAAZ,EAA2LA,CAA3L,CAAjB;MACAtC,MAAM,CAACwC,IAAP,CAAYD,OAAZ;IACH;;IACD,OAAOvC,MAAP;EACH,CARD;;EASA,OAAQ,IAAApC,gBAAA,EAAM,KAAN,EAAaX,MAAM,CAACC,MAAP,CAAc;IAAEC,SAAS,EAAE;EAAb,CAAd,EAA0C;IAAEQ,QAAQ,EAAE,CAAC,IAAAZ,eAAA,EAAK,KAAL,EAAY;MAAEI,SAAS,EAAE;IAAb,CAAZ,CAAD,EAAqC,IAAAJ,eAAA,EAAK,KAAL,EAAYE,MAAM,CAACC,MAAP,CAAc;MAAEC,SAAS,EAAE;IAAb,CAAd,EAA4C;MAAEQ,QAAQ,EAAEyE,aAAa;IAAzB,CAA5C,CAAZ,CAArC;EAAZ,CAA1C,CAAb,CAAR;AACH,CAXD;;AAYA,IAAMK,WAAW,GAAG,KAAK,EAAL,GAAU,EAAV,GAAe,IAAnC;;AACA,IAAM7B,gBAAgB,GAAG,SAAnBA,gBAAmB,OAAkC;EAAA,IAA/BpF,MAA+B,QAA/BA,MAA+B;EAAA,IAAvBqF,OAAuB,QAAvBA,OAAuB;EAAA,IAAdzD,QAAc,QAAdA,OAAc;;EACvD,IAAIP,EAAJ;;EACA,IAAM6F,KAAK,GAAG,IAAAC,gBAAA,EAASnH,MAAM,EAAf,CAAd;EACA,IAAQoH,QAAR,GAAmDF,KAAnD,CAAQE,QAAR;EAAA,IAAkBC,QAAlB,GAAmDH,KAAnD,CAAkBG,QAAlB;EAAA,IAA4BC,QAA5B,GAAmDJ,KAAnD,CAA4BI,QAA5B;EAAA,IAAsCC,QAAtC,GAAmDL,KAAnD,CAAsCK,QAAtC;EACA,IAAMC,OAAO,GAAGJ,QAAQ,IAAI,CAAZ,IAAiBC,QAAQ,IAAI,CAA7B,IAAkCD,QAAQ,IAAIE,QAA9C,IAA0DD,QAAQ,IAAIE,QAAtF,CAJuD,CAKvD;;EACA,IAAME,OAAO,GAAGL,QAAQ,GAAGE,QAA3B;EACA,IAAMI,IAAI,GAAG,IAAArD,kBAAA,EAAO,IAAAA,kBAAA,EAAOgB,OAAO,CAACsC,KAAf,EAAsBC,OAAtB,KAAkCH,OAAO,GAAGR,WAAnD,EAAgE1B,MAAhE,CAAuEC,iBAAA,CAAWC,MAAlF,CAAb;EACA,IAAIoC,IAAI,GAAG,KAAX;EAAA,IAAkBC,SAAS,GAAG,CAAC,CAA/B;EAAA,IAAkCC,OAAO,GAAG,CAAC,CAA7C;EAAA,IAAgD3G,KAAK,GAAG,CAAC,CAAzD;EACA,IAAM4G,GAAG,GAAG,IAAA3D,kBAAA,EAAOqD,IAAP,EAAaE,OAAb,EAAZ;;EACA,KAAK,IAAId,CAAC,GAAG,CAAb,EAAgBA,CAAC,IAAI,CAACzF,EAAE,GAAGgE,OAAO,CAACf,IAAd,MAAwB,IAAxB,IAAgCjD,EAAE,KAAK,KAAK,CAA5C,GAAgD,KAAK,CAArD,GAAyDA,EAAE,CAAC+B,MAAhE,CAAjB,EAA0F0D,CAAC,EAA3F,EAA+F;IAC3F,IAAMmB,KAAK,GAAG,IAAA5D,kBAAA,EAAOgB,OAAO,CAACf,IAAR,CAAawC,CAAb,EAAgB9E,SAAvB,EAAkC4F,OAAlC,EAAd;IAAA,IAA2DM,GAAG,GAAG,IAAA7D,kBAAA,EAAOgB,OAAO,CAACf,IAAR,CAAawC,CAAb,EAAgB/E,OAAvB,EAAgC6F,OAAhC,EAAjE;;IACA,IAAII,GAAG,IAAIC,KAAP,IAAgBD,GAAG,IAAIE,GAA3B,EAAgC;MAC5B9G,KAAK,GAAG0F,CAAR,CAD4B,CAE5B;;MACAgB,SAAS,GAAGE,GAAZ;MACAD,OAAO,GAAGG,GAAV;MACAL,IAAI,GAAG,IAAP;MACA;IACH;EACJ;;EACD,OAAOL,OAAO,GAAIK,IAAI,GAAI,IAAAtG,eAAA,EAAKwE,mBAAL,EAActE,MAAM,CAACC,MAAP,CAAc;IAAEb,KAAK,EAAE6G;EAAT,CAAd,EAA+B;IAAEvF,QAAQ,EAAE,IAAAZ,eAAA,EAAK,KAAL,EAAY;MAAEI,SAAS,EAAE,UAAb;MAAyBuD,KAAK,EAAE;QAAEU,IAAI,EAAEwB;MAAR,CAAhC;MAAoDxF,OAAO,EAAE;QAAA,OAAMA,QAAO,CAACR,KAAD,EAAQ0G,SAAR,EAAmBC,OAAnB,CAAb;MAAA;IAA7D,CAAZ;EAAZ,CAA/B,CAAd,CAAJ,GAA0L,IAAAxG,eAAA,EAAK,KAAL,EAAY;IAAEI,SAAS,EAAE,UAAb;IAAyBuD,KAAK,EAAE;MAAEU,IAAI,EAAEwB;IAAR,CAAhC;IAAoDxF,OAAO,EAAE;MAAA,OAAMA,QAAO,CAACR,KAAD,EAAQ0G,SAAR,EAAmBC,OAAnB,CAAb;IAAA;EAA7D,CAAZ,CAAlM,GAA4T,IAAAxG,eAAA,EAAKc,oBAAL,EAAgB,EAAhB,CAA1U;AACH,CAtBD;;AAuBA,IAAMqD,WAAW,GAAG,SAAdA,WAAc,CAAC1G,KAAD,EAAW;EAC3B,kBAAkCA,KAAlC,CAAQsF,IAAR;EAAA,IAAQA,IAAR,4BAAe,EAAf;EAAA,IAAmBqD,KAAnB,GAAkC3I,KAAlC,CAAmB2I,KAAnB;EAAA,IAA0BO,GAA1B,GAAkClJ,KAAlC,CAA0BkJ,GAA1B;EACA,IAAMpG,SAAS,GAAG,IAAAuC,kBAAA,EAAOsD,KAAP,CAAlB;EACA,IAAM5F,OAAO,GAAG,IAAAsC,kBAAA,EAAO6D,GAAP,CAAhB;EACA,IAAMC,KAAK,GAAGpG,OAAO,CAACwC,IAAR,CAAazC,SAAb,EAAwB,SAAxB,CAAd,CAJ2B,CAIuB;;EAClD,IAAM0C,MAAM,GAAGF,IAAI,KAAK,IAAT,IAAiBA,IAAI,KAAK,KAAK,CAA/B,GAAmC,KAAK,CAAxC,GAA4CA,IAAI,CAACd,GAAL,CAAS,UAACsD,CAAD,EAAO;IACvE,IAAMsB,SAAS,GAAG,IAAA/D,kBAAA,EAAOyC,CAAC,CAAC9E,SAAT,EAAoBuC,IAApB,CAAyBzC,SAAzB,EAAoC,SAApC,IAAiD,CAAjD,GAAqD,IAAAuC,kBAAA,EAAOyC,CAAC,CAAC9E,SAAT,CAArD,GAA2EF,SAA7F;IACA,IAAMuG,OAAO,GAAG,IAAAhE,kBAAA,EAAOyC,CAAC,CAAC/E,OAAT,CAAhB;IACA,IAAMuG,SAAS,GAAGD,OAAO,CAAC9D,IAAR,CAAa6D,SAAb,EAAwB,SAAxB,CAAlB,CAHuE,CAGjB;;IACtD,IAAMrH,KAAK,GAAIuH,SAAS,GAAGH,KAAb,GAAsB,GAApC,CAJuE,CAI9B;;IACzC,IAAMvC,IAAI,GAAIwC,SAAS,CAAC7D,IAAV,CAAezC,SAAf,EAA0B,SAA1B,IAAuCqG,KAAxC,GAAiD,GAA9D,CALuE,CAKJ;;IACnE,OAAQ,IAAA5G,eAAA,EAAK,KAAL,EAAY;MAAEI,SAAS,EAAE,SAAb;MAAwBuD,KAAK,EAAE;QAAEnE,KAAK,YAAKA,KAAL,MAAP;QAAsB6E,IAAI,YAAKA,IAAI,GAAG,CAAP,GAAW,CAAX,GAAeA,IAApB;MAA1B;IAA/B,CAAZ,EAAsGkB,CAAC,CAAC9E,SAAxG,CAAR;EACH,CAP0D,CAA3D;EAQA,OAAOwC,MAAP;AACH,CAdD;;AAeA1F,qBAAqB,CAACyJ,WAAtB,GAAoC,uBAApC;eACezJ,qB"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["HistoryControlV2Panel","forwardRef","props","ref","useContext","historyControlV2Context","channels","setChannels","setLoading","activeIndex","setActiveIndex","timeLinePosition","realChannels","filter","item","channelNum","segmentsRef","useRef","getRef","current","onVideoClose","useCollapse","defaultExpanded","getCollapseProps","getToggleProps","isExpanded","useRequest","getHistoryUrls","manual","runAsync","getPlaybackUrlSingle","GetHKV2Url","columns","title","dataIndex","width","key","render","_","record","index","_a","active","_jsx","Button","Object","assign","className","onClick","newChannels","startTime","endTime","deal","url","beginTime","tagId","hkType","code","deviceId","tenantId","getUrlParam","then","data","playbackUrl","children","_jsxs","_Fragment","VideoCloseIcon","VideoPlayIcon","loadData","channel","deviceChannels","JSON","stringify","protocol","token","res","Array","isArray","length","message","info","newIds","map","includes","channelIndex","DEFAULT_PLAY_PARAMS","fetchArr","fetchIndexArr","_b","_c","_d","_e","_f","_g","_h","_j","moment","list","diff","result","citem","isClose","e","slice","getChannelData","push","error","Promise","all","forEach","console","log","useImperativeHandle","load","src","collapseBtnImg","alt","style","transform","TimeVerticalLine","history","segmentData","format","TimeFormat","params","getSegments","TimePositionIcon","left","TimeLine","display","Tooltip","channelName","flex","overflow","Table","dataSource","tableList","scroll","y","pagination","rowKey","guid","rowClassName","getSplitLines","step","i","element","ONEDAY_MILL","mouse","useMouse","elementX","elementY","elementW","elementH","visible","percent","time","start","valueOf","flag","playStart","playEnd","now","begin","end","total","itemStart","itemEnd","itemTotal","displayName"],"sources":["history-control-v2/components/panel/index.js"],"sourcesContent":["import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { forwardRef, useContext, useImperativeHandle, useRef } from 'react';\nimport useCollapse from 'react-collapsed';\nimport { getHistoryUrls, getPlaybackUrlSingle } from '../../../api';\nimport { TimePositionIcon, VideoCloseIcon, VideoPlayIcon } from '../../../icons';\nimport { TimeFormat, guid, getUrlParam } from '../../../utils';\nimport { historyControlV2Context } from '../../context';\nimport collapseBtnImg from '../../images/collapse.png';\nimport { DEFAULT_PLAY_PARAMS, getChannelData } from '../../utils';\nimport { useMouse, useRequest } from 'ahooks';\nimport Button from 'antd/lib/button';\nimport message from 'antd/lib/message';\nimport Table from 'antd/lib/table';\nimport Tooltip from 'antd/lib/tooltip';\nimport moment from 'moment';\nexport const HistoryControlV2Panel = forwardRef((props, ref) => {\n const { channels, setChannels, setLoading, activeIndex, setActiveIndex, timeLinePosition } = useContext(historyControlV2Context);\n const realChannels = channels.filter(item => item.channelNum !== '');\n const segmentsRef = useRef(null);\n const getRef = () => {\n return segmentsRef.current;\n };\n const { onVideoClose } = props;\n const { getCollapseProps, getToggleProps, isExpanded } = useCollapse({\n defaultExpanded: false, // 默认展开\n });\n const { runAsync } = useRequest(getHistoryUrls, {\n manual: true,\n });\n const { runAsync: GetHKV2Url } = useRequest(getPlaybackUrlSingle, {\n manual: true\n });\n const columns = [\n {\n title: '序号',\n dataIndex: 'index',\n width: 50,\n },\n {\n title: '播放视频',\n key: 'play',\n width: 90,\n render: (_, record, index) => {\n var _a;\n const active = ((_a = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _a === void 0 ? void 0 : _a.index) === index;\n return (_jsx(Button, Object.assign({ className: `play-btn ${active ? 'active' : ''}`, onClick: () => {\n if (active) {\n const newChannels = [...channels];\n newChannels[activeIndex].index = -1;\n newChannels[activeIndex].startTime = '';\n newChannels[activeIndex].endTime = '';\n setChannels(newChannels);\n onVideoClose && onVideoClose(newChannels[activeIndex]);\n }\n else {\n // eslint-disable-next-line no-inner-declarations\n function deal(url) {\n const newChannels = [...channels];\n newChannels[activeIndex].index = index;\n newChannels[activeIndex].startTime = record.beginTime;\n newChannels[activeIndex].endTime = record.endTime;\n newChannels[activeIndex].tagId = '';\n newChannels[activeIndex].url = url || record.url;\n setChannels(newChannels);\n }\n if (record.hkType === 'HK_CAR_CLOUD_V2') {\n GetHKV2Url({\n code: record.code,\n beginTime: record.beginTime,\n endTime: record.endTime,\n deviceId: record.deviceId,\n channelNum: record.channelNum,\n tenantId: getUrlParam('tenantId')\n }).then(data => {\n deal(data.playbackUrl);\n });\n }\n else {\n deal();\n }\n }\n } }, { children: active ? (_jsxs(_Fragment, { children: [_jsx(VideoCloseIcon, { active: true }), \"\\u5173\\u95ED\"] })) : (_jsxs(_Fragment, { children: [_jsx(VideoPlayIcon, {}), \"\\u64AD\\u653E\"] })) })));\n },\n },\n {\n title: '设备名称',\n dataIndex: 'deviceName',\n },\n {\n title: '开始时间',\n dataIndex: 'beginTime',\n width: 170,\n },\n {\n title: '结束时间',\n dataIndex: 'endTime',\n width: 170,\n },\n {\n title: '持续时间',\n width: 130,\n dataIndex: 'duration',\n },\n {\n title: '视频大小',\n width: 110,\n dataIndex: 'size',\n },\n ];\n const loadData = (channel) => {\n setLoading(true);\n runAsync({\n deviceChannels: JSON.stringify(channel.deviceChannels),\n protocol: channel.protocol,\n beginTime: channel.beginTime,\n endTime: channel.endTime,\n token: getUrlParam('token')\n }).then((res) => {\n if (Array.isArray(res)) {\n if (res.length > 25) {\n message.info('最多播放25个视频通道');\n }\n const newIds = [...res].map((item) => { return `${item.deviceId}${item.channelNum}`; });\n const newChannels = [...channels];\n channels.map((item, index) => {\n if (!newIds.includes(`${item.deviceId}${item.channelNum}`)) {\n newChannels[index] = Object.assign({ channelIndex: index }, DEFAULT_PLAY_PARAMS);\n }\n });\n const fetchArr = [], fetchIndexArr = [];\n res.filter((item, index) => index < 25)\n .map((item) => {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j;\n /**\n * 优化第一条数据的开始时间不要早于请求的开始时间\n * 最后一条的结束时间不要晚于请求的结束时间\n */\n if (moment((_a = item.list) === null || _a === void 0 ? void 0 : _a[0].beginTime).diff(moment(channel.beginTime), 'seconds') < 0) {\n item.list[0].beginTime = channel.beginTime;\n }\n if (moment((_b = item.list) === null || _b === void 0 ? void 0 : _b[item.list.length - 1].endTime).diff(moment(channel.endTime), 'seconds') > 0) {\n item.list[item.list.length - 1].endTime = channel.endTime;\n }\n const result = (_c = newChannels.filter((citem) => citem.deviceId === item.deviceId && citem.channelNum === item.channelNum)) === null || _c === void 0 ? void 0 : _c[0];\n if (result) {\n const isClose = newChannels[result.channelIndex].index === -1 && newChannels[result.channelIndex].tagId === '';\n newChannels[result.channelIndex] = Object.assign(Object.assign({}, newChannels[result.channelIndex]), { \n // 如果当前既没有播放列表 又没有播放标签 再 开始以第一个播放\n index: isClose ? 0 : newChannels[result.channelIndex].index, startTime: isClose ? ((_e = (_d = item.list) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.beginTime) || channel.beginTime : newChannels[result.channelIndex].startTime, endTime: isClose ? ((_g = (_f = item.list) === null || _f === void 0 ? void 0 : _f[0]) === null || _g === void 0 ? void 0 : _g.beginTime) || channel.beginTime : newChannels[result.channelIndex].endTime });\n }\n else {\n const channelIndex = (_j = (_h = newChannels.filter((item) => item.channelNum === '')) === null || _h === void 0 ? void 0 : _h[0]) === null || _j === void 0 ? void 0 : _j.channelIndex;\n if (typeof channelIndex == 'number') {\n // 过滤跨天的数据\n item.list = item.list.filter(e => e.beginTime.slice(0, 10) === e.endTime.slice(0, 10));\n const data = getChannelData(item, channel);\n if (data.hkType === 'HK_CAR_CLOUD_V2') {\n fetchArr.push(GetHKV2Url({\n code: data.code,\n beginTime: data.startTime,\n endTime: data.endTime,\n deviceId: data.deviceId,\n channelNum: data.channelNum,\n tenantId: getUrlParam('tenantId')\n }));\n fetchIndexArr.push(channelIndex);\n }\n newChannels[channelIndex] = Object.assign(Object.assign({}, newChannels[channelIndex]), data);\n }\n else {\n message.error('没有多余的播放位置');\n }\n }\n });\n if (fetchArr.length) {\n Promise.all(fetchArr).then(data => {\n data.forEach((e, index) => {\n newChannels[fetchIndexArr[index]] = Object.assign(Object.assign({}, newChannels[fetchIndexArr[index]]), { url: e.playbackUrl });\n });\n console.log(newChannels);\n setChannels(newChannels);\n });\n }\n else {\n setChannels(newChannels);\n }\n }\n else {\n message.info('未查询到视频');\n }\n setLoading(false);\n });\n };\n useImperativeHandle(ref, () => {\n return {\n load: (channel) => {\n loadData(channel);\n },\n };\n });\n return (_jsx(_Fragment, { children: Array.isArray(realChannels) && realChannels.length > 0 ? (_jsxs(\"div\", Object.assign({ className: \"collapse-controls\" }, { children: [_jsx(\"div\", Object.assign({ className: \"action-bar\" }, getToggleProps({}), { children: _jsx(\"img\", { src: collapseBtnImg, alt: \"\", style: { transform: `rotate(${isExpanded ? 180 : 0}deg)` } }) })), _jsx(\"section\", Object.assign({ className: \"collapse-panel-container\" }, getCollapseProps(), { children: _jsxs(\"div\", Object.assign({ className: \"panels\" }, { children: [_jsxs(\"div\", Object.assign({ className: \"time-panel\" }, { children: [_jsxs(\"div\", Object.assign({ className: \"segments\", ref: segmentsRef }, { children: [_jsx(TimeVerticalLine, { getRef: getRef, history: channels === null || channels === void 0 ? void 0 : channels[activeIndex].segmentData, onClick: (index, startTime, endTime) => {\n const newChannels = [...channels];\n newChannels[activeIndex] = Object.assign(Object.assign({}, newChannels[activeIndex]), { index, startTime: moment(startTime).format(TimeFormat.params), endTime: moment(endTime).format(TimeFormat.params), tagId: '' });\n setChannels(newChannels);\n } }), getSegments(channels === null || channels === void 0 ? void 0 : channels[activeIndex].segmentData)] })), timeLinePosition >= 0 && (_jsx(TimePositionIcon, { className: \"time-line-icon\", style: {\n left: `${timeLinePosition}%`,\n } })), _jsx(TimeLine, {})] })), _jsxs(\"div\", Object.assign({ style: { display: 'flex' } }, { children: [_jsxs(\"div\", Object.assign({ className: \"panels-left\" }, { children: [_jsxs(\"div\", Object.assign({ className: \"panels-left-title\" }, { children: [\"\\u89C6\\u9891\\u901A\\u9053(\", realChannels.length, \")\"] })), _jsx(\"div\", Object.assign({ className: \"panels-left-wrap\" }, { children: realChannels.map((item, index) => {\n return (_jsx(\"div\", Object.assign({ className: `${activeIndex == index\n ? 'panels-left-content-active'\n : ''} panels-left-content`, onClick: () => {\n setActiveIndex(item.channelIndex);\n } }, { children: _jsx(Tooltip, Object.assign({ title: `${item.channelName}` }, { children: `${item.channelName}` })) }), `${item.deviceId}${item.channelNum}`));\n }) }))] })), _jsx(\"div\", Object.assign({ className: \"urls-panel\", style: { flex: 1, overflow: 'hidden', width: `100%` } }, { children: _jsx(Table, { className: \"history-url-table\", columns: columns, dataSource: (channels === null || channels === void 0 ? void 0 : channels[activeIndex].tableList) || [], scroll: { y: 100 }, pagination: false, rowKey: () => {\n return guid();\n }, rowClassName: (_, index) => { var _a; return index === ((_a = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _a === void 0 ? void 0 : _a.index) ? 'active' : ''; } }) }))] }))] })) }))] }))) : null }));\n});\nconst TimeLine = () => {\n const getSplitLines = () => {\n const result = [];\n const step = 100 / 24;\n for (let i = 0; i < 25; i++) {\n const element = (_jsx(\"div\", Object.assign({ className: \"line\", style: { left: `${step * i}%` } }, { children: _jsx(\"div\", Object.assign({ className: \"number\" }, { children: i >= 10 ? i : '0' + i })) }), i));\n result.push(element);\n }\n return result;\n };\n return (_jsxs(\"div\", Object.assign({ className: \"time-axis\" }, { children: [_jsx(\"div\", { className: \"axis\" }), _jsx(\"div\", Object.assign({ className: \"split-lines\" }, { children: getSplitLines() }))] })));\n};\nconst ONEDAY_MILL = 24 * 60 * 60 * 1000;\nconst TimeVerticalLine = ({ getRef, history, onClick }) => {\n var _a;\n const mouse = useMouse(getRef());\n const { elementX, elementY, elementW, elementH } = mouse;\n const visible = elementX >= 0 && elementY >= 0 && elementX <= elementW && elementY <= elementH;\n // 计算elementX在整个宽度的占比,根据占比在一天中的比例算出具体时间,最后判断这个时间是否在某段视频中。在则显示提示时间。\n const percent = elementX / elementW;\n const time = moment(moment(history.start).valueOf() + percent * ONEDAY_MILL).format(TimeFormat.params);\n let flag = false, playStart = -1, playEnd = -1, index = -1;\n const now = moment(time).valueOf();\n for (let i = 0; i < ((_a = history.list) === null || _a === void 0 ? void 0 : _a.length); i++) {\n const begin = moment(history.list[i].beginTime).valueOf(), end = moment(history.list[i].endTime).valueOf();\n if (now >= begin && now <= end) {\n index = i;\n // url = history.list[i].playbackUrl;\n playStart = now;\n playEnd = end;\n flag = true;\n break;\n }\n }\n return visible ? (flag ? (_jsx(Tooltip, Object.assign({ title: time }, { children: _jsx(\"div\", { className: \"timeline\", style: { left: elementX }, onClick: () => onClick(index, playStart, playEnd) }) }))) : (_jsx(\"div\", { className: \"timeline\", style: { left: elementX }, onClick: () => onClick(index, playStart, playEnd) }))) : (_jsx(_Fragment, {}));\n};\nconst getSegments = (props) => {\n const { list = [], start, end } = props;\n const startTime = moment(start);\n const endTime = moment(end);\n const total = endTime.diff(startTime, 'seconds'); // 总时间\n const result = list === null || list === void 0 ? void 0 : list.map((i) => {\n const itemStart = moment(i.beginTime).diff(startTime, 'seconds') > 0 ? moment(i.beginTime) : startTime;\n const itemEnd = moment(i.endTime);\n const itemTotal = itemEnd.diff(itemStart, 'seconds'); // 分段总时间\n const width = (itemTotal / total) * 100; // 分段时间占总时间百分比\n const left = (itemStart.diff(startTime, 'seconds') / total) * 100; // 分段其实时间\n return (_jsx(\"div\", { className: \"segment\", style: { width: `${width}%`, left: `${left < 0 ? 0 : left}%` } }, i.beginTime));\n });\n return result;\n};\nHistoryControlV2Panel.displayName = 'HistoryControlV2Panel';\nexport default HistoryControlV2Panel;\n"],"mappings":"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"}
|
|
@@ -67,6 +67,8 @@ export interface IHistoryControlProps {
|
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
export type IChannel = {
|
|
70
|
+
hkType?: string;
|
|
71
|
+
code?: string;
|
|
70
72
|
/** 当前的位置的位置 */
|
|
71
73
|
channelIndex?: number;
|
|
72
74
|
index: number;
|
|
@@ -126,7 +128,8 @@ export type IUrlsTableItemType = {
|
|
|
126
128
|
size: string;
|
|
127
129
|
/** 地址 */
|
|
128
130
|
url: string;
|
|
129
|
-
|
|
131
|
+
hkType: string;
|
|
132
|
+
code: string;
|
|
130
133
|
};
|
|
131
134
|
|
|
132
135
|
/** 分段数据 */
|
|
@@ -70,7 +70,7 @@ var DEFAULT_CHANNELS = _toConsumableArray(Array(25)).map(function (item, index)
|
|
|
70
70
|
exports.DEFAULT_CHANNELS = DEFAULT_CHANNELS;
|
|
71
71
|
|
|
72
72
|
var getChannelData = function getChannelData(data, origin) {
|
|
73
|
-
var _a, _b, _c, _d, _e, _f;
|
|
73
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
74
74
|
|
|
75
75
|
var segmentData = {
|
|
76
76
|
list: data.list,
|
|
@@ -78,6 +78,7 @@ var getChannelData = function getChannelData(data, origin) {
|
|
|
78
78
|
end: (0, _moment["default"])(origin === null || origin === void 0 ? void 0 : origin.endTime).endOf('day')
|
|
79
79
|
};
|
|
80
80
|
var result = {
|
|
81
|
+
hkType: data.hkType,
|
|
81
82
|
deviceId: data.deviceId,
|
|
82
83
|
deviceName: data.deviceName,
|
|
83
84
|
channelNum: data.channelNum,
|
|
@@ -88,8 +89,9 @@ var getChannelData = function getChannelData(data, origin) {
|
|
|
88
89
|
tableList: getUrlTableData(data),
|
|
89
90
|
segmentData: segmentData,
|
|
90
91
|
index: (origin === null || origin === void 0 ? void 0 : origin.tagId) ? -1 : 0,
|
|
91
|
-
|
|
92
|
-
|
|
92
|
+
code: (_d = (_c = data.list) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.code,
|
|
93
|
+
startTime: ((_f = (_e = data.list) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.beginTime) || origin.beginTime,
|
|
94
|
+
endTime: ((_h = (_g = data.list) === null || _g === void 0 ? void 0 : _g[0]) === null || _h === void 0 ? void 0 : _h.endTime) || origin.endTime,
|
|
93
95
|
hasLabel: data.hasLabel
|
|
94
96
|
};
|
|
95
97
|
return result;
|
|
@@ -112,6 +114,7 @@ var getUrlTableData = function getUrlTableData(data) {
|
|
|
112
114
|
var totalSeconds = (0, _moment["default"])(endTime).diff((0, _moment["default"])(beginTime), 'seconds');
|
|
113
115
|
return {
|
|
114
116
|
index: i + 1,
|
|
117
|
+
hkType: data.hkType,
|
|
115
118
|
deviceId: data.deviceId,
|
|
116
119
|
channelName: data.channelName,
|
|
117
120
|
deviceName: data.deviceName,
|
|
@@ -122,7 +125,8 @@ var getUrlTableData = function getUrlTableData(data) {
|
|
|
122
125
|
size: (0, _utils.bytesToMegaBytes)(item.size),
|
|
123
126
|
duration: (0, _utils.secondsToString)(totalSeconds),
|
|
124
127
|
downloadUrl: '',
|
|
125
|
-
url: item.playbackUrl || data.url
|
|
128
|
+
url: item.playbackUrl || data.url,
|
|
129
|
+
code: item.code
|
|
126
130
|
};
|
|
127
131
|
});
|
|
128
132
|
return result || [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","names":["DEFAULT_PLAY_PARAMS","channelNum","videoChannelId","tagId","index","url","startTime","endTime","deviceId","deviceName","channelName","tableList","segmentData","list","DEFAULT_GRID","DEFAULT_ACTIVE","DEFAULT_CHANNELS","Array","map","item","channelIndex","getChannelData","data","origin","_a","_b","_c","_d","_e","_f","start","moment","beginTime","startOf","end","endOf","result","playbackUrl","totalTimeUrl","getUrlTableData","hasLabel","i","totalSeconds","diff","format","TimeFormat","params","size","bytesToMegaBytes","duration","secondsToString","downloadUrl"],"sources":["history-control-v2/utils.js"],"sourcesContent":["import { TimeFormat, bytesToMegaBytes, secondsToString } from '../utils';\nimport moment from 'moment';\n/** 默认播放器参数 */\nexport const DEFAULT_PLAY_PARAMS = {\n channelNum: '',\n videoChannelId: '',\n tagId: '',\n index: -1,\n url: '',\n startTime: '',\n endTime: '',\n deviceId: '',\n deviceName: '',\n channelName: '',\n tableList: [],\n segmentData: {\n list: []\n }\n};\nexport const DEFAULT_GRID = 1;\nexport const DEFAULT_ACTIVE = 0;\nexport const DEFAULT_CHANNELS = [...Array(25)].map((item, index) => {\n return {\n channelIndex: index,\n // 通道号\n channelNum: '',\n // 用来判断在下面列表的位置\n index: -1,\n // 如果没有 就不播放\n url: '',\n segmentData: {\n list: []\n }\n };\n});\n/**\n * 获取历史回放表格数据\n * @param data\n * @returns\n */\nexport const getChannelData = (data, origin) => {\n var _a, _b, _c, _d, _e, _f;\n const segmentData = {\n list: data.list,\n start: moment(origin === null || origin === void 0 ? void 0 : origin.beginTime).startOf('day'),\n end: moment(origin === null || origin === void 0 ? void 0 : origin.endTime).endOf('day'),\n };\n const result = {\n deviceId: data.deviceId,\n deviceName: data.deviceName,\n channelNum: data.channelNum,\n channelName: data.channelName,\n tagId: (origin === null || origin === void 0 ? void 0 : origin.tagId) || '',\n url: ((_b = (_a = data.list) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.playbackUrl) || data.totalTimeUrl,\n videoChannelId: data.videoChannelId,\n tableList: getUrlTableData(data),\n segmentData,\n index: (origin === null || origin === void 0 ? void 0 : origin.tagId) ? -1 : 0,\n
|
|
1
|
+
{"version":3,"file":"utils.js","names":["DEFAULT_PLAY_PARAMS","channelNum","videoChannelId","tagId","index","url","startTime","endTime","deviceId","deviceName","channelName","tableList","segmentData","list","DEFAULT_GRID","DEFAULT_ACTIVE","DEFAULT_CHANNELS","Array","map","item","channelIndex","getChannelData","data","origin","_a","_b","_c","_d","_e","_f","_g","_h","start","moment","beginTime","startOf","end","endOf","result","hkType","playbackUrl","totalTimeUrl","getUrlTableData","code","hasLabel","i","totalSeconds","diff","format","TimeFormat","params","size","bytesToMegaBytes","duration","secondsToString","downloadUrl"],"sources":["history-control-v2/utils.js"],"sourcesContent":["import { TimeFormat, bytesToMegaBytes, secondsToString } from '../utils';\nimport moment from 'moment';\n/** 默认播放器参数 */\nexport const DEFAULT_PLAY_PARAMS = {\n channelNum: '',\n videoChannelId: '',\n tagId: '',\n index: -1,\n url: '',\n startTime: '',\n endTime: '',\n deviceId: '',\n deviceName: '',\n channelName: '',\n tableList: [],\n segmentData: {\n list: []\n }\n};\nexport const DEFAULT_GRID = 1;\nexport const DEFAULT_ACTIVE = 0;\nexport const DEFAULT_CHANNELS = [...Array(25)].map((item, index) => {\n return {\n channelIndex: index,\n // 通道号\n channelNum: '',\n // 用来判断在下面列表的位置\n index: -1,\n // 如果没有 就不播放\n url: '',\n segmentData: {\n list: []\n }\n };\n});\n/**\n * 获取历史回放表格数据\n * @param data\n * @returns\n */\nexport const getChannelData = (data, origin) => {\n var _a, _b, _c, _d, _e, _f, _g, _h;\n const segmentData = {\n list: data.list,\n start: moment(origin === null || origin === void 0 ? void 0 : origin.beginTime).startOf('day'),\n end: moment(origin === null || origin === void 0 ? void 0 : origin.endTime).endOf('day'),\n };\n const result = {\n hkType: data.hkType,\n deviceId: data.deviceId,\n deviceName: data.deviceName,\n channelNum: data.channelNum,\n channelName: data.channelName,\n tagId: (origin === null || origin === void 0 ? void 0 : origin.tagId) || '',\n url: ((_b = (_a = data.list) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.playbackUrl) || data.totalTimeUrl,\n videoChannelId: data.videoChannelId,\n tableList: getUrlTableData(data),\n segmentData,\n index: (origin === null || origin === void 0 ? void 0 : origin.tagId) ? -1 : 0,\n code: (_d = (_c = data.list) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.code,\n startTime: ((_f = (_e = data.list) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.beginTime) || origin.beginTime,\n endTime: ((_h = (_g = data.list) === null || _g === void 0 ? void 0 : _g[0]) === null || _h === void 0 ? void 0 : _h.endTime) || origin.endTime,\n hasLabel: data.hasLabel,\n };\n return result;\n};\n/**\n * 获取历史回放表格数据\n * @param data\n * @returns\n */\nexport const getUrlTableData = (data) => {\n var _a;\n const result = (_a = data.list) === null || _a === void 0 ? void 0 : _a.map((item, i) => {\n const beginTime = moment(item.beginTime);\n const endTime = moment(item.endTime);\n const totalSeconds = moment(endTime).diff(moment(beginTime), 'seconds');\n return {\n index: i + 1,\n hkType: data.hkType,\n deviceId: data.deviceId,\n channelName: data.channelName,\n deviceName: data.deviceName,\n channelNum: data.channelNum,\n videoChannelId: data.videoChannelId,\n beginTime: beginTime.format(TimeFormat.params),\n endTime: endTime.format(TimeFormat.params),\n size: bytesToMegaBytes(item.size),\n duration: secondsToString(totalSeconds),\n downloadUrl: '',\n url: item.playbackUrl || data.url,\n code: item.code\n };\n });\n return result || [];\n};\n"],"mappings":"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"}
|