@vtx/player 1.7.20 → 1.7.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/lib/api/fetch.js +66 -65
  2. package/lib/api/fetch.js.map +1 -1
  3. package/lib/api/index.js +22 -21
  4. package/lib/api/index.js.map +1 -1
  5. package/lib/api/types.d.ts +5 -5
  6. package/lib/api/types.js.map +1 -1
  7. package/lib/bd/PlayerManager.js +1 -4
  8. package/lib/bd/PlayerManager.js.map +1 -1
  9. package/lib/bill-player/index.d.ts +1 -1
  10. package/lib/bill-player/index.js +2 -2
  11. package/lib/bill-player/index.js.map +1 -1
  12. package/lib/bill-player/style/css.js.map +1 -1
  13. package/lib/bill-player/style/index.js.map +1 -1
  14. package/lib/components/set-tag-video/index.js +2 -2
  15. package/lib/components/set-tag-video/index.js.map +1 -1
  16. package/lib/components/set-tag-video/style/css.js.map +1 -1
  17. package/lib/components/set-tag-video/style/index.js.map +1 -1
  18. package/lib/components/split-screen/index.d.ts +1 -1
  19. package/lib/components/split-screen/index.js.map +1 -1
  20. package/lib/components/split-screen/style/css.js.map +1 -1
  21. package/lib/components/split-screen/style/index.js.map +1 -1
  22. package/lib/components/tag-video/index.js +2 -2
  23. package/lib/components/tag-video/index.js.map +1 -1
  24. package/lib/components/tag-video/style/css.js.map +1 -1
  25. package/lib/components/tag-video/style/index.js.map +1 -1
  26. package/lib/components/video-scale/index.d.ts +1 -1
  27. package/lib/components/video-scale/index.js.map +1 -1
  28. package/lib/components/video-scale/style/css.js.map +1 -1
  29. package/lib/components/video-scale/style/index.js.map +1 -1
  30. package/lib/context/index.js.map +1 -1
  31. package/lib/controls/index.d.ts +11 -11
  32. package/lib/controls/index.js +2 -2
  33. package/lib/controls/index.js.map +1 -1
  34. package/lib/controls/style/css.js.map +1 -1
  35. package/lib/controls/style/index.js.map +1 -1
  36. package/lib/h264/PlayerManager.js +1 -4
  37. package/lib/h264/PlayerManager.js.map +1 -1
  38. package/lib/history-control/index.d.ts +2 -2
  39. package/lib/history-control/index.js +3 -3
  40. package/lib/history-control/index.js.map +1 -1
  41. package/lib/history-control/style/css.js.map +1 -1
  42. package/lib/history-control/style/index.js.map +1 -1
  43. package/lib/history-control-v2/components/grid-item/index.js +2 -2
  44. package/lib/history-control-v2/components/grid-item/index.js.map +1 -1
  45. package/lib/history-control-v2/components/panel/index.js +1 -2
  46. package/lib/history-control-v2/components/panel/index.js.map +1 -1
  47. package/lib/history-control-v2/context.js.map +1 -1
  48. package/lib/history-control-v2/index.d.ts +4 -4
  49. package/lib/history-control-v2/index.js +62 -60
  50. package/lib/history-control-v2/index.js.map +1 -1
  51. package/lib/history-control-v2/style/css.js.map +1 -1
  52. package/lib/history-control-v2/style/index.js.map +1 -1
  53. package/lib/history-control-v2/utils.js +1 -1
  54. package/lib/history-control-v2/utils.js.map +1 -1
  55. package/lib/history-player/index.d.ts +1 -1
  56. package/lib/history-player/index.js +102 -101
  57. package/lib/history-player/index.js.map +1 -1
  58. package/lib/history-player/style/css.js.map +1 -1
  59. package/lib/history-player/style/index.js.map +1 -1
  60. package/lib/hooks/useSettings.js.map +1 -1
  61. package/lib/icc/PlayerManager.js +2 -8
  62. package/lib/icc/PlayerManager.js.map +1 -1
  63. package/lib/icc/api.d.ts +68 -0
  64. package/lib/icc/api.js.map +1 -1
  65. package/lib/icons/index.d.ts +36 -36
  66. package/lib/icons/index.js.map +1 -1
  67. package/lib/index.js.map +1 -1
  68. package/lib/live-channel-player/index.d.ts +1 -1
  69. package/lib/live-channel-player/index.js +24 -23
  70. package/lib/live-channel-player/index.js.map +1 -1
  71. package/lib/live-channel-player/style/css.js.map +1 -1
  72. package/lib/live-channel-player/style/index.js.map +1 -1
  73. package/lib/live-control/index.d.ts +2 -2
  74. package/lib/live-control/index.js +2 -2
  75. package/lib/live-control/index.js.map +1 -1
  76. package/lib/live-control/style/css.js.map +1 -1
  77. package/lib/live-control/style/index.js.map +1 -1
  78. package/lib/live-control-v2/index.d.ts +3 -3
  79. package/lib/live-control-v2/index.js +2 -2
  80. package/lib/live-control-v2/index.js.map +1 -1
  81. package/lib/live-control-v2/style/css.js.map +1 -1
  82. package/lib/live-control-v2/style/index.js.map +1 -1
  83. package/lib/live-player/index.js +57 -56
  84. package/lib/live-player/index.js.map +1 -1
  85. package/lib/live-player/style/css.js.map +1 -1
  86. package/lib/live-player/style/index.js.map +1 -1
  87. package/lib/player/index.d.ts +1 -1
  88. package/lib/player/index.js +44 -47
  89. package/lib/player/index.js.map +1 -1
  90. package/lib/player/style/css.js.map +1 -1
  91. package/lib/player/style/index.js.map +1 -1
  92. package/lib/rsl/PlayerManager.js +1 -4
  93. package/lib/rsl/PlayerManager.js.map +1 -1
  94. package/lib/utils/index.d.ts +1 -1
  95. package/lib/utils/index.js +2 -2
  96. package/lib/utils/index.js.map +1 -1
  97. package/lib/vtxHls/PlayerManager.js +1 -4
  98. package/lib/vtxHls/PlayerManager.js.map +1 -1
  99. package/lib/vtxHls/WhepManager.js +2 -5
  100. package/lib/vtxHls/WhepManager.js.map +1 -1
  101. package/lib/webrtc/PlayerManager.js +1 -4
  102. package/lib/webrtc/PlayerManager.js.map +1 -1
  103. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_jsxRuntime","require","_react","_reactCollapsed","_interopRequireDefault","_api","_icons","_utils","_context","_collapse","_utils2","_utils3","_ahooks","_button","_message","_table","_tooltip","_moment","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","_useContext","useContext","historyControlV2Context","channels","setChannels","setLoading","activeIndex","setActiveIndex","timeLinePosition","realChannels","filter","item","channelNum","segmentsRef","useRef","getRef","current","onVideoClose","_useCollapse","useCollapse","defaultExpanded","getCollapseProps","getToggleProps","isExpanded","_useRequest","useRequest","getHistoryUrls","manual","runAsync","_useRequest2","getPlaybackUrlSingle","GetHKV2Url","columns","title","dataIndex","width","key","render","_","record","index","active","_jsx","Button","assign","className","concat","onClick","newChannels","startTime","endTime","deal","url","player","realUrl","beginTime","tagId","hkType","code","deviceId","tenantId","getVtxToken","then","data","playbackUrl","children","_jsxs","_Fragment","VideoCloseIcon","VideoPlayIcon","loadData","channel","deviceChannels","JSON","stringify","protocol","token","res","message","info","newIds","map","includes","channelIndex","DEFAULT_PLAY_PARAMS","fetchArr","fetchIndexArr","_b","_c","_d","_e","_f","_g","_h","_j","_k","_l","_m","_o","_p","_q","findIndex","v","streamType","deviceCode","deviceIp","devicePort","list","moment","diff","result","find","citem","isClose","e","getChannelData","console","log","push","error","Promise","all","forEach","useImperativeHandle","load","src","collapseBtnImg","alt","style","transform","TimeVerticalLine","history","segmentData","channelName","format","TimeFormat","params","getSegments","TimePositionIcon","left","TimeLine","display","Tooltip","flex","overflow","Table","dataSource","tableList","scroll","y","x","pagination","rowKey","guid","rowClassName","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"],"sources":["history-control-v2/components/panel/index.js"],"sourcesContent":["import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { forwardRef, useContext, useImperativeHandle, useRef } from 'react';\nimport useCollapse from 'react-collapsed';\nimport { getHistoryUrls, getPlaybackUrlSingle } from '../../../api';\nimport { TimePositionIcon, VideoCloseIcon, VideoPlayIcon } from '../../../icons';\nimport { TimeFormat, guid } from '../../../utils';\nimport { historyControlV2Context } from '../../context';\nimport collapseBtnImg from '../../images/collapse.png';\nimport { DEFAULT_PLAY_PARAMS, getChannelData } from '../../utils';\nimport { getVtxToken } from '@vtx/utils';\nimport { useMouse, useRequest } from 'ahooks';\nimport Button from 'antd/lib/button';\nimport message from 'antd/lib/message';\nimport Table from 'antd/lib/table';\nimport Tooltip from 'antd/lib/tooltip';\nimport moment from 'moment';\nexport const HistoryControlV2Panel = forwardRef((props, ref) => {\n var _a;\n const { channels, setChannels, setLoading, activeIndex, setActiveIndex, timeLinePosition } = useContext(historyControlV2Context);\n const realChannels = channels.filter((item) => item.channelNum !== '');\n const segmentsRef = useRef(null);\n const getRef = () => {\n return segmentsRef.current;\n };\n const { onVideoClose } = props;\n const { getCollapseProps, getToggleProps, isExpanded } = useCollapse({\n defaultExpanded: true, // 默认展开\n });\n const { runAsync } = useRequest(getHistoryUrls, {\n manual: true,\n });\n const { runAsync: GetHKV2Url } = useRequest(getPlaybackUrlSingle, {\n manual: true,\n });\n const columns = [\n {\n title: '序号',\n dataIndex: 'index',\n width: 50,\n },\n {\n title: '播放视频',\n key: 'play',\n width: 90,\n render: (_, record, index) => {\n var _a;\n const active = ((_a = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _a === void 0 ? void 0 : _a.index) === index;\n return (_jsx(Button, Object.assign({ className: `play-btn ${active ? 'active' : ''}`, onClick: () => {\n if (active) {\n const newChannels = [...channels];\n newChannels[activeIndex].index = -1;\n newChannels[activeIndex].startTime = '';\n newChannels[activeIndex].endTime = '';\n 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 if (record.hkType === 'HK_CAR_CLOUD_V2' ||\n record.hkType === 'DHICC') {\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 } }, { children: active ? (_jsxs(_Fragment, { children: [_jsx(VideoCloseIcon, { active: true }), \"\\u5173\\u95ED\"] })) : (_jsxs(_Fragment, { children: [_jsx(VideoPlayIcon, {}), \"\\u64AD\\u653E\"] })) })));\n },\n },\n {\n title: '设备名称',\n dataIndex: 'deviceName',\n width: 200,\n },\n {\n title: '开始时间',\n dataIndex: 'beginTime',\n width: 160,\n },\n {\n title: '结束时间',\n dataIndex: 'endTime',\n width: 160,\n },\n {\n title: '持续时间',\n width: 130,\n dataIndex: 'duration',\n },\n {\n title: '视频大小',\n width: 110,\n dataIndex: 'size',\n },\n // {\n // title: '操作',\n // width: 60,\n // dataIndex: 'operation',\n // render: (_, record) => {\n // return (\n // <Button\n // onClick={() => {\n // console.log(record);\n // }}\n // >\n // 下载\n // </Button>\n // );\n // },\n // },\n ];\n const loadData = (channel) => {\n setLoading(true);\n runAsync({\n deviceChannels: JSON.stringify(channel.deviceChannels),\n protocol: channel.protocol,\n beginTime: channel.beginTime,\n endTime: channel.endTime,\n token: getVtxToken('token'),\n }).then((res) => {\n if (Array.isArray(res)) {\n if (res.length > 25) {\n message.info('最多播放25个视频通道');\n }\n const newIds = [...res].map((item) => {\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({ channelIndex: index }, DEFAULT_PLAY_PARAMS);\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 console.log(data);\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 (data.hkType === 'HK_CAR_CLOUD_V2') {\n fetchArr.push(GetHKV2Url({\n code: data.code,\n beginTime: data.startTime,\n endTime: data.endTime,\n deviceId: data.deviceId,\n channelNum: data.channelNum,\n tenantId: 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 console.log(newChannels);\n if (fetchArr.length) {\n Promise.all(fetchArr).then((data) => {\n data.forEach((e, index) => {\n newChannels[fetchIndexArr[index]] = Object.assign(Object.assign({}, newChannels[fetchIndexArr[index]]), { url: e.playbackUrl, player: (e === null || e === void 0 ? void 0 : e.player) || '' });\n });\n setChannels(newChannels);\n });\n }\n else {\n setChannels(newChannels);\n }\n }\n else {\n message.info('未查询到视频');\n }\n setLoading(false);\n });\n };\n useImperativeHandle(ref, () => {\n return {\n load: (channel) => {\n loadData(channel);\n },\n };\n });\n return (_jsx(_Fragment, { children: Array.isArray(realChannels) && realChannels.length > 0 ? (_jsxs(\"div\", Object.assign({ className: \"collapse-controls\" }, { children: [_jsx(\"div\", Object.assign({ className: \"action-bar\" }, getToggleProps({}), { children: _jsx(\"img\", { src: collapseBtnImg, alt: \"\", style: { transform: `rotate(${isExpanded ? 180 : 0}deg)` } }) })), _jsx(\"section\", Object.assign({ className: \"collapse-panel-container\" }, getCollapseProps(), { children: _jsxs(\"div\", Object.assign({ className: \"panels\" }, { children: [((_a = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _a === void 0 ? void 0 : _a.player) !== 'bd' && (_jsxs(\"div\", Object.assign({ className: \"time-panel\" }, { children: [_jsxs(\"div\", Object.assign({ className: \"segments\", ref: segmentsRef }, { children: [_jsx(TimeVerticalLine, { getRef: getRef, history: channels === null || channels === void 0 ? void 0 : channels[activeIndex].segmentData, channelName: channels === null || channels === void 0 ? void 0 : channels[activeIndex].channelName, onClick: (index, startTime, endTime) => {\n const newChannels = [...channels];\n newChannels[activeIndex] = Object.assign(Object.assign({}, newChannels[activeIndex]), { index, startTime: moment(startTime).format(TimeFormat.params), endTime: moment(endTime).format(TimeFormat.params), tagId: '' });\n setChannels(newChannels);\n } }), getSegments(channels === null || channels === void 0 ? void 0 : channels[activeIndex].segmentData)] })), _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.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(Table, { className: \"history-url-table\", columns: columns, dataSource: (channels === null || channels === void 0 ? void 0 : channels[activeIndex].tableList) || [], scroll: { y: 100, x: 920 }, pagination: false, rowKey: () => {\n return guid();\n }, rowClassName: (_, index) => { var _a; return index === ((_a = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _a === void 0 ? void 0 : _a.index) ? 'active' : ''; } }) }))] }))] })) }))] }))) : null }));\n});\nconst TimeLine = () => {\n const getSplitLines = () => {\n const result = [];\n const step = 100 / 24;\n for (let i = 0; i < 25; i++) {\n const element = (_jsx(\"div\", Object.assign({ className: \"line\", style: { left: `${step * i}%` } }, { children: _jsx(\"div\", Object.assign({ className: \"number\" }, { children: i >= 10 ? i : '0' + i })) }), i));\n result.push(element);\n }\n return result;\n };\n return (_jsxs(\"div\", Object.assign({ className: \"time-axis\" }, { children: [_jsx(\"div\", { className: \"axis\" }), _jsx(\"div\", Object.assign({ className: \"split-lines\" }, { children: getSplitLines() }))] })));\n};\nconst ONEDAY_MILL = 24 * 60 * 60 * 1000;\nconst TimeVerticalLine = ({ getRef, history, onClick, 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: () => onClick(index, playStart, playEnd) }) }))) : (_jsx(\"div\", { className: \"timeline\", style: { left: elementX }, onClick: () => onClick(index, playStart, playEnd) }))) : (_jsx(_Fragment, {}));\n};\nconst getSegments = (props) => {\n const { list = [], start, end } = props;\n const startTime = moment(start);\n const endTime = moment(end);\n const total = endTime.diff(startTime, 'seconds'); // 总时间\n const result = list === null || list === void 0 ? void 0 : list.map((i, 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 HistoryControlV2Panel;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_jsxRuntime","require","_react","_reactCollapsed","_interopRequireDefault","_api","_icons","_utils","_context","_collapse","_utils2","_utils3","_ahooks","_button","_message","_table","_tooltip","_moment","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","_useContext","useContext","historyControlV2Context","channels","setChannels","setLoading","activeIndex","setActiveIndex","timeLinePosition","realChannels","filter","item","channelNum","segmentsRef","useRef","getRef","current","onVideoClose","_useCollapse","useCollapse","defaultExpanded","getCollapseProps","getToggleProps","isExpanded","_useRequest","useRequest","getHistoryUrls","manual","runAsync","_useRequest2","getPlaybackUrlSingle","GetHKV2Url","columns","title","dataIndex","width","key","render","_","record","index","active","_jsx","Button","assign","className","concat","onClick","newChannels","startTime","endTime","deal","url","player","realUrl","beginTime","tagId","hkType","code","deviceId","tenantId","getVtxToken","then","data","playbackUrl","children","_jsxs","_Fragment","VideoCloseIcon","VideoPlayIcon","loadData","channel","deviceChannels","JSON","stringify","protocol","token","res","message","info","newIds","map","includes","channelIndex","DEFAULT_PLAY_PARAMS","fetchArr","fetchIndexArr","_b","_c","_d","_e","_f","_g","_h","_j","_k","_l","_m","_o","_p","_q","findIndex","v","streamType","deviceCode","deviceIp","devicePort","list","moment","diff","result","find","citem","isClose","e","getChannelData","console","log","push","error","Promise","all","forEach","useImperativeHandle","load","src","collapseBtnImg","alt","style","transform","TimeVerticalLine","history","segmentData","channelName","format","TimeFormat","params","getSegments","TimePositionIcon","left","TimeLine","display","Tooltip","flex","overflow","Table","dataSource","tableList","scroll","y","x","pagination","rowKey","guid","rowClassName","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"],"sources":["history-control-v2/components/panel/index.js"],"sourcesContent":["import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { forwardRef, useContext, useImperativeHandle, useRef } from 'react';\nimport useCollapse from 'react-collapsed';\nimport { getHistoryUrls, getPlaybackUrlSingle } from '../../../api';\nimport { TimePositionIcon, VideoCloseIcon, VideoPlayIcon } from '../../../icons';\nimport { TimeFormat, guid } from '../../../utils';\nimport { historyControlV2Context } from '../../context';\nimport collapseBtnImg from '../../images/collapse.png';\nimport { DEFAULT_PLAY_PARAMS, getChannelData } from '../../utils';\nimport { getVtxToken } from '@vtx/utils';\nimport { useMouse, useRequest } from 'ahooks';\nimport Button from 'antd/lib/button';\nimport message from 'antd/lib/message';\nimport Table from 'antd/lib/table';\nimport Tooltip from 'antd/lib/tooltip';\nimport moment from 'moment';\nexport const HistoryControlV2Panel = forwardRef((props, ref) => {\n var _a;\n const { channels, setChannels, setLoading, activeIndex, setActiveIndex, timeLinePosition } = useContext(historyControlV2Context);\n const realChannels = channels.filter((item) => item.channelNum !== '');\n const segmentsRef = useRef(null);\n const getRef = () => {\n return segmentsRef.current;\n };\n const { onVideoClose } = props;\n const { getCollapseProps, getToggleProps, isExpanded } = useCollapse({\n defaultExpanded: true, // 默认展开\n });\n const { runAsync } = useRequest(getHistoryUrls, {\n manual: true,\n });\n const { runAsync: GetHKV2Url } = useRequest(getPlaybackUrlSingle, {\n manual: true,\n });\n const columns = [\n {\n title: '序号',\n dataIndex: 'index',\n width: 50,\n },\n {\n title: '播放视频',\n key: 'play',\n width: 90,\n render: (_, record, index) => {\n var _a;\n const active = ((_a = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _a === void 0 ? void 0 : _a.index) === index;\n return (_jsx(Button, Object.assign({ className: `play-btn ${active ? 'active' : ''}`, onClick: () => {\n if (active) {\n const newChannels = [...channels];\n newChannels[activeIndex].index = -1;\n newChannels[activeIndex].startTime = '';\n newChannels[activeIndex].endTime = '';\n 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 if (record.hkType === 'HK_CAR_CLOUD_V2' ||\n record.hkType === 'DHICC') {\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 } }, { children: active ? (_jsxs(_Fragment, { children: [_jsx(VideoCloseIcon, { active: true }), \"\\u5173\\u95ED\"] })) : (_jsxs(_Fragment, { children: [_jsx(VideoPlayIcon, {}), \"\\u64AD\\u653E\"] })) })));\n },\n },\n {\n title: '设备名称',\n dataIndex: 'deviceName',\n width: 200,\n },\n {\n title: '开始时间',\n dataIndex: 'beginTime',\n width: 160,\n },\n {\n title: '结束时间',\n dataIndex: 'endTime',\n width: 160,\n },\n {\n title: '持续时间',\n width: 130,\n dataIndex: 'duration',\n },\n {\n title: '视频大小',\n width: 110,\n dataIndex: 'size',\n },\n // {\n // title: '操作',\n // width: 60,\n // dataIndex: 'operation',\n // render: (_, record) => {\n // return (\n // <Button\n // onClick={() => {\n // console.log(record);\n // }}\n // >\n // 下载\n // </Button>\n // );\n // },\n // },\n ];\n const loadData = (channel) => {\n setLoading(true);\n runAsync({\n deviceChannels: JSON.stringify(channel.deviceChannels),\n protocol: channel.protocol,\n beginTime: channel.beginTime,\n endTime: channel.endTime,\n token: getVtxToken('token'),\n }).then((res) => {\n if (Array.isArray(res)) {\n if (res.length > 25) {\n message.info('最多播放25个视频通道');\n }\n const newIds = [...res].map((item) => {\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({ channelIndex: index }, DEFAULT_PLAY_PARAMS);\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 console.log(data);\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 (data.hkType === 'HK_CAR_CLOUD_V2') {\n fetchArr.push(GetHKV2Url({\n code: data.code,\n beginTime: data.startTime,\n endTime: data.endTime,\n deviceId: data.deviceId,\n channelNum: data.channelNum,\n tenantId: 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 console.log(newChannels);\n if (fetchArr.length) {\n Promise.all(fetchArr).then((data) => {\n data.forEach((e, index) => {\n newChannels[fetchIndexArr[index]] = Object.assign(Object.assign({}, newChannels[fetchIndexArr[index]]), { url: e.playbackUrl, player: (e === null || e === void 0 ? void 0 : e.player) || '' });\n });\n setChannels(newChannels);\n });\n }\n else {\n setChannels(newChannels);\n }\n }\n else {\n message.info('未查询到视频');\n }\n setLoading(false);\n });\n };\n useImperativeHandle(ref, () => {\n return {\n load: (channel) => {\n loadData(channel);\n },\n };\n });\n return (_jsx(_Fragment, { children: Array.isArray(realChannels) && realChannels.length > 0 ? (_jsxs(\"div\", Object.assign({ className: \"collapse-controls\" }, { children: [_jsx(\"div\", Object.assign({ className: \"action-bar\" }, getToggleProps({}), { children: _jsx(\"img\", { src: collapseBtnImg, alt: \"\", style: { transform: `rotate(${isExpanded ? 180 : 0}deg)` } }) })), _jsx(\"section\", Object.assign({ className: \"collapse-panel-container\" }, getCollapseProps(), { children: _jsxs(\"div\", Object.assign({ className: \"panels\" }, { children: [((_a = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _a === void 0 ? void 0 : _a.player) !== 'bd' && (_jsxs(\"div\", Object.assign({ className: \"time-panel\" }, { children: [_jsxs(\"div\", Object.assign({ className: \"segments\", ref: segmentsRef }, { children: [_jsx(TimeVerticalLine, { getRef: getRef, history: channels === null || channels === void 0 ? void 0 : channels[activeIndex].segmentData, channelName: channels === null || channels === void 0 ? void 0 : channels[activeIndex].channelName, onClick: (index, startTime, endTime) => {\n const newChannels = [...channels];\n newChannels[activeIndex] = Object.assign(Object.assign({}, newChannels[activeIndex]), { index, startTime: moment(startTime).format(TimeFormat.params), endTime: moment(endTime).format(TimeFormat.params), tagId: '' });\n setChannels(newChannels);\n } }), getSegments(channels === null || channels === void 0 ? void 0 : channels[activeIndex].segmentData)] })), _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.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(Table, { className: \"history-url-table\", columns: columns, dataSource: (channels === null || channels === void 0 ? void 0 : channels[activeIndex].tableList) || [], scroll: { y: 100, x: 920 }, pagination: false, rowKey: () => {\n return guid();\n }, rowClassName: (_, index) => { var _a; return index === ((_a = channels === null || channels === void 0 ? void 0 : channels[activeIndex]) === null || _a === void 0 ? void 0 : _a.index) ? 'active' : ''; } }) }))] }))] })) }))] }))) : null }));\n});\nconst TimeLine = () => {\n const getSplitLines = () => {\n const result = [];\n const step = 100 / 24;\n for (let i = 0; i < 25; i++) {\n const element = (_jsx(\"div\", Object.assign({ className: \"line\", style: { left: `${step * i}%` } }, { children: _jsx(\"div\", Object.assign({ className: \"number\" }, { children: i >= 10 ? i : '0' + i })) }), i));\n result.push(element);\n }\n return result;\n };\n return (_jsxs(\"div\", Object.assign({ className: \"time-axis\" }, { children: [_jsx(\"div\", { className: \"axis\" }), _jsx(\"div\", Object.assign({ className: \"split-lines\" }, { children: getSplitLines() }))] })));\n};\nconst ONEDAY_MILL = 24 * 60 * 60 * 1000;\nconst TimeVerticalLine = ({ getRef, history, onClick, 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: () => onClick(index, playStart, playEnd) }) }))) : (_jsx(\"div\", { className: \"timeline\", style: { left: elementX }, onClick: () => onClick(index, playStart, playEnd) }))) : (_jsx(_Fragment, {}));\n};\nconst getSegments = (props) => {\n const { list = [], start, end } = props;\n const startTime = moment(start);\n const endTime = moment(end);\n const total = endTime.diff(startTime, 'seconds'); // 总时间\n const result = list === null || list === void 0 ? void 0 : list.map((i, 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 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,OAAA,GAAAT,sBAAA,CAAAH,OAAA;AACA,IAAAa,QAAA,GAAAV,sBAAA,CAAAH,OAAA;AACA,IAAAc,MAAA,GAAAX,sBAAA,CAAAH,OAAA;AACA,IAAAe,QAAA,GAAAZ,sBAAA,CAAAH,OAAA;AACA,IAAAgB,OAAA,GAAAb,sBAAA,CAAAH,OAAA;AAA4B,SAAAG,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;AACrB,IAAMC,qBAAqB,gBAAG,IAAAC,iBAAU,EAAC,UAACC,KAAK,EAAEC,GAAG,EAAK;EAC5D,IAAIC,EAAE;EACN,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,GAAKpB,KAAK,CAAtBoB,YAAY;EACpB,IAAAC,YAAA,GAAyD,IAAAC,0BAAW,EAAC;MACjEC,eAAe,EAAE,IAAI,CAAE;IAC3B,CAAC,CAAC;IAFMC,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,IAAMI,OAAO,GAAG,CACZ;IACIC,KAAK,EAAE,IAAI;IACXC,SAAS,EAAE,OAAO;IAClBC,KAAK,EAAE;EACX,CAAC,EACD;IACIF,KAAK,EAAE,MAAM;IACbG,GAAG,EAAE,MAAM;IACXD,KAAK,EAAE,EAAE;IACTE,MAAM,EAAE,SAAAA,OAACC,CAAC,EAAEC,MAAM,EAAEC,KAAK,EAAK;MAC1B,IAAIzC,EAAE;MACN,IAAM0C,MAAM,GAAG,CAAC,CAAC1C,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,CAACyC,KAAK,MAAMA,KAAK;MACzJ,OAAQ,IAAAE,eAAI,EAACC,kBAAM,EAAElE,MAAM,CAACmE,MAAM,CAAC;QAAEC,SAAS,cAAAC,MAAA,CAAcL,MAAM,GAAG,QAAQ,GAAG,EAAE,CAAE;QAAEM,OAAO,EAAE,SAAAA,QAAA,EAAM;UAC7F,IAAIN,MAAM,EAAE;YACR,IAAMO,WAAW,GAAAlF,kBAAA,CAAOqC,QAAQ,CAAC;YACjC6C,WAAW,CAAC1C,WAAW,CAAC,CAACkC,KAAK,GAAG,CAAC,CAAC;YACnCQ,WAAW,CAAC1C,WAAW,CAAC,CAAC2C,SAAS,GAAG,EAAE;YACvCD,WAAW,CAAC1C,WAAW,CAAC,CAAC4C,OAAO,GAAG,EAAE;YACrC3C,cAAc,CAACD,WAAW,GAAG,CAAC,GAAG,CAAC,GAAGA,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC;YACzDF,WAAW,CAAC4C,WAAW,CAAC;YACxB/B,YAAY,IAAIA,YAAY,CAAC+B,WAAW,CAAC1C,WAAW,CAAC,CAAC;UAC1D,CAAC,MACI;YACD;YAAA,IACS6C,IAAI,GAAb,SAASA,IAAIA,CAACC,GAAG,EAAEC,MAAM,EAAE;cACvB,IAAMC,OAAO,GAAGF,GAAG,IAAIb,MAAM,CAACa,GAAG;cACjC,IAAMJ,WAAW,GAAAlF,kBAAA,CAAOqC,QAAQ,CAAC;cACjC6C,WAAW,CAAC1C,WAAW,CAAC,CAACkC,KAAK,GAAGA,KAAK;cACtCQ,WAAW,CAAC1C,WAAW,CAAC,CAAC2C,SAAS,GAAGV,MAAM,CAACgB,SAAS;cACrDP,WAAW,CAAC1C,WAAW,CAAC,CAAC4C,OAAO,GAAGX,MAAM,CAACW,OAAO;cACjDF,WAAW,CAAC1C,WAAW,CAAC,CAACkD,KAAK,GAAG,EAAE;cACnCR,WAAW,CAAC1C,WAAW,CAAC,CAAC8C,GAAG,GAAGE,OAAO;cACtCN,WAAW,CAAC1C,WAAW,CAAC,CAAC+C,MAAM,GAAGA,MAAM,IAAId,MAAM,CAACc,MAAM;cACzDjD,WAAW,CAAC4C,WAAW,CAAC;YAC5B,CAAC;YACD,IAAIT,MAAM,CAACkB,MAAM,KAAK,iBAAiB,IACnClB,MAAM,CAACkB,MAAM,KAAK,OAAO,EAAE;cAC3B1B,UAAU,CAAC;gBACP2B,IAAI,EAAEnB,MAAM,CAACmB,IAAI;gBACjBH,SAAS,EAAEhB,MAAM,CAACgB,SAAS;gBAC3BL,OAAO,EAAEX,MAAM,CAACW,OAAO;gBACvBS,QAAQ,EAAEpB,MAAM,CAACoB,QAAQ;gBACzB/C,UAAU,EAAE2B,MAAM,CAAC3B,UAAU;gBAC7BgD,QAAQ,EAAE,IAAAC,mBAAW,EAAC,UAAU;cACpC,CAAC,CAAC,CAACC,IAAI,CAAC,UAACC,IAAI,EAAK;gBACdZ,IAAI,CAACY,IAAI,CAACC,WAAW,EAAE,CAACD,IAAI,KAAK,IAAI,IAAIA,IAAI,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,IAAI,CAACV,MAAM,KAAK,EAAE,CAAC;cAC3F,CAAC,CAAC;YACN,CAAC,MACI;cACDF,IAAI,CAAC,CAAC;YACV;UACJ;QACJ;MAAE,CAAC,EAAE;QAAEc,QAAQ,EAAExB,MAAM,GAAI,IAAAyB,gBAAK,EAACC,oBAAS,EAAE;UAAEF,QAAQ,EAAE,CAAC,IAAAvB,eAAI,EAAC0B,qBAAc,EAAE;YAAE3B,MAAM,EAAE;UAAK,CAAC,CAAC,EAAE,cAAc;QAAE,CAAC,CAAC,GAAK,IAAAyB,gBAAK,EAACC,oBAAS,EAAE;UAAEF,QAAQ,EAAE,CAAC,IAAAvB,eAAI,EAAC2B,oBAAa,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc;QAAE,CAAC;MAAG,CAAC,CAAC,CAAC;IAC9M;EACJ,CAAC,EACD;IACIpC,KAAK,EAAE,MAAM;IACbC,SAAS,EAAE,YAAY;IACvBC,KAAK,EAAE;EACX,CAAC,EACD;IACIF,KAAK,EAAE,MAAM;IACbC,SAAS,EAAE,WAAW;IACtBC,KAAK,EAAE;EACX,CAAC,EACD;IACIF,KAAK,EAAE,MAAM;IACbC,SAAS,EAAE,SAAS;IACpBC,KAAK,EAAE;EACX,CAAC,EACD;IACIF,KAAK,EAAE,MAAM;IACbE,KAAK,EAAE,GAAG;IACVD,SAAS,EAAE;EACf,CAAC,EACD;IACID,KAAK,EAAE,MAAM;IACbE,KAAK,EAAE,GAAG;IACVD,SAAS,EAAE;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAAA,CACH;EACD,IAAMoC,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,OAAO,EAAK;IAC1BlE,UAAU,CAAC,IAAI,CAAC;IAChBuB,QAAQ,CAAC;MACL4C,cAAc,EAAEC,IAAI,CAACC,SAAS,CAACH,OAAO,CAACC,cAAc,CAAC;MACtDG,QAAQ,EAAEJ,OAAO,CAACI,QAAQ;MAC1BpB,SAAS,EAAEgB,OAAO,CAAChB,SAAS;MAC5BL,OAAO,EAAEqB,OAAO,CAACrB,OAAO;MACxB0B,KAAK,EAAE,IAAAf,mBAAW,EAAC,OAAO;IAC9B,CAAC,CAAC,CAACC,IAAI,CAAC,UAACe,GAAG,EAAK;MACb,IAAI7F,KAAK,CAACM,OAAO,CAACuF,GAAG,CAAC,EAAE;QACpB,IAAIA,GAAG,CAACrF,MAAM,GAAG,EAAE,EAAE;UACjBsF,mBAAO,CAACC,IAAI,CAAC,aAAa,CAAC;QAC/B;QACA,IAAMC,MAAM,GAAGlH,kBAAA,CAAI+G,GAAG,EAAEI,GAAG,CAAC,UAACtE,IAAI,EAAK;UAClC,UAAAmC,MAAA,CAAUnC,IAAI,CAACgD,QAAQ,EAAAb,MAAA,CAAGnC,IAAI,CAACC,UAAU;QAC7C,CAAC,CAAC;QACF,IAAMoC,WAAW,GAAAlF,kBAAA,CAAOqC,QAAQ,CAAC;QACjCA,QAAQ,CAAC8E,GAAG,CAAC,UAACtE,IAAI,EAAE6B,KAAK,EAAK;UAC1B,IAAI,CAACwC,MAAM,CAACE,QAAQ,IAAApC,MAAA,CAAInC,IAAI,CAACgD,QAAQ,EAAAb,MAAA,CAAGnC,IAAI,CAACC,UAAU,CAAE,CAAC,EAAE;YACxDoC,WAAW,CAACR,KAAK,CAAC,GAAG/D,MAAM,CAACmE,MAAM,CAAC;cAAEuC,YAAY,EAAE3C;YAAM,CAAC,EAAE4C,2BAAmB,CAAC;UACpF;QACJ,CAAC,CAAC;QACF,IAAMC,QAAQ,GAAG,EAAE;UAAEC,aAAa,GAAG,EAAE;QACvCT,GAAG,CAACnE,MAAM,CAAC,UAACC,IAAI,EAAE6B,KAAK;UAAA,OAAKA,KAAK,GAAG,EAAE;QAAA,EAAC,CAACyC,GAAG,CAAC,UAACtE,IAAI,EAAK;UAClD,IAAIZ,EAAE,EAAEwF,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE;UAC9D,IAAIzF,IAAI,CAAC0C,MAAM,KAAK,QAAQ,EAAE;YAC1B,IAAM8B,YAAY,GAAGnC,WAAW,CAACqD,SAAS,CAAC,UAACC,CAAC;cAAA,OAAK,CAACA,CAAC,CAAClD,GAAG;YAAA,EAAC;YACzDJ,WAAW,CAACmC,YAAY,CAAC,GAAG1G,MAAM,CAACmE,MAAM,CAACnE,MAAM,CAACmE,MAAM,CAAC,CAAC,CAAC,EAAEI,WAAW,CAACmC,YAAY,CAAC,CAAC,EAAE;cAAE/B,GAAG,EAAE,QAAQ;cAAEH,SAAS,EAAEsB,OAAO,CAAChB,SAAS;cAAEL,OAAO,EAAEqB,OAAO,CAACrB,OAAO;cAAEqD,UAAU,EAAE5F,IAAI,CAAC4F,UAAU;cAAEC,UAAU,EAAE7F,IAAI,CAAC6F,UAAU;cAAE7C,QAAQ,EAAEhD,IAAI,CAACgD,QAAQ;cAAE8C,QAAQ,EAAE9F,IAAI,CAAC8F,QAAQ;cAAEC,UAAU,EAAE/F,IAAI,CAAC+F,UAAU;cAAE9F,UAAU,EAAED,IAAI,CAACC,UAAU;cAAEyC,MAAM,EAAE;YAAS,CAAC,CAAC;YAC1V;UACJ;UACA;AACpB;AACA;AACA;UACoB,IAAI,CAACtD,EAAE,GAAGY,IAAI,CAACgG,IAAI,MAAM,IAAI,IAAI5G,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACP,MAAM,EAAE;YACjE,IAAI,IAAAoH,kBAAM,EAAC,CAACpB,EAAE,GAAG,CAACD,EAAE,GAAG5E,IAAI,CAACgG,IAAI,MAAM,IAAI,IAAIpB,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAIC,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACjC,SAAS,CAAC,CAACsD,IAAI,CAAC,IAAAD,kBAAM,EAACrC,OAAO,CAAChB,SAAS,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE;cAC7K5C,IAAI,CAACgG,IAAI,CAAC,CAAC,CAAC,CAACpD,SAAS,GAAGgB,OAAO,CAAChB,SAAS;YAC9C;YACA,IAAI,IAAAqD,kBAAM,EAAC,CAAClB,EAAE,GAAG,CAACD,EAAE,GAAG9E,IAAI,CAACgG,IAAI,MAAM,IAAI,IAAIlB,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC9E,IAAI,CAACgG,IAAI,CAACnH,MAAM,GAAG,CAAC,CAAC,MAAM,IAAI,IAAIkG,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACxC,OAAO,CAAC,CAAC2D,IAAI,CAAC,IAAAD,kBAAM,EAACrC,OAAO,CAACrB,OAAO,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE;cAC5LvC,IAAI,CAACgG,IAAI,CAAChG,IAAI,CAACgG,IAAI,CAACnH,MAAM,GAAG,CAAC,CAAC,CAAC0D,OAAO,GAAGqB,OAAO,CAACrB,OAAO;YAC7D;UACJ;UACA,IAAM4D,MAAM,GAAG9D,WAAW,CAAC+D,IAAI,CAAC,UAACC,KAAK;YAAA,OAAKA,KAAK,CAACrD,QAAQ,KAAKhD,IAAI,CAACgD,QAAQ,IAAIqD,KAAK,CAACpG,UAAU,KAAKD,IAAI,CAACC,UAAU;UAAA,EAAC;UACpH,IAAIkG,MAAM,EAAE;YACR,IAAMG,OAAO,GAAGjE,WAAW,CAAC8D,MAAM,CAAC3B,YAAY,CAAC,CAAC3C,KAAK,KAAK,CAAC,CAAC,IACzDQ,WAAW,CAAC8D,MAAM,CAAC3B,YAAY,CAAC,CAAC3B,KAAK,KAAK,EAAE;YACjD;YACA7C,IAAI,CAACgG,IAAI,GAAG,CAACf,EAAE,GAAG,CAACD,EAAE,GAAGhF,IAAI,CAACgG,IAAI,MAAM,IAAI,IAAIhB,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACjF,MAAM,MAAM,IAAI,IAAIkF,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAChH,IAAI,CAAC+G,EAAE,EAAE,UAACuB,CAAC;cAAA,OAAKA,CAAC,CAAC3D,SAAS,CAAC1E,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAKqI,CAAC,CAAChE,OAAO,CAACrE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YAAA,EAAC;YAC/L,IAAMkF,IAAI,GAAG,IAAAoD,sBAAc,EAACxG,IAAI,EAAE4D,OAAO,CAAC;YAC1C6C,OAAO,CAACC,GAAG,CAACtD,IAAI,CAAC;YACjBf,WAAW,CAAC8D,MAAM,CAAC3B,YAAY,CAAC,GAAG1G,MAAM,CAACmE,MAAM,CAACnE,MAAM,CAACmE,MAAM,CAACnE,MAAM,CAACmE,MAAM,CAAC,CAAC,CAAC,EAAEI,WAAW,CAAC8D,MAAM,CAAC3B,YAAY,CAAC,CAAC,EAAE;cAChH;cACA3C,KAAK,EAAEyE,OAAO,GAAG,CAAC,GAAGjE,WAAW,CAAC8D,MAAM,CAAC3B,YAAY,CAAC,CAAC3C,KAAK;cAAES,SAAS,EAAEgE,OAAO,GACzE,CAAC,CAACnB,EAAE,GAAG,CAACD,EAAE,GAAGlF,IAAI,CAACgG,IAAI,MAAM,IAAI,IAAId,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAIC,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACvC,SAAS,KAAKgB,OAAO,CAAChB,SAAS,GAC3IP,WAAW,CAAC8D,MAAM,CAAC3B,YAAY,CAAC,CAAClC,SAAS;cAAEC,OAAO,EAAE+D,OAAO,GAC5D,CAAC,CAACjB,EAAE,GAAG,CAACD,EAAE,GAAGpF,IAAI,CAACgG,IAAI,MAAM,IAAI,IAAIZ,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAIC,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACzC,SAAS,KAAKgB,OAAO,CAAChB,SAAS,GAC3IP,WAAW,CAAC8D,MAAM,CAAC3B,YAAY,CAAC,CAACjC;YAAQ,CAAC,CAAC,EAAEa,IAAI,CAAC;UAChE,CAAC,MACI;YACD,IAAMoB,aAAY,GAAG,CAACe,EAAE,GAAG,CAACD,EAAE,GAAGjD,WAAW,CAACtC,MAAM,CAAC,UAACC,IAAI;cAAA,OAAKA,IAAI,CAACC,UAAU,KAAK,EAAE;YAAA,EAAC,MAAM,IAAI,IAAIqF,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAIC,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACf,YAAY;YACvL,IAAI,OAAOA,aAAY,IAAI,QAAQ,EAAE;cACjC;cACAxE,IAAI,CAACgG,IAAI,GAAG,CAACP,EAAE,GAAG,CAACD,EAAE,GAAGxF,IAAI,CAACgG,IAAI,MAAM,IAAI,IAAIR,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACzF,MAAM,MAAM,IAAI,IAAI0F,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACxH,IAAI,CAACuH,EAAE,EAAE,UAACe,CAAC;gBAAA,OAAKA,CAAC,CAAC3D,SAAS,CAAC1E,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAKqI,CAAC,CAAChE,OAAO,CAACrE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;cAAA,EAAC;cAC/L,IAAMkF,KAAI,GAAG,IAAAoD,sBAAc,EAACxG,IAAI,EAAE4D,OAAO,CAAC;cAC1C,IAAIR,KAAI,CAACN,MAAM,KAAK,iBAAiB,EAAE;gBACnC4B,QAAQ,CAACiC,IAAI,CAACvF,UAAU,CAAC;kBACrB2B,IAAI,EAAEK,KAAI,CAACL,IAAI;kBACfH,SAAS,EAAEQ,KAAI,CAACd,SAAS;kBACzBC,OAAO,EAAEa,KAAI,CAACb,OAAO;kBACrBS,QAAQ,EAAEI,KAAI,CAACJ,QAAQ;kBACvB/C,UAAU,EAAEmD,KAAI,CAACnD,UAAU;kBAC3BgD,QAAQ,EAAE,IAAAC,mBAAW,EAAC,UAAU;gBACpC,CAAC,CAAC,CAAC;gBACHyB,aAAa,CAACgC,IAAI,CAACnC,aAAY,CAAC;cACpC;cACAnC,WAAW,CAACmC,aAAY,CAAC,GAAG1G,MAAM,CAACmE,MAAM,CAACnE,MAAM,CAACmE,MAAM,CAAC,CAAC,CAAC,EAAEI,WAAW,CAACmC,aAAY,CAAC,CAAC,EAAEpB,KAAI,CAAC;YACjG,CAAC,MACI;cACDe,mBAAO,CAACyC,KAAK,CAAC,WAAW,CAAC;YAC9B;UACJ;QACJ,CAAC,CAAC;QACFH,OAAO,CAACC,GAAG,CAACrE,WAAW,CAAC;QACxB,IAAIqC,QAAQ,CAAC7F,MAAM,EAAE;UACjBgI,OAAO,CAACC,GAAG,CAACpC,QAAQ,CAAC,CAACvB,IAAI,CAAC,UAACC,IAAI,EAAK;YACjCA,IAAI,CAAC2D,OAAO,CAAC,UAACR,CAAC,EAAE1E,KAAK,EAAK;cACvBQ,WAAW,CAACsC,aAAa,CAAC9C,KAAK,CAAC,CAAC,GAAG/D,MAAM,CAACmE,MAAM,CAACnE,MAAM,CAACmE,MAAM,CAAC,CAAC,CAAC,EAAEI,WAAW,CAACsC,aAAa,CAAC9C,KAAK,CAAC,CAAC,CAAC,EAAE;gBAAEY,GAAG,EAAE8D,CAAC,CAAClD,WAAW;gBAAEX,MAAM,EAAE,CAAC6D,CAAC,KAAK,IAAI,IAAIA,CAAC,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,CAAC,CAAC7D,MAAM,KAAK;cAAG,CAAC,CAAC;YACnM,CAAC,CAAC;YACFjD,WAAW,CAAC4C,WAAW,CAAC;UAC5B,CAAC,CAAC;QACN,CAAC,MACI;UACD5C,WAAW,CAAC4C,WAAW,CAAC;QAC5B;MACJ,CAAC,MACI;QACD8B,mBAAO,CAACC,IAAI,CAAC,QAAQ,CAAC;MAC1B;MACA1E,UAAU,CAAC,KAAK,CAAC;IACrB,CAAC,CAAC;EACN,CAAC;EACD,IAAAsH,0BAAmB,EAAC7H,GAAG,EAAE,YAAM;IAC3B,OAAO;MACH8H,IAAI,EAAE,SAAAA,KAACrD,OAAO,EAAK;QACfD,QAAQ,CAACC,OAAO,CAAC;MACrB;IACJ,CAAC;EACL,CAAC,CAAC;EACF,OAAQ,IAAA7B,eAAI,EAACyB,oBAAS,EAAE;IAAEF,QAAQ,EAAEjF,KAAK,CAACM,OAAO,CAACmB,YAAY,CAAC,IAAIA,YAAY,CAACjB,MAAM,GAAG,CAAC,GAAI,IAAA0E,gBAAK,EAAC,KAAK,EAAEzF,MAAM,CAACmE,MAAM,CAAC;MAAEC,SAAS,EAAE;IAAoB,CAAC,EAAE;MAAEoB,QAAQ,EAAE,CAAC,IAAAvB,eAAI,EAAC,KAAK,EAAEjE,MAAM,CAACmE,MAAM,CAAC;QAAEC,SAAS,EAAE;MAAa,CAAC,EAAEvB,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE;QAAE2C,QAAQ,EAAE,IAAAvB,eAAI,EAAC,KAAK,EAAE;UAAEmF,GAAG,EAAEC,oBAAc;UAAEC,GAAG,EAAE,EAAE;UAAEC,KAAK,EAAE;YAAEC,SAAS,YAAAnF,MAAA,CAAYvB,UAAU,GAAG,GAAG,GAAG,CAAC;UAAO;QAAE,CAAC;MAAE,CAAC,CAAC,CAAC,EAAE,IAAAmB,eAAI,EAAC,SAAS,EAAEjE,MAAM,CAACmE,MAAM,CAAC;QAAEC,SAAS,EAAE;MAA2B,CAAC,EAAExB,gBAAgB,CAAC,CAAC,EAAE;QAAE4C,QAAQ,EAAE,IAAAC,gBAAK,EAAC,KAAK,EAAEzF,MAAM,CAACmE,MAAM,CAAC;UAAEC,SAAS,EAAE;QAAS,CAAC,EAAE;UAAEoB,QAAQ,EAAE,CAAC,CAAC,CAAClE,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,CAACsD,MAAM,MAAM,IAAI,IAAK,IAAAa,gBAAK,EAAC,KAAK,EAAEzF,MAAM,CAACmE,MAAM,CAAC;YAAEC,SAAS,EAAE;UAAa,CAAC,EAAE;YAAEoB,QAAQ,EAAE,CAAC,IAAAC,gBAAK,EAAC,KAAK,EAAEzF,MAAM,CAACmE,MAAM,CAAC;cAAEC,SAAS,EAAE,UAAU;cAAE/C,GAAG,EAAEe;YAAY,CAAC,EAAE;cAAEoD,QAAQ,EAAE,CAAC,IAAAvB,eAAI,EAACwF,gBAAgB,EAAE;gBAAEnH,MAAM,EAAEA,MAAM;gBAAEoH,OAAO,EAAEhI,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,QAAQ,CAACG,WAAW,CAAC,CAAC8H,WAAW;gBAAEC,WAAW,EAAElI,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,QAAQ,CAACG,WAAW,CAAC,CAAC+H,WAAW;gBAAEtF,OAAO,EAAE,SAAAA,QAACP,KAAK,EAAES,SAAS,EAAEC,OAAO,EAAK;kBACxiC,IAAMF,WAAW,GAAAlF,kBAAA,CAAOqC,QAAQ,CAAC;kBACjC6C,WAAW,CAAC1C,WAAW,CAAC,GAAG7B,MAAM,CAACmE,MAAM,CAACnE,MAAM,CAACmE,MAAM,CAAC,CAAC,CAAC,EAAEI,WAAW,CAAC1C,WAAW,CAAC,CAAC,EAAE;oBAAEkC,KAAK,EAALA,KAAK;oBAAES,SAAS,EAAE,IAAA2D,kBAAM,EAAC3D,SAAS,CAAC,CAACqF,MAAM,CAACC,iBAAU,CAACC,MAAM,CAAC;oBAAEtF,OAAO,EAAE,IAAA0D,kBAAM,EAAC1D,OAAO,CAAC,CAACoF,MAAM,CAACC,iBAAU,CAACC,MAAM,CAAC;oBAAEhF,KAAK,EAAE;kBAAG,CAAC,CAAC;kBACvNpD,WAAW,CAAC4C,WAAW,CAAC;gBAC5B;cAAE,CAAC,CAAC,EAAEyF,WAAW,CAACtI,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,QAAQ,CAACG,WAAW,CAAC,CAAC8H,WAAW,CAAC;YAAE,CAAC,CAAC,CAAC,EAAE,IAAAlE,gBAAK,EAACC,oBAAS,EAAE;cAAEF,QAAQ,EAAE,CAACzD,gBAAgB,IAAI,CAAC,IAAK,IAAAkC,eAAI,EAACgG,uBAAgB,EAAE;gBAAE7F,SAAS,EAAE,gBAAgB;gBAAEmF,KAAK,EAAE;kBAChOW,IAAI,KAAA7F,MAAA,CAAKtC,gBAAgB;gBAC7B;cAAE,CAAC,CAAE,EAAE,IAAAkC,eAAI,EAACkG,QAAQ,EAAE,CAAC,CAAC,CAAC;YAAE,CAAC,CAAC;UAAE,CAAC,CAAC,CAAE,EAAE,IAAA1E,gBAAK,EAAC,KAAK,EAAEzF,MAAM,CAACmE,MAAM,CAAC;YAAEoF,KAAK,EAAE;cAAEa,OAAO,EAAE;YAAO;UAAE,CAAC,EAAE;YAAE5E,QAAQ,EAAE,CAAC,IAAAC,gBAAK,EAAC,KAAK,EAAEzF,MAAM,CAACmE,MAAM,CAAC;cAAEC,SAAS,EAAE;YAAc,CAAC,EAAE;cAAEoB,QAAQ,EAAE,CAAC,IAAAC,gBAAK,EAAC,KAAK,EAAEzF,MAAM,CAACmE,MAAM,CAAC;gBAAEC,SAAS,EAAE;cAAoB,CAAC,EAAE;gBAAEoB,QAAQ,EAAE,CAAC,2BAA2B,EAAExD,YAAY,CAACjB,MAAM,EAAE,GAAG;cAAE,CAAC,CAAC,CAAC,EAAE,IAAAkD,eAAI,EAAC,KAAK,EAAEjE,MAAM,CAACmE,MAAM,CAAC;gBAAEC,SAAS,EAAE;cAAmB,CAAC,EAAE;gBAAEoB,QAAQ,EAAExD,YAAY,CAACwE,GAAG,CAAC,UAACtE,IAAI,EAAE6B,KAAK,EAAK;kBACla,OAAQ,IAAAE,eAAI,EAAC,KAAK,EAAEjE,MAAM,CAACmE,MAAM,CAAC;oBAAEC,SAAS,KAAAC,MAAA,CAAKxC,WAAW,IAAIkC,KAAK,GAC5D,4BAA4B,GAC5B,EAAE,yBAAsB;oBAAEO,OAAO,EAAE,SAAAA,QAAA,EAAM;sBAC3CxC,cAAc,CAACI,IAAI,CAACwE,YAAY,CAAC;sBACjC;sBACA,IAAIxE,IAAI,CAAC0C,MAAM,KAAK,QAAQ,EAAE;wBAC1B;sBAAA;oBAER;kBAAE,CAAC,EAAE;oBAAEY,QAAQ,EAAE,IAAAvB,eAAI,EAACoG,mBAAO,EAAErK,MAAM,CAACmE,MAAM,CAAC;sBAAEX,KAAK,KAAAa,MAAA,CAAKnC,IAAI,CAAC0H,WAAW;oBAAG,CAAC,EAAE;sBAAEpE,QAAQ,KAAAnB,MAAA,CAAKnC,IAAI,CAAC0H,WAAW;oBAAG,CAAC,CAAC;kBAAE,CAAC,CAAC,KAAAvF,MAAA,CAAKnC,IAAI,CAACgD,QAAQ,EAAAb,MAAA,CAAGnC,IAAI,CAACC,UAAU,CAAE,CAAC;gBACtK,CAAC;cAAE,CAAC,CAAC,CAAC;YAAE,CAAC,CAAC,CAAC,EAAE,IAAA8B,eAAI,EAAC,KAAK,EAAEjE,MAAM,CAACmE,MAAM,CAAC;cAAEC,SAAS,EAAE,YAAY;cAAEmF,KAAK,EAAE;gBAAEe,IAAI,EAAE,CAAC;gBAAEC,QAAQ,EAAE,QAAQ;gBAAE7G,KAAK;cAAS;YAAE,CAAC,EAAE;cAAE8B,QAAQ,EAAE,IAAAvB,eAAI,EAACuG,iBAAK,EAAE;gBAAEpG,SAAS,EAAE,mBAAmB;gBAAEb,OAAO,EAAEA,OAAO;gBAAEkH,UAAU,EAAE,CAAC/I,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,QAAQ,CAACG,WAAW,CAAC,CAAC6I,SAAS,KAAK,EAAE;gBAAEC,MAAM,EAAE;kBAAEC,CAAC,EAAE,GAAG;kBAAEC,CAAC,EAAE;gBAAI,CAAC;gBAAEC,UAAU,EAAE,KAAK;gBAAEC,MAAM,EAAE,SAAAA,OAAA,EAAM;kBAC7W,OAAO,IAAAC,WAAI,EAAC,CAAC;gBACjB,CAAC;gBAAEC,YAAY,EAAE,SAAAA,aAACpH,CAAC,EAAEE,KAAK,EAAK;kBAAE,IAAIzC,EAAE;kBAAE,OAAOyC,KAAK,MAAM,CAACzC,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,CAACyC,KAAK,CAAC,GAAG,QAAQ,GAAG,EAAE;gBAAE;cAAE,CAAC;YAAE,CAAC,CAAC,CAAC;UAAE,CAAC,CAAC,CAAC;QAAE,CAAC,CAAC;MAAE,CAAC,CAAC,CAAC;IAAE,CAAC,CAAC,CAAC,GAAI;EAAK,CAAC,CAAC;AAC9R,CAAC,CAAC;AAACmH,OAAA,CAAAhK,qBAAA,GAAAA,qBAAA;AACH,IAAMiJ,QAAQ,GAAG,SAAXA,QAAQA,CAAA,EAAS;EACnB,IAAMgB,aAAa,GAAG,SAAhBA,aAAaA,CAAA,EAAS;IACxB,IAAM9C,MAAM,GAAG,EAAE;IACjB,IAAM+C,IAAI,GAAG,GAAG,GAAG,EAAE;IACrB,KAAK,IAAIpK,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,EAAE,EAAEA,CAAC,EAAE,EAAE;MACzB,IAAMqK,OAAO,GAAI,IAAApH,eAAI,EAAC,KAAK,EAAEjE,MAAM,CAACmE,MAAM,CAAC;QAAEC,SAAS,EAAE,MAAM;QAAEmF,KAAK,EAAE;UAAEW,IAAI,KAAA7F,MAAA,CAAK+G,IAAI,GAAGpK,CAAC;QAAI;MAAE,CAAC,EAAE;QAAEwE,QAAQ,EAAE,IAAAvB,eAAI,EAAC,KAAK,EAAEjE,MAAM,CAACmE,MAAM,CAAC;UAAEC,SAAS,EAAE;QAAS,CAAC,EAAE;UAAEoB,QAAQ,EAAExE,CAAC,IAAI,EAAE,GAAGA,CAAC,GAAG,GAAG,GAAGA;QAAE,CAAC,CAAC;MAAE,CAAC,CAAC,EAAEA,CAAC,CAAE;MAC/MqH,MAAM,CAACQ,IAAI,CAACwC,OAAO,CAAC;IACxB;IACA,OAAOhD,MAAM;EACjB,CAAC;EACD,OAAQ,IAAA5C,gBAAK,EAAC,KAAK,EAAEzF,MAAM,CAACmE,MAAM,CAAC;IAAEC,SAAS,EAAE;EAAY,CAAC,EAAE;IAAEoB,QAAQ,EAAE,CAAC,IAAAvB,eAAI,EAAC,KAAK,EAAE;MAAEG,SAAS,EAAE;IAAO,CAAC,CAAC,EAAE,IAAAH,eAAI,EAAC,KAAK,EAAEjE,MAAM,CAACmE,MAAM,CAAC;MAAEC,SAAS,EAAE;IAAc,CAAC,EAAE;MAAEoB,QAAQ,EAAE2F,aAAa,CAAC;IAAE,CAAC,CAAC,CAAC;EAAE,CAAC,CAAC,CAAC;AAChN,CAAC;AACD,IAAMG,WAAW,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;AACvC,IAAM7B,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAA8B,IAAA,EAAmD;EAAA,IAA7CjJ,MAAM,GAAAiJ,IAAA,CAANjJ,MAAM;IAAEoH,OAAO,GAAA6B,IAAA,CAAP7B,OAAO;IAAEpF,QAAO,GAAAiH,IAAA,CAAPjH,OAAO;IAAEsF,WAAW,GAAA2B,IAAA,CAAX3B,WAAW;EAC7D,IAAItI,EAAE;EACN,IAAMkK,KAAK,GAAG,IAAAC,gBAAQ,EAACnJ,MAAM,CAAC,CAAC,CAAC;EAChC,IAAQoJ,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,IAAA7D,kBAAM,EAAC,IAAAA,kBAAM,EAACuB,OAAO,CAACuC,KAAK,CAAC,CAACC,OAAO,CAAC,CAAC,GAAGH,OAAO,GAAGT,WAAW,CAAC,CAACzB,MAAM,CAACC,iBAAU,CAACC,MAAM,CAAC;EACtG,IAAIoC,IAAI,GAAG,KAAK;IAAEC,SAAS,GAAG,CAAC,CAAC;IAAEC,OAAO,GAAG,CAAC,CAAC;IAAEtI,KAAK,GAAG,CAAC,CAAC;EAC1D,IAAMuI,GAAG,GAAG,IAAAnE,kBAAM,EAAC6D,IAAI,CAAC,CAACE,OAAO,CAAC,CAAC;EAClC,KAAK,IAAIlL,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAI,CAACM,EAAE,GAAGoI,OAAO,CAACxB,IAAI,MAAM,IAAI,IAAI5G,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,EAAE,CAACP,MAAM,CAAC,EAAEC,CAAC,EAAE,EAAE;IAC3F,IAAMuL,KAAK,GAAG,IAAApE,kBAAM,EAACuB,OAAO,CAACxB,IAAI,CAAClH,CAAC,CAAC,CAAC8D,SAAS,CAAC,CAACoH,OAAO,CAAC,CAAC;MAAEM,GAAG,GAAG,IAAArE,kBAAM,EAACuB,OAAO,CAACxB,IAAI,CAAClH,CAAC,CAAC,CAACyD,OAAO,CAAC,CAACyH,OAAO,CAAC,CAAC;IAC1G,IAAII,GAAG,IAAIC,KAAK,IAAID,GAAG,IAAIE,GAAG,EAAE;MAC5BzI,KAAK,GAAG/C,CAAC;MACT;MACAoL,SAAS,GAAGE,GAAG;MACfD,OAAO,GAAGG,GAAG;MACbL,IAAI,GAAG,IAAI;MACX;IACJ;EACJ;EACA,OAAOL,OAAO,GAAIK,IAAI,GAAI,IAAAlI,eAAI,EAACoG,mBAAO,EAAErK,MAAM,CAACmE,MAAM,CAAC;IAAEX,KAAK,KAAAa,MAAA,CAAKuF,WAAW,IAAI,EAAE,QAAAvF,MAAA,CAAK2H,IAAI;EAAG,CAAC,EAAE;IAAExG,QAAQ,EAAE,IAAAvB,eAAI,EAAC,KAAK,EAAE;MAAEG,SAAS,EAAE,UAAU;MAAEmF,KAAK,EAAE;QAAEW,IAAI,EAAEwB;MAAS,CAAC;MAAEpH,OAAO,EAAE,SAAAA,QAAA;QAAA,OAAMA,QAAO,CAACP,KAAK,EAAEqI,SAAS,EAAEC,OAAO,CAAC;MAAA;IAAC,CAAC;EAAE,CAAC,CAAC,CAAC,GAAK,IAAApI,eAAI,EAAC,KAAK,EAAE;IAAEG,SAAS,EAAE,UAAU;IAAEmF,KAAK,EAAE;MAAEW,IAAI,EAAEwB;IAAS,CAAC;IAAEpH,OAAO,EAAE,SAAAA,QAAA;MAAA,OAAMA,QAAO,CAACP,KAAK,EAAEqI,SAAS,EAAEC,OAAO,CAAC;IAAA;EAAC,CAAC,CAAE,GAAK,IAAApI,eAAI,EAACyB,oBAAS,EAAE,CAAC,CAAC,CAAE;AAC7X,CAAC;AACD,IAAMsE,WAAW,GAAG,SAAdA,WAAWA,CAAI5I,KAAK,EAAK;EAC3B,IAAAqL,WAAA,GAAkCrL,KAAK,CAA/B8G,IAAI;IAAJA,IAAI,GAAAuE,WAAA,cAAG,EAAE,GAAAA,WAAA;IAAER,KAAK,GAAU7K,KAAK,CAApB6K,KAAK;IAAEO,GAAG,GAAKpL,KAAK,CAAboL,GAAG;EAC7B,IAAMhI,SAAS,GAAG,IAAA2D,kBAAM,EAAC8D,KAAK,CAAC;EAC/B,IAAMxH,OAAO,GAAG,IAAA0D,kBAAM,EAACqE,GAAG,CAAC;EAC3B,IAAME,KAAK,GAAGjI,OAAO,CAAC2D,IAAI,CAAC5D,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;EAClD,IAAM6D,MAAM,GAAGH,IAAI,KAAK,IAAI,IAAIA,IAAI,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,IAAI,CAAC1B,GAAG,CAAC,UAACxF,CAAC,EAAE+C,KAAK,EAAK;IAC9E,IAAM4I,SAAS,GAAG,IAAAxE,kBAAM,EAACnH,CAAC,CAAC8D,SAAS,CAAC,CAACsD,IAAI,CAAC5D,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,IAAA2D,kBAAM,EAACnH,CAAC,CAAC8D,SAAS,CAAC,GAAGN,SAAS;IACtG,IAAMoI,OAAO,GAAG,IAAAzE,kBAAM,EAACnH,CAAC,CAACyD,OAAO,CAAC;IACjC,IAAMoI,SAAS,GAAGD,OAAO,CAACxE,IAAI,CAACuE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;IACtD,IAAMjJ,KAAK,GAAImJ,SAAS,GAAGH,KAAK,GAAI,GAAG,CAAC,CAAC;IACzC,IAAMxC,IAAI,GAAIyC,SAAS,CAACvE,IAAI,CAAC5D,SAAS,EAAE,SAAS,CAAC,GAAGkI,KAAK,GAAI,GAAG,CAAC,CAAC;IACnE,OAAQ,IAAAzI,eAAI,EAAC,KAAK,EAAE;MAAEG,SAAS,EAAE,SAAS;MAAEmF,KAAK,EAAE;QAAE7F,KAAK,KAAAW,MAAA,CAAKX,KAAK,MAAG;QAAEwG,IAAI,KAAA7F,MAAA,CAAK6F,IAAI,GAAG,CAAC,GAAG,CAAC,GAAGA,IAAI;MAAI;IAAE,CAAC,KAAA7F,MAAA,CAAKrD,CAAC,CAAC8D,SAAS,OAAAT,MAAA,CAAIN,KAAK,CAAE,CAAC;EAC5I,CAAC,CAAC;EACF,OAAOsE,MAAM;AACjB,CAAC;AACDnH,qBAAqB,CAAC4L,WAAW,GAAG,uBAAuB;AAAC,IAAAC,QAAA,GAC7C7L,qBAAqB;AAAAgK,OAAA,cAAA6B,QAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":["_react","require","historyControlV2Context","createContext","exports"],"sources":["history-control-v2/context.js"],"sourcesContent":["import { createContext } from 'react';\nexport const historyControlV2Context = createContext({});\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACO,IAAMC,uBAAuB,gBAAG,IAAAC,oBAAa,EAAC,CAAC,CAAC,CAAC;AAACC,OAAA,CAAAF,uBAAA,GAAAA,uBAAA"}
1
+ {"version":3,"file":"context.js","names":["_react","require","historyControlV2Context","createContext","exports"],"sources":["history-control-v2/context.js"],"sourcesContent":["import { createContext } from 'react';\nexport const historyControlV2Context = createContext({});\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACO,IAAMC,uBAAuB,gBAAG,IAAAC,oBAAa,EAAC,CAAC,CAAC,CAAC;AAACC,OAAA,CAAAF,uBAAA,GAAAA,uBAAA","ignoreList":[]}
@@ -1,9 +1,9 @@
1
1
  /// <reference types="react" />
2
2
  import { IChannel, IGetHistoryUrlParams, IHistoryControlProps, IHistoryControlV2Handle, IHistoryPlayInfoParams } from './interface';
3
- export type HistoryControlV2Handle = IHistoryControlV2Handle;
4
- export type HistoryPlayInfoParams = IHistoryPlayInfoParams;
5
- export type GetHistoryUrlParams = IGetHistoryUrlParams;
6
- export type Channel = IChannel;
3
+ export declare type HistoryControlV2Handle = IHistoryControlV2Handle;
4
+ export declare type HistoryPlayInfoParams = IHistoryPlayInfoParams;
5
+ export declare type GetHistoryUrlParams = IGetHistoryUrlParams;
6
+ export declare type Channel = IChannel;
7
7
  /**
8
8
  * 历史视频控制器
9
9
  */
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports["default"] = exports.HistoryControlV2 = void 0;
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
8
9
  var _jsxRuntime = require("react/jsx-runtime");
9
10
  var _react = require("react");
10
11
  var _api = require("../api");
@@ -20,10 +21,9 @@ var _gridItem = _interopRequireDefault(require("./components/grid-item"));
20
21
  var _panel = _interopRequireDefault(require("./components/panel"));
21
22
  var _context2 = require("./context");
22
23
  var _utils2 = require("./utils");
23
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
24
24
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
25
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
26
- function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, "catch": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
26
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
27
27
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
28
28
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
29
29
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
@@ -31,8 +31,8 @@ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToAr
31
31
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
32
32
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
33
33
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
34
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
35
- function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
34
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
35
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
36
36
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
37
37
  var __awaiter = void 0 && (void 0).__awaiter || function (thisArg, _arguments, P, generator) {
38
38
  function adopt(value) {
@@ -121,65 +121,67 @@ var HistoryControlV2 = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref)
121
121
  panelRef.current.load(channel);
122
122
  },
123
123
  start: function start(playInfo) {
124
- return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
124
+ return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regenerator["default"].mark(function _callee() {
125
125
  var _a, _b, _c, result, labelRes, res, newChannels, resultChannel, channelIndex;
126
- return _regeneratorRuntime().wrap(function _callee$(_context) {
127
- while (1) switch (_context.prev = _context.next) {
128
- case 0:
129
- setLoading(true);
130
- result = playInfo;
131
- if (!playInfo.tagId) {
132
- _context.next = 10;
133
- break;
134
- }
135
- _context.next = 5;
136
- return getVideoLabelByIdAsync({
137
- id: playInfo.tagId
138
- });
139
- case 5:
140
- labelRes = _context.sent;
141
- result.deviceId = labelRes.videoDeviceId || playInfo.deviceId;
142
- result.channelNum = labelRes.videoChannelNum || playInfo.channelNum;
143
- result.beginTime = labelRes.startTime || playInfo.beginTime;
144
- result.endTime = labelRes.endTime || playInfo.endTime;
145
- case 10:
146
- _context.next = 12;
147
- return runAsync({
148
- deviceId: result.deviceId,
149
- channelNum: result.channelNum,
150
- beginTime: result.beginTime,
151
- endTime: result.endTime,
152
- protocol: result.protocol,
153
- token: (0, _utils.getVtxToken)('token')
154
- });
155
- case 12:
156
- res = _context.sent;
157
- newChannels = _toConsumableArray(channels);
158
- resultChannel = (_a = newChannels.filter(function (citem) {
159
- return citem.deviceId === res.deviceId && citem.channelNum === res.channelNum;
160
- })) === null || _a === void 0 ? void 0 : _a[0]; // 如果当前通道已经再里面了,则直接替换当前通道
161
- if (resultChannel) {
162
- newChannels[resultChannel.channelIndex] = Object.assign(Object.assign({}, newChannels[resultChannel.channelIndex]), {
163
- // 有tagId 则为-1 不然维持原有的
164
- index: playInfo.tagId ? -1 : newChannels[resultChannel.channelIndex].index,
165
- tagId: playInfo.tagId || '',
166
- startTime: result.beginTime,
167
- endTime: result.endTime
126
+ return _regenerator["default"].wrap(function _callee$(_context) {
127
+ while (1) {
128
+ switch (_context.prev = _context.next) {
129
+ case 0:
130
+ setLoading(true);
131
+ result = playInfo;
132
+ if (!playInfo.tagId) {
133
+ _context.next = 10;
134
+ break;
135
+ }
136
+ _context.next = 5;
137
+ return getVideoLabelByIdAsync({
138
+ id: playInfo.tagId
139
+ });
140
+ case 5:
141
+ labelRes = _context.sent;
142
+ result.deviceId = labelRes.videoDeviceId || playInfo.deviceId;
143
+ result.channelNum = labelRes.videoChannelNum || playInfo.channelNum;
144
+ result.beginTime = labelRes.startTime || playInfo.beginTime;
145
+ result.endTime = labelRes.endTime || playInfo.endTime;
146
+ case 10:
147
+ _context.next = 12;
148
+ return runAsync({
149
+ deviceId: result.deviceId,
150
+ channelNum: result.channelNum,
151
+ beginTime: result.beginTime,
152
+ endTime: result.endTime,
153
+ protocol: result.protocol,
154
+ token: (0, _utils.getVtxToken)('token')
168
155
  });
169
- } else {
170
- // 如果当前通道不在里面 则找到第一个channelNum为''的替换
171
- channelIndex = (_c = (_b = newChannels.filter(function (item) {
172
- return item.channelNum === '';
173
- })) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.channelIndex;
174
- if (typeof channelIndex == 'number') {
175
- newChannels[channelIndex] = Object.assign(Object.assign({}, newChannels[channelIndex]), (0, _utils2.getChannelData)(res, result));
156
+ case 12:
157
+ res = _context.sent;
158
+ newChannels = _toConsumableArray(channels);
159
+ resultChannel = (_a = newChannels.filter(function (citem) {
160
+ return citem.deviceId === res.deviceId && citem.channelNum === res.channelNum;
161
+ })) === null || _a === void 0 ? void 0 : _a[0]; // 如果当前通道已经再里面了,则直接替换当前通道
162
+ if (resultChannel) {
163
+ newChannels[resultChannel.channelIndex] = Object.assign(Object.assign({}, newChannels[resultChannel.channelIndex]), {
164
+ // 有tagId 则为-1 不然维持原有的
165
+ index: playInfo.tagId ? -1 : newChannels[resultChannel.channelIndex].index,
166
+ tagId: playInfo.tagId || '',
167
+ startTime: result.beginTime,
168
+ endTime: result.endTime
169
+ });
170
+ } else {
171
+ // 如果当前通道不在里面 则找到第一个channelNum为''的替换
172
+ channelIndex = (_c = (_b = newChannels.filter(function (item) {
173
+ return item.channelNum === '';
174
+ })) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.channelIndex;
175
+ if (typeof channelIndex == 'number') {
176
+ newChannels[channelIndex] = Object.assign(Object.assign({}, newChannels[channelIndex]), (0, _utils2.getChannelData)(res, result));
177
+ }
176
178
  }
177
- }
178
- setChannels(newChannels);
179
- setLoading(false);
180
- case 18:
181
- case "end":
182
- return _context.stop();
179
+ setChannels(newChannels);
180
+ setLoading(false);
181
+ case 18:
182
+ case "end":
183
+ return _context.stop();
184
+ }
183
185
  }
184
186
  }, _callee);
185
187
  }));