@vtx/player 1.10.14 → 1.10.16

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_jsxRuntime","require","_react","_reactCollapsed","_interopRequireDefault","_api","_icons","_utils","_context","_collapse","_utils2","_utils3","_ahooks","_message","_tooltip","_moment","_VideoTable","obj","__esModule","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","iter","Symbol","iterator","isArray","len","length","i","arr2","HistoryControlV2Panel","forwardRef","props","ref","_a","_b","_c","_d","_e","_useContext","useContext","historyControlV2Context","channels","setChannels","setLoading","activeIndex","setActiveIndex","timeLinePosition","realChannels","filter","item","channelNum","segmentsRef","useRef","getRef","current","onVideoClose","_props$bottomDefaultE","bottomDefaultExpand","_useCollapse","useCollapse","defaultExpanded","getCollapseProps","getToggleProps","isExpanded","_useRequest","useRequest","getHistoryUrls","manual","runAsync","_useRequest2","getPlaybackUrlSingle","GetHKV2Url","_useRequest3","getPlaybackUrlVtxWs","GetVtxWsUrl","loadData","channel","deviceChannels","JSON","stringify","protocol","beginTime","endTime","token","getVtxToken","then","res","message","info","newIds","map","concat","deviceId","newChannels","index","includes","assign","channelIndex","DEFAULT_PLAY_PARAMS","fetchArr","fetchIndexArr","_f","_g","_h","_j","_k","_l","_m","_o","_p","_q","player","findIndex","v","url","startTime","streamType","deviceCode","deviceIp","devicePort","list","moment","diff","result","find","citem","isClose","tagId","e","data","getChannelData","hkType","singleUrl","push","code","tenantId","error","Promise","all","forEach","playbackUrl","console","useImperativeHandle","load","onPlay","useMemoizedFn","active","record","deal","realUrl","rtspUrl","getVtxWsUrl","originalUrl","getVtxWSTimeString","_jsx","_Fragment","children","_jsxs","className","src","collapseBtnImg","alt","style","transform","TimeVerticalLine","history","segmentData","channelName","onClick","sT","format","TimeFormat","params","eT","seekTo","getSegments","TimePositionIcon","left","TimeLine","display","Tooltip","title","flex","overflow","width","VideoTable","tableList","currentIndex","exports","getSplitLines","step","element","ONEDAY_MILL","_ref","mouse","useMouse","elementX","elementY","elementW","elementH","visible","percent","time","start","valueOf","flag","playStart","playEnd","now","begin","end","_props$list","total","itemStart","itemEnd","itemTotal","displayName","_default","memo"],"sources":["history-control-v2/components/panel/index.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { forwardRef, memo, useContext, useImperativeHandle, useRef } from 'react';\nimport useCollapse from 'react-collapsed';\nimport { getHistoryUrls, getPlaybackUrlSingle, getPlaybackUrlVtxWs } from '../../../api';\nimport { TimePositionIcon } from '../../../icons';\nimport { TimeFormat, getVtxWSTimeString } from '../../../utils';\nimport { historyControlV2Context } from '../../context';\nimport collapseBtnImg from '../../images/collapse.png';\nimport { DEFAULT_PLAY_PARAMS, getChannelData, getVtxWsUrl } from '../../utils';\nimport { getVtxToken } from '@vtx/utils';\nimport { useMemoizedFn, useMouse, useRequest } from 'ahooks';\nimport message from 'antd/lib/message';\nimport Tooltip from 'antd/lib/tooltip';\nimport moment from 'moment';\nimport VideoTable from './VideoTable';\nexport const HistoryControlV2Panel = forwardRef((props, ref) => {\n var _a, _b, _c, _d, _e;\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, bottomDefaultExpand = true } = props;\n const { getCollapseProps, getToggleProps, isExpanded } = useCollapse({\n defaultExpanded: bottomDefaultExpand, // 默认展开\n });\n const { runAsync } = useRequest(getHistoryUrls, {\n manual: true,\n });\n const { runAsync: GetHKV2Url } = useRequest(getPlaybackUrlSingle, {\n manual: true,\n });\n const { runAsync: GetVtxWsUrl } = useRequest(getPlaybackUrlVtxWs, {\n manual: true,\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: getVtxToken('token'),\n }).then((res) => {\n setLoading(false);\n if (Array.isArray(res)) {\n if (res.length > 25) {\n message.info('最多播放25个视频通道');\n }\n const newIds = [...res].map((item) => {\n return `${item.deviceId}${item.channelNum}`;\n });\n const newChannels = [...channels];\n channels.map((item, index) => {\n if (!newIds.includes(`${item.deviceId}${item.channelNum}`)) {\n newChannels[index] = Object.assign(Object.assign({ channelIndex: index }, DEFAULT_PLAY_PARAMS), item);\n }\n });\n const fetchArr = [], fetchIndexArr = [];\n res.filter((item, index) => index < 25).map((item) => {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;\n if (item.player === 'icc_ws') {\n const channelIndex = newChannels.findIndex((v) => !v.url);\n newChannels[channelIndex] = Object.assign(Object.assign({}, newChannels[channelIndex]), { url: 'icc_ws', startTime: channel.beginTime, endTime: channel.endTime, streamType: item.streamType, deviceCode: item.deviceCode, deviceId: item.deviceId, deviceIp: item.deviceIp, devicePort: item.devicePort, channelNum: item.channelNum, player: 'icc_ws' });\n return;\n }\n /**\n * 优化第一条数据的开始时间不要早于请求的开始时间\n * 最后一条的结束时间不要晚于请求的结束时间\n */\n if ((_a = item.list) === null || _a === void 0 ? void 0 : _a.length) {\n if (moment((_c = (_b = item.list) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.beginTime).diff(moment(channel.beginTime), 'seconds') < 0) {\n item.list[0].beginTime = channel.beginTime;\n }\n if (moment((_e = (_d = item.list) === null || _d === void 0 ? void 0 : _d[item.list.length - 1]) === null || _e === void 0 ? void 0 : _e.endTime).diff(moment(channel.endTime), 'seconds') > 0) {\n item.list[item.list.length - 1].endTime = channel.endTime;\n }\n }\n const result = newChannels.find((citem) => citem.deviceId === item.deviceId && citem.channelNum === item.channelNum);\n if (result) {\n const isClose = newChannels[result.channelIndex].index === -1 &&\n newChannels[result.channelIndex].tagId === '';\n // 过滤跨天的数据\n item.list = (_g = (_f = item.list) === null || _f === void 0 ? void 0 : _f.filter) === null || _g === void 0 ? void 0 : _g.call(_f, (e) => e.beginTime.slice(0, 10) === e.endTime.slice(0, 10));\n const data = getChannelData(item, channel);\n newChannels[result.channelIndex] = Object.assign(Object.assign(Object.assign({}, newChannels[result.channelIndex]), { \n // 如果当前既没有播放列表 又没有播放标签 再 开始以第一个播放\n index: isClose ? 0 : newChannels[result.channelIndex].index, startTime: isClose\n ? ((_j = (_h = item.list) === null || _h === void 0 ? void 0 : _h[0]) === null || _j === void 0 ? void 0 : _j.beginTime) || channel.beginTime\n : newChannels[result.channelIndex].startTime, endTime: isClose\n ? ((_l = (_k = item.list) === null || _k === void 0 ? void 0 : _k[0]) === null || _l === void 0 ? void 0 : _l.beginTime) || channel.beginTime\n : newChannels[result.channelIndex].endTime }), data);\n }\n else {\n const channelIndex = (_o = (_m = newChannels.filter((item) => item.channelNum === '')) === null || _m === void 0 ? void 0 : _m[0]) === null || _o === void 0 ? void 0 : _o.channelIndex;\n if (typeof channelIndex == 'number') {\n // 过滤跨天的数据\n item.list = (_q = (_p = item.list) === null || _p === void 0 ? void 0 : _p.filter) === null || _q === void 0 ? void 0 : _q.call(_p, (e) => e.beginTime.slice(0, 10) === e.endTime.slice(0, 10));\n const data = getChannelData(item, channel);\n if (['HK_CAR_CLOUD_V2'].includes(data.hkType) || data.singleUrl) {\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: getVtxToken('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 === null || fetchArr === void 0 ? void 0 : fetchArr.length) {\n Promise.all(fetchArr)\n .then((data) => {\n data.forEach((e, index) => {\n newChannels[fetchIndexArr[index]] = Object.assign(Object.assign({}, newChannels[fetchIndexArr[index]]), { url: e.playbackUrl, player: (e === null || e === void 0 ? void 0 : e.player) || '' });\n });\n setChannels(newChannels);\n })\n .catch((error) => {\n console.error('Promise.all 失败:', error); // 添加错误处理\n // 查看具体是哪个请求失败了\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 const onPlay = useMemoizedFn((active, record, index) => {\n if (active) {\n const newChannels = [...channels];\n newChannels[activeIndex].index = -1;\n newChannels[activeIndex].startTime = '';\n newChannels[activeIndex].endTime = '';\n setActiveIndex(activeIndex - 1 > 0 ? activeIndex - 1 : 0);\n setChannels(newChannels);\n onVideoClose && onVideoClose(newChannels[activeIndex]);\n }\n else {\n // eslint-disable-next-line no-inner-declarations\n function deal(url, player) {\n const realUrl = url || record.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 = realUrl;\n newChannels[activeIndex].player = player || record.player;\n setChannels(newChannels);\n }\n // vtx_ws单独调用接口播放\n if (record.player === 'vtx_ws') {\n if (record.hkType !== 'NX') {\n const rtspUrl = getVtxWsUrl(record.originalUrl, getVtxWSTimeString(record.beginTime), getVtxWSTimeString(record.endTime));\n GetVtxWsUrl({\n rtspUrl,\n token: getVtxToken('token'),\n }).then((data) => {\n deal(data, 'vtx_ws');\n });\n }\n else {\n GetHKV2Url({\n code: record.code,\n beginTime: record.beginTime,\n endTime: record.endTime,\n deviceId: record.deviceId,\n channelNum: record.channelNum,\n tenantId: getVtxToken('tenantId'),\n }).then((data) => {\n deal(data.playbackUrl, (data === null || data === void 0 ? void 0 : data.player) || '');\n });\n }\n }\n else if (['HK_CAR_CLOUD_V2', 'DHICC', 'YS', 'NX'].includes(record.hkType) ||\n record.singleUrl) {\n GetHKV2Url({\n code: record.code,\n beginTime: record.beginTime,\n endTime: record.endTime,\n deviceId: record.deviceId,\n channelNum: record.channelNum,\n tenantId: getVtxToken('tenantId'),\n }).then((data) => {\n deal(data.playbackUrl, (data === null || data === void 0 ? void 0 : data.player) || '');\n });\n }\n else {\n deal();\n }\n }\n });\n return (_jsx(_Fragment, { children: Array.isArray(realChannels) && (realChannels === null || realChannels === void 0 ? void 0 : 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: [_jsx(\"div\", Object.assign({ className: \"time-panel\" }, { children: (((_a = realChannels[activeIndex]) === null || _a === void 0 ? void 0 : _a.player) === 'vtx_ws'\n ? ['ISC', 'ICM'].includes((_b = realChannels[activeIndex]) === null || _b === void 0 ? void 0 : _b.hkType)\n : true) && (_jsxs(_Fragment, { 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, channelName: channels === null || channels === void 0 ? void 0 : channels[activeIndex].channelName, onClick: (index, startTime, endTime) => {\n var _a;\n const newChannels = [...channels];\n const originalUrl = (_a = channels === null || channels === void 0 ? void 0 : channels[activeIndex].segmentData) === null || _a === void 0 ? void 0 : _a.originalUrl;\n const player = channels[activeIndex].player;\n const sT = moment(startTime).format(TimeFormat.params); // 当前点击的时间\n const eT = moment(endTime).format(TimeFormat.params); // 分段的结束时间\n newChannels[activeIndex] = Object.assign(Object.assign({}, newChannels[activeIndex]), { index, startTime: sT, endTime: eT, tagId: '' });\n if (player === 'vtx_ws') {\n const rtspUrl = getVtxWsUrl(originalUrl, sT, eT);\n GetVtxWsUrl({\n rtspUrl,\n token: getVtxToken('token'),\n }).then((data) => {\n if (data) {\n newChannels[activeIndex] = Object.assign(Object.assign({}, newChannels[activeIndex]), { url: data });\n setChannels(newChannels);\n }\n });\n }\n else {\n setChannels(newChannels);\n }\n }, seekTo: () => {\n //\n } }), getSegments(channels === null || channels === void 0 ? void 0 : channels[activeIndex].segmentData)] })), _jsxs(_Fragment, { children: [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 === null || realChannels === void 0 ? void 0 : 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 // icc_ws直接播放\n if (item.player === 'icc_ws') {\n //\n }\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(VideoTable, { tableList: ![\n 'HK_CAR_CLOUD_V2',\n 'DHICC',\n 'YS',\n 'ISC',\n 'ICM',\n 'BD',\n 'NX',\n ].includes((_c = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _c === void 0 ? void 0 : _c.hkType)\n ? []\n : (channels === null || channels === void 0 ? void 0 : channels[activeIndex].tableList) || [], currentIndex: (_d = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _d === void 0 ? void 0 : _d.index, hkType: (_e = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _e === void 0 ? void 0 : _e.hkType, onPlay: onPlay }) }))] }))] })) }))] }))) : 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, seekTo, channelName, }) => {\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: `${channelName || ''} ${time}` }, { children: _jsx(\"div\", { className: \"timeline\", style: { left: elementX }, onClick: () => {\n onClick(index, playStart, playEnd);\n seekTo && seekTo(time);\n } }) }))) : (_jsx(\"div\", { className: \"timeline\", style: { left: elementX }, onClick: () => {\n onClick(index, playStart, playEnd);\n seekTo && seekTo(time);\n } }))) : (_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, index) => {\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}_${index}`));\n });\n return result;\n};\nHistoryControlV2Panel.displayName = 'HistoryControlV2Panel';\nexport default memo(HistoryControlV2Panel);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_jsxRuntime","require","_react","_reactCollapsed","_interopRequireDefault","_api","_icons","_utils","_context","_collapse","_utils2","_utils3","_ahooks","_message","_tooltip","_moment","_VideoTable","obj","__esModule","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","iter","Symbol","iterator","isArray","len","length","i","arr2","HistoryControlV2Panel","forwardRef","props","ref","_a","_b","_c","_d","_e","_useContext","useContext","historyControlV2Context","channels","setChannels","setLoading","activeIndex","setActiveIndex","timeLinePosition","realChannels","filter","item","channelNum","segmentsRef","useRef","getRef","current","onVideoClose","_props$bottomDefaultE","bottomDefaultExpand","_useCollapse","useCollapse","defaultExpanded","getCollapseProps","getToggleProps","isExpanded","_useRequest","useRequest","getHistoryUrls","manual","runAsync","_useRequest2","getPlaybackUrlSingle","GetHKV2Url","_useRequest3","getPlaybackUrlVtxWs","GetVtxWsUrl","loadData","channel","deviceChannels","JSON","stringify","protocol","beginTime","endTime","token","getVtxToken","then","res","message","info","newIds","map","concat","deviceId","newChannels","index","includes","assign","channelIndex","DEFAULT_PLAY_PARAMS","fetchArr","fetchIndexArr","_f","_g","_h","_j","_k","_l","_m","_o","_p","_q","player","findIndex","v","url","startTime","streamType","deviceCode","deviceIp","devicePort","list","moment","diff","result","find","citem","isClose","tagId","e","data","getChannelData","hkType","singleUrl","push","code","tenantId","error","Promise","all","forEach","playbackUrl","console","useImperativeHandle","load","onPlay","useMemoizedFn","active","record","deal","realUrl","rtspUrl","getVtxWsUrl","originalUrl","getVtxWSTimeString","_jsx","_Fragment","children","_jsxs","className","src","collapseBtnImg","alt","style","transform","TimeVerticalLine","history","segmentData","channelName","onClick","sT","format","TimeFormat","params","eT","seekTo","getSegments","TimePositionIcon","left","TimeLine","display","Tooltip","title","flex","overflow","width","VideoTable","tableList","currentIndex","exports","getSplitLines","step","element","ONEDAY_MILL","_ref","mouse","useMouse","elementX","elementY","elementW","elementH","visible","percent","time","start","valueOf","flag","playStart","playEnd","now","begin","end","_props$list","total","itemStart","itemEnd","itemTotal","displayName","_default","memo"],"sources":["history-control-v2/components/panel/index.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { forwardRef, memo, useContext, useImperativeHandle, useRef } from 'react';\nimport useCollapse from 'react-collapsed';\nimport { getHistoryUrls, getPlaybackUrlSingle, getPlaybackUrlVtxWs } from '../../../api';\nimport { TimePositionIcon } from '../../../icons';\nimport { TimeFormat, getVtxWSTimeString } from '../../../utils';\nimport { historyControlV2Context } from '../../context';\nimport collapseBtnImg from '../../images/collapse.png';\nimport { DEFAULT_PLAY_PARAMS, getChannelData, getVtxWsUrl } from '../../utils';\nimport { getVtxToken } from '@vtx/utils';\nimport { useMemoizedFn, useMouse, useRequest } from 'ahooks';\nimport message from 'antd/lib/message';\nimport Tooltip from 'antd/lib/tooltip';\nimport moment from 'moment';\nimport VideoTable from './VideoTable';\nexport const HistoryControlV2Panel = forwardRef((props, ref) => {\n var _a, _b, _c, _d, _e;\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, bottomDefaultExpand = true } = props;\n const { getCollapseProps, getToggleProps, isExpanded } = useCollapse({\n defaultExpanded: bottomDefaultExpand, // 默认展开\n });\n const { runAsync } = useRequest(getHistoryUrls, {\n manual: true,\n });\n const { runAsync: GetHKV2Url } = useRequest(getPlaybackUrlSingle, {\n manual: true,\n });\n const { runAsync: GetVtxWsUrl } = useRequest(getPlaybackUrlVtxWs, {\n manual: true,\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: getVtxToken('token'),\n }).then((res) => {\n setLoading(false);\n if (Array.isArray(res)) {\n if (res.length > 25) {\n message.info('最多播放25个视频通道');\n }\n const newIds = [...res].map((item) => {\n return `${item.deviceId}${item.channelNum}`;\n });\n const newChannels = [...channels];\n channels.map((item, index) => {\n if (!newIds.includes(`${item.deviceId}${item.channelNum}`)) {\n newChannels[index] = Object.assign(Object.assign({ channelIndex: index }, DEFAULT_PLAY_PARAMS), item);\n }\n });\n const fetchArr = [], fetchIndexArr = [];\n res.filter((item, index) => index < 25).map((item) => {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;\n if (item.player === 'icc_ws') {\n const channelIndex = newChannels.findIndex((v) => !v.url);\n newChannels[channelIndex] = Object.assign(Object.assign({}, newChannels[channelIndex]), { url: 'icc_ws', startTime: channel.beginTime, endTime: channel.endTime, streamType: item.streamType, deviceCode: item.deviceCode, deviceId: item.deviceId, deviceIp: item.deviceIp, devicePort: item.devicePort, channelNum: item.channelNum, player: 'icc_ws' });\n return;\n }\n /**\n * 优化第一条数据的开始时间不要早于请求的开始时间\n * 最后一条的结束时间不要晚于请求的结束时间\n */\n if ((_a = item.list) === null || _a === void 0 ? void 0 : _a.length) {\n if (moment((_c = (_b = item.list) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.beginTime).diff(moment(channel.beginTime), 'seconds') < 0) {\n item.list[0].beginTime = channel.beginTime;\n }\n if (moment((_e = (_d = item.list) === null || _d === void 0 ? void 0 : _d[item.list.length - 1]) === null || _e === void 0 ? void 0 : _e.endTime).diff(moment(channel.endTime), 'seconds') > 0) {\n item.list[item.list.length - 1].endTime = channel.endTime;\n }\n }\n const result = newChannels.find((citem) => citem.deviceId === item.deviceId && citem.channelNum === item.channelNum);\n if (result) {\n const isClose = newChannels[result.channelIndex].index === -1 &&\n newChannels[result.channelIndex].tagId === '';\n // 过滤跨天的数据\n item.list = (_g = (_f = item.list) === null || _f === void 0 ? void 0 : _f.filter) === null || _g === void 0 ? void 0 : _g.call(_f, (e) => e.beginTime.slice(0, 10) === e.endTime.slice(0, 10));\n const data = getChannelData(item, channel);\n newChannels[result.channelIndex] = Object.assign(Object.assign(Object.assign({}, newChannels[result.channelIndex]), { \n // 如果当前既没有播放列表 又没有播放标签 再 开始以第一个播放\n index: isClose ? 0 : newChannels[result.channelIndex].index, startTime: isClose\n ? ((_j = (_h = item.list) === null || _h === void 0 ? void 0 : _h[0]) === null || _j === void 0 ? void 0 : _j.beginTime) || channel.beginTime\n : newChannels[result.channelIndex].startTime, endTime: isClose\n ? ((_l = (_k = item.list) === null || _k === void 0 ? void 0 : _k[0]) === null || _l === void 0 ? void 0 : _l.beginTime) || channel.beginTime\n : newChannels[result.channelIndex].endTime }), data);\n }\n else {\n const channelIndex = (_o = (_m = newChannels.filter((item) => item.channelNum === '')) === null || _m === void 0 ? void 0 : _m[0]) === null || _o === void 0 ? void 0 : _o.channelIndex;\n if (typeof channelIndex == 'number') {\n // 过滤跨天的数据\n item.list = (_q = (_p = item.list) === null || _p === void 0 ? void 0 : _p.filter) === null || _q === void 0 ? void 0 : _q.call(_p, (e) => e.beginTime.slice(0, 10) === e.endTime.slice(0, 10));\n const data = getChannelData(item, channel);\n if (['HK_CAR_CLOUD_V2'].includes(data.hkType) || data.singleUrl) {\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: getVtxToken('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 === null || fetchArr === void 0 ? void 0 : fetchArr.length) {\n Promise.all(fetchArr)\n .then((data) => {\n data.forEach((e, index) => {\n newChannels[fetchIndexArr[index]] = Object.assign(Object.assign({}, newChannels[fetchIndexArr[index]]), { url: e.playbackUrl, player: (e === null || e === void 0 ? void 0 : e.player) || '' });\n });\n setChannels(newChannels);\n })\n .catch((error) => {\n console.error('Promise.all 失败:', error); // 添加错误处理\n // 查看具体是哪个请求失败了\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 const onPlay = useMemoizedFn((active, record, index) => {\n if (active) {\n const newChannels = [...channels];\n newChannels[activeIndex].index = -1;\n newChannels[activeIndex].startTime = '';\n newChannels[activeIndex].endTime = '';\n setActiveIndex(activeIndex - 1 > 0 ? activeIndex - 1 : 0);\n setChannels(newChannels);\n onVideoClose && onVideoClose(newChannels[activeIndex]);\n }\n else {\n // eslint-disable-next-line no-inner-declarations\n function deal(url, player) {\n const realUrl = url || record.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 = realUrl;\n newChannels[activeIndex].player = player || record.player;\n setChannels(newChannels);\n }\n // vtx_ws单独调用接口播放\n if (record.player === 'vtx_ws') {\n if (['ISC', 'ICM'].includes(record.hkType)) {\n const rtspUrl = getVtxWsUrl(record.originalUrl || record.url, getVtxWSTimeString(record.beginTime), getVtxWSTimeString(record.endTime));\n GetVtxWsUrl({\n rtspUrl,\n token: getVtxToken('token'),\n }).then((data) => {\n deal(data, 'vtx_ws');\n });\n }\n else {\n GetHKV2Url({\n code: record.code,\n beginTime: record.beginTime,\n endTime: record.endTime,\n deviceId: record.deviceId,\n channelNum: record.channelNum,\n tenantId: getVtxToken('tenantId'),\n }).then((data) => {\n deal(data.playbackUrl, (data === null || data === void 0 ? void 0 : data.player) || '');\n });\n }\n }\n else if (['HK_CAR_CLOUD_V2', 'DHICC', 'YS', 'NX'].includes(record.hkType) ||\n record.singleUrl) {\n GetHKV2Url({\n code: record.code,\n beginTime: record.beginTime,\n endTime: record.endTime,\n deviceId: record.deviceId,\n channelNum: record.channelNum,\n tenantId: getVtxToken('tenantId'),\n }).then((data) => {\n deal(data.playbackUrl, (data === null || data === void 0 ? void 0 : data.player) || '');\n });\n }\n else {\n deal();\n }\n }\n });\n return (_jsx(_Fragment, { children: Array.isArray(realChannels) && (realChannels === null || realChannels === void 0 ? void 0 : 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: [_jsx(\"div\", Object.assign({ className: \"time-panel\" }, { children: (((_a = realChannels[activeIndex]) === null || _a === void 0 ? void 0 : _a.player) === 'vtx_ws'\n ? [\n 'ISC',\n 'ICM',\n 'HK_CAR_CLOUD_V2',\n 'DHICC',\n 'YS',\n 'BD',\n 'NX',\n 'ZJ',\n 'SZGJ',\n ].includes((_b = realChannels[activeIndex]) === null || _b === void 0 ? void 0 : _b.hkType)\n : true) && (_jsxs(_Fragment, { 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, channelName: channels === null || channels === void 0 ? void 0 : channels[activeIndex].channelName, onClick: (index, startTime, endTime) => {\n var _a;\n const newChannels = [...channels];\n const originalUrl = (_a = channels === null || channels === void 0 ? void 0 : channels[activeIndex].segmentData) === null || _a === void 0 ? void 0 : _a.originalUrl;\n const player = channels[activeIndex].player;\n const sT = moment(startTime).format(TimeFormat.params); // 当前点击的时间\n const eT = moment(endTime).format(TimeFormat.params); // 分段的结束时间\n newChannels[activeIndex] = Object.assign(Object.assign({}, newChannels[activeIndex]), { index, startTime: sT, endTime: eT, tagId: '' });\n if (player === 'vtx_ws') {\n const rtspUrl = getVtxWsUrl(originalUrl, sT, eT);\n GetVtxWsUrl({\n rtspUrl,\n token: getVtxToken('token'),\n }).then((data) => {\n if (data) {\n newChannels[activeIndex] = Object.assign(Object.assign({}, newChannels[activeIndex]), { url: data });\n setChannels(newChannels);\n }\n });\n }\n else {\n setChannels(newChannels);\n }\n }, seekTo: () => {\n //\n } }), getSegments(channels === null || channels === void 0 ? void 0 : channels[activeIndex].segmentData)] })), _jsxs(_Fragment, { children: [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 === null || realChannels === void 0 ? void 0 : 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 // icc_ws直接播放\n if (item.player === 'icc_ws') {\n //\n }\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(VideoTable, { tableList: ![\n 'HK_CAR_CLOUD_V2',\n 'DHICC',\n 'YS',\n 'ISC',\n 'ICM',\n 'BD',\n 'NX',\n 'ZJ',\n 'SZGJ',\n ].includes((_c = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _c === void 0 ? void 0 : _c.hkType)\n ? []\n : (channels === null || channels === void 0 ? void 0 : channels[activeIndex].tableList) || [], currentIndex: (_d = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _d === void 0 ? void 0 : _d.index, hkType: (_e = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _e === void 0 ? void 0 : _e.hkType, onPlay: onPlay }) }))] }))] })) }))] }))) : 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, seekTo, channelName, }) => {\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: `${channelName || ''} ${time}` }, { children: _jsx(\"div\", { className: \"timeline\", style: { left: elementX }, onClick: () => {\n onClick(index, playStart, playEnd);\n seekTo && seekTo(time);\n } }) }))) : (_jsx(\"div\", { className: \"timeline\", style: { left: elementX }, onClick: () => {\n onClick(index, playStart, playEnd);\n seekTo && seekTo(time);\n } }))) : (_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, index) => {\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}_${index}`));\n });\n return result;\n};\nHistoryControlV2Panel.displayName = 'HistoryControlV2Panel';\nexport default memo(HistoryControlV2Panel);\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,IAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,QAAA,GAAAP,OAAA;AACA,IAAAQ,SAAA,GAAAL,sBAAA,CAAAH,OAAA;AACA,IAAAS,OAAA,GAAAT,OAAA;AACA,IAAAU,OAAA,GAAAV,OAAA;AACA,IAAAW,OAAA,GAAAX,OAAA;AACA,IAAAY,QAAA,GAAAT,sBAAA,CAAAH,OAAA;AACA,IAAAa,QAAA,GAAAV,sBAAA,CAAAH,OAAA;AACA,IAAAc,OAAA,GAAAX,sBAAA,CAAAH,OAAA;AACA,IAAAe,WAAA,GAAAZ,sBAAA,CAAAH,OAAA;AAAsC,SAAAG,uBAAAa,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAE,mBAAAC,GAAA,WAAAC,kBAAA,CAAAD,GAAA,KAAAE,gBAAA,CAAAF,GAAA,KAAAG,2BAAA,CAAAH,GAAA,KAAAI,kBAAA;AAAA,SAAAA,mBAAA,cAAAC,SAAA;AAAA,SAAAF,4BAAAG,CAAA,EAAAC,MAAA,SAAAD,CAAA,qBAAAA,CAAA,sBAAAE,iBAAA,CAAAF,CAAA,EAAAC,MAAA,OAAAE,CAAA,GAAAC,MAAA,CAAAC,SAAA,CAAAC,QAAA,CAAAC,IAAA,CAAAP,CAAA,EAAAQ,KAAA,aAAAL,CAAA,iBAAAH,CAAA,CAAAS,WAAA,EAAAN,CAAA,GAAAH,CAAA,CAAAS,WAAA,CAAAC,IAAA,MAAAP,CAAA,cAAAA,CAAA,mBAAAQ,KAAA,CAAAC,IAAA,CAAAZ,CAAA,OAAAG,CAAA,+DAAAU,IAAA,CAAAV,CAAA,UAAAD,iBAAA,CAAAF,CAAA,EAAAC,MAAA;AAAA,SAAAL,iBAAAkB,IAAA,eAAAC,MAAA,oBAAAD,IAAA,CAAAC,MAAA,CAAAC,QAAA,aAAAF,IAAA,+BAAAH,KAAA,CAAAC,IAAA,CAAAE,IAAA;AAAA,SAAAnB,mBAAAD,GAAA,QAAAiB,KAAA,CAAAM,OAAA,CAAAvB,GAAA,UAAAQ,iBAAA,CAAAR,GAAA;AAAA,SAAAQ,kBAAAR,GAAA,EAAAwB,GAAA,QAAAA,GAAA,YAAAA,GAAA,GAAAxB,GAAA,CAAAyB,MAAA,EAAAD,GAAA,GAAAxB,GAAA,CAAAyB,MAAA,WAAAC,CAAA,MAAAC,IAAA,OAAAV,KAAA,CAAAO,GAAA,GAAAE,CAAA,GAAAF,GAAA,EAAAE,CAAA,MAAAC,IAAA,CAAAD,CAAA,IAAA1B,GAAA,CAAA0B,CAAA,YAAAC,IAAA;AAC/B,IAAMC,qBAAqB,gBAAG,IAAAC,iBAAU,EAAC,UAACC,KAAK,EAAEC,GAAG,EAAK;EAC5D,IAAIC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE;EACtB,IAAAC,WAAA,GAA6F,IAAAC,iBAAU,EAACC,gCAAuB,CAAC;IAAxHC,QAAQ,GAAAH,WAAA,CAARG,QAAQ;IAAEC,WAAW,GAAAJ,WAAA,CAAXI,WAAW;IAAEC,UAAU,GAAAL,WAAA,CAAVK,UAAU;IAAEC,WAAW,GAAAN,WAAA,CAAXM,WAAW;IAAEC,cAAc,GAAAP,WAAA,CAAdO,cAAc;IAAEC,gBAAgB,GAAAR,WAAA,CAAhBQ,gBAAgB;EACxF,IAAMC,YAAY,GAAGN,QAAQ,CAACO,MAAM,CAAC,UAACC,IAAI;IAAA,OAAKA,IAAI,CAACC,UAAU,KAAK,EAAE;EAAA,EAAC;EACtE,IAAMC,WAAW,GAAG,IAAAC,aAAM,EAAC,IAAI,CAAC;EAChC,IAAMC,MAAM,GAAG,SAATA,MAAMA,CAAA,EAAS;IACjB,OAAOF,WAAW,CAACG,OAAO;EAC9B,CAAC;EACD,IAAQC,YAAY,GAAiCxB,KAAK,CAAlDwB,YAAY;IAAAC,qBAAA,GAAiCzB,KAAK,CAApC0B,mBAAmB;IAAnBA,mBAAmB,GAAAD,qBAAA,cAAG,IAAI,GAAAA,qBAAA;EAChD,IAAAE,YAAA,GAAyD,IAAAC,0BAAW,EAAC;MACjEC,eAAe,EAAEH,mBAAmB,CAAE;IAC1C,CAAC,CAAC;IAFMI,gBAAgB,GAAAH,YAAA,CAAhBG,gBAAgB;IAAEC,cAAc,GAAAJ,YAAA,CAAdI,cAAc;IAAEC,UAAU,GAAAL,YAAA,CAAVK,UAAU;EAGpD,IAAAC,WAAA,GAAqB,IAAAC,kBAAU,EAACC,mBAAc,EAAE;MAC5CC,MAAM,EAAE;IACZ,CAAC,CAAC;IAFMC,QAAQ,GAAAJ,WAAA,CAARI,QAAQ;EAGhB,IAAAC,YAAA,GAAiC,IAAAJ,kBAAU,EAACK,yBAAoB,EAAE;MAC9DH,MAAM,EAAE;IACZ,CAAC,CAAC;IAFgBI,UAAU,GAAAF,YAAA,CAApBD,QAAQ;EAGhB,IAAAI,YAAA,GAAkC,IAAAP,kBAAU,EAACQ,wBAAmB,EAAE;MAC9DN,MAAM,EAAE;IACZ,CAAC,CAAC;IAFgBO,WAAW,GAAAF,YAAA,CAArBJ,QAAQ;EAGhB,IAAMO,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,OAAO,EAAK;IAC1BjC,UAAU,CAAC,IAAI,CAAC;IAChByB,QAAQ,CAAC;MACLS,cAAc,EAAEC,IAAI,CAACC,SAAS,CAACH,OAAO,CAACC,cAAc,CAAC;MACtDG,QAAQ,EAAEJ,OAAO,CAACI,QAAQ;MAC1BC,SAAS,EAAEL,OAAO,CAACK,SAAS;MAC5BC,OAAO,EAAEN,OAAO,CAACM,OAAO;MACxBC,KAAK,EAAE,IAAAC,mBAAW,EAAC,OAAO;IAC9B,CAAC,CAAC,CAACC,IAAI,CAAC,UAACC,GAAG,EAAK;MACb3C,UAAU,CAAC,KAAK,CAAC;MACjB,IAAIzB,KAAK,CAACM,OAAO,CAAC8D,GAAG,CAAC,EAAE;QACpB,IAAIA,GAAG,CAAC5D,MAAM,GAAG,EAAE,EAAE;UACjB6D,mBAAO,CAACC,IAAI,CAAC,aAAa,CAAC;QAC/B;QACA,IAAMC,MAAM,GAAGzF,kBAAA,CAAIsF,GAAG,EAAEI,GAAG,CAAC,UAACzC,IAAI,EAAK;UAClC,UAAA0C,MAAA,CAAU1C,IAAI,CAAC2C,QAAQ,EAAAD,MAAA,CAAG1C,IAAI,CAACC,UAAU;QAC7C,CAAC,CAAC;QACF,IAAM2C,WAAW,GAAA7F,kBAAA,CAAOyC,QAAQ,CAAC;QACjCA,QAAQ,CAACiD,GAAG,CAAC,UAACzC,IAAI,EAAE6C,KAAK,EAAK;UAC1B,IAAI,CAACL,MAAM,CAACM,QAAQ,IAAAJ,MAAA,CAAI1C,IAAI,CAAC2C,QAAQ,EAAAD,MAAA,CAAG1C,IAAI,CAACC,UAAU,CAAE,CAAC,EAAE;YACxD2C,WAAW,CAACC,KAAK,CAAC,GAAGnF,MAAM,CAACqF,MAAM,CAACrF,MAAM,CAACqF,MAAM,CAAC;cAAEC,YAAY,EAAEH;YAAM,CAAC,EAAEI,2BAAmB,CAAC,EAAEjD,IAAI,CAAC;UACzG;QACJ,CAAC,CAAC;QACF,IAAMkD,QAAQ,GAAG,EAAE;UAAEC,aAAa,GAAG,EAAE;QACvCd,GAAG,CAACtC,MAAM,CAAC,UAACC,IAAI,EAAE6C,KAAK;UAAA,OAAKA,KAAK,GAAG,EAAE;QAAA,EAAC,CAACJ,GAAG,CAAC,UAACzC,IAAI,EAAK;UAClD,IAAIhB,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEgE,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE;UAC9D,IAAI7D,IAAI,CAAC8D,MAAM,KAAK,QAAQ,EAAE;YAC1B,IAAMd,YAAY,GAAGJ,WAAW,CAACmB,SAAS,CAAC,UAACC,CAAC;cAAA,OAAK,CAACA,CAAC,CAACC,GAAG;YAAA,EAAC;YACzDrB,WAAW,CAACI,YAAY,CAAC,GAAGtF,MAAM,CAACqF,MAAM,CAACrF,MAAM,CAACqF,MAAM,CAAC,CAAC,CAAC,EAAEH,WAAW,CAACI,YAAY,CAAC,CAAC,EAAE;cAAEiB,GAAG,EAAE,QAAQ;cAAEC,SAAS,EAAEvC,OAAO,CAACK,SAAS;cAAEC,OAAO,EAAEN,OAAO,CAACM,OAAO;cAAEkC,UAAU,EAAEnE,IAAI,CAACmE,UAAU;cAAEC,UAAU,EAAEpE,IAAI,CAACoE,UAAU;cAAEzB,QAAQ,EAAE3C,IAAI,CAAC2C,QAAQ;cAAE0B,QAAQ,EAAErE,IAAI,CAACqE,QAAQ;cAAEC,UAAU,EAAEtE,IAAI,CAACsE,UAAU;cAAErE,UAAU,EAAED,IAAI,CAACC,UAAU;cAAE6D,MAAM,EAAE;YAAS,CAAC,CAAC;YAC1V;UACJ;UACA;AACpB;AACA;AACA;UACoB,IAAI,CAAC9E,EAAE,GAAGgB,IAAI,CAACuE,IAAI,MAAM,IAAI,IAAIvF,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACP,MAAM,EAAE;YACjE,IAAI,IAAA+F,kBAAM,EAAC,CAACtF,EAAE,GAAG,CAACD,EAAE,GAAGe,IAAI,CAACuE,IAAI,MAAM,IAAI,IAAItF,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAIC,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC8C,SAAS,CAAC,CAACyC,IAAI,CAAC,IAAAD,kBAAM,EAAC7C,OAAO,CAACK,SAAS,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE;cAC7KhC,IAAI,CAACuE,IAAI,CAAC,CAAC,CAAC,CAACvC,SAAS,GAAGL,OAAO,CAACK,SAAS;YAC9C;YACA,IAAI,IAAAwC,kBAAM,EAAC,CAACpF,EAAE,GAAG,CAACD,EAAE,GAAGa,IAAI,CAACuE,IAAI,MAAM,IAAI,IAAIpF,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACa,IAAI,CAACuE,IAAI,CAAC9F,MAAM,GAAG,CAAC,CAAC,MAAM,IAAI,IAAIW,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC6C,OAAO,CAAC,CAACwC,IAAI,CAAC,IAAAD,kBAAM,EAAC7C,OAAO,CAACM,OAAO,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE;cAC5LjC,IAAI,CAACuE,IAAI,CAACvE,IAAI,CAACuE,IAAI,CAAC9F,MAAM,GAAG,CAAC,CAAC,CAACwD,OAAO,GAAGN,OAAO,CAACM,OAAO;YAC7D;UACJ;UACA,IAAMyC,MAAM,GAAG9B,WAAW,CAAC+B,IAAI,CAAC,UAACC,KAAK;YAAA,OAAKA,KAAK,CAACjC,QAAQ,KAAK3C,IAAI,CAAC2C,QAAQ,IAAIiC,KAAK,CAAC3E,UAAU,KAAKD,IAAI,CAACC,UAAU;UAAA,EAAC;UACpH,IAAIyE,MAAM,EAAE;YACR,IAAMG,OAAO,GAAGjC,WAAW,CAAC8B,MAAM,CAAC1B,YAAY,CAAC,CAACH,KAAK,KAAK,CAAC,CAAC,IACzDD,WAAW,CAAC8B,MAAM,CAAC1B,YAAY,CAAC,CAAC8B,KAAK,KAAK,EAAE;YACjD;YACA9E,IAAI,CAACuE,IAAI,GAAG,CAAClB,EAAE,GAAG,CAACD,EAAE,GAAGpD,IAAI,CAACuE,IAAI,MAAM,IAAI,IAAInB,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACrD,MAAM,MAAM,IAAI,IAAIsD,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACxF,IAAI,CAACuF,EAAE,EAAE,UAAC2B,CAAC;cAAA,OAAKA,CAAC,CAAC/C,SAAS,CAAClE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAKiH,CAAC,CAAC9C,OAAO,CAACnE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YAAA,EAAC;YAC/L,IAAMkH,IAAI,GAAG,IAAAC,sBAAc,EAACjF,IAAI,EAAE2B,OAAO,CAAC;YAC1CiB,WAAW,CAAC8B,MAAM,CAAC1B,YAAY,CAAC,GAAGtF,MAAM,CAACqF,MAAM,CAACrF,MAAM,CAACqF,MAAM,CAACrF,MAAM,CAACqF,MAAM,CAAC,CAAC,CAAC,EAAEH,WAAW,CAAC8B,MAAM,CAAC1B,YAAY,CAAC,CAAC,EAAE;cAChH;cACAH,KAAK,EAAEgC,OAAO,GAAG,CAAC,GAAGjC,WAAW,CAAC8B,MAAM,CAAC1B,YAAY,CAAC,CAACH,KAAK;cAAEqB,SAAS,EAAEW,OAAO,GACzE,CAAC,CAACtB,EAAE,GAAG,CAACD,EAAE,GAAGtD,IAAI,CAACuE,IAAI,MAAM,IAAI,IAAIjB,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAIC,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACvB,SAAS,KAAKL,OAAO,CAACK,SAAS,GAC3IY,WAAW,CAAC8B,MAAM,CAAC1B,YAAY,CAAC,CAACkB,SAAS;cAAEjC,OAAO,EAAE4C,OAAO,GAC5D,CAAC,CAACpB,EAAE,GAAG,CAACD,EAAE,GAAGxD,IAAI,CAACuE,IAAI,MAAM,IAAI,IAAIf,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAIC,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACzB,SAAS,KAAKL,OAAO,CAACK,SAAS,GAC3IY,WAAW,CAAC8B,MAAM,CAAC1B,YAAY,CAAC,CAACf;YAAQ,CAAC,CAAC,EAAE+C,IAAI,CAAC;UAChE,CAAC,MACI;YACD,IAAMhC,aAAY,GAAG,CAACW,EAAE,GAAG,CAACD,EAAE,GAAGd,WAAW,CAAC7C,MAAM,CAAC,UAACC,IAAI;cAAA,OAAKA,IAAI,CAACC,UAAU,KAAK,EAAE;YAAA,EAAC,MAAM,IAAI,IAAIyD,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAIC,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACX,YAAY;YACvL,IAAI,OAAOA,aAAY,IAAI,QAAQ,EAAE;cACjC;cACAhD,IAAI,CAACuE,IAAI,GAAG,CAACV,EAAE,GAAG,CAACD,EAAE,GAAG5D,IAAI,CAACuE,IAAI,MAAM,IAAI,IAAIX,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC7D,MAAM,MAAM,IAAI,IAAI8D,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAChG,IAAI,CAAC+F,EAAE,EAAE,UAACmB,CAAC;gBAAA,OAAKA,CAAC,CAAC/C,SAAS,CAAClE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAKiH,CAAC,CAAC9C,OAAO,CAACnE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;cAAA,EAAC;cAC/L,IAAMkH,KAAI,GAAG,IAAAC,sBAAc,EAACjF,IAAI,EAAE2B,OAAO,CAAC;cAC1C,IAAI,CAAC,iBAAiB,CAAC,CAACmB,QAAQ,CAACkC,KAAI,CAACE,MAAM,CAAC,IAAIF,KAAI,CAACG,SAAS,EAAE;gBAC7DjC,QAAQ,CAACkC,IAAI,CAAC9D,UAAU,CAAC;kBACrB+D,IAAI,EAAEL,KAAI,CAACK,IAAI;kBACfrD,SAAS,EAAEgD,KAAI,CAACd,SAAS;kBACzBjC,OAAO,EAAE+C,KAAI,CAAC/C,OAAO;kBACrBU,QAAQ,EAAEqC,KAAI,CAACrC,QAAQ;kBACvB1C,UAAU,EAAE+E,KAAI,CAAC/E,UAAU;kBAC3BqF,QAAQ,EAAE,IAAAnD,mBAAW,EAAC,UAAU;gBACpC,CAAC,CAAC,CAAC;gBACHgB,aAAa,CAACiC,IAAI,CAACpC,aAAY,CAAC;cACpC;cACAJ,WAAW,CAACI,aAAY,CAAC,GAAGtF,MAAM,CAACqF,MAAM,CAACrF,MAAM,CAACqF,MAAM,CAAC,CAAC,CAAC,EAAEH,WAAW,CAACI,aAAY,CAAC,CAAC,EAAEgC,KAAI,CAAC;YACjG,CAAC,MACI;cACD1C,mBAAO,CAACiD,KAAK,CAAC,WAAW,CAAC;YAC9B;UACJ;QACJ,CAAC,CAAC;QACF,IAAIrC,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,QAAQ,CAACzE,MAAM,EAAE;UACrE+G,OAAO,CAACC,GAAG,CAACvC,QAAQ,CAAC,CAChBd,IAAI,CAAC,UAAC4C,IAAI,EAAK;YAChBA,IAAI,CAACU,OAAO,CAAC,UAACX,CAAC,EAAElC,KAAK,EAAK;cACvBD,WAAW,CAACO,aAAa,CAACN,KAAK,CAAC,CAAC,GAAGnF,MAAM,CAACqF,MAAM,CAACrF,MAAM,CAACqF,MAAM,CAAC,CAAC,CAAC,EAAEH,WAAW,CAACO,aAAa,CAACN,KAAK,CAAC,CAAC,CAAC,EAAE;gBAAEoB,GAAG,EAAEc,CAAC,CAACY,WAAW;gBAAE7B,MAAM,EAAE,CAACiB,CAAC,KAAK,IAAI,IAAIA,CAAC,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,CAAC,CAACjB,MAAM,KAAK;cAAG,CAAC,CAAC;YACnM,CAAC,CAAC;YACFrE,WAAW,CAACmD,WAAW,CAAC;UAC5B,CAAC,CAAC,SACQ,CAAC,UAAC2C,KAAK,EAAK;YAClBK,OAAO,CAACL,KAAK,CAAC,iBAAiB,EAAEA,KAAK,CAAC,CAAC,CAAC;YACzC;UACJ,CAAC,CAAC;QACN,CAAC,MACI;UACD9F,WAAW,CAACmD,WAAW,CAAC;QAC5B;MACJ,CAAC,MACI;QACDN,mBAAO,CAACC,IAAI,CAAC,QAAQ,CAAC;MAC1B;MACA7C,UAAU,CAAC,KAAK,CAAC;IACrB,CAAC,CAAC;EACN,CAAC;EACD,IAAAmG,0BAAmB,EAAC9G,GAAG,EAAE,YAAM;IAC3B,OAAO;MACH+G,IAAI,EAAE,SAAAA,KAACnE,OAAO,EAAK;QACfD,QAAQ,CAACC,OAAO,CAAC;MACrB;IACJ,CAAC;EACL,CAAC,CAAC;EACF,IAAMoE,MAAM,GAAG,IAAAC,qBAAa,EAAC,UAACC,MAAM,EAAEC,MAAM,EAAErD,KAAK,EAAK;IACpD,IAAIoD,MAAM,EAAE;MACR,IAAMrD,WAAW,GAAA7F,kBAAA,CAAOyC,QAAQ,CAAC;MACjCoD,WAAW,CAACjD,WAAW,CAAC,CAACkD,KAAK,GAAG,CAAC,CAAC;MACnCD,WAAW,CAACjD,WAAW,CAAC,CAACuE,SAAS,GAAG,EAAE;MACvCtB,WAAW,CAACjD,WAAW,CAAC,CAACsC,OAAO,GAAG,EAAE;MACrCrC,cAAc,CAACD,WAAW,GAAG,CAAC,GAAG,CAAC,GAAGA,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC;MACzDF,WAAW,CAACmD,WAAW,CAAC;MACxBtC,YAAY,IAAIA,YAAY,CAACsC,WAAW,CAACjD,WAAW,CAAC,CAAC;IAC1D,CAAC,MACI;MACD;MAAA,IACSwG,IAAI,GAAb,SAASA,IAAIA,CAAClC,GAAG,EAAEH,MAAM,EAAE;QACvB,IAAMsC,OAAO,GAAGnC,GAAG,IAAIiC,MAAM,CAACjC,GAAG;QACjC,IAAMrB,WAAW,GAAA7F,kBAAA,CAAOyC,QAAQ,CAAC;QACjCoD,WAAW,CAACjD,WAAW,CAAC,CAACkD,KAAK,GAAGA,KAAK;QACtCD,WAAW,CAACjD,WAAW,CAAC,CAACuE,SAAS,GAAGgC,MAAM,CAAClE,SAAS;QACrDY,WAAW,CAACjD,WAAW,CAAC,CAACsC,OAAO,GAAGiE,MAAM,CAACjE,OAAO;QACjDW,WAAW,CAACjD,WAAW,CAAC,CAACmF,KAAK,GAAG,EAAE;QACnClC,WAAW,CAACjD,WAAW,CAAC,CAACsE,GAAG,GAAGmC,OAAO;QACtCxD,WAAW,CAACjD,WAAW,CAAC,CAACmE,MAAM,GAAGA,MAAM,IAAIoC,MAAM,CAACpC,MAAM;QACzDrE,WAAW,CAACmD,WAAW,CAAC;MAC5B,CAAC,EACD;MACA,IAAIsD,MAAM,CAACpC,MAAM,KAAK,QAAQ,EAAE;QAC5B,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAChB,QAAQ,CAACoD,MAAM,CAAChB,MAAM,CAAC,EAAE;UACxC,IAAMmB,OAAO,GAAG,IAAAC,mBAAW,EAACJ,MAAM,CAACK,WAAW,IAAIL,MAAM,CAACjC,GAAG,EAAE,IAAAuC,yBAAkB,EAACN,MAAM,CAAClE,SAAS,CAAC,EAAE,IAAAwE,yBAAkB,EAACN,MAAM,CAACjE,OAAO,CAAC,CAAC;UACvIR,WAAW,CAAC;YACR4E,OAAO,EAAPA,OAAO;YACPnE,KAAK,EAAE,IAAAC,mBAAW,EAAC,OAAO;UAC9B,CAAC,CAAC,CAACC,IAAI,CAAC,UAAC4C,IAAI,EAAK;YACdmB,IAAI,CAACnB,IAAI,EAAE,QAAQ,CAAC;UACxB,CAAC,CAAC;QACN,CAAC,MACI;UACD1D,UAAU,CAAC;YACP+D,IAAI,EAAEa,MAAM,CAACb,IAAI;YACjBrD,SAAS,EAAEkE,MAAM,CAAClE,SAAS;YAC3BC,OAAO,EAAEiE,MAAM,CAACjE,OAAO;YACvBU,QAAQ,EAAEuD,MAAM,CAACvD,QAAQ;YACzB1C,UAAU,EAAEiG,MAAM,CAACjG,UAAU;YAC7BqF,QAAQ,EAAE,IAAAnD,mBAAW,EAAC,UAAU;UACpC,CAAC,CAAC,CAACC,IAAI,CAAC,UAAC4C,IAAI,EAAK;YACdmB,IAAI,CAACnB,IAAI,CAACW,WAAW,EAAE,CAACX,IAAI,KAAK,IAAI,IAAIA,IAAI,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,IAAI,CAAClB,MAAM,KAAK,EAAE,CAAC;UAC3F,CAAC,CAAC;QACN;MACJ,CAAC,MACI,IAAI,CAAC,iBAAiB,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAChB,QAAQ,CAACoD,MAAM,CAAChB,MAAM,CAAC,IACrEgB,MAAM,CAACf,SAAS,EAAE;QAClB7D,UAAU,CAAC;UACP+D,IAAI,EAAEa,MAAM,CAACb,IAAI;UACjBrD,SAAS,EAAEkE,MAAM,CAAClE,SAAS;UAC3BC,OAAO,EAAEiE,MAAM,CAACjE,OAAO;UACvBU,QAAQ,EAAEuD,MAAM,CAACvD,QAAQ;UACzB1C,UAAU,EAAEiG,MAAM,CAACjG,UAAU;UAC7BqF,QAAQ,EAAE,IAAAnD,mBAAW,EAAC,UAAU;QACpC,CAAC,CAAC,CAACC,IAAI,CAAC,UAAC4C,IAAI,EAAK;UACdmB,IAAI,CAACnB,IAAI,CAACW,WAAW,EAAE,CAACX,IAAI,KAAK,IAAI,IAAIA,IAAI,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,IAAI,CAAClB,MAAM,KAAK,EAAE,CAAC;QAC3F,CAAC,CAAC;MACN,CAAC,MACI;QACDqC,IAAI,CAAC,CAAC;MACV;IACJ;EACJ,CAAC,CAAC;EACF,OAAQ,IAAAM,eAAI,EAACC,oBAAS,EAAE;IAAEC,QAAQ,EAAE1I,KAAK,CAACM,OAAO,CAACuB,YAAY,CAAC,IAAI,CAACA,YAAY,KAAK,IAAI,IAAIA,YAAY,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,YAAY,CAACrB,MAAM,IAAI,CAAC,GAAI,IAAAmI,gBAAK,EAAC,KAAK,EAAElJ,MAAM,CAACqF,MAAM,CAAC;MAAE8D,SAAS,EAAE;IAAoB,CAAC,EAAE;MAAEF,QAAQ,EAAE,CAAC,IAAAF,eAAI,EAAC,KAAK,EAAE/I,MAAM,CAACqF,MAAM,CAAC;QAAE8D,SAAS,EAAE;MAAa,CAAC,EAAEhG,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE;QAAE8F,QAAQ,EAAE,IAAAF,eAAI,EAAC,KAAK,EAAE;UAAEK,GAAG,EAAEC,oBAAc;UAAEC,GAAG,EAAE,EAAE;UAAEC,KAAK,EAAE;YAAEC,SAAS,YAAAxE,MAAA,CAAY5B,UAAU,GAAG,GAAG,GAAG,CAAC;UAAO;QAAE,CAAC;MAAE,CAAC,CAAC,CAAC,EAAE,IAAA2F,eAAI,EAAC,SAAS,EAAE/I,MAAM,CAACqF,MAAM,CAAC;QAAE8D,SAAS,EAAE;MAA2B,CAAC,EAAEjG,gBAAgB,CAAC,CAAC,EAAE;QAAE+F,QAAQ,EAAE,IAAAC,gBAAK,EAAC,KAAK,EAAElJ,MAAM,CAACqF,MAAM,CAAC;UAAE8D,SAAS,EAAE;QAAS,CAAC,EAAE;UAAEF,QAAQ,EAAE,CAAC,IAAAF,eAAI,EAAC,KAAK,EAAE/I,MAAM,CAACqF,MAAM,CAAC;YAAE8D,SAAS,EAAE;UAAa,CAAC,EAAE;YAAEF,QAAQ,EAAE,CAAC,CAAC,CAAC3H,EAAE,GAAGc,YAAY,CAACH,WAAW,CAAC,MAAM,IAAI,IAAIX,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC8E,MAAM,MAAM,QAAQ,GACxtB,CACE,KAAK,EACL,KAAK,EACL,iBAAiB,EACjB,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,MAAM,CACT,CAAChB,QAAQ,CAAC,CAAC7D,EAAE,GAAGa,YAAY,CAACH,WAAW,CAAC,MAAM,IAAI,IAAIV,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACiG,MAAM,CAAC,GACzF,IAAI,KAAM,IAAA0B,gBAAK,EAACF,oBAAS,EAAE;cAAEC,QAAQ,EAAE,CAAC,IAAAC,gBAAK,EAAC,KAAK,EAAElJ,MAAM,CAACqF,MAAM,CAAC;gBAAE8D,SAAS,EAAE,UAAU;gBAAE9H,GAAG,EAAEmB;cAAY,CAAC,EAAE;gBAAEyG,QAAQ,EAAE,CAAC,IAAAF,eAAI,EAACU,gBAAgB,EAAE;kBAAE/G,MAAM,EAAEA,MAAM;kBAAEgH,OAAO,EAAE5H,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,QAAQ,CAACG,WAAW,CAAC,CAAC0H,WAAW;kBAAEC,WAAW,EAAE9H,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,QAAQ,CAACG,WAAW,CAAC,CAAC2H,WAAW;kBAAEC,OAAO,EAAE,SAAAA,QAAC1E,KAAK,EAAEqB,SAAS,EAAEjC,OAAO,EAAK;oBAChY,IAAIjD,EAAE;oBACN,IAAM4D,WAAW,GAAA7F,kBAAA,CAAOyC,QAAQ,CAAC;oBACjC,IAAM+G,WAAW,GAAG,CAACvH,EAAE,GAAGQ,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,QAAQ,CAACG,WAAW,CAAC,CAAC0H,WAAW,MAAM,IAAI,IAAIrI,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACuH,WAAW;oBACpK,IAAMzC,MAAM,GAAGtE,QAAQ,CAACG,WAAW,CAAC,CAACmE,MAAM;oBAC3C,IAAM0D,EAAE,GAAG,IAAAhD,kBAAM,EAACN,SAAS,CAAC,CAACuD,MAAM,CAACC,iBAAU,CAACC,MAAM,CAAC,CAAC,CAAC;oBACxD,IAAMC,EAAE,GAAG,IAAApD,kBAAM,EAACvC,OAAO,CAAC,CAACwF,MAAM,CAACC,iBAAU,CAACC,MAAM,CAAC,CAAC,CAAC;oBACtD/E,WAAW,CAACjD,WAAW,CAAC,GAAGjC,MAAM,CAACqF,MAAM,CAACrF,MAAM,CAACqF,MAAM,CAAC,CAAC,CAAC,EAAEH,WAAW,CAACjD,WAAW,CAAC,CAAC,EAAE;sBAAEkD,KAAK,EAALA,KAAK;sBAAEqB,SAAS,EAAEsD,EAAE;sBAAEvF,OAAO,EAAE2F,EAAE;sBAAE9C,KAAK,EAAE;oBAAG,CAAC,CAAC;oBACvI,IAAIhB,MAAM,KAAK,QAAQ,EAAE;sBACrB,IAAMuC,OAAO,GAAG,IAAAC,mBAAW,EAACC,WAAW,EAAEiB,EAAE,EAAEI,EAAE,CAAC;sBAChDnG,WAAW,CAAC;wBACR4E,OAAO,EAAPA,OAAO;wBACPnE,KAAK,EAAE,IAAAC,mBAAW,EAAC,OAAO;sBAC9B,CAAC,CAAC,CAACC,IAAI,CAAC,UAAC4C,IAAI,EAAK;wBACd,IAAIA,IAAI,EAAE;0BACNpC,WAAW,CAACjD,WAAW,CAAC,GAAGjC,MAAM,CAACqF,MAAM,CAACrF,MAAM,CAACqF,MAAM,CAAC,CAAC,CAAC,EAAEH,WAAW,CAACjD,WAAW,CAAC,CAAC,EAAE;4BAAEsE,GAAG,EAAEe;0BAAK,CAAC,CAAC;0BACpGvF,WAAW,CAACmD,WAAW,CAAC;wBAC5B;sBACJ,CAAC,CAAC;oBACN,CAAC,MACI;sBACDnD,WAAW,CAACmD,WAAW,CAAC;oBAC5B;kBACJ,CAAC;kBAAEiF,MAAM,EAAE,SAAAA,OAAA,EAAM;oBACb;kBAAA;gBACF,CAAC,CAAC,EAAEC,WAAW,CAACtI,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,QAAQ,CAACG,WAAW,CAAC,CAAC0H,WAAW,CAAC;cAAE,CAAC,CAAC,CAAC,EAAE,IAAAT,gBAAK,EAACF,oBAAS,EAAE;gBAAEC,QAAQ,EAAE,CAAC9G,gBAAgB,IAAI,CAAC,IAAK,IAAA4G,eAAI,EAACsB,uBAAgB,EAAE;kBAAElB,SAAS,EAAE,gBAAgB;kBAAEI,KAAK,EAAE;oBAChOe,IAAI,KAAAtF,MAAA,CAAK7C,gBAAgB;kBAC7B;gBAAE,CAAC,CAAE,EAAE,IAAA4G,eAAI,EAACwB,QAAQ,EAAE,CAAC,CAAC,CAAC;cAAE,CAAC,CAAC;YAAE,CAAC;UAAG,CAAC,CAAC,CAAC,EAAE,IAAArB,gBAAK,EAAC,KAAK,EAAElJ,MAAM,CAACqF,MAAM,CAAC;YAAEkE,KAAK,EAAE;cAAEiB,OAAO,EAAE;YAAO;UAAE,CAAC,EAAE;YAAEvB,QAAQ,EAAE,CAAC,IAAAC,gBAAK,EAAC,KAAK,EAAElJ,MAAM,CAACqF,MAAM,CAAC;cAAE8D,SAAS,EAAE;YAAc,CAAC,EAAE;cAAEF,QAAQ,EAAE,CAAC,IAAAC,gBAAK,EAAC,KAAK,EAAElJ,MAAM,CAACqF,MAAM,CAAC;gBAAE8D,SAAS,EAAE;cAAoB,CAAC,EAAE;gBAAEF,QAAQ,EAAE,CAAC,2BAA2B,EAAE7G,YAAY,KAAK,IAAI,IAAIA,YAAY,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,YAAY,CAACrB,MAAM,EAAE,GAAG;cAAE,CAAC,CAAC,CAAC,EAAE,IAAAgI,eAAI,EAAC,KAAK,EAAE/I,MAAM,CAACqF,MAAM,CAAC;gBAAE8D,SAAS,EAAE;cAAmB,CAAC,EAAE;gBAAEF,QAAQ,EAAE7G,YAAY,CAAC2C,GAAG,CAAC,UAACzC,IAAI,EAAE6C,KAAK,EAAK;kBACre,OAAQ,IAAA4D,eAAI,EAAC,KAAK,EAAE/I,MAAM,CAACqF,MAAM,CAAC;oBAAE8D,SAAS,KAAAnE,MAAA,CAAK/C,WAAW,IAAIkD,KAAK,GAC5D,4BAA4B,GAC5B,EAAE,yBAAsB;oBAAE0E,OAAO,EAAE,SAAAA,QAAA,EAAM;sBAC3C3H,cAAc,CAACI,IAAI,CAACgD,YAAY,CAAC;sBACjC;sBACA,IAAIhD,IAAI,CAAC8D,MAAM,KAAK,QAAQ,EAAE;wBAC1B;sBAAA;oBAER;kBAAE,CAAC,EAAE;oBAAE6C,QAAQ,EAAE,IAAAF,eAAI,EAAC0B,mBAAO,EAAEzK,MAAM,CAACqF,MAAM,CAAC;sBAAEqF,KAAK,KAAA1F,MAAA,CAAK1C,IAAI,CAACsH,WAAW;oBAAG,CAAC,EAAE;sBAAEX,QAAQ,KAAAjE,MAAA,CAAK1C,IAAI,CAACsH,WAAW;oBAAG,CAAC,CAAC;kBAAE,CAAC,CAAC,KAAA5E,MAAA,CAAK1C,IAAI,CAAC2C,QAAQ,EAAAD,MAAA,CAAG1C,IAAI,CAACC,UAAU,CAAE,CAAC;gBACtK,CAAC;cAAE,CAAC,CAAC,CAAC;YAAE,CAAC,CAAC,CAAC,EAAE,IAAAwG,eAAI,EAAC,KAAK,EAAE/I,MAAM,CAACqF,MAAM,CAAC;cAAE8D,SAAS,EAAE,YAAY;cAAEI,KAAK,EAAE;gBAAEoB,IAAI,EAAE,CAAC;gBAAEC,QAAQ,EAAE,QAAQ;gBAAEC,KAAK;cAAS;YAAE,CAAC,EAAE;cAAE5B,QAAQ,EAAE,IAAAF,eAAI,EAAC+B,sBAAU,EAAE;gBAAEC,SAAS,EAAE,CAAC,CACtK,iBAAiB,EACjB,OAAO,EACP,IAAI,EACJ,KAAK,EACL,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,MAAM,CACT,CAAC3F,QAAQ,CAAC,CAAC5D,EAAE,GAAGM,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,QAAQ,CAACG,WAAW,CAAC,MAAM,IAAI,IAAIT,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACgG,MAAM,CAAC,GACrI,EAAE,GACF,CAAC1F,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,QAAQ,CAACG,WAAW,CAAC,CAAC8I,SAAS,KAAK,EAAE;gBAAEC,YAAY,EAAE,CAACvJ,EAAE,GAAGK,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,QAAQ,CAACG,WAAW,CAAC,MAAM,IAAI,IAAIR,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC0D,KAAK;gBAAEqC,MAAM,EAAE,CAAC9F,EAAE,GAAGI,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,QAAQ,CAACG,WAAW,CAAC,MAAM,IAAI,IAAIP,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC8F,MAAM;gBAAEa,MAAM,EAAEA;cAAO,CAAC;YAAE,CAAC,CAAC,CAAC;UAAE,CAAC,CAAC,CAAC;QAAE,CAAC,CAAC;MAAE,CAAC,CAAC,CAAC;IAAE,CAAC,CAAC,CAAC,GAAI;EAAK,CAAC,CAAC;AACzd,CAAC,CAAC;AAAC4C,OAAA,CAAA/J,qBAAA,GAAAA,qBAAA;AACH,IAAMqJ,QAAQ,GAAG,SAAXA,QAAQA,CAAA,EAAS;EACnB,IAAMW,aAAa,GAAG,SAAhBA,aAAaA,CAAA,EAAS;IACxB,IAAMlE,MAAM,GAAG,EAAE;IACjB,IAAMmE,IAAI,GAAG,GAAG,GAAG,EAAE;IACrB,KAAK,IAAInK,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,EAAE,EAAEA,CAAC,EAAE,EAAE;MACzB,IAAMoK,OAAO,GAAI,IAAArC,eAAI,EAAC,KAAK,EAAE/I,MAAM,CAACqF,MAAM,CAAC;QAAE8D,SAAS,EAAE,MAAM;QAAEI,KAAK,EAAE;UAAEe,IAAI,KAAAtF,MAAA,CAAKmG,IAAI,GAAGnK,CAAC;QAAI;MAAE,CAAC,EAAE;QAAEiI,QAAQ,EAAE,IAAAF,eAAI,EAAC,KAAK,EAAE/I,MAAM,CAACqF,MAAM,CAAC;UAAE8D,SAAS,EAAE;QAAS,CAAC,EAAE;UAAEF,QAAQ,EAAEjI,CAAC,IAAI,EAAE,GAAGA,CAAC,GAAG,GAAG,GAAGA;QAAE,CAAC,CAAC;MAAE,CAAC,CAAC,EAAEA,CAAC,CAAE;MAC/MgG,MAAM,CAACU,IAAI,CAAC0D,OAAO,CAAC;IACxB;IACA,OAAOpE,MAAM;EACjB,CAAC;EACD,OAAQ,IAAAkC,gBAAK,EAAC,KAAK,EAAElJ,MAAM,CAACqF,MAAM,CAAC;IAAE8D,SAAS,EAAE;EAAY,CAAC,EAAE;IAAEF,QAAQ,EAAE,CAAC,IAAAF,eAAI,EAAC,KAAK,EAAE;MAAEI,SAAS,EAAE;IAAO,CAAC,CAAC,EAAE,IAAAJ,eAAI,EAAC,KAAK,EAAE/I,MAAM,CAACqF,MAAM,CAAC;MAAE8D,SAAS,EAAE;IAAc,CAAC,EAAE;MAAEF,QAAQ,EAAEiC,aAAa,CAAC;IAAE,CAAC,CAAC,CAAC;EAAE,CAAC,CAAC,CAAC;AAChN,CAAC;AACD,IAAMG,WAAW,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;AACvC,IAAM5B,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAA6B,IAAA,EAA2D;EAAA,IAArD5I,MAAM,GAAA4I,IAAA,CAAN5I,MAAM;IAAEgH,OAAO,GAAA4B,IAAA,CAAP5B,OAAO;IAAEG,QAAO,GAAAyB,IAAA,CAAPzB,OAAO;IAAEM,MAAM,GAAAmB,IAAA,CAANnB,MAAM;IAAEP,WAAW,GAAA0B,IAAA,CAAX1B,WAAW;EACrE,IAAItI,EAAE;EACN,IAAMiK,KAAK,GAAG,IAAAC,gBAAQ,EAAC9I,MAAM,CAAC,CAAC,CAAC;EAChC,IAAQ+I,QAAQ,GAAmCF,KAAK,CAAhDE,QAAQ;IAAEC,QAAQ,GAAyBH,KAAK,CAAtCG,QAAQ;IAAEC,QAAQ,GAAeJ,KAAK,CAA5BI,QAAQ;IAAEC,QAAQ,GAAKL,KAAK,CAAlBK,QAAQ;EAC9C,IAAMC,OAAO,GAAGJ,QAAQ,IAAI,CAAC,IAAIC,QAAQ,IAAI,CAAC,IAAID,QAAQ,IAAIE,QAAQ,IAAID,QAAQ,IAAIE,QAAQ;EAC9F;EACA,IAAME,OAAO,GAAGL,QAAQ,GAAGE,QAAQ;EACnC,IAAMI,IAAI,GAAG,IAAAjF,kBAAM,EAAC,IAAAA,kBAAM,EAAC4C,OAAO,CAACsC,KAAK,CAAC,CAACC,OAAO,CAAC,CAAC,GAAGH,OAAO,GAAGT,WAAW,CAAC,CAACtB,MAAM,CAACC,iBAAU,CAACC,MAAM,CAAC;EACtG,IAAIiC,IAAI,GAAG,KAAK;IAAEC,SAAS,GAAG,CAAC,CAAC;IAAEC,OAAO,GAAG,CAAC,CAAC;IAAEjH,KAAK,GAAG,CAAC,CAAC;EAC1D,IAAMkH,GAAG,GAAG,IAAAvF,kBAAM,EAACiF,IAAI,CAAC,CAACE,OAAO,CAAC,CAAC;EAClC,KAAK,IAAIjL,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAI,CAACM,EAAE,GAAGoI,OAAO,CAAC7C,IAAI,MAAM,IAAI,IAAIvF,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACP,MAAM,CAAC,EAAEC,CAAC,EAAE,EAAE;IAC3F,IAAMsL,KAAK,GAAG,IAAAxF,kBAAM,EAAC4C,OAAO,CAAC7C,IAAI,CAAC7F,CAAC,CAAC,CAACsD,SAAS,CAAC,CAAC2H,OAAO,CAAC,CAAC;MAAEM,GAAG,GAAG,IAAAzF,kBAAM,EAAC4C,OAAO,CAAC7C,IAAI,CAAC7F,CAAC,CAAC,CAACuD,OAAO,CAAC,CAAC0H,OAAO,CAAC,CAAC;IAC1G,IAAII,GAAG,IAAIC,KAAK,IAAID,GAAG,IAAIE,GAAG,EAAE;MAC5BpH,KAAK,GAAGnE,CAAC;MACT;MACAmL,SAAS,GAAGE,GAAG;MACfD,OAAO,GAAGG,GAAG;MACbL,IAAI,GAAG,IAAI;MACX;IACJ;EACJ;EACA,OAAOL,OAAO,GAAIK,IAAI,GAAI,IAAAnD,eAAI,EAAC0B,mBAAO,EAAEzK,MAAM,CAACqF,MAAM,CAAC;IAAEqF,KAAK,KAAA1F,MAAA,CAAK4E,WAAW,IAAI,EAAE,QAAA5E,MAAA,CAAK+G,IAAI;EAAG,CAAC,EAAE;IAAE9C,QAAQ,EAAE,IAAAF,eAAI,EAAC,KAAK,EAAE;MAAEI,SAAS,EAAE,UAAU;MAAEI,KAAK,EAAE;QAAEe,IAAI,EAAEmB;MAAS,CAAC;MAAE5B,OAAO,EAAE,SAAAA,QAAA,EAAM;QACjLA,QAAO,CAAC1E,KAAK,EAAEgH,SAAS,EAAEC,OAAO,CAAC;QAClCjC,MAAM,IAAIA,MAAM,CAAC4B,IAAI,CAAC;MAC1B;IAAE,CAAC;EAAE,CAAC,CAAC,CAAC,GAAK,IAAAhD,eAAI,EAAC,KAAK,EAAE;IAAEI,SAAS,EAAE,UAAU;IAAEI,KAAK,EAAE;MAAEe,IAAI,EAAEmB;IAAS,CAAC;IAAE5B,OAAO,EAAE,SAAAA,QAAA,EAAM;MAC5FA,QAAO,CAAC1E,KAAK,EAAEgH,SAAS,EAAEC,OAAO,CAAC;MAClCjC,MAAM,IAAIA,MAAM,CAAC4B,IAAI,CAAC;IAC1B;EAAE,CAAC,CAAE,GAAK,IAAAhD,eAAI,EAACC,oBAAS,EAAE,CAAC,CAAC,CAAE;AACtC,CAAC;AACD,IAAMoB,WAAW,GAAG,SAAdA,WAAWA,CAAIhJ,KAAK,EAAK;EAC3B,IAAAoL,WAAA,GAAkCpL,KAAK,CAA/ByF,IAAI;IAAJA,IAAI,GAAA2F,WAAA,cAAG,EAAE,GAAAA,WAAA;IAAER,KAAK,GAAU5K,KAAK,CAApB4K,KAAK;IAAEO,GAAG,GAAKnL,KAAK,CAAbmL,GAAG;EAC7B,IAAM/F,SAAS,GAAG,IAAAM,kBAAM,EAACkF,KAAK,CAAC;EAC/B,IAAMzH,OAAO,GAAG,IAAAuC,kBAAM,EAACyF,GAAG,CAAC;EAC3B,IAAME,KAAK,GAAGlI,OAAO,CAACwC,IAAI,CAACP,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;EAClD,IAAMQ,MAAM,GAAGH,IAAI,KAAK,IAAI,IAAIA,IAAI,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,IAAI,CAAC9B,GAAG,CAAC,UAAC/D,CAAC,EAAEmE,KAAK,EAAK;IAC9E,IAAMuH,SAAS,GAAG,IAAA5F,kBAAM,EAAC9F,CAAC,CAACsD,SAAS,CAAC,CAACyC,IAAI,CAACP,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,IAAAM,kBAAM,EAAC9F,CAAC,CAACsD,SAAS,CAAC,GAAGkC,SAAS;IACtG,IAAMmG,OAAO,GAAG,IAAA7F,kBAAM,EAAC9F,CAAC,CAACuD,OAAO,CAAC;IACjC,IAAMqI,SAAS,GAAGD,OAAO,CAAC5F,IAAI,CAAC2F,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;IACtD,IAAM7B,KAAK,GAAI+B,SAAS,GAAGH,KAAK,GAAI,GAAG,CAAC,CAAC;IACzC,IAAMnC,IAAI,GAAIoC,SAAS,CAAC3F,IAAI,CAACP,SAAS,EAAE,SAAS,CAAC,GAAGiG,KAAK,GAAI,GAAG,CAAC,CAAC;IACnE,OAAQ,IAAA1D,eAAI,EAAC,KAAK,EAAE;MAAEI,SAAS,EAAE,SAAS;MAAEI,KAAK,EAAE;QAAEsB,KAAK,KAAA7F,MAAA,CAAK6F,KAAK,MAAG;QAAEP,IAAI,KAAAtF,MAAA,CAAKsF,IAAI,GAAG,CAAC,GAAG,CAAC,GAAGA,IAAI;MAAI;IAAE,CAAC,KAAAtF,MAAA,CAAKhE,CAAC,CAACsD,SAAS,OAAAU,MAAA,CAAIG,KAAK,CAAE,CAAC;EAC5I,CAAC,CAAC;EACF,OAAO6B,MAAM;AACjB,CAAC;AACD9F,qBAAqB,CAAC2L,WAAW,GAAG,uBAAuB;AAAC,IAAAC,QAAA,gBAC7C,IAAAC,WAAI,EAAC7L,qBAAqB,CAAC;AAAA+J,OAAA,cAAA6B,QAAA","ignoreList":[]}
@@ -206,7 +206,7 @@ var HistoryControlV2 = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref)
206
206
  Object.values(playRefs.current).forEach(function (player) {
207
207
  player && player.saveRecordFetch();
208
208
  });
209
- onVideoCloseAll();
209
+ onVideoCloseAll === null || onVideoCloseAll === void 0 ? void 0 : onVideoCloseAll();
210
210
  setChannels(_utils2.DEFAULT_CHANNELS);
211
211
  };
212
212
  var getGridItems = function getGridItems() {
@@ -309,7 +309,7 @@ var HistoryControlV2 = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref)
309
309
  })), (0, _jsxRuntime.jsx)(_panel["default"], {
310
310
  bottomDefaultExpand: bottomDefaultExpand,
311
311
  onVideoClose: function onVideoClose(channel) {
312
- _onVideoClose(channel, channels);
312
+ _onVideoClose === null || _onVideoClose === void 0 ? void 0 : _onVideoClose(channel, channels);
313
313
  },
314
314
  ref: panelRef,
315
315
  seekTo: function seekTo(time) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_jsxRuntime","require","_react","_api","_splitScreen","_interopRequireWildcard","_videoScale","_interopRequireDefault","_icons","_icons2","_utils","_ahooks","_space","_spin","_gridItem","_panel","_context2","_utils2","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","i","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","n","toString","slice","constructor","name","test","len","length","arr2","_i","_arr","_n","_d","_s","_e","next","done","push","value","err","__awaiter","thisArg","_arguments","P","generator","adopt","resolve","Promise","reject","fulfilled","step","e","rejected","result","then","apply","HistoryControlV2","forwardRef","props","ref","_props$width","width","_props$height","height","defaultGrid","_props$bottomDefaultE","bottomDefaultExpand","onExpandChange","onVideoClose","onVideoCloseAll","onScreenshot","onPlayingChannelChange","onTimeChange","_useSetState","useSetState","expand","grid","DEFAULT_GRID","scale","_useSetState2","state","setState","_useState","useState","DEFAULT_CHANNELS","_useState2","channels","setChannels","_useState3","_useState4","loading","setLoading","_useState5","DEFAULT_ACTIVE","_useState6","activeIndex","setActiveIndex","_useState7","_useState8","timeLinePosition","setTimeLinePosition","_useState9","_useState10","timelineCurrentTime","setTimelineCurrentTime","panelRef","useRef","playRefs","wrapRef","_useFullscreen","useFullscreen","_useFullscreen2","isFullscreen","toggleFullscreen","_useRequest","useRequest","getHistoryUrl","manual","runAsync","_useRequest2","getVideoLabelById","getVideoLabelByIdAsync","useImperativeHandle","load","channel","current","start","playInfo","_regenerator","mark","_callee","_a","_b","_c","labelRes","res","newChannels","resultChannel","channelIndex","wrap","_callee$","_context","prev","tagId","id","sent","deviceId","videoDeviceId","channelNum","videoChannelNum","beginTime","startTime","endTime","protocol","token","getVtxToken","filter","citem","assign","index","item","getChannelData","stop","unLoadAll","handleCloseAll","handleExpand","values","forEach","player","saveRecordFetch","getGridItems","items","_loop","element","_jsx","GridItem","selfRef","active","palyIndex","onClick","onClose","deviceName","channelName","url","tableList","aIndex","find","ele","Number","store","useMemo","useEffect","getRealGrid","realChannels","className","style","children","_jsxs","historyControlV2Context","Provider","Spin","spinning","size","concat","Panel","seekTo","time","Space","align","display","FoldIcon","ExpandIcon","CloseAllIcon","SplitScreen","setGrid","GridIcon","DownOutlined","UpOutlined","VideoScale","setScale","OccupyingScreenIcon","ExitFullScreenIcon","FullScreenIcon","exports","displayName","_default"],"sources":["history-control-v2/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 { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { forwardRef, useEffect, useImperativeHandle, useMemo, useRef, useState } from 'react';\nimport { getHistoryUrl, getVideoLabelById } from '../api';\nimport SplitScreen, { getRealGrid } from '../components/split-screen';\nimport VideoScale from '../components/video-scale';\nimport { CloseAllIcon, ExitFullScreenIcon, ExpandIcon, FoldIcon, FullScreenIcon, GridIcon, OccupyingScreenIcon, } from '../icons';\nimport { DownOutlined, UpOutlined } from '@ant-design/icons';\nimport { getVtxToken } from '@vtx/utils';\nimport { useFullscreen, useRequest, useSetState } from 'ahooks';\nimport Space from 'antd/lib/space';\nimport Spin from 'antd/lib/spin';\nimport GridItem from './components/grid-item';\nimport Panel from './components/panel';\nimport { historyControlV2Context } from './context';\nimport { DEFAULT_ACTIVE, DEFAULT_CHANNELS, DEFAULT_GRID, getChannelData } from './utils';\n/**\n * 历史视频控制器\n */\nexport const HistoryControlV2 = forwardRef((props, ref) => {\n const { width = '100%', height = '100%', defaultGrid, bottomDefaultExpand = true, onExpandChange, onVideoClose, onVideoCloseAll, onScreenshot, onPlayingChannelChange, onTimeChange, } = props;\n const [state, setState] = useSetState({\n expand: true,\n grid: defaultGrid || DEFAULT_GRID,\n scale: '100%',\n });\n const [channels, setChannels] = useState(DEFAULT_CHANNELS);\n const [loading, setLoading] = useState(false);\n const [activeIndex, setActiveIndex] = useState(DEFAULT_ACTIVE);\n const [timeLinePosition, setTimeLinePosition] = useState(-1);\n const [timelineCurrentTime, setTimelineCurrentTime] = useState('');\n const panelRef = useRef();\n const playRefs = useRef({});\n // 全屏方法\n const wrapRef = useRef(null);\n const [isFullscreen, { toggleFullscreen }] = useFullscreen(wrapRef);\n const { runAsync } = useRequest(getHistoryUrl, {\n manual: true,\n });\n const { runAsync: getVideoLabelByIdAsync } = useRequest(getVideoLabelById, {\n manual: true,\n });\n useImperativeHandle(ref, () => {\n return {\n load: (channel) => {\n panelRef.current.load(channel);\n },\n start: (playInfo) => __awaiter(void 0, void 0, void 0, function* () {\n var _a, _b, _c;\n setLoading(true);\n const result = playInfo;\n if (playInfo.tagId) {\n /**\n * 如果传了tagId 则根据TagId 获取 deviceId,channelNum,beginTime,endTime\n * 如果没有传tagId 则根据 传入进来的 deviceId, channelNum,beginTime,endTime\n */\n const labelRes = yield getVideoLabelByIdAsync({\n id: playInfo.tagId,\n });\n result.deviceId = labelRes.videoDeviceId || playInfo.deviceId;\n result.channelNum = labelRes.videoChannelNum || playInfo.channelNum;\n result.beginTime = labelRes.startTime || playInfo.beginTime;\n result.endTime = labelRes.endTime || playInfo.endTime;\n }\n const res = yield runAsync({\n deviceId: result.deviceId,\n channelNum: result.channelNum,\n beginTime: result.beginTime,\n endTime: result.endTime,\n protocol: result.protocol,\n token: getVtxToken('token'),\n });\n const newChannels = [...channels];\n const resultChannel = (_a = newChannels.filter((citem) => citem.deviceId === res.deviceId && citem.channelNum === res.channelNum)) === null || _a === void 0 ? void 0 : _a[0];\n // 如果当前通道已经再里面了,则直接替换当前通道\n if (resultChannel) {\n newChannels[resultChannel.channelIndex] = Object.assign(Object.assign({}, newChannels[resultChannel.channelIndex]), { \n // 有tagId 则为-1 不然维持原有的\n index: playInfo.tagId\n ? -1\n : newChannels[resultChannel.channelIndex].index, tagId: playInfo.tagId || '', startTime: result.beginTime, endTime: result.endTime });\n }\n else {\n // 如果当前通道不在里面 则找到第一个channelNum为''的替换\n const channelIndex = (_c = (_b = newChannels.filter((item) => item.channelNum === '')) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.channelIndex;\n if (typeof channelIndex == 'number') {\n newChannels[channelIndex] = Object.assign(Object.assign({}, newChannels[channelIndex]), getChannelData(res, result));\n }\n }\n setChannels(newChannels);\n setLoading(false);\n }),\n unLoadAll: handleCloseAll,\n };\n });\n const handleExpand = () => {\n onExpandChange && onExpandChange(!state.expand);\n setState({ expand: !state.expand });\n };\n const handleCloseAll = () => {\n Object.values(playRefs.current).forEach((player) => {\n player && player.saveRecordFetch();\n });\n onVideoCloseAll();\n setChannels(DEFAULT_CHANNELS);\n };\n const getGridItems = () => {\n const items = [];\n for (let i = 0; i < Number(state.grid); i++) {\n const element = (_jsx(GridItem, { selfRef: (ref) => {\n playRefs.current[i] = ref;\n }, active: activeIndex === i, palyIndex: i, onTimeChange: onTimeChange, onClick: () => setActiveIndex(i), channel: channels[i], onClose: () => {\n var _a, _b;\n (_a = playRefs.current[i]) === null || _a === void 0 ? void 0 : _a.saveRecordFetch();\n const newChannels = [...channels];\n newChannels[i].index = -1;\n newChannels[i].deviceName = '';\n newChannels[i].deviceId = '';\n newChannels[i].startTime = '';\n newChannels[i].endTime = '';\n newChannels[i].tagId = '';\n newChannels[i].channelName = '';\n newChannels[i].channelNum = '';\n newChannels[i].url = '';\n newChannels[i].tableList = [];\n setChannels(newChannels);\n const aIndex = ((_b = newChannels.find((ele) => !!ele.channelNum)) === null || _b === void 0 ? void 0 : _b.channelIndex) || 0;\n setActiveIndex(aIndex);\n onVideoClose && onVideoClose(channels[i], newChannels);\n }, scale: state.scale, loading: true, onScreenshot: (url) => {\n onScreenshot && onScreenshot(url, i);\n } }, i));\n items.push(element);\n }\n return items;\n };\n const store = useMemo(() => ({\n channels,\n setChannels,\n loading,\n setLoading,\n activeIndex,\n timelineCurrentTime,\n setActiveIndex,\n timeLinePosition,\n setTimeLinePosition,\n }), [channels, loading, activeIndex, timeLinePosition]);\n useEffect(() => {\n if (getRealGrid(channels.filter((item) => item.channelNum !== '').length) > state.grid) {\n setState({\n grid: getRealGrid(channels.filter((item) => item.channelNum !== '').length) || 1,\n });\n }\n const realChannels = channels.filter((item) => item.channelNum !== '');\n if (typeof onPlayingChannelChange === 'function') {\n onPlayingChannelChange(realChannels);\n }\n }, [channels]);\n return (_jsx(\"div\", Object.assign({ className: \"vtx-history-control-v2\", style: { width, height }, ref: wrapRef }, { children: _jsxs(historyControlV2Context.Provider, Object.assign({ value: store }, { children: [_jsx(Spin, { spinning: loading, className: \"vtx-spin\", size: \"large\" }), _jsx(\"div\", Object.assign({ className: `player-grid-container _${getRealGrid(state.grid)}` }, { children: getGridItems() })), _jsx(Panel, { bottomDefaultExpand: bottomDefaultExpand, onVideoClose: (channel) => {\n onVideoClose(channel, channels);\n }, ref: panelRef, seekTo: (time) => {\n setTimelineCurrentTime(time);\n } }), _jsxs(\"div\", Object.assign({ className: \"bottom-controls\" }, { children: [_jsx(Space, Object.assign({ className: \"left\", size: 12, align: \"center\" }, { children: onExpandChange && (_jsx(\"div\", Object.assign({ onClick: handleExpand, style: { display: 'flex' } }, { children: state.expand ? _jsx(FoldIcon, {}) : _jsx(ExpandIcon, {}) }))) })), _jsxs(Space, Object.assign({ className: \"right\", size: 12, align: \"center\" }, { children: [_jsx(CloseAllIcon, { onClick: handleCloseAll }), _jsx(\"div\", { className: \"split-line\" }), _jsx(SplitScreen, Object.assign({ grid: state.grid, setGrid: (grid) => setState({ grid }) }, { children: _jsxs(\"div\", Object.assign({ className: 'controls-icon-hover' }, { children: [_jsx(GridIcon, {}), _jsx(DownOutlined, { className: \"hover-hide\" }), _jsx(UpOutlined, { className: \"hover-show\" })] })) })), _jsx(VideoScale, Object.assign({ scale: state.scale, setScale: (scale) => setState({ scale }) }, { children: _jsxs(\"div\", Object.assign({ className: 'controls-icon-hover' }, { children: [_jsx(OccupyingScreenIcon, {}), _jsx(DownOutlined, { className: \"hover-hide\" }), _jsx(UpOutlined, { className: \"hover-show\" })] })) })), isFullscreen ? (_jsx(ExitFullScreenIcon, { onClick: toggleFullscreen })) : (_jsx(FullScreenIcon, { onClick: toggleFullscreen }))] }))] }))] })) })));\n});\nHistoryControlV2.displayName = 'HistoryControlV2';\nexport default HistoryControlV2;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_jsxRuntime","require","_react","_api","_splitScreen","_interopRequireWildcard","_videoScale","_interopRequireDefault","_icons","_icons2","_utils","_ahooks","_space","_spin","_gridItem","_panel","_context2","_utils2","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","i","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","n","toString","slice","constructor","name","test","len","length","arr2","_i","_arr","_n","_d","_s","_e","next","done","push","value","err","__awaiter","thisArg","_arguments","P","generator","adopt","resolve","Promise","reject","fulfilled","step","e","rejected","result","then","apply","HistoryControlV2","forwardRef","props","ref","_props$width","width","_props$height","height","defaultGrid","_props$bottomDefaultE","bottomDefaultExpand","onExpandChange","onVideoClose","onVideoCloseAll","onScreenshot","onPlayingChannelChange","onTimeChange","_useSetState","useSetState","expand","grid","DEFAULT_GRID","scale","_useSetState2","state","setState","_useState","useState","DEFAULT_CHANNELS","_useState2","channels","setChannels","_useState3","_useState4","loading","setLoading","_useState5","DEFAULT_ACTIVE","_useState6","activeIndex","setActiveIndex","_useState7","_useState8","timeLinePosition","setTimeLinePosition","_useState9","_useState10","timelineCurrentTime","setTimelineCurrentTime","panelRef","useRef","playRefs","wrapRef","_useFullscreen","useFullscreen","_useFullscreen2","isFullscreen","toggleFullscreen","_useRequest","useRequest","getHistoryUrl","manual","runAsync","_useRequest2","getVideoLabelById","getVideoLabelByIdAsync","useImperativeHandle","load","channel","current","start","playInfo","_regenerator","mark","_callee","_a","_b","_c","labelRes","res","newChannels","resultChannel","channelIndex","wrap","_callee$","_context","prev","tagId","id","sent","deviceId","videoDeviceId","channelNum","videoChannelNum","beginTime","startTime","endTime","protocol","token","getVtxToken","filter","citem","assign","index","item","getChannelData","stop","unLoadAll","handleCloseAll","handleExpand","values","forEach","player","saveRecordFetch","getGridItems","items","_loop","element","_jsx","GridItem","selfRef","active","palyIndex","onClick","onClose","deviceName","channelName","url","tableList","aIndex","find","ele","Number","store","useMemo","useEffect","getRealGrid","realChannels","className","style","children","_jsxs","historyControlV2Context","Provider","Spin","spinning","size","concat","Panel","seekTo","time","Space","align","display","FoldIcon","ExpandIcon","CloseAllIcon","SplitScreen","setGrid","GridIcon","DownOutlined","UpOutlined","VideoScale","setScale","OccupyingScreenIcon","ExitFullScreenIcon","FullScreenIcon","exports","displayName","_default"],"sources":["history-control-v2/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 { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { forwardRef, useEffect, useImperativeHandle, useMemo, useRef, useState } from 'react';\nimport { getHistoryUrl, getVideoLabelById } from '../api';\nimport SplitScreen, { getRealGrid } from '../components/split-screen';\nimport VideoScale from '../components/video-scale';\nimport { CloseAllIcon, ExitFullScreenIcon, ExpandIcon, FoldIcon, FullScreenIcon, GridIcon, OccupyingScreenIcon, } from '../icons';\nimport { DownOutlined, UpOutlined } from '@ant-design/icons';\nimport { getVtxToken } from '@vtx/utils';\nimport { useFullscreen, useRequest, useSetState } from 'ahooks';\nimport Space from 'antd/lib/space';\nimport Spin from 'antd/lib/spin';\nimport GridItem from './components/grid-item';\nimport Panel from './components/panel';\nimport { historyControlV2Context } from './context';\nimport { DEFAULT_ACTIVE, DEFAULT_CHANNELS, DEFAULT_GRID, getChannelData } from './utils';\n/**\n * 历史视频控制器\n */\nexport const HistoryControlV2 = forwardRef((props, ref) => {\n const { width = '100%', height = '100%', defaultGrid, bottomDefaultExpand = true, onExpandChange, onVideoClose, onVideoCloseAll, onScreenshot, onPlayingChannelChange, onTimeChange, } = props;\n const [state, setState] = useSetState({\n expand: true,\n grid: defaultGrid || DEFAULT_GRID,\n scale: '100%',\n });\n const [channels, setChannels] = useState(DEFAULT_CHANNELS);\n const [loading, setLoading] = useState(false);\n const [activeIndex, setActiveIndex] = useState(DEFAULT_ACTIVE);\n const [timeLinePosition, setTimeLinePosition] = useState(-1);\n const [timelineCurrentTime, setTimelineCurrentTime] = useState('');\n const panelRef = useRef();\n const playRefs = useRef({});\n // 全屏方法\n const wrapRef = useRef(null);\n const [isFullscreen, { toggleFullscreen }] = useFullscreen(wrapRef);\n const { runAsync } = useRequest(getHistoryUrl, {\n manual: true,\n });\n const { runAsync: getVideoLabelByIdAsync } = useRequest(getVideoLabelById, {\n manual: true,\n });\n useImperativeHandle(ref, () => {\n return {\n load: (channel) => {\n panelRef.current.load(channel);\n },\n start: (playInfo) => __awaiter(void 0, void 0, void 0, function* () {\n var _a, _b, _c;\n setLoading(true);\n const result = playInfo;\n if (playInfo.tagId) {\n /**\n * 如果传了tagId 则根据TagId 获取 deviceId,channelNum,beginTime,endTime\n * 如果没有传tagId 则根据 传入进来的 deviceId, channelNum,beginTime,endTime\n */\n const labelRes = yield getVideoLabelByIdAsync({\n id: playInfo.tagId,\n });\n result.deviceId = labelRes.videoDeviceId || playInfo.deviceId;\n result.channelNum = labelRes.videoChannelNum || playInfo.channelNum;\n result.beginTime = labelRes.startTime || playInfo.beginTime;\n result.endTime = labelRes.endTime || playInfo.endTime;\n }\n const res = yield runAsync({\n deviceId: result.deviceId,\n channelNum: result.channelNum,\n beginTime: result.beginTime,\n endTime: result.endTime,\n protocol: result.protocol,\n token: getVtxToken('token'),\n });\n const newChannels = [...channels];\n const resultChannel = (_a = newChannels.filter((citem) => citem.deviceId === res.deviceId && citem.channelNum === res.channelNum)) === null || _a === void 0 ? void 0 : _a[0];\n // 如果当前通道已经再里面了,则直接替换当前通道\n if (resultChannel) {\n newChannels[resultChannel.channelIndex] = Object.assign(Object.assign({}, newChannels[resultChannel.channelIndex]), { \n // 有tagId 则为-1 不然维持原有的\n index: playInfo.tagId\n ? -1\n : newChannels[resultChannel.channelIndex].index, tagId: playInfo.tagId || '', startTime: result.beginTime, endTime: result.endTime });\n }\n else {\n // 如果当前通道不在里面 则找到第一个channelNum为''的替换\n const channelIndex = (_c = (_b = newChannels.filter((item) => item.channelNum === '')) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.channelIndex;\n if (typeof channelIndex == 'number') {\n newChannels[channelIndex] = Object.assign(Object.assign({}, newChannels[channelIndex]), getChannelData(res, result));\n }\n }\n setChannels(newChannels);\n setLoading(false);\n }),\n unLoadAll: handleCloseAll,\n };\n });\n const handleExpand = () => {\n onExpandChange && onExpandChange(!state.expand);\n setState({ expand: !state.expand });\n };\n const handleCloseAll = () => {\n Object.values(playRefs.current).forEach((player) => {\n player && player.saveRecordFetch();\n });\n onVideoCloseAll === null || onVideoCloseAll === void 0 ? void 0 : onVideoCloseAll();\n setChannels(DEFAULT_CHANNELS);\n };\n const getGridItems = () => {\n const items = [];\n for (let i = 0; i < Number(state.grid); i++) {\n const element = (_jsx(GridItem, { selfRef: (ref) => {\n playRefs.current[i] = ref;\n }, active: activeIndex === i, palyIndex: i, onTimeChange: onTimeChange, onClick: () => setActiveIndex(i), channel: channels[i], onClose: () => {\n var _a, _b;\n (_a = playRefs.current[i]) === null || _a === void 0 ? void 0 : _a.saveRecordFetch();\n const newChannels = [...channels];\n newChannels[i].index = -1;\n newChannels[i].deviceName = '';\n newChannels[i].deviceId = '';\n newChannels[i].startTime = '';\n newChannels[i].endTime = '';\n newChannels[i].tagId = '';\n newChannels[i].channelName = '';\n newChannels[i].channelNum = '';\n newChannels[i].url = '';\n newChannels[i].tableList = [];\n setChannels(newChannels);\n const aIndex = ((_b = newChannels.find((ele) => !!ele.channelNum)) === null || _b === void 0 ? void 0 : _b.channelIndex) || 0;\n setActiveIndex(aIndex);\n onVideoClose && onVideoClose(channels[i], newChannels);\n }, scale: state.scale, loading: true, onScreenshot: (url) => {\n onScreenshot && onScreenshot(url, i);\n } }, i));\n items.push(element);\n }\n return items;\n };\n const store = useMemo(() => ({\n channels,\n setChannels,\n loading,\n setLoading,\n activeIndex,\n timelineCurrentTime,\n setActiveIndex,\n timeLinePosition,\n setTimeLinePosition,\n }), [channels, loading, activeIndex, timeLinePosition]);\n useEffect(() => {\n if (getRealGrid(channels.filter((item) => item.channelNum !== '').length) > state.grid) {\n setState({\n grid: getRealGrid(channels.filter((item) => item.channelNum !== '').length) || 1,\n });\n }\n const realChannels = channels.filter((item) => item.channelNum !== '');\n if (typeof onPlayingChannelChange === 'function') {\n onPlayingChannelChange(realChannels);\n }\n }, [channels]);\n return (_jsx(\"div\", Object.assign({ className: \"vtx-history-control-v2\", style: { width, height }, ref: wrapRef }, { children: _jsxs(historyControlV2Context.Provider, Object.assign({ value: store }, { children: [_jsx(Spin, { spinning: loading, className: \"vtx-spin\", size: \"large\" }), _jsx(\"div\", Object.assign({ className: `player-grid-container _${getRealGrid(state.grid)}` }, { children: getGridItems() })), _jsx(Panel, { bottomDefaultExpand: bottomDefaultExpand, onVideoClose: (channel) => {\n onVideoClose === null || onVideoClose === void 0 ? void 0 : onVideoClose(channel, channels);\n }, ref: panelRef, seekTo: (time) => {\n setTimelineCurrentTime(time);\n } }), _jsxs(\"div\", Object.assign({ className: \"bottom-controls\" }, { children: [_jsx(Space, Object.assign({ className: \"left\", size: 12, align: \"center\" }, { children: onExpandChange && (_jsx(\"div\", Object.assign({ onClick: handleExpand, style: { display: 'flex' } }, { children: state.expand ? _jsx(FoldIcon, {}) : _jsx(ExpandIcon, {}) }))) })), _jsxs(Space, Object.assign({ className: \"right\", size: 12, align: \"center\" }, { children: [_jsx(CloseAllIcon, { onClick: handleCloseAll }), _jsx(\"div\", { className: \"split-line\" }), _jsx(SplitScreen, Object.assign({ grid: state.grid, setGrid: (grid) => setState({ grid }) }, { children: _jsxs(\"div\", Object.assign({ className: 'controls-icon-hover' }, { children: [_jsx(GridIcon, {}), _jsx(DownOutlined, { className: \"hover-hide\" }), _jsx(UpOutlined, { className: \"hover-show\" })] })) })), _jsx(VideoScale, Object.assign({ scale: state.scale, setScale: (scale) => setState({ scale }) }, { children: _jsxs(\"div\", Object.assign({ className: 'controls-icon-hover' }, { children: [_jsx(OccupyingScreenIcon, {}), _jsx(DownOutlined, { className: \"hover-hide\" }), _jsx(UpOutlined, { className: \"hover-show\" })] })) })), isFullscreen ? (_jsx(ExitFullScreenIcon, { onClick: toggleFullscreen })) : (_jsx(FullScreenIcon, { onClick: toggleFullscreen }))] }))] }))] })) })));\n});\nHistoryControlV2.displayName = 'HistoryControlV2';\nexport default HistoryControlV2;\n"],"mappings":"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","ignoreList":[]}
@@ -104,11 +104,11 @@ var getChannelData = function getChannelData(data, origin) {
104
104
  */
105
105
  exports.getChannelData = getChannelData;
106
106
  var getUrlTableData = function getUrlTableData(data) {
107
- var _a, _b;
108
- var totalTimeUrl = data.totalTimeUrl ? data.totalTimeUrl.split('?')[0] : '';
109
- var result = (_b = (_a = data.list) === null || _a === void 0 ? void 0 : _a.filter(function (ele) {
107
+ var _a, _b, _c, _d, _e, _f, _g;
108
+ var totalTimeUrl = data.totalTimeUrl || ((_b = (_a = data === null || data === void 0 ? void 0 : data.list) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.playbackUrl) ? (_e = data.totalTimeUrl || ((_d = (_c = data === null || data === void 0 ? void 0 : data.list) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.playbackUrl)) === null || _e === void 0 ? void 0 : _e.split('?')[0] : '';
109
+ var result = (_g = (_f = data.list) === null || _f === void 0 ? void 0 : _f.filter(function (ele) {
110
110
  return !!ele.beginTime && !!ele.endTime;
111
- })) === null || _b === void 0 ? void 0 : _b.map(function (item, i) {
111
+ })) === null || _g === void 0 ? void 0 : _g.map(function (item, i) {
112
112
  var beginTime = (0, _moment["default"])(item.beginTime);
113
113
  var endTime = (0, _moment["default"])(item.endTime);
114
114
  var totalSeconds = (0, _moment["default"])(endTime).diff((0, _moment["default"])(beginTime), 'seconds');
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["_utils","require","_utils2","_jsBase","_moment","_interopRequireDefault","obj","__esModule","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","iter","Symbol","iterator","isArray","len","length","i","arr2","DEFAULT_PLAY_PARAMS","channelNum","hkType","videoChannelId","tagId","index","url","player","startTime","endTime","deviceId","deviceName","channelName","tableList","segmentData","list","originalUrl","extendedProperties","exports","DEFAULT_GRID","DEFAULT_ACTIVE","DEFAULT_CHANNELS","map","item","channelIndex","getChannelData","data","origin","_a","_b","_c","_d","_e","_f","_g","_h","start","moment","beginTime","startOf","end","endOf","result","deviceCode","streamType","beenHasAudio","singleUrl","playbackUrl","totalTimeUrl","enableAgent","getUrlTableData","code","hasLabel","split","filter","ele","totalSeconds","diff","concat","valueOf","format","TimeFormat","params","size","bytesToMegaBytes","duration","secondsToString","downloadUrl","downloadTaskUrl","getVtxWsUrl","oriBeg","getUrlParam","oriEnd","rtspUrl","replace","getVtxWSTimeString","Base64","encode"],"sources":["history-control-v2/utils.js"],"sourcesContent":["import { TimeFormat, bytesToMegaBytes, getVtxWSTimeString, secondsToString } from '../utils';\nimport { getUrlParam } from '@vtx/utils';\nimport { Base64 } from 'js-base64';\nimport moment from 'moment';\n/** 默认播放器参数 */\nexport const DEFAULT_PLAY_PARAMS = {\n channelNum: '',\n hkType: '',\n videoChannelId: '',\n tagId: '',\n index: -1,\n url: '',\n player: '',\n startTime: '',\n endTime: '',\n deviceId: '',\n deviceName: '',\n channelName: '',\n tableList: [],\n segmentData: {\n list: [],\n originalUrl: '',\n },\n extendedProperties: {},\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 originalUrl: '',\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 originalUrl: data.url,\n };\n const result = {\n hkType: data.hkType,\n deviceId: data.deviceId,\n deviceCode: data.deviceCode,\n streamType: data.streamType,\n beenHasAudio: data.beenHasAudio,\n deviceName: data.deviceName,\n singleUrl: data.singleUrl,\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 originalUrl: data.url,\n player: (data === null || data === void 0 ? void 0 : data.player) || '',\n videoChannelId: data.videoChannelId,\n enableAgent: data.enableAgent,\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 extendedProperties: data.extendedProperties,\n };\n return result;\n};\n/**\n * 获取历史回放表格数据\n * @param data\n * @returns\n */\nexport const getUrlTableData = (data) => {\n var _a, _b;\n const totalTimeUrl = data.totalTimeUrl ? data.totalTimeUrl.split('?')[0] : '';\n const result = (_b = (_a = data.list) === null || _a === void 0 ? void 0 : _a.filter((ele) => !!ele.beginTime && !!ele.endTime)) === null || _b === void 0 ? void 0 : _b.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 const url = totalTimeUrl\n ? `${totalTimeUrl}?beginTime=${beginTime.valueOf()}&endTime=${endTime.valueOf()}`\n : '';\n return {\n index: i + 1,\n hkType: data.hkType,\n singleUrl: data.singleUrl,\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: item.downloadTaskUrl,\n url: item.playbackUrl || url,\n originalUrl: data.url,\n code: item.code,\n player: data.player,\n extendedProperties: data.extendedProperties,\n };\n });\n return result || [];\n};\nexport const getVtxWsUrl = (url, startTime, endTime) => {\n const oriBeg = getUrlParam('beginTime', url);\n const oriEnd = getUrlParam('endTime', url);\n let rtspUrl = url\n .replace(`beginTime=${oriBeg}`, `beginTime=${getVtxWSTimeString(startTime)}`)\n .replace(`endTime=${oriEnd}`, `endTime=${getVtxWSTimeString(endTime)}`);\n rtspUrl = Base64.encode(rtspUrl);\n return rtspUrl;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAC,sBAAA,CAAAJ,OAAA;AAA4B,SAAAI,uBAAAC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAE,mBAAAC,GAAA,WAAAC,kBAAA,CAAAD,GAAA,KAAAE,gBAAA,CAAAF,GAAA,KAAAG,2BAAA,CAAAH,GAAA,KAAAI,kBAAA;AAAA,SAAAA,mBAAA,cAAAC,SAAA;AAAA,SAAAF,4BAAAG,CAAA,EAAAC,MAAA,SAAAD,CAAA,qBAAAA,CAAA,sBAAAE,iBAAA,CAAAF,CAAA,EAAAC,MAAA,OAAAE,CAAA,GAAAC,MAAA,CAAAC,SAAA,CAAAC,QAAA,CAAAC,IAAA,CAAAP,CAAA,EAAAQ,KAAA,aAAAL,CAAA,iBAAAH,CAAA,CAAAS,WAAA,EAAAN,CAAA,GAAAH,CAAA,CAAAS,WAAA,CAAAC,IAAA,MAAAP,CAAA,cAAAA,CAAA,mBAAAQ,KAAA,CAAAC,IAAA,CAAAZ,CAAA,OAAAG,CAAA,+DAAAU,IAAA,CAAAV,CAAA,UAAAD,iBAAA,CAAAF,CAAA,EAAAC,MAAA;AAAA,SAAAL,iBAAAkB,IAAA,eAAAC,MAAA,oBAAAD,IAAA,CAAAC,MAAA,CAAAC,QAAA,aAAAF,IAAA,+BAAAH,KAAA,CAAAC,IAAA,CAAAE,IAAA;AAAA,SAAAnB,mBAAAD,GAAA,QAAAiB,KAAA,CAAAM,OAAA,CAAAvB,GAAA,UAAAQ,iBAAA,CAAAR,GAAA;AAAA,SAAAQ,kBAAAR,GAAA,EAAAwB,GAAA,QAAAA,GAAA,YAAAA,GAAA,GAAAxB,GAAA,CAAAyB,MAAA,EAAAD,GAAA,GAAAxB,GAAA,CAAAyB,MAAA,WAAAC,CAAA,MAAAC,IAAA,OAAAV,KAAA,CAAAO,GAAA,GAAAE,CAAA,GAAAF,GAAA,EAAAE,CAAA,MAAAC,IAAA,CAAAD,CAAA,IAAA1B,GAAA,CAAA0B,CAAA,YAAAC,IAAA;AAC5B;AACO,IAAMC,mBAAmB,GAAG;EAC/BC,UAAU,EAAE,EAAE;EACdC,MAAM,EAAE,EAAE;EACVC,cAAc,EAAE,EAAE;EAClBC,KAAK,EAAE,EAAE;EACTC,KAAK,EAAE,CAAC,CAAC;EACTC,GAAG,EAAE,EAAE;EACPC,MAAM,EAAE,EAAE;EACVC,SAAS,EAAE,EAAE;EACbC,OAAO,EAAE,EAAE;EACXC,QAAQ,EAAE,EAAE;EACZC,UAAU,EAAE,EAAE;EACdC,WAAW,EAAE,EAAE;EACfC,SAAS,EAAE,EAAE;EACbC,WAAW,EAAE;IACTC,IAAI,EAAE,EAAE;IACRC,WAAW,EAAE;EACjB,CAAC;EACDC,kBAAkB,EAAE,CAAC;AACzB,CAAC;AAACC,OAAA,CAAAlB,mBAAA,GAAAA,mBAAA;AACK,IAAMmB,YAAY,GAAG,CAAC;AAACD,OAAA,CAAAC,YAAA,GAAAA,YAAA;AACvB,IAAMC,cAAc,GAAG,CAAC;AAACF,OAAA,CAAAE,cAAA,GAAAA,cAAA;AACzB,IAAMC,gBAAgB,GAAGlD,kBAAA,CAAIkB,KAAK,CAAC,EAAE,CAAC,EAAEiC,GAAG,CAAC,UAACC,IAAI,EAAElB,KAAK,EAAK;EAChE,OAAO;IACHmB,YAAY,EAAEnB,KAAK;IACnB;IACAJ,UAAU,EAAE,EAAE;IACd;IACAI,KAAK,EAAE,CAAC,CAAC;IACT;IACAC,GAAG,EAAE,EAAE;IACPQ,WAAW,EAAE;MACTC,IAAI,EAAE,EAAE;MACRC,WAAW,EAAE;IACjB;EACJ,CAAC;AACL,CAAC,CAAC;AACF;AACA;AACA;AACA;AACA;AAJAE,OAAA,CAAAG,gBAAA,GAAAA,gBAAA;AAKO,IAAMI,cAAc,GAAG,SAAjBA,cAAcA,CAAIC,IAAI,EAAEC,MAAM,EAAK;EAC5C,IAAIC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE;EAClC,IAAMrB,WAAW,GAAG;IAChBC,IAAI,EAAEW,IAAI,CAACX,IAAI;IACfqB,KAAK,EAAE,IAAAC,kBAAM,EAACV,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACW,SAAS,CAAC,CAACC,OAAO,CAAC,KAAK,CAAC;IAC9FC,GAAG,EAAE,IAAAH,kBAAM,EAACV,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAAClB,OAAO,CAAC,CAACgC,KAAK,CAAC,KAAK,CAAC;IACxFzB,WAAW,EAAEU,IAAI,CAACpB;EACtB,CAAC;EACD,IAAMoC,MAAM,GAAG;IACXxC,MAAM,EAAEwB,IAAI,CAACxB,MAAM;IACnBQ,QAAQ,EAAEgB,IAAI,CAAChB,QAAQ;IACvBiC,UAAU,EAAEjB,IAAI,CAACiB,UAAU;IAC3BC,UAAU,EAAElB,IAAI,CAACkB,UAAU;IAC3BC,YAAY,EAAEnB,IAAI,CAACmB,YAAY;IAC/BlC,UAAU,EAAEe,IAAI,CAACf,UAAU;IAC3BmC,SAAS,EAAEpB,IAAI,CAACoB,SAAS;IACzB7C,UAAU,EAAEyB,IAAI,CAACzB,UAAU;IAC3BW,WAAW,EAAEc,IAAI,CAACd,WAAW;IAC7BR,KAAK,EAAE,CAACuB,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACvB,KAAK,KAAK,EAAE;IAC3EE,GAAG,EAAE,CAAC,CAACuB,EAAE,GAAG,CAACD,EAAE,GAAGF,IAAI,CAACX,IAAI,MAAM,IAAI,IAAIa,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAIC,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACkB,WAAW,KAAKrB,IAAI,CAACsB,YAAY;IAClJhC,WAAW,EAAEU,IAAI,CAACpB,GAAG;IACrBC,MAAM,EAAE,CAACmB,IAAI,KAAK,IAAI,IAAIA,IAAI,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,IAAI,CAACnB,MAAM,KAAK,EAAE;IACvEJ,cAAc,EAAEuB,IAAI,CAACvB,cAAc;IACnC8C,WAAW,EAAEvB,IAAI,CAACuB,WAAW;IAC7BpC,SAAS,EAAEqC,eAAe,CAACxB,IAAI,CAAC;IAChCZ,WAAW,EAAXA,WAAW;IACXT,KAAK,EAAE,CAACsB,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACvB,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC;IAC9E+C,IAAI,EAAE,CAACpB,EAAE,GAAG,CAACD,EAAE,GAAGJ,IAAI,CAACX,IAAI,MAAM,IAAI,IAAIe,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAIC,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACoB,IAAI;IACrH3C,SAAS,EAAE,CAAC,CAACyB,EAAE,GAAG,CAACD,EAAE,GAAGN,IAAI,CAACX,IAAI,MAAM,IAAI,IAAIiB,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAIC,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACK,SAAS,KAAKX,MAAM,CAACW,SAAS;IACrJ7B,OAAO,EAAE,CAAC,CAAC0B,EAAE,GAAG,CAACD,EAAE,GAAGR,IAAI,CAACX,IAAI,MAAM,IAAI,IAAImB,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAIC,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC1B,OAAO,KAAKkB,MAAM,CAAClB,OAAO;IAC/I2C,QAAQ,EAAE1B,IAAI,CAAC0B,QAAQ;IACvBnC,kBAAkB,EAAES,IAAI,CAACT;EAC7B,CAAC;EACD,OAAOyB,MAAM;AACjB,CAAC;AACD;AACA;AACA;AACA;AACA;AAJAxB,OAAA,CAAAO,cAAA,GAAAA,cAAA;AAKO,IAAMyB,eAAe,GAAG,SAAlBA,eAAeA,CAAIxB,IAAI,EAAK;EACrC,IAAIE,EAAE,EAAEC,EAAE;EACV,IAAMmB,YAAY,GAAGtB,IAAI,CAACsB,YAAY,GAAGtB,IAAI,CAACsB,YAAY,CAACK,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE;EAC7E,IAAMX,MAAM,GAAG,CAACb,EAAE,GAAG,CAACD,EAAE,GAAGF,IAAI,CAACX,IAAI,MAAM,IAAI,IAAIa,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC0B,MAAM,CAAC,UAACC,GAAG;IAAA,OAAK,CAAC,CAACA,GAAG,CAACjB,SAAS,IAAI,CAAC,CAACiB,GAAG,CAAC9C,OAAO;EAAA,EAAC,MAAM,IAAI,IAAIoB,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACP,GAAG,CAAC,UAACC,IAAI,EAAEzB,CAAC,EAAK;IACtL,IAAMwC,SAAS,GAAG,IAAAD,kBAAM,EAACd,IAAI,CAACe,SAAS,CAAC;IACxC,IAAM7B,OAAO,GAAG,IAAA4B,kBAAM,EAACd,IAAI,CAACd,OAAO,CAAC;IACpC,IAAM+C,YAAY,GAAG,IAAAnB,kBAAM,EAAC5B,OAAO,CAAC,CAACgD,IAAI,CAAC,IAAApB,kBAAM,EAACC,SAAS,CAAC,EAAE,SAAS,CAAC;IACvE,IAAMhC,GAAG,GAAG0C,YAAY,MAAAU,MAAA,CACfV,YAAY,iBAAAU,MAAA,CAAcpB,SAAS,CAACqB,OAAO,CAAC,CAAC,eAAAD,MAAA,CAAYjD,OAAO,CAACkD,OAAO,CAAC,CAAC,IAC7E,EAAE;IACR,OAAO;MACHtD,KAAK,EAAEP,CAAC,GAAG,CAAC;MACZI,MAAM,EAAEwB,IAAI,CAACxB,MAAM;MACnB4C,SAAS,EAAEpB,IAAI,CAACoB,SAAS;MACzBpC,QAAQ,EAAEgB,IAAI,CAAChB,QAAQ;MACvBE,WAAW,EAAEc,IAAI,CAACd,WAAW;MAC7BD,UAAU,EAAEe,IAAI,CAACf,UAAU;MAC3BV,UAAU,EAAEyB,IAAI,CAACzB,UAAU;MAC3BE,cAAc,EAAEuB,IAAI,CAACvB,cAAc;MACnCmC,SAAS,EAAEA,SAAS,CAACsB,MAAM,CAACC,iBAAU,CAACC,MAAM,CAAC;MAC9CrD,OAAO,EAAEA,OAAO,CAACmD,MAAM,CAACC,iBAAU,CAACC,MAAM,CAAC;MAC1CC,IAAI,EAAE,IAAAC,uBAAgB,EAACzC,IAAI,CAACwC,IAAI,CAAC;MACjCE,QAAQ,EAAE,IAAAC,sBAAe,EAACV,YAAY,CAAC;MACvCW,WAAW,EAAE5C,IAAI,CAAC6C,eAAe;MACjC9D,GAAG,EAAEiB,IAAI,CAACwB,WAAW,IAAIzC,GAAG;MAC5BU,WAAW,EAAEU,IAAI,CAACpB,GAAG;MACrB6C,IAAI,EAAE5B,IAAI,CAAC4B,IAAI;MACf5C,MAAM,EAAEmB,IAAI,CAACnB,MAAM;MACnBU,kBAAkB,EAAES,IAAI,CAACT;IAC7B,CAAC;EACL,CAAC,CAAC;EACF,OAAOyB,MAAM,IAAI,EAAE;AACvB,CAAC;AAACxB,OAAA,CAAAgC,eAAA,GAAAA,eAAA;AACK,IAAMmB,WAAW,GAAG,SAAdA,WAAWA,CAAI/D,GAAG,EAAEE,SAAS,EAAEC,OAAO,EAAK;EACpD,IAAM6D,MAAM,GAAG,IAAAC,mBAAW,EAAC,WAAW,EAAEjE,GAAG,CAAC;EAC5C,IAAMkE,MAAM,GAAG,IAAAD,mBAAW,EAAC,SAAS,EAAEjE,GAAG,CAAC;EAC1C,IAAImE,OAAO,GAAGnE,GAAG,CACZoE,OAAO,cAAAhB,MAAA,CAAcY,MAAM,gBAAAZ,MAAA,CAAiB,IAAAiB,yBAAkB,EAACnE,SAAS,CAAC,CAAE,CAAC,CAC5EkE,OAAO,YAAAhB,MAAA,CAAYc,MAAM,cAAAd,MAAA,CAAe,IAAAiB,yBAAkB,EAAClE,OAAO,CAAC,CAAE,CAAC;EAC3EgE,OAAO,GAAGG,cAAM,CAACC,MAAM,CAACJ,OAAO,CAAC;EAChC,OAAOA,OAAO;AAClB,CAAC;AAACvD,OAAA,CAAAmD,WAAA,GAAAA,WAAA","ignoreList":[]}
1
+ {"version":3,"file":"utils.js","names":["_utils","require","_utils2","_jsBase","_moment","_interopRequireDefault","obj","__esModule","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","iter","Symbol","iterator","isArray","len","length","i","arr2","DEFAULT_PLAY_PARAMS","channelNum","hkType","videoChannelId","tagId","index","url","player","startTime","endTime","deviceId","deviceName","channelName","tableList","segmentData","list","originalUrl","extendedProperties","exports","DEFAULT_GRID","DEFAULT_ACTIVE","DEFAULT_CHANNELS","map","item","channelIndex","getChannelData","data","origin","_a","_b","_c","_d","_e","_f","_g","_h","start","moment","beginTime","startOf","end","endOf","result","deviceCode","streamType","beenHasAudio","singleUrl","playbackUrl","totalTimeUrl","enableAgent","getUrlTableData","code","hasLabel","split","filter","ele","totalSeconds","diff","concat","valueOf","format","TimeFormat","params","size","bytesToMegaBytes","duration","secondsToString","downloadUrl","downloadTaskUrl","getVtxWsUrl","oriBeg","getUrlParam","oriEnd","rtspUrl","replace","getVtxWSTimeString","Base64","encode"],"sources":["history-control-v2/utils.js"],"sourcesContent":["import { TimeFormat, bytesToMegaBytes, getVtxWSTimeString, secondsToString } from '../utils';\nimport { getUrlParam } from '@vtx/utils';\nimport { Base64 } from 'js-base64';\nimport moment from 'moment';\n/** 默认播放器参数 */\nexport const DEFAULT_PLAY_PARAMS = {\n channelNum: '',\n hkType: '',\n videoChannelId: '',\n tagId: '',\n index: -1,\n url: '',\n player: '',\n startTime: '',\n endTime: '',\n deviceId: '',\n deviceName: '',\n channelName: '',\n tableList: [],\n segmentData: {\n list: [],\n originalUrl: '',\n },\n extendedProperties: {},\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 originalUrl: '',\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 originalUrl: data.url,\n };\n const result = {\n hkType: data.hkType,\n deviceId: data.deviceId,\n deviceCode: data.deviceCode,\n streamType: data.streamType,\n beenHasAudio: data.beenHasAudio,\n deviceName: data.deviceName,\n singleUrl: data.singleUrl,\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 originalUrl: data.url,\n player: (data === null || data === void 0 ? void 0 : data.player) || '',\n videoChannelId: data.videoChannelId,\n enableAgent: data.enableAgent,\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 extendedProperties: data.extendedProperties,\n };\n return result;\n};\n/**\n * 获取历史回放表格数据\n * @param data\n * @returns\n */\nexport const getUrlTableData = (data) => {\n var _a, _b, _c, _d, _e, _f, _g;\n const totalTimeUrl = data.totalTimeUrl || ((_b = (_a = data === null || data === void 0 ? void 0 : data.list) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.playbackUrl)\n ? (_e = (data.totalTimeUrl || ((_d = (_c = data === null || data === void 0 ? void 0 : data.list) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.playbackUrl))) === null || _e === void 0 ? void 0 : _e.split('?')[0]\n : '';\n const result = (_g = (_f = data.list) === null || _f === void 0 ? void 0 : _f.filter((ele) => !!ele.beginTime && !!ele.endTime)) === null || _g === void 0 ? void 0 : _g.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 const url = totalTimeUrl\n ? `${totalTimeUrl}?beginTime=${beginTime.valueOf()}&endTime=${endTime.valueOf()}`\n : '';\n return {\n index: i + 1,\n hkType: data.hkType,\n singleUrl: data.singleUrl,\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: item.downloadTaskUrl,\n url: item.playbackUrl || url,\n originalUrl: data.url,\n code: item.code,\n player: data.player,\n extendedProperties: data.extendedProperties,\n };\n });\n return result || [];\n};\nexport const getVtxWsUrl = (url, startTime, endTime) => {\n const oriBeg = getUrlParam('beginTime', url);\n const oriEnd = getUrlParam('endTime', url);\n let rtspUrl = url\n .replace(`beginTime=${oriBeg}`, `beginTime=${getVtxWSTimeString(startTime)}`)\n .replace(`endTime=${oriEnd}`, `endTime=${getVtxWSTimeString(endTime)}`);\n rtspUrl = Base64.encode(rtspUrl);\n return rtspUrl;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -28,6 +28,7 @@ interface VtxPlayerProps {
28
28
  type?: string;
29
29
  hkType?: string;
30
30
  beenHasAudio?: boolean;
31
+ beenHasVideo?: boolean;
31
32
  /** 是否使用代理播放 */
32
33
  enableAgent?: boolean;
33
34
  /** 开始时间,格式为:YYYY-MM-DD HH:mm:ss */
@@ -322,6 +322,7 @@ var HistoryPlayer = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
322
322
  });
323
323
  });
324
324
  player.onTimeUpdate(function (_currentTime, speed) {
325
+ console.log(_currentTime, 'currentTime');
325
326
  if (!state.loading) {
326
327
  var ct = state.currUrl ? (0, _moment["default"])(state.currentTime).diff(startTime, 'seconds') + _currentTime : _currentTime;
327
328
  setState({