@vtx/player 1.7.13 → 1.7.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. package/README.md +2 -2
  2. package/lib/api/fetch.js +62 -91
  3. package/lib/api/fetch.js.map +1 -1
  4. package/lib/api/index.js +18 -63
  5. package/lib/api/index.js.map +1 -1
  6. package/lib/api/types.d.ts +5 -5
  7. package/lib/bd/PlayerManager.js +38 -68
  8. package/lib/bd/PlayerManager.js.map +1 -1
  9. package/lib/bill-player/index.d.ts +1 -1
  10. package/lib/bill-player/index.js +66 -121
  11. package/lib/bill-player/index.js.map +1 -1
  12. package/lib/bill-player/style/css.js +0 -9
  13. package/lib/bill-player/style/css.js.map +1 -1
  14. package/lib/bill-player/style/index.js +0 -9
  15. package/lib/bill-player/style/index.js.map +1 -1
  16. package/lib/bill-player/style/index.less +297 -297
  17. package/lib/components/set-tag-video/index.js +6 -34
  18. package/lib/components/set-tag-video/index.js.map +1 -1
  19. package/lib/components/set-tag-video/style/css.js.map +1 -1
  20. package/lib/components/set-tag-video/style/index.js.map +1 -1
  21. package/lib/components/set-tag-video/style/index.less +125 -125
  22. package/lib/components/split-screen/index.d.ts +1 -1
  23. package/lib/components/split-screen/index.js +3 -14
  24. package/lib/components/split-screen/index.js.map +1 -1
  25. package/lib/components/split-screen/style/css.js.map +1 -1
  26. package/lib/components/split-screen/style/index.js.map +1 -1
  27. package/lib/components/tag-video/index.js +10 -38
  28. package/lib/components/tag-video/index.js.map +1 -1
  29. package/lib/components/tag-video/style/css.js.map +1 -1
  30. package/lib/components/tag-video/style/index.js.map +1 -1
  31. package/lib/components/tag-video/style/index.less +69 -69
  32. package/lib/components/video-scale/index.d.ts +1 -1
  33. package/lib/components/video-scale/index.js +2 -9
  34. package/lib/components/video-scale/index.js.map +1 -1
  35. package/lib/components/video-scale/style/css.js.map +1 -1
  36. package/lib/components/video-scale/style/index.js.map +1 -1
  37. package/lib/context/index.js +0 -4
  38. package/lib/context/index.js.map +1 -1
  39. package/lib/controls/index.d.ts +11 -11
  40. package/lib/controls/index.js +34 -99
  41. package/lib/controls/index.js.map +1 -1
  42. package/lib/controls/style/css.js +0 -5
  43. package/lib/controls/style/css.js.map +1 -1
  44. package/lib/controls/style/index.js +0 -5
  45. package/lib/controls/style/index.js.map +1 -1
  46. package/lib/controls/style/index.less +188 -188
  47. package/lib/h264/PlayerManager.js +18 -27
  48. package/lib/h264/PlayerManager.js.map +1 -1
  49. package/lib/history-control/index.d.ts +2 -2
  50. package/lib/history-control/index.js +61 -121
  51. package/lib/history-control/index.js.map +1 -1
  52. package/lib/history-control/style/css.js +0 -6
  53. package/lib/history-control/style/css.js.map +1 -1
  54. package/lib/history-control/style/index.js +0 -6
  55. package/lib/history-control/style/index.js.map +1 -1
  56. package/lib/history-control/style/index.less +252 -252
  57. package/lib/history-control-v2/components/grid-item/index.js +38 -77
  58. package/lib/history-control-v2/components/grid-item/index.js.map +1 -1
  59. package/lib/history-control-v2/components/panel/index.js +44 -114
  60. package/lib/history-control-v2/components/panel/index.js.map +1 -1
  61. package/lib/history-control-v2/context.js +0 -2
  62. package/lib/history-control-v2/context.js.map +1 -1
  63. package/lib/history-control-v2/index.d.ts +4 -4
  64. package/lib/history-control-v2/index.js +97 -166
  65. package/lib/history-control-v2/index.js.map +1 -1
  66. package/lib/history-control-v2/style/css.js +0 -10
  67. package/lib/history-control-v2/style/css.js.map +1 -1
  68. package/lib/history-control-v2/style/index.js +0 -10
  69. package/lib/history-control-v2/style/index.js.map +1 -1
  70. package/lib/history-control-v2/style/index.less +437 -437
  71. package/lib/history-control-v2/utils.js +1 -21
  72. package/lib/history-control-v2/utils.js.map +1 -1
  73. package/lib/history-player/index.d.ts +1 -1
  74. package/lib/history-player/index.js +146 -205
  75. package/lib/history-player/index.js.map +1 -1
  76. package/lib/history-player/style/css.js +0 -3
  77. package/lib/history-player/style/css.js.map +1 -1
  78. package/lib/history-player/style/index.js +0 -3
  79. package/lib/history-player/style/index.js.map +1 -1
  80. package/lib/history-player/style/index.less +102 -102
  81. package/lib/hooks/useSettings.js +1 -6
  82. package/lib/hooks/useSettings.js.map +1 -1
  83. package/lib/icc/PlayerManager.js +26 -57
  84. package/lib/icc/PlayerManager.js.map +1 -1
  85. package/lib/icc/api.d.ts +0 -68
  86. package/lib/icc/api.js +2 -16
  87. package/lib/icc/api.js.map +1 -1
  88. package/lib/icons/index.d.ts +36 -36
  89. package/lib/icons/index.js +23 -171
  90. package/lib/icons/index.js.map +1 -1
  91. package/lib/icons/index.less +32 -32
  92. package/lib/index.js +0 -10
  93. package/lib/index.js.map +1 -1
  94. package/lib/live-channel-player/index.d.ts +1 -1
  95. package/lib/live-channel-player/index.js +31 -67
  96. package/lib/live-channel-player/index.js.map +1 -1
  97. package/lib/live-channel-player/style/css.js +0 -1
  98. package/lib/live-channel-player/style/css.js.map +1 -1
  99. package/lib/live-channel-player/style/index.js +0 -1
  100. package/lib/live-channel-player/style/index.js.map +1 -1
  101. package/lib/live-control/index.d.ts +2 -2
  102. package/lib/live-control/index.js +35 -86
  103. package/lib/live-control/index.js.map +1 -1
  104. package/lib/live-control/style/css.js +0 -4
  105. package/lib/live-control/style/css.js.map +1 -1
  106. package/lib/live-control/style/index.js +0 -4
  107. package/lib/live-control/style/index.js.map +1 -1
  108. package/lib/live-control/style/index.less +99 -99
  109. package/lib/live-control-v2/index.d.ts +3 -3
  110. package/lib/live-control-v2/index.js +108 -141
  111. package/lib/live-control-v2/index.js.map +1 -1
  112. package/lib/live-control-v2/style/css.js +0 -7
  113. package/lib/live-control-v2/style/css.js.map +1 -1
  114. package/lib/live-control-v2/style/index.js +0 -7
  115. package/lib/live-control-v2/style/index.js.map +1 -1
  116. package/lib/live-control-v2/style/index.less +192 -192
  117. package/lib/live-player/index.js +95 -136
  118. package/lib/live-player/index.js.map +1 -1
  119. package/lib/live-player/style/css.js +0 -2
  120. package/lib/live-player/style/css.js.map +1 -1
  121. package/lib/live-player/style/index.js +0 -2
  122. package/lib/live-player/style/index.js.map +1 -1
  123. package/lib/live-player/style/index.less +75 -75
  124. package/lib/player/index.d.ts +1 -1
  125. package/lib/player/index.js +79 -244
  126. package/lib/player/index.js.map +1 -1
  127. package/lib/rsl/PlayerManager.js +18 -64
  128. package/lib/rsl/PlayerManager.js.map +1 -1
  129. package/lib/typings/@vtx/utils/index.d.ts +28 -28
  130. package/lib/typings/h5player.d.ts +146 -146
  131. package/lib/typings/webrtcplayer.d.ts +56 -56
  132. package/lib/typings/wsplayer.d.ts +99 -99
  133. package/lib/utils/index.d.ts +1 -1
  134. package/lib/utils/index.js +12 -91
  135. package/lib/utils/index.js.map +1 -1
  136. package/lib/vite-env.d.ts +1 -1
  137. package/lib/vtxHls/PlayerManager.js +6 -20
  138. package/lib/vtxHls/PlayerManager.js.map +1 -1
  139. package/lib/vtxHls/WhepManager.js +9 -72
  140. package/lib/vtxHls/WhepManager.js.map +1 -1
  141. package/lib/webrtc/PlayerManager.js +28 -41
  142. package/lib/webrtc/PlayerManager.js.map +1 -1
  143. package/package.json +125 -125
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","apply","HistoryPlayer","forwardRef","props","ref","url","deviceId","deviceIp","devicePort","channelNum","deviceCode","streamType","type","enableAgent","width","height","captureName","controlBottom","startTime","endTime","onTimeChange","screenshot","showInfo","info","extraButton","controlVisible","undefined","vRef","useRef","totalTime","moment","diff","containerRef","wrapRef","controlsRef","playerRef","useFullscreen","isFullscreen","toggleFullscreen","useSetState","play","error","loading","id","guidGenerator","volume","currentTime","progress","progress2","controls","progressVisible","speedVisible","state","setState","useImperativeHandle","seekTo","time","player","current","useEffect","container","clearInterval","setTimeout","API","getToken","token","localStorage","setItem","Player","live","playBack","format","TimeFormat","params","i","setInterval","add","unix","Math","floor","onTimeUpdate","_currentTime","speed","destroy","endProgress","useDebounce","wait","handleCapture","capture","stopPropagation","handleFullScreen","resize","handleSlider","handlePause","pause","handleResume","resume","_jsxs","Object","assign","className","style","children","_jsx","LoadingState","InfoPanel","bottom","opacity","PauseIcon","onClick","PlayIcon","_Fragment","Slider","disabled","tipFormatter","onChange","Space","size","align","VolumeControl","defaultValue","SpeedControl","CaptureIcon","ExitFullScreenIcon","FullScreenIcon","displayName"],"sources":["history-player/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, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { forwardRef, useEffect, useImperativeHandle, useRef } from 'react';\nimport { InfoPanel, LoadingState, SpeedControl, VolumeControl } from '../controls';\nimport API from '../icc/api';\nimport { CaptureIcon, ExitFullScreenIcon, FullScreenIcon, PauseIcon, PlayIcon } from '../icons';\nimport Player from '../player';\nimport { TimeFormat, guidGenerator } from '../utils';\nimport { useDebounce, useFullscreen, useSetState } from 'ahooks';\n// import { Slider, Space } from 'antd';\nimport Slider from 'antd/lib/slider';\nimport Space from 'antd/lib/space';\nimport moment from 'moment';\nexport const HistoryPlayer = forwardRef((props, ref) => {\n const { url, deviceId, deviceIp, devicePort, channelNum, deviceCode, streamType, type, enableAgent, width = '100%', height = '100%', captureName, controlBottom = 0, startTime, endTime, onTimeChange, screenshot, showInfo = false, info = [], extraButton, controlVisible = undefined, } = props;\n const vRef = useRef(null);\n const totalTime = moment(endTime).diff(moment(startTime), 'seconds');\n const containerRef = useRef(null);\n const wrapRef = useRef(null);\n const controlsRef = useRef(null);\n const playerRef = useRef();\n const [isFullscreen, { toggleFullscreen }] = useFullscreen(wrapRef);\n const [state, setState] = useSetState({\n play: false,\n error: false,\n loading: false,\n id: 'vtx_hk_player_' + guidGenerator(),\n volume: 0,\n currentTime: '',\n progress: 0,\n progress2: 0,\n controls: {\n progress: true,\n },\n progressVisible: true,\n speedVisible: true,\n });\n useImperativeHandle(ref, () => {\n return {\n seekTo: (time) => {\n const player = playerRef.current;\n if (player) {\n const currentTime = moment(time).diff(moment(startTime), 'seconds');\n return player.seekTo(currentTime);\n }\n else {\n return Promise.reject();\n }\n },\n };\n });\n useEffect(() => {\n const container = containerRef.current;\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n if (!url || !container)\n return;\n let player = null;\n (() => __awaiter(void 0, void 0, void 0, function* () {\n if (type === 'bd') {\n yield new Promise((resolve) => {\n setTimeout(() => resolve(''), 2000);\n });\n }\n // 如果是icc_ws类型,需要获取token\n if (type === 'icc_ws') {\n const token = yield API.getToken({\n deviceId,\n });\n localStorage.setItem('accessToken', token);\n }\n player = yield new Player({\n url,\n devicePort,\n deviceIp,\n channelNum,\n deviceCode,\n deviceId,\n streamType,\n enableAgent,\n container,\n live: false,\n startTime,\n endTime,\n type,\n });\n playerRef.current = player;\n yield setState({\n loading: true,\n error: false,\n progress: 0,\n controls: { progress: player.type === 'hk_ws' || player.type === 'hkcar_ws' },\n progressVisible: player.type !== 'bd',\n speedVisible: player.type !== 'bd',\n });\n player\n .playBack()\n .then(() => {\n setState({\n play: true,\n currentTime: moment(startTime).format(TimeFormat.params),\n });\n let i = 1;\n vRef.current = setInterval(() => {\n // 当时间大于等于结束时间时重置\n if (moment(startTime).add(i, 's').unix() >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n vRef.current = null;\n setState({\n currentTime: '',\n progress: 0,\n });\n }\n else {\n i++;\n if (!state.loading) {\n setState({\n currentTime: moment(startTime)\n .add(i, 's')\n .format(TimeFormat.params),\n progress: Math.floor((i * 100) / totalTime),\n });\n }\n }\n }, 1000);\n })\n .catch(() => setState({ error: true }))\n .finally(() => setState({ loading: false }));\n player.onTimeUpdate((_currentTime, speed) => {\n if (!state.loading) {\n setState({\n // currentTime: Math.floor(_currentTime),\n // progress: Math.floor((_currentTime / totalTime) * 100),\n speed,\n });\n }\n });\n }))();\n return () => {\n player.destroy();\n setState({ error: false, loading: false, play: false });\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n };\n }, [url, startTime, endTime]);\n useEffect(() => {\n if (!state.loading) {\n onTimeChange &&\n onTimeChange(state.currentTime ? moment(state.currentTime).format(TimeFormat.params) : '', state.speed);\n }\n }, [state.currentTime, state.speed]);\n const endProgress = useDebounce(state.progress2, { wait: 500 });\n useEffect(() => {\n const currentTime = Math.floor((totalTime * endProgress) / 100);\n const player = playerRef.current;\n player === null || player === void 0 ? void 0 : player.seekTo(currentTime);\n setState({\n progress: endProgress,\n });\n }, [endProgress]);\n /** 截图方法 */\n const handleCapture = (e) => {\n const player = playerRef.current;\n player && player.capture(captureName, screenshot);\n e.stopPropagation();\n };\n /** 全屏方法 */\n const handleFullScreen = (e) => {\n toggleFullscreen();\n const player = playerRef.current;\n player && player.resize();\n e.stopPropagation();\n };\n /** 进度条控制器 */\n const handleSlider = (value) => {\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n const currentTime = Math.floor((totalTime * value) / 100);\n setState({\n progress2: value,\n currentTime: moment(state.currentTime)\n .add(currentTime, 'seconds')\n .format(TimeFormat.params),\n });\n let i = 1;\n vRef.current = setInterval(() => {\n if (moment(startTime).unix() + i + currentTime >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n vRef.current = null;\n setState({\n currentTime: '',\n progress: 0,\n });\n }\n else if (!state.loading) {\n setState({\n currentTime: moment(startTime)\n .add(i + currentTime, 's')\n .format(TimeFormat.params),\n progress: Math.floor(((i + currentTime) / totalTime) * 100),\n });\n i++;\n }\n }, 1000);\n };\n /** 暂停方法 */\n const handlePause = () => {\n const player = playerRef.current;\n player === null || player === void 0 ? void 0 : player.pause(() => {\n setState({ play: false });\n });\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n };\n /** 恢复播放方法 */\n const handleResume = () => {\n const player = playerRef.current;\n player === null || player === void 0 ? void 0 : player.resume(() => {\n setState({ play: true });\n });\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n if (type === 'bd') {\n return;\n }\n let i = 2;\n vRef.current = setInterval(() => {\n if (moment(state.currentTime).unix() + i >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n vRef.current = null;\n setState({\n currentTime: '',\n progress: 0,\n });\n }\n if (!state.loading) {\n setState({\n currentTime: moment(state.currentTime).add(i, 's').format(TimeFormat.params),\n progress: Math.floor(((i + moment(state.currentTime).unix()) / totalTime) * 100),\n });\n i++;\n }\n }, 1000);\n };\n return (_jsxs(\"div\", Object.assign({ className: \"vtx-history-player\", ref: wrapRef, style: { width, height } }, { children: [_jsx(\"div\", { ref: containerRef, style: { height: '100%', width: '100%' }, id: state.id }), state.loading && _jsx(LoadingState, {}), _jsx(InfoPanel, { showInfo: showInfo, info: info }), _jsxs(\"div\", Object.assign({ className: \"controls\", ref: controlsRef, style: { bottom: controlBottom, opacity: controlVisible ? 1 : undefined } }, { children: [state.play ? (_jsx(PauseIcon, { onClick: handlePause })) : (_jsx(PlayIcon, { onClick: handleResume })), state.progressVisible && (_jsxs(_Fragment, { children: [_jsxs(\"div\", Object.assign({ className: \"time\" }, { children: [_jsx(\"span\", Object.assign({ className: \"current\" }, { children: state.currentTime\n ? moment(state.currentTime).format('HH:mm:ss')\n : '-' })), _jsxs(\"span\", Object.assign({ className: \"total\" }, { children: [\"/\", moment(endTime).format('HH:mm:ss')] }))] })), _jsx(\"div\", Object.assign({ className: \"slider\" }, { children: _jsx(Slider, { disabled: !state.controls.progress, tipFormatter: null, onChange: handleSlider, value: state.progress }) }))] })), _jsxs(Space, Object.assign({ className: \"right\", size: 12, align: \"center\" }, { children: [_jsx(VolumeControl, { player: playerRef.current, defaultValue: 0, container: controlsRef.current }), state.speedVisible && (_jsx(SpeedControl, { player: playerRef.current, container: controlsRef.current })), !!screenshot && _jsx(CaptureIcon, { onClick: handleCapture }), extraButton ? extraButton : null, isFullscreen ? (_jsx(ExitFullScreenIcon, { onClick: handleFullScreen })) : (_jsx(FullScreenIcon, { onClick: handleFullScreen }))] }))] }))] })));\n});\nHistoryPlayer.displayName = 'HistoryPlayer';\nexport default HistoryPlayer;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_jsxRuntime","require","_react","_controls","_api","_interopRequireDefault","_icons","_player","_utils","_ahooks","_slider","_space","_moment","obj","__esModule","_regeneratorRuntime","exports","Op","Object","prototype","hasOwn","hasOwnProperty","defineProperty","key","desc","value","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","enumerable","configurable","writable","err","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","makeInvokeMethod","tryCatch","fn","arg","type","call","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","invoke","resolve","reject","record","result","_typeof","__await","then","unwrapped","error","previousPromise","callInvokeWithMethodAndArg","state","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","done","methodName","undefined","TypeError","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","length","i","displayName","isGeneratorFunction","genFun","ctor","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","val","object","reverse","pop","skipTempReset","prev","charAt","slice","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","_catch","thrown","delegateYield","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","o","minLen","_arrayLikeToArray","n","toString","Array","from","test","len","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","isArray","__awaiter","thisArg","_arguments","P","adopt","fulfilled","step","e","rejected","apply","HistoryPlayer","forwardRef","props","ref","url","deviceId","deviceIp","devicePort","channelNum","deviceCode","streamType","enableAgent","_props$width","width","_props$height","height","captureName","_props$controlBottom","controlBottom","startTime","endTime","onTimeChange","screenshot","_props$showInfo","showInfo","_props$info","extraButton","_props$controlVisible","controlVisible","vRef","useRef","totalTime","moment","diff","containerRef","wrapRef","controlsRef","playerRef","_useFullscreen","useFullscreen","_useFullscreen2","isFullscreen","toggleFullscreen","_useSetState","useSetState","play","loading","id","guidGenerator","volume","currentTime","progress","progress2","controls","progressVisible","speedVisible","_useSetState2","setState","useImperativeHandle","seekTo","time","player","current","useEffect","container","clearInterval","_callee","token","_callee$","_context","setTimeout","API","getToken","localStorage","setItem","Player","live","playBack","format","TimeFormat","params","setInterval","add","unix","Math","floor","onTimeUpdate","_currentTime","speed","destroy","endProgress","useDebounce","wait","handleCapture","capture","stopPropagation","handleFullScreen","resize","handleSlider","handlePause","pause","handleResume","resume","_jsxs","assign","className","style","children","_jsx","LoadingState","InfoPanel","bottom","opacity","PauseIcon","onClick","PlayIcon","_Fragment","Slider","disabled","tipFormatter","onChange","Space","size","align","VolumeControl","defaultValue","SpeedControl","CaptureIcon","ExitFullScreenIcon","FullScreenIcon","_default"],"sources":["history-player/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, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { forwardRef, useEffect, useImperativeHandle, useRef } from 'react';\nimport { InfoPanel, LoadingState, SpeedControl, VolumeControl } from '../controls';\nimport API from '../icc/api';\nimport { CaptureIcon, ExitFullScreenIcon, FullScreenIcon, PauseIcon, PlayIcon } from '../icons';\nimport Player from '../player';\nimport { TimeFormat, guidGenerator } from '../utils';\nimport { useDebounce, useFullscreen, useSetState } from 'ahooks';\n// import { Slider, Space } from 'antd';\nimport Slider from 'antd/lib/slider';\nimport Space from 'antd/lib/space';\nimport moment from 'moment';\nexport const HistoryPlayer = forwardRef((props, ref) => {\n const { url, deviceId, deviceIp, devicePort, channelNum, deviceCode, streamType, type, enableAgent, width = '100%', height = '100%', captureName, controlBottom = 0, startTime, endTime, onTimeChange, screenshot, showInfo = false, info = [], extraButton, controlVisible = undefined, } = props;\n const vRef = useRef(null);\n const totalTime = moment(endTime).diff(moment(startTime), 'seconds');\n const containerRef = useRef(null);\n const wrapRef = useRef(null);\n const controlsRef = useRef(null);\n const playerRef = useRef();\n const [isFullscreen, { toggleFullscreen }] = useFullscreen(wrapRef);\n const [state, setState] = useSetState({\n play: false,\n error: false,\n loading: false,\n id: 'vtx_hk_player_' + guidGenerator(),\n volume: 0,\n currentTime: '',\n progress: 0,\n progress2: 0,\n controls: {\n progress: true,\n },\n progressVisible: true,\n speedVisible: true,\n });\n useImperativeHandle(ref, () => {\n return {\n seekTo: (time) => {\n const player = playerRef.current;\n if (player) {\n const currentTime = moment(time).diff(moment(startTime), 'seconds');\n return player.seekTo(currentTime);\n }\n else {\n return Promise.reject();\n }\n },\n };\n });\n useEffect(() => {\n const container = containerRef.current;\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n if (!url || !container)\n return;\n let player = null;\n (() => __awaiter(void 0, void 0, void 0, function* () {\n if (type === 'bd') {\n yield new Promise((resolve) => {\n setTimeout(() => resolve(''), 2000);\n });\n }\n // 如果是icc_ws类型,需要获取token\n if (type === 'icc_ws') {\n const token = yield API.getToken({\n deviceId,\n });\n localStorage.setItem('accessToken', token);\n }\n player = yield new Player({\n url,\n devicePort,\n deviceIp,\n channelNum,\n deviceCode,\n deviceId,\n streamType,\n enableAgent,\n container,\n live: false,\n startTime,\n endTime,\n type,\n });\n playerRef.current = player;\n yield setState({\n loading: true,\n error: false,\n progress: 0,\n controls: { progress: player.type === 'hk_ws' || player.type === 'hkcar_ws' },\n progressVisible: player.type !== 'bd',\n speedVisible: player.type !== 'bd',\n });\n player\n .playBack()\n .then(() => {\n setState({\n play: true,\n currentTime: moment(startTime).format(TimeFormat.params),\n });\n let i = 1;\n vRef.current = setInterval(() => {\n // 当时间大于等于结束时间时重置\n if (moment(startTime).add(i, 's').unix() >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n vRef.current = null;\n setState({\n currentTime: '',\n progress: 0,\n });\n }\n else {\n i++;\n if (!state.loading) {\n setState({\n currentTime: moment(startTime)\n .add(i, 's')\n .format(TimeFormat.params),\n progress: Math.floor((i * 100) / totalTime),\n });\n }\n }\n }, 1000);\n })\n .catch(() => setState({ error: true }))\n .finally(() => setState({ loading: false }));\n player.onTimeUpdate((_currentTime, speed) => {\n if (!state.loading) {\n setState({\n // currentTime: Math.floor(_currentTime),\n // progress: Math.floor((_currentTime / totalTime) * 100),\n speed,\n });\n }\n });\n }))();\n return () => {\n player.destroy();\n setState({ error: false, loading: false, play: false });\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n };\n }, [url, startTime, endTime]);\n useEffect(() => {\n if (!state.loading) {\n onTimeChange &&\n onTimeChange(state.currentTime ? moment(state.currentTime).format(TimeFormat.params) : '', state.speed);\n }\n }, [state.currentTime, state.speed]);\n const endProgress = useDebounce(state.progress2, { wait: 500 });\n useEffect(() => {\n const currentTime = Math.floor((totalTime * endProgress) / 100);\n const player = playerRef.current;\n player === null || player === void 0 ? void 0 : player.seekTo(currentTime);\n setState({\n progress: endProgress,\n });\n }, [endProgress]);\n /** 截图方法 */\n const handleCapture = (e) => {\n const player = playerRef.current;\n player && player.capture(captureName, screenshot);\n e.stopPropagation();\n };\n /** 全屏方法 */\n const handleFullScreen = (e) => {\n toggleFullscreen();\n const player = playerRef.current;\n player && player.resize();\n e.stopPropagation();\n };\n /** 进度条控制器 */\n const handleSlider = (value) => {\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n const currentTime = Math.floor((totalTime * value) / 100);\n setState({\n progress2: value,\n currentTime: moment(state.currentTime)\n .add(currentTime, 'seconds')\n .format(TimeFormat.params),\n });\n let i = 1;\n vRef.current = setInterval(() => {\n if (moment(startTime).unix() + i + currentTime >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n vRef.current = null;\n setState({\n currentTime: '',\n progress: 0,\n });\n }\n else if (!state.loading) {\n setState({\n currentTime: moment(startTime)\n .add(i + currentTime, 's')\n .format(TimeFormat.params),\n progress: Math.floor(((i + currentTime) / totalTime) * 100),\n });\n i++;\n }\n }, 1000);\n };\n /** 暂停方法 */\n const handlePause = () => {\n const player = playerRef.current;\n player === null || player === void 0 ? void 0 : player.pause(() => {\n setState({ play: false });\n });\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n };\n /** 恢复播放方法 */\n const handleResume = () => {\n const player = playerRef.current;\n player === null || player === void 0 ? void 0 : player.resume(() => {\n setState({ play: true });\n });\n if (vRef.current) {\n clearInterval(vRef.current);\n vRef.current = null;\n }\n if (type === 'bd') {\n return;\n }\n let i = 2;\n vRef.current = setInterval(() => {\n if (moment(state.currentTime).unix() + i >= moment(endTime).unix()) {\n clearInterval(vRef.current);\n vRef.current = null;\n setState({\n currentTime: '',\n progress: 0,\n });\n }\n if (!state.loading) {\n setState({\n currentTime: moment(state.currentTime).add(i, 's').format(TimeFormat.params),\n progress: Math.floor(((i + moment(state.currentTime).unix()) / totalTime) * 100),\n });\n i++;\n }\n }, 1000);\n };\n return (_jsxs(\"div\", Object.assign({ className: \"vtx-history-player\", ref: wrapRef, style: { width, height } }, { children: [_jsx(\"div\", { ref: containerRef, style: { height: '100%', width: '100%' }, id: state.id }), state.loading && _jsx(LoadingState, {}), _jsx(InfoPanel, { showInfo: showInfo, info: info }), _jsxs(\"div\", Object.assign({ className: \"controls\", ref: controlsRef, style: { bottom: controlBottom, opacity: controlVisible ? 1 : undefined } }, { children: [state.play ? (_jsx(PauseIcon, { onClick: handlePause })) : (_jsx(PlayIcon, { onClick: handleResume })), state.progressVisible && (_jsxs(_Fragment, { children: [_jsxs(\"div\", Object.assign({ className: \"time\" }, { children: [_jsx(\"span\", Object.assign({ className: \"current\" }, { children: state.currentTime\n ? moment(state.currentTime).format('HH:mm:ss')\n : '-' })), _jsxs(\"span\", Object.assign({ className: \"total\" }, { children: [\"/\", moment(endTime).format('HH:mm:ss')] }))] })), _jsx(\"div\", Object.assign({ className: \"slider\" }, { children: _jsx(Slider, { disabled: !state.controls.progress, tipFormatter: null, onChange: handleSlider, value: state.progress }) }))] })), _jsxs(Space, Object.assign({ className: \"right\", size: 12, align: \"center\" }, { children: [_jsx(VolumeControl, { player: playerRef.current, defaultValue: 0, container: controlsRef.current }), state.speedVisible && (_jsx(SpeedControl, { player: playerRef.current, container: controlsRef.current })), !!screenshot && _jsx(CaptureIcon, { onClick: handleCapture }), extraButton ? extraButton : null, isFullscreen ? (_jsx(ExitFullScreenIcon, { onClick: handleFullScreen })) : (_jsx(FullScreenIcon, { onClick: handleFullScreen }))] }))] }))] })));\n});\nHistoryPlayer.displayName = 'HistoryPlayer';\nexport default HistoryPlayer;\n"],"mappings":";;;;;;;AASA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,IAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAF,sBAAA,CAAAJ,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,OAAA,GAAAR,OAAA;AAEA,IAAAS,OAAA,GAAAL,sBAAA,CAAAJ,OAAA;AACA,IAAAU,MAAA,GAAAN,sBAAA,CAAAJ,OAAA;AACA,IAAAW,OAAA,GAAAP,sBAAA,CAAAJ,OAAA;AAA4B,SAAAI,uBAAAQ,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAE,oBAAA,kBAnB5B,qJAAAA,mBAAA,YAAAA,oBAAA,WAAAC,OAAA,SAAAA,OAAA,OAAAC,EAAA,GAAAC,MAAA,CAAAC,SAAA,EAAAC,MAAA,GAAAH,EAAA,CAAAI,cAAA,EAAAC,cAAA,GAAAJ,MAAA,CAAAI,cAAA,cAAAT,GAAA,EAAAU,GAAA,EAAAC,IAAA,IAAAX,GAAA,CAAAU,GAAA,IAAAC,IAAA,CAAAC,KAAA,KAAAC,OAAA,wBAAAC,MAAA,GAAAA,MAAA,OAAAC,cAAA,GAAAF,OAAA,CAAAG,QAAA,kBAAAC,mBAAA,GAAAJ,OAAA,CAAAK,aAAA,uBAAAC,iBAAA,GAAAN,OAAA,CAAAO,WAAA,8BAAAC,OAAArB,GAAA,EAAAU,GAAA,EAAAE,KAAA,WAAAP,MAAA,CAAAI,cAAA,CAAAT,GAAA,EAAAU,GAAA,IAAAE,KAAA,EAAAA,KAAA,EAAAU,UAAA,MAAAC,YAAA,MAAAC,QAAA,SAAAxB,GAAA,CAAAU,GAAA,WAAAW,MAAA,mBAAAI,GAAA,IAAAJ,MAAA,YAAAA,OAAArB,GAAA,EAAAU,GAAA,EAAAE,KAAA,WAAAZ,GAAA,CAAAU,GAAA,IAAAE,KAAA,gBAAAc,KAAAC,OAAA,EAAAC,OAAA,EAAAC,IAAA,EAAAC,WAAA,QAAAC,cAAA,GAAAH,OAAA,IAAAA,OAAA,CAAAtB,SAAA,YAAA0B,SAAA,GAAAJ,OAAA,GAAAI,SAAA,EAAAC,SAAA,GAAA5B,MAAA,CAAA6B,MAAA,CAAAH,cAAA,CAAAzB,SAAA,GAAA6B,OAAA,OAAAC,OAAA,CAAAN,WAAA,gBAAArB,cAAA,CAAAwB,SAAA,eAAArB,KAAA,EAAAyB,gBAAA,CAAAV,OAAA,EAAAE,IAAA,EAAAM,OAAA,MAAAF,SAAA,aAAAK,SAAAC,EAAA,EAAAvC,GAAA,EAAAwC,GAAA,mBAAAC,IAAA,YAAAD,GAAA,EAAAD,EAAA,CAAAG,IAAA,CAAA1C,GAAA,EAAAwC,GAAA,cAAAf,GAAA,aAAAgB,IAAA,WAAAD,GAAA,EAAAf,GAAA,QAAAtB,OAAA,CAAAuB,IAAA,GAAAA,IAAA,MAAAiB,gBAAA,gBAAAX,UAAA,cAAAY,kBAAA,cAAAC,2BAAA,SAAAC,iBAAA,OAAAzB,MAAA,CAAAyB,iBAAA,EAAA/B,cAAA,qCAAAgC,QAAA,GAAA1C,MAAA,CAAA2C,cAAA,EAAAC,uBAAA,GAAAF,QAAA,IAAAA,QAAA,CAAAA,QAAA,CAAAG,MAAA,QAAAD,uBAAA,IAAAA,uBAAA,KAAA7C,EAAA,IAAAG,MAAA,CAAAmC,IAAA,CAAAO,uBAAA,EAAAlC,cAAA,MAAA+B,iBAAA,GAAAG,uBAAA,OAAAE,EAAA,GAAAN,0BAAA,CAAAvC,SAAA,GAAA0B,SAAA,CAAA1B,SAAA,GAAAD,MAAA,CAAA6B,MAAA,CAAAY,iBAAA,YAAAM,sBAAA9C,SAAA,gCAAA+C,OAAA,WAAAC,MAAA,IAAAjC,MAAA,CAAAf,SAAA,EAAAgD,MAAA,YAAAd,GAAA,gBAAAe,OAAA,CAAAD,MAAA,EAAAd,GAAA,sBAAAgB,cAAAvB,SAAA,EAAAwB,WAAA,aAAAC,OAAAJ,MAAA,EAAAd,GAAA,EAAAmB,OAAA,EAAAC,MAAA,QAAAC,MAAA,GAAAvB,QAAA,CAAAL,SAAA,CAAAqB,MAAA,GAAArB,SAAA,EAAAO,GAAA,mBAAAqB,MAAA,CAAApB,IAAA,QAAAqB,MAAA,GAAAD,MAAA,CAAArB,GAAA,EAAA5B,KAAA,GAAAkD,MAAA,CAAAlD,KAAA,SAAAA,KAAA,gBAAAmD,OAAA,CAAAnD,KAAA,KAAAL,MAAA,CAAAmC,IAAA,CAAA9B,KAAA,eAAA6C,WAAA,CAAAE,OAAA,CAAA/C,KAAA,CAAAoD,OAAA,EAAAC,IAAA,WAAArD,KAAA,IAAA8C,MAAA,SAAA9C,KAAA,EAAA+C,OAAA,EAAAC,MAAA,gBAAAnC,GAAA,IAAAiC,MAAA,UAAAjC,GAAA,EAAAkC,OAAA,EAAAC,MAAA,QAAAH,WAAA,CAAAE,OAAA,CAAA/C,KAAA,EAAAqD,IAAA,WAAAC,SAAA,IAAAJ,MAAA,CAAAlD,KAAA,GAAAsD,SAAA,EAAAP,OAAA,CAAAG,MAAA,gBAAAK,KAAA,WAAAT,MAAA,UAAAS,KAAA,EAAAR,OAAA,EAAAC,MAAA,SAAAA,MAAA,CAAAC,MAAA,CAAArB,GAAA,SAAA4B,eAAA,EAAA3D,cAAA,oBAAAG,KAAA,WAAAA,MAAA0C,MAAA,EAAAd,GAAA,aAAA6B,2BAAA,eAAAZ,WAAA,WAAAE,OAAA,EAAAC,MAAA,IAAAF,MAAA,CAAAJ,MAAA,EAAAd,GAAA,EAAAmB,OAAA,EAAAC,MAAA,gBAAAQ,eAAA,GAAAA,eAAA,GAAAA,eAAA,CAAAH,IAAA,CAAAI,0BAAA,EAAAA,0BAAA,IAAAA,0BAAA,qBAAAhC,iBAAAV,OAAA,EAAAE,IAAA,EAAAM,OAAA,QAAAmC,KAAA,sCAAAhB,MAAA,EAAAd,GAAA,wBAAA8B,KAAA,YAAAC,KAAA,sDAAAD,KAAA,oBAAAhB,MAAA,QAAAd,GAAA,SAAAgC,UAAA,WAAArC,OAAA,CAAAmB,MAAA,GAAAA,MAAA,EAAAnB,OAAA,CAAAK,GAAA,GAAAA,GAAA,UAAAiC,QAAA,GAAAtC,OAAA,CAAAsC,QAAA,MAAAA,QAAA,QAAAC,cAAA,GAAAC,mBAAA,CAAAF,QAAA,EAAAtC,OAAA,OAAAuC,cAAA,QAAAA,cAAA,KAAA/B,gBAAA,mBAAA+B,cAAA,qBAAAvC,OAAA,CAAAmB,MAAA,EAAAnB,OAAA,CAAAyC,IAAA,GAAAzC,OAAA,CAAA0C,KAAA,GAAA1C,OAAA,CAAAK,GAAA,sBAAAL,OAAA,CAAAmB,MAAA,6BAAAgB,KAAA,QAAAA,KAAA,gBAAAnC,OAAA,CAAAK,GAAA,EAAAL,OAAA,CAAA2C,iBAAA,CAAA3C,OAAA,CAAAK,GAAA,uBAAAL,OAAA,CAAAmB,MAAA,IAAAnB,OAAA,CAAA4C,MAAA,WAAA5C,OAAA,CAAAK,GAAA,GAAA8B,KAAA,oBAAAT,MAAA,GAAAvB,QAAA,CAAAX,OAAA,EAAAE,IAAA,EAAAM,OAAA,oBAAA0B,MAAA,CAAApB,IAAA,QAAA6B,KAAA,GAAAnC,OAAA,CAAA6C,IAAA,mCAAAnB,MAAA,CAAArB,GAAA,KAAAG,gBAAA,qBAAA/B,KAAA,EAAAiD,MAAA,CAAArB,GAAA,EAAAwC,IAAA,EAAA7C,OAAA,CAAA6C,IAAA,kBAAAnB,MAAA,CAAApB,IAAA,KAAA6B,KAAA,gBAAAnC,OAAA,CAAAmB,MAAA,YAAAnB,OAAA,CAAAK,GAAA,GAAAqB,MAAA,CAAArB,GAAA,mBAAAmC,oBAAAF,QAAA,EAAAtC,OAAA,QAAA8C,UAAA,GAAA9C,OAAA,CAAAmB,MAAA,EAAAA,MAAA,GAAAmB,QAAA,CAAAzD,QAAA,CAAAiE,UAAA,OAAAC,SAAA,KAAA5B,MAAA,SAAAnB,OAAA,CAAAsC,QAAA,qBAAAQ,UAAA,IAAAR,QAAA,CAAAzD,QAAA,eAAAmB,OAAA,CAAAmB,MAAA,aAAAnB,OAAA,CAAAK,GAAA,GAAA0C,SAAA,EAAAP,mBAAA,CAAAF,QAAA,EAAAtC,OAAA,eAAAA,OAAA,CAAAmB,MAAA,kBAAA2B,UAAA,KAAA9C,OAAA,CAAAmB,MAAA,YAAAnB,OAAA,CAAAK,GAAA,OAAA2C,SAAA,uCAAAF,UAAA,iBAAAtC,gBAAA,MAAAkB,MAAA,GAAAvB,QAAA,CAAAgB,MAAA,EAAAmB,QAAA,CAAAzD,QAAA,EAAAmB,OAAA,CAAAK,GAAA,mBAAAqB,MAAA,CAAApB,IAAA,SAAAN,OAAA,CAAAmB,MAAA,YAAAnB,OAAA,CAAAK,GAAA,GAAAqB,MAAA,CAAArB,GAAA,EAAAL,OAAA,CAAAsC,QAAA,SAAA9B,gBAAA,MAAAyC,IAAA,GAAAvB,MAAA,CAAArB,GAAA,SAAA4C,IAAA,GAAAA,IAAA,CAAAJ,IAAA,IAAA7C,OAAA,CAAAsC,QAAA,CAAAY,UAAA,IAAAD,IAAA,CAAAxE,KAAA,EAAAuB,OAAA,CAAAmD,IAAA,GAAAb,QAAA,CAAAc,OAAA,eAAApD,OAAA,CAAAmB,MAAA,KAAAnB,OAAA,CAAAmB,MAAA,WAAAnB,OAAA,CAAAK,GAAA,GAAA0C,SAAA,GAAA/C,OAAA,CAAAsC,QAAA,SAAA9B,gBAAA,IAAAyC,IAAA,IAAAjD,OAAA,CAAAmB,MAAA,YAAAnB,OAAA,CAAAK,GAAA,OAAA2C,SAAA,sCAAAhD,OAAA,CAAAsC,QAAA,SAAA9B,gBAAA,cAAA6C,aAAAC,IAAA,QAAAC,KAAA,KAAAC,MAAA,EAAAF,IAAA,YAAAA,IAAA,KAAAC,KAAA,CAAAE,QAAA,GAAAH,IAAA,WAAAA,IAAA,KAAAC,KAAA,CAAAG,UAAA,GAAAJ,IAAA,KAAAC,KAAA,CAAAI,QAAA,GAAAL,IAAA,WAAAM,UAAA,CAAAC,IAAA,CAAAN,KAAA,cAAAO,cAAAP,KAAA,QAAA7B,MAAA,GAAA6B,KAAA,CAAAQ,UAAA,QAAArC,MAAA,CAAApB,IAAA,oBAAAoB,MAAA,CAAArB,GAAA,EAAAkD,KAAA,CAAAQ,UAAA,GAAArC,MAAA,aAAAzB,QAAAN,WAAA,SAAAiE,UAAA,MAAAJ,MAAA,aAAA7D,WAAA,CAAAuB,OAAA,CAAAmC,YAAA,cAAAW,KAAA,iBAAAjD,OAAAkD,QAAA,QAAAA,QAAA,QAAAC,cAAA,GAAAD,QAAA,CAAArF,cAAA,OAAAsF,cAAA,SAAAA,cAAA,CAAA3D,IAAA,CAAA0D,QAAA,4BAAAA,QAAA,CAAAd,IAAA,SAAAc,QAAA,OAAAE,KAAA,CAAAF,QAAA,CAAAG,MAAA,SAAAC,CAAA,OAAAlB,IAAA,YAAAA,KAAA,aAAAkB,CAAA,GAAAJ,QAAA,CAAAG,MAAA,OAAAhG,MAAA,CAAAmC,IAAA,CAAA0D,QAAA,EAAAI,CAAA,UAAAlB,IAAA,CAAA1E,KAAA,GAAAwF,QAAA,CAAAI,CAAA,GAAAlB,IAAA,CAAAN,IAAA,OAAAM,IAAA,SAAAA,IAAA,CAAA1E,KAAA,GAAAsE,SAAA,EAAAI,IAAA,CAAAN,IAAA,OAAAM,IAAA,YAAAA,IAAA,CAAAA,IAAA,GAAAA,IAAA,eAAAA,IAAA,EAAAd,UAAA,eAAAA,WAAA,aAAA5D,KAAA,EAAAsE,SAAA,EAAAF,IAAA,iBAAApC,iBAAA,CAAAtC,SAAA,GAAAuC,0BAAA,EAAApC,cAAA,CAAA0C,EAAA,mBAAAvC,KAAA,EAAAiC,0BAAA,EAAAtB,YAAA,SAAAd,cAAA,CAAAoC,0BAAA,mBAAAjC,KAAA,EAAAgC,iBAAA,EAAArB,YAAA,SAAAqB,iBAAA,CAAA6D,WAAA,GAAApF,MAAA,CAAAwB,0BAAA,EAAA1B,iBAAA,wBAAAhB,OAAA,CAAAuG,mBAAA,aAAAC,MAAA,QAAAC,IAAA,wBAAAD,MAAA,IAAAA,MAAA,CAAAE,WAAA,WAAAD,IAAA,KAAAA,IAAA,KAAAhE,iBAAA,6BAAAgE,IAAA,CAAAH,WAAA,IAAAG,IAAA,CAAAE,IAAA,OAAA3G,OAAA,CAAA4G,IAAA,aAAAJ,MAAA,WAAAtG,MAAA,CAAA2G,cAAA,GAAA3G,MAAA,CAAA2G,cAAA,CAAAL,MAAA,EAAA9D,0BAAA,KAAA8D,MAAA,CAAAM,SAAA,GAAApE,0BAAA,EAAAxB,MAAA,CAAAsF,MAAA,EAAAxF,iBAAA,yBAAAwF,MAAA,CAAArG,SAAA,GAAAD,MAAA,CAAA6B,MAAA,CAAAiB,EAAA,GAAAwD,MAAA,KAAAxG,OAAA,CAAA+G,KAAA,aAAA1E,GAAA,aAAAwB,OAAA,EAAAxB,GAAA,OAAAY,qBAAA,CAAAI,aAAA,CAAAlD,SAAA,GAAAe,MAAA,CAAAmC,aAAA,CAAAlD,SAAA,EAAAW,mBAAA,iCAAAd,OAAA,CAAAqD,aAAA,GAAAA,aAAA,EAAArD,OAAA,CAAAgH,KAAA,aAAAxF,OAAA,EAAAC,OAAA,EAAAC,IAAA,EAAAC,WAAA,EAAA2B,WAAA,eAAAA,WAAA,KAAAA,WAAA,GAAA2D,OAAA,OAAAC,IAAA,OAAA7D,aAAA,CAAA9B,IAAA,CAAAC,OAAA,EAAAC,OAAA,EAAAC,IAAA,EAAAC,WAAA,GAAA2B,WAAA,UAAAtD,OAAA,CAAAuG,mBAAA,CAAA9E,OAAA,IAAAyF,IAAA,GAAAA,IAAA,CAAA/B,IAAA,GAAArB,IAAA,WAAAH,MAAA,WAAAA,MAAA,CAAAkB,IAAA,GAAAlB,MAAA,CAAAlD,KAAA,GAAAyG,IAAA,CAAA/B,IAAA,WAAAlC,qBAAA,CAAAD,EAAA,GAAA9B,MAAA,CAAA8B,EAAA,EAAAhC,iBAAA,gBAAAE,MAAA,CAAA8B,EAAA,EAAApC,cAAA,iCAAAM,MAAA,CAAA8B,EAAA,6DAAAhD,OAAA,CAAAmH,IAAA,aAAAC,GAAA,QAAAC,MAAA,GAAAnH,MAAA,CAAAkH,GAAA,GAAAD,IAAA,gBAAA5G,GAAA,IAAA8G,MAAA,EAAAF,IAAA,CAAAtB,IAAA,CAAAtF,GAAA,UAAA4G,IAAA,CAAAG,OAAA,aAAAnC,KAAA,WAAAgC,IAAA,CAAAf,MAAA,SAAA7F,GAAA,GAAA4G,IAAA,CAAAI,GAAA,QAAAhH,GAAA,IAAA8G,MAAA,SAAAlC,IAAA,CAAA1E,KAAA,GAAAF,GAAA,EAAA4E,IAAA,CAAAN,IAAA,OAAAM,IAAA,WAAAA,IAAA,CAAAN,IAAA,OAAAM,IAAA,QAAAnF,OAAA,CAAA+C,MAAA,GAAAA,MAAA,EAAAd,OAAA,CAAA9B,SAAA,KAAAuG,WAAA,EAAAzE,OAAA,EAAA+D,KAAA,WAAAA,MAAAwB,aAAA,aAAAC,IAAA,WAAAtC,IAAA,WAAAV,IAAA,QAAAC,KAAA,GAAAK,SAAA,OAAAF,IAAA,YAAAP,QAAA,cAAAnB,MAAA,gBAAAd,GAAA,GAAA0C,SAAA,OAAAa,UAAA,CAAA1C,OAAA,CAAA4C,aAAA,IAAA0B,aAAA,WAAAb,IAAA,kBAAAA,IAAA,CAAAe,MAAA,OAAAtH,MAAA,CAAAmC,IAAA,OAAAoE,IAAA,MAAAR,KAAA,EAAAQ,IAAA,CAAAgB,KAAA,cAAAhB,IAAA,IAAA5B,SAAA,MAAA6C,IAAA,WAAAA,KAAA,SAAA/C,IAAA,WAAAgD,UAAA,QAAAjC,UAAA,IAAAG,UAAA,kBAAA8B,UAAA,CAAAvF,IAAA,QAAAuF,UAAA,CAAAxF,GAAA,cAAAyF,IAAA,KAAAnD,iBAAA,WAAAA,kBAAAoD,SAAA,aAAAlD,IAAA,QAAAkD,SAAA,MAAA/F,OAAA,kBAAAgG,OAAAC,GAAA,EAAAC,MAAA,WAAAxE,MAAA,CAAApB,IAAA,YAAAoB,MAAA,CAAArB,GAAA,GAAA0F,SAAA,EAAA/F,OAAA,CAAAmD,IAAA,GAAA8C,GAAA,EAAAC,MAAA,KAAAlG,OAAA,CAAAmB,MAAA,WAAAnB,OAAA,CAAAK,GAAA,GAAA0C,SAAA,KAAAmD,MAAA,aAAA7B,CAAA,QAAAT,UAAA,CAAAQ,MAAA,MAAAC,CAAA,SAAAA,CAAA,QAAAd,KAAA,QAAAK,UAAA,CAAAS,CAAA,GAAA3C,MAAA,GAAA6B,KAAA,CAAAQ,UAAA,iBAAAR,KAAA,CAAAC,MAAA,SAAAwC,MAAA,aAAAzC,KAAA,CAAAC,MAAA,SAAAiC,IAAA,QAAAU,QAAA,GAAA/H,MAAA,CAAAmC,IAAA,CAAAgD,KAAA,eAAA6C,UAAA,GAAAhI,MAAA,CAAAmC,IAAA,CAAAgD,KAAA,qBAAA4C,QAAA,IAAAC,UAAA,aAAAX,IAAA,GAAAlC,KAAA,CAAAE,QAAA,SAAAuC,MAAA,CAAAzC,KAAA,CAAAE,QAAA,gBAAAgC,IAAA,GAAAlC,KAAA,CAAAG,UAAA,SAAAsC,MAAA,CAAAzC,KAAA,CAAAG,UAAA,cAAAyC,QAAA,aAAAV,IAAA,GAAAlC,KAAA,CAAAE,QAAA,SAAAuC,MAAA,CAAAzC,KAAA,CAAAE,QAAA,qBAAA2C,UAAA,YAAAhE,KAAA,qDAAAqD,IAAA,GAAAlC,KAAA,CAAAG,UAAA,SAAAsC,MAAA,CAAAzC,KAAA,CAAAG,UAAA,YAAAd,MAAA,WAAAA,OAAAtC,IAAA,EAAAD,GAAA,aAAAgE,CAAA,QAAAT,UAAA,CAAAQ,MAAA,MAAAC,CAAA,SAAAA,CAAA,QAAAd,KAAA,QAAAK,UAAA,CAAAS,CAAA,OAAAd,KAAA,CAAAC,MAAA,SAAAiC,IAAA,IAAArH,MAAA,CAAAmC,IAAA,CAAAgD,KAAA,wBAAAkC,IAAA,GAAAlC,KAAA,CAAAG,UAAA,QAAA2C,YAAA,GAAA9C,KAAA,aAAA8C,YAAA,iBAAA/F,IAAA,mBAAAA,IAAA,KAAA+F,YAAA,CAAA7C,MAAA,IAAAnD,GAAA,IAAAA,GAAA,IAAAgG,YAAA,CAAA3C,UAAA,KAAA2C,YAAA,cAAA3E,MAAA,GAAA2E,YAAA,GAAAA,YAAA,CAAAtC,UAAA,cAAArC,MAAA,CAAApB,IAAA,GAAAA,IAAA,EAAAoB,MAAA,CAAArB,GAAA,GAAAA,GAAA,EAAAgG,YAAA,SAAAlF,MAAA,gBAAAgC,IAAA,GAAAkD,YAAA,CAAA3C,UAAA,EAAAlD,gBAAA,SAAA8F,QAAA,CAAA5E,MAAA,MAAA4E,QAAA,WAAAA,SAAA5E,MAAA,EAAAiC,QAAA,oBAAAjC,MAAA,CAAApB,IAAA,QAAAoB,MAAA,CAAArB,GAAA,qBAAAqB,MAAA,CAAApB,IAAA,mBAAAoB,MAAA,CAAApB,IAAA,QAAA6C,IAAA,GAAAzB,MAAA,CAAArB,GAAA,gBAAAqB,MAAA,CAAApB,IAAA,SAAAwF,IAAA,QAAAzF,GAAA,GAAAqB,MAAA,CAAArB,GAAA,OAAAc,MAAA,kBAAAgC,IAAA,yBAAAzB,MAAA,CAAApB,IAAA,IAAAqD,QAAA,UAAAR,IAAA,GAAAQ,QAAA,GAAAnD,gBAAA,KAAA+F,MAAA,WAAAA,OAAA7C,UAAA,aAAAW,CAAA,QAAAT,UAAA,CAAAQ,MAAA,MAAAC,CAAA,SAAAA,CAAA,QAAAd,KAAA,QAAAK,UAAA,CAAAS,CAAA,OAAAd,KAAA,CAAAG,UAAA,KAAAA,UAAA,cAAA4C,QAAA,CAAA/C,KAAA,CAAAQ,UAAA,EAAAR,KAAA,CAAAI,QAAA,GAAAG,aAAA,CAAAP,KAAA,GAAA/C,gBAAA,yBAAAgG,OAAAhD,MAAA,aAAAa,CAAA,QAAAT,UAAA,CAAAQ,MAAA,MAAAC,CAAA,SAAAA,CAAA,QAAAd,KAAA,QAAAK,UAAA,CAAAS,CAAA,OAAAd,KAAA,CAAAC,MAAA,KAAAA,MAAA,QAAA9B,MAAA,GAAA6B,KAAA,CAAAQ,UAAA,kBAAArC,MAAA,CAAApB,IAAA,QAAAmG,MAAA,GAAA/E,MAAA,CAAArB,GAAA,EAAAyD,aAAA,CAAAP,KAAA,YAAAkD,MAAA,gBAAArE,KAAA,8BAAAsE,aAAA,WAAAA,cAAAzC,QAAA,EAAAf,UAAA,EAAAE,OAAA,gBAAAd,QAAA,KAAAzD,QAAA,EAAAkC,MAAA,CAAAkD,QAAA,GAAAf,UAAA,EAAAA,UAAA,EAAAE,OAAA,EAAAA,OAAA,oBAAAjC,MAAA,UAAAd,GAAA,GAAA0C,SAAA,GAAAvC,gBAAA,OAAAxC,OAAA;AAAA,SAAA2I,eAAAC,GAAA,EAAAvC,CAAA,WAAAwC,eAAA,CAAAD,GAAA,KAAAE,qBAAA,CAAAF,GAAA,EAAAvC,CAAA,KAAA0C,2BAAA,CAAAH,GAAA,EAAAvC,CAAA,KAAA2C,gBAAA;AAAA,SAAAA,iBAAA,cAAAhE,SAAA;AAAA,SAAA+D,4BAAAE,CAAA,EAAAC,MAAA,SAAAD,CAAA,qBAAAA,CAAA,sBAAAE,iBAAA,CAAAF,CAAA,EAAAC,MAAA,OAAAE,CAAA,GAAAlJ,MAAA,CAAAC,SAAA,CAAAkJ,QAAA,CAAA9G,IAAA,CAAA0G,CAAA,EAAAtB,KAAA,aAAAyB,CAAA,iBAAAH,CAAA,CAAAvC,WAAA,EAAA0C,CAAA,GAAAH,CAAA,CAAAvC,WAAA,CAAAC,IAAA,MAAAyC,CAAA,cAAAA,CAAA,mBAAAE,KAAA,CAAAC,IAAA,CAAAN,CAAA,OAAAG,CAAA,+DAAAI,IAAA,CAAAJ,CAAA,UAAAD,iBAAA,CAAAF,CAAA,EAAAC,MAAA;AAAA,SAAAC,kBAAAP,GAAA,EAAAa,GAAA,QAAAA,GAAA,YAAAA,GAAA,GAAAb,GAAA,CAAAxC,MAAA,EAAAqD,GAAA,GAAAb,GAAA,CAAAxC,MAAA,WAAAC,CAAA,MAAAqD,IAAA,OAAAJ,KAAA,CAAAG,GAAA,GAAApD,CAAA,GAAAoD,GAAA,EAAApD,CAAA,IAAAqD,IAAA,CAAArD,CAAA,IAAAuC,GAAA,CAAAvC,CAAA,UAAAqD,IAAA;AAAA,SAAAZ,sBAAAF,GAAA,EAAAvC,CAAA,QAAAsD,EAAA,WAAAf,GAAA,gCAAAjI,MAAA,IAAAiI,GAAA,CAAAjI,MAAA,CAAAE,QAAA,KAAA+H,GAAA,4BAAAe,EAAA,QAAAC,EAAA,EAAAC,EAAA,EAAAC,EAAA,EAAAC,EAAA,EAAAC,IAAA,OAAAC,EAAA,OAAAC,EAAA,iBAAAJ,EAAA,IAAAH,EAAA,GAAAA,EAAA,CAAApH,IAAA,CAAAqG,GAAA,GAAAzD,IAAA,QAAAkB,CAAA,QAAAnG,MAAA,CAAAyJ,EAAA,MAAAA,EAAA,UAAAM,EAAA,uBAAAA,EAAA,IAAAL,EAAA,GAAAE,EAAA,CAAAvH,IAAA,CAAAoH,EAAA,GAAA9E,IAAA,MAAAmF,IAAA,CAAAnE,IAAA,CAAA+D,EAAA,CAAAnJ,KAAA,GAAAuJ,IAAA,CAAA5D,MAAA,KAAAC,CAAA,GAAA4D,EAAA,iBAAA3I,GAAA,IAAA4I,EAAA,OAAAL,EAAA,GAAAvI,GAAA,yBAAA2I,EAAA,YAAAN,EAAA,eAAAI,EAAA,GAAAJ,EAAA,cAAAzJ,MAAA,CAAA6J,EAAA,MAAAA,EAAA,2BAAAG,EAAA,QAAAL,EAAA,aAAAG,IAAA;AAAA,SAAAnB,gBAAAD,GAAA,QAAAU,KAAA,CAAAa,OAAA,CAAAvB,GAAA,UAAAA,GAAA;AADA,IAAIwB,SAAS,GAAI,UAAQ,SAAKA,SAAS,IAAK,UAAUC,OAAO,EAAEC,UAAU,EAAEC,CAAC,EAAEzI,SAAS,EAAE;EACrF,SAAS0I,KAAKA,CAAC/J,KAAK,EAAE;IAAE,OAAOA,KAAK,YAAY8J,CAAC,GAAG9J,KAAK,GAAG,IAAI8J,CAAC,CAAC,UAAU/G,OAAO,EAAE;MAAEA,OAAO,CAAC/C,KAAK,CAAC;IAAE,CAAC,CAAC;EAAE;EAC3G,OAAO,KAAK8J,CAAC,KAAKA,CAAC,GAAGtD,OAAO,CAAC,EAAE,UAAUzD,OAAO,EAAEC,MAAM,EAAE;IACvD,SAASgH,SAASA,CAAChK,KAAK,EAAE;MAAE,IAAI;QAAEiK,IAAI,CAAC5I,SAAS,CAACqD,IAAI,CAAC1E,KAAK,CAAC,CAAC;MAAE,CAAC,CAAC,OAAOkK,CAAC,EAAE;QAAElH,MAAM,CAACkH,CAAC,CAAC;MAAE;IAAE;IAC1F,SAASC,QAAQA,CAACnK,KAAK,EAAE;MAAE,IAAI;QAAEiK,IAAI,CAAC5I,SAAS,CAAC,OAAO,CAAC,CAACrB,KAAK,CAAC,CAAC;MAAE,CAAC,CAAC,OAAOkK,CAAC,EAAE;QAAElH,MAAM,CAACkH,CAAC,CAAC;MAAE;IAAE;IAC7F,SAASD,IAAIA,CAAC/G,MAAM,EAAE;MAAEA,MAAM,CAACkB,IAAI,GAAGrB,OAAO,CAACG,MAAM,CAAClD,KAAK,CAAC,GAAG+J,KAAK,CAAC7G,MAAM,CAAClD,KAAK,CAAC,CAACqD,IAAI,CAAC2G,SAAS,EAAEG,QAAQ,CAAC;IAAE;IAC7GF,IAAI,CAAC,CAAC5I,SAAS,GAAGA,SAAS,CAAC+I,KAAK,CAACR,OAAO,EAAEC,UAAU,IAAI,EAAE,CAAC,EAAEnF,IAAI,CAAC,CAAC,CAAC;EACzE,CAAC,CAAC;AACN,CAAC;;AASD;;AAIO,IAAM2F,aAAa,gBAAG,IAAAC,iBAAU,EAAC,UAACC,KAAK,EAAEC,GAAG,EAAK;EACpD,IAAQC,GAAG,GAAkRF,KAAK,CAA1RE,GAAG;IAAEC,QAAQ,GAAwQH,KAAK,CAArRG,QAAQ;IAAEC,QAAQ,GAA8PJ,KAAK,CAA3QI,QAAQ;IAAEC,UAAU,GAAkPL,KAAK,CAAjQK,UAAU;IAAEC,UAAU,GAAsON,KAAK,CAArPM,UAAU;IAAEC,UAAU,GAA0NP,KAAK,CAAzOO,UAAU;IAAEC,UAAU,GAA8MR,KAAK,CAA7NQ,UAAU;IAAElJ,IAAI,GAAwM0I,KAAK,CAAjN1I,IAAI;IAAEmJ,WAAW,GAA2LT,KAAK,CAA3MS,WAAW;IAAAC,YAAA,GAA2LV,KAAK,CAA9LW,KAAK;IAALA,KAAK,GAAAD,YAAA,cAAG,MAAM,GAAAA,YAAA;IAAAE,aAAA,GAA2KZ,KAAK,CAA9Ka,MAAM;IAANA,MAAM,GAAAD,aAAA,cAAG,MAAM,GAAAA,aAAA;IAAEE,WAAW,GAA6Id,KAAK,CAA7Jc,WAAW;IAAAC,oBAAA,GAA6If,KAAK,CAAhJgB,aAAa;IAAbA,aAAa,GAAAD,oBAAA,cAAG,CAAC,GAAAA,oBAAA;IAAEE,SAAS,GAA+GjB,KAAK,CAA7HiB,SAAS;IAAEC,OAAO,GAAsGlB,KAAK,CAAlHkB,OAAO;IAAEC,YAAY,GAAwFnB,KAAK,CAAzGmB,YAAY;IAAEC,UAAU,GAA4EpB,KAAK,CAA3FoB,UAAU;IAAAC,eAAA,GAA4ErB,KAAK,CAA/EsB,QAAQ;IAARA,QAAQ,GAAAD,eAAA,cAAG,KAAK,GAAAA,eAAA;IAAAE,WAAA,GAA0DvB,KAAK,CAA7D/F,IAAI;IAAJA,IAAI,GAAAsH,WAAA,cAAG,EAAE,GAAAA,WAAA;IAAEC,WAAW,GAAkCxB,KAAK,CAAlDwB,WAAW;IAAAC,qBAAA,GAAkCzB,KAAK,CAArC0B,cAAc;IAAdA,cAAc,GAAAD,qBAAA,cAAG1H,SAAS,GAAA0H,qBAAA;EACvR,IAAME,IAAI,GAAG,IAAAC,aAAM,EAAC,IAAI,CAAC;EACzB,IAAMC,SAAS,GAAG,IAAAC,kBAAM,EAACZ,OAAO,CAAC,CAACa,IAAI,CAAC,IAAAD,kBAAM,EAACb,SAAS,CAAC,EAAE,SAAS,CAAC;EACpE,IAAMe,YAAY,GAAG,IAAAJ,aAAM,EAAC,IAAI,CAAC;EACjC,IAAMK,OAAO,GAAG,IAAAL,aAAM,EAAC,IAAI,CAAC;EAC5B,IAAMM,WAAW,GAAG,IAAAN,aAAM,EAAC,IAAI,CAAC;EAChC,IAAMO,SAAS,GAAG,IAAAP,aAAM,EAAC,CAAC;EAC1B,IAAAQ,cAAA,GAA6C,IAAAC,qBAAa,EAACJ,OAAO,CAAC;IAAAK,eAAA,GAAA3E,cAAA,CAAAyE,cAAA;IAA5DG,YAAY,GAAAD,eAAA;IAAIE,gBAAgB,GAAAF,eAAA,IAAhBE,gBAAgB;EACvC,IAAAC,YAAA,GAA0B,IAAAC,mBAAW,EAAC;MAClCC,IAAI,EAAE,KAAK;MACX3J,KAAK,EAAE,KAAK;MACZ4J,OAAO,EAAE,KAAK;MACdC,EAAE,EAAE,gBAAgB,GAAG,IAAAC,oBAAa,EAAC,CAAC;MACtCC,MAAM,EAAE,CAAC;MACTC,WAAW,EAAE,EAAE;MACfC,QAAQ,EAAE,CAAC;MACXC,SAAS,EAAE,CAAC;MACZC,QAAQ,EAAE;QACNF,QAAQ,EAAE;MACd,CAAC;MACDG,eAAe,EAAE,IAAI;MACrBC,YAAY,EAAE;IAClB,CAAC,CAAC;IAAAC,aAAA,GAAA3F,cAAA,CAAA8E,YAAA;IAdKtJ,KAAK,GAAAmK,aAAA;IAAEC,QAAQ,GAAAD,aAAA;EAetB,IAAAE,0BAAmB,EAACvD,GAAG,EAAE,YAAM;IAC3B,OAAO;MACHwD,MAAM,EAAE,SAAAA,OAACC,IAAI,EAAK;QACd,IAAMC,MAAM,GAAGxB,SAAS,CAACyB,OAAO;QAChC,IAAID,MAAM,EAAE;UACR,IAAMX,WAAW,GAAG,IAAAlB,kBAAM,EAAC4B,IAAI,CAAC,CAAC3B,IAAI,CAAC,IAAAD,kBAAM,EAACb,SAAS,CAAC,EAAE,SAAS,CAAC;UACnE,OAAO0C,MAAM,CAACF,MAAM,CAACT,WAAW,CAAC;QACrC,CAAC,MACI;UACD,OAAO/G,OAAO,CAACxD,MAAM,CAAC,CAAC;QAC3B;MACJ;IACJ,CAAC;EACL,CAAC,CAAC;EACF,IAAAoL,gBAAS,EAAC,YAAM;IACZ,IAAMC,SAAS,GAAG9B,YAAY,CAAC4B,OAAO;IACtC,IAAIjC,IAAI,CAACiC,OAAO,EAAE;MACdG,aAAa,CAACpC,IAAI,CAACiC,OAAO,CAAC;MAC3BjC,IAAI,CAACiC,OAAO,GAAG,IAAI;IACvB;IACA,IAAI,CAAC1D,GAAG,IAAI,CAAC4D,SAAS,EAClB;IACJ,IAAIH,MAAM,GAAG,IAAI;IACjB,CAAC;MAAA,OAAMvE,SAAS,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,eAAArK,mBAAA,GAAA6G,IAAA,CAAE,SAAAoI,QAAA;QAAA,IAAAC,KAAA;QAAA,OAAAlP,mBAAA,GAAAwB,IAAA,UAAA2N,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAA1H,IAAA,GAAA0H,QAAA,CAAAhK,IAAA;YAAA;cAAA,MACjC7C,IAAI,KAAK,IAAI;gBAAA6M,QAAA,CAAAhK,IAAA;gBAAA;cAAA;cAAAgK,QAAA,CAAAhK,IAAA;cACb,OAAM,IAAI8B,OAAO,CAAC,UAACzD,OAAO,EAAK;gBAC3B4L,UAAU,CAAC;kBAAA,OAAM5L,OAAO,CAAC,EAAE,CAAC;gBAAA,GAAE,IAAI,CAAC;cACvC,CAAC,CAAC;YAAA;cAAA,MAGFlB,IAAI,KAAK,QAAQ;gBAAA6M,QAAA,CAAAhK,IAAA;gBAAA;cAAA;cAAAgK,QAAA,CAAAhK,IAAA;cACH,OAAMkK,eAAG,CAACC,QAAQ,CAAC;gBAC7BnE,QAAQ,EAARA;cACJ,CAAC,CAAC;YAAA;cAFI8D,KAAK,GAAAE,QAAA,CAAA1K,IAAA;cAGX8K,YAAY,CAACC,OAAO,CAAC,aAAa,EAAEP,KAAK,CAAC;YAAC;cAAAE,QAAA,CAAAhK,IAAA;cAEtC,OAAM,IAAIsK,kBAAM,CAAC;gBACtBvE,GAAG,EAAHA,GAAG;gBACHG,UAAU,EAAVA,UAAU;gBACVD,QAAQ,EAARA,QAAQ;gBACRE,UAAU,EAAVA,UAAU;gBACVC,UAAU,EAAVA,UAAU;gBACVJ,QAAQ,EAARA,QAAQ;gBACRK,UAAU,EAAVA,UAAU;gBACVC,WAAW,EAAXA,WAAW;gBACXqD,SAAS,EAATA,SAAS;gBACTY,IAAI,EAAE,KAAK;gBACXzD,SAAS,EAATA,SAAS;gBACTC,OAAO,EAAPA,OAAO;gBACP5J,IAAI,EAAJA;cACJ,CAAC,CAAC;YAAA;cAdFqM,MAAM,GAAAQ,QAAA,CAAA1K,IAAA;cAeN0I,SAAS,CAACyB,OAAO,GAAGD,MAAM;cAACQ,QAAA,CAAAhK,IAAA;cAC3B,OAAMoJ,QAAQ,CAAC;gBACXX,OAAO,EAAE,IAAI;gBACb5J,KAAK,EAAE,KAAK;gBACZiK,QAAQ,EAAE,CAAC;gBACXE,QAAQ,EAAE;kBAAEF,QAAQ,EAAEU,MAAM,CAACrM,IAAI,KAAK,OAAO,IAAIqM,MAAM,CAACrM,IAAI,KAAK;gBAAW,CAAC;gBAC7E8L,eAAe,EAAEO,MAAM,CAACrM,IAAI,KAAK,IAAI;gBACrC+L,YAAY,EAAEM,MAAM,CAACrM,IAAI,KAAK;cAClC,CAAC,CAAC;YAAA;cACFqM,MAAM,CACDgB,QAAQ,CAAC,CAAC,CACV7L,IAAI,CAAC,YAAM;gBACZyK,QAAQ,CAAC;kBACLZ,IAAI,EAAE,IAAI;kBACVK,WAAW,EAAE,IAAAlB,kBAAM,EAACb,SAAS,CAAC,CAAC2D,MAAM,CAACC,iBAAU,CAACC,MAAM;gBAC3D,CAAC,CAAC;gBACF,IAAIzJ,CAAC,GAAG,CAAC;gBACTsG,IAAI,CAACiC,OAAO,GAAGmB,WAAW,CAAC,YAAM;kBAC7B;kBACA,IAAI,IAAAjD,kBAAM,EAACb,SAAS,CAAC,CAAC+D,GAAG,CAAC3J,CAAC,EAAE,GAAG,CAAC,CAAC4J,IAAI,CAAC,CAAC,IAAI,IAAAnD,kBAAM,EAACZ,OAAO,CAAC,CAAC+D,IAAI,CAAC,CAAC,EAAE;oBAChElB,aAAa,CAACpC,IAAI,CAACiC,OAAO,CAAC;oBAC3BjC,IAAI,CAACiC,OAAO,GAAG,IAAI;oBACnBL,QAAQ,CAAC;sBACLP,WAAW,EAAE,EAAE;sBACfC,QAAQ,EAAE;oBACd,CAAC,CAAC;kBACN,CAAC,MACI;oBACD5H,CAAC,EAAE;oBACH,IAAI,CAAClC,KAAK,CAACyJ,OAAO,EAAE;sBAChBW,QAAQ,CAAC;wBACLP,WAAW,EAAE,IAAAlB,kBAAM,EAACb,SAAS,CAAC,CACzB+D,GAAG,CAAC3J,CAAC,EAAE,GAAG,CAAC,CACXuJ,MAAM,CAACC,iBAAU,CAACC,MAAM,CAAC;wBAC9B7B,QAAQ,EAAEiC,IAAI,CAACC,KAAK,CAAE9J,CAAC,GAAG,GAAG,GAAIwG,SAAS;sBAC9C,CAAC,CAAC;oBACN;kBACJ;gBACJ,CAAC,EAAE,IAAI,CAAC;cACZ,CAAC,CAAC,SACQ,CAAC;gBAAA,OAAM0B,QAAQ,CAAC;kBAAEvK,KAAK,EAAE;gBAAK,CAAC,CAAC;cAAA,EAAC,WAC/B,CAAC;gBAAA,OAAMuK,QAAQ,CAAC;kBAAEX,OAAO,EAAE;gBAAM,CAAC,CAAC;cAAA,EAAC;cAChDe,MAAM,CAACyB,YAAY,CAAC,UAACC,YAAY,EAAEC,KAAK,EAAK;gBACzC,IAAI,CAACnM,KAAK,CAACyJ,OAAO,EAAE;kBAChBW,QAAQ,CAAC;oBACL;oBACA;oBACA+B,KAAK,EAALA;kBACJ,CAAC,CAAC;gBACN;cACJ,CAAC,CAAC;YAAC;YAAA;cAAA,OAAAnB,QAAA,CAAAvH,IAAA;UAAA;QAAA,GAAAoH,OAAA;MAAA,CACN,EAAC;IAAA,GAAE,CAAC;IACL,OAAO,YAAM;MACTL,MAAM,CAAC4B,OAAO,CAAC,CAAC;MAChBhC,QAAQ,CAAC;QAAEvK,KAAK,EAAE,KAAK;QAAE4J,OAAO,EAAE,KAAK;QAAED,IAAI,EAAE;MAAM,CAAC,CAAC;MACvD,IAAIhB,IAAI,CAACiC,OAAO,EAAE;QACdG,aAAa,CAACpC,IAAI,CAACiC,OAAO,CAAC;QAC3BjC,IAAI,CAACiC,OAAO,GAAG,IAAI;MACvB;IACJ,CAAC;EACL,CAAC,EAAE,CAAC1D,GAAG,EAAEe,SAAS,EAAEC,OAAO,CAAC,CAAC;EAC7B,IAAA2C,gBAAS,EAAC,YAAM;IACZ,IAAI,CAAC1K,KAAK,CAACyJ,OAAO,EAAE;MAChBzB,YAAY,IACRA,YAAY,CAAChI,KAAK,CAAC6J,WAAW,GAAG,IAAAlB,kBAAM,EAAC3I,KAAK,CAAC6J,WAAW,CAAC,CAAC4B,MAAM,CAACC,iBAAU,CAACC,MAAM,CAAC,GAAG,EAAE,EAAE3L,KAAK,CAACmM,KAAK,CAAC;IAC/G;EACJ,CAAC,EAAE,CAACnM,KAAK,CAAC6J,WAAW,EAAE7J,KAAK,CAACmM,KAAK,CAAC,CAAC;EACpC,IAAME,WAAW,GAAG,IAAAC,mBAAW,EAACtM,KAAK,CAAC+J,SAAS,EAAE;IAAEwC,IAAI,EAAE;EAAI,CAAC,CAAC;EAC/D,IAAA7B,gBAAS,EAAC,YAAM;IACZ,IAAMb,WAAW,GAAGkC,IAAI,CAACC,KAAK,CAAEtD,SAAS,GAAG2D,WAAW,GAAI,GAAG,CAAC;IAC/D,IAAM7B,MAAM,GAAGxB,SAAS,CAACyB,OAAO;IAChCD,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACF,MAAM,CAACT,WAAW,CAAC;IAC1EO,QAAQ,CAAC;MACLN,QAAQ,EAAEuC;IACd,CAAC,CAAC;EACN,CAAC,EAAE,CAACA,WAAW,CAAC,CAAC;EACjB;EACA,IAAMG,aAAa,GAAG,SAAhBA,aAAaA,CAAIhG,CAAC,EAAK;IACzB,IAAMgE,MAAM,GAAGxB,SAAS,CAACyB,OAAO;IAChCD,MAAM,IAAIA,MAAM,CAACiC,OAAO,CAAC9E,WAAW,EAAEM,UAAU,CAAC;IACjDzB,CAAC,CAACkG,eAAe,CAAC,CAAC;EACvB,CAAC;EACD;EACA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAInG,CAAC,EAAK;IAC5B6C,gBAAgB,CAAC,CAAC;IAClB,IAAMmB,MAAM,GAAGxB,SAAS,CAACyB,OAAO;IAChCD,MAAM,IAAIA,MAAM,CAACoC,MAAM,CAAC,CAAC;IACzBpG,CAAC,CAACkG,eAAe,CAAC,CAAC;EACvB,CAAC;EACD;EACA,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAIvQ,KAAK,EAAK;IAC5B,IAAIkM,IAAI,CAACiC,OAAO,EAAE;MACdG,aAAa,CAACpC,IAAI,CAACiC,OAAO,CAAC;MAC3BjC,IAAI,CAACiC,OAAO,GAAG,IAAI;IACvB;IACA,IAAMZ,WAAW,GAAGkC,IAAI,CAACC,KAAK,CAAEtD,SAAS,GAAGpM,KAAK,GAAI,GAAG,CAAC;IACzD8N,QAAQ,CAAC;MACLL,SAAS,EAAEzN,KAAK;MAChBuN,WAAW,EAAE,IAAAlB,kBAAM,EAAC3I,KAAK,CAAC6J,WAAW,CAAC,CACjCgC,GAAG,CAAChC,WAAW,EAAE,SAAS,CAAC,CAC3B4B,MAAM,CAACC,iBAAU,CAACC,MAAM;IACjC,CAAC,CAAC;IACF,IAAIzJ,CAAC,GAAG,CAAC;IACTsG,IAAI,CAACiC,OAAO,GAAGmB,WAAW,CAAC,YAAM;MAC7B,IAAI,IAAAjD,kBAAM,EAACb,SAAS,CAAC,CAACgE,IAAI,CAAC,CAAC,GAAG5J,CAAC,GAAG2H,WAAW,IAAI,IAAAlB,kBAAM,EAACZ,OAAO,CAAC,CAAC+D,IAAI,CAAC,CAAC,EAAE;QACtElB,aAAa,CAACpC,IAAI,CAACiC,OAAO,CAAC;QAC3BjC,IAAI,CAACiC,OAAO,GAAG,IAAI;QACnBL,QAAQ,CAAC;UACLP,WAAW,EAAE,EAAE;UACfC,QAAQ,EAAE;QACd,CAAC,CAAC;MACN,CAAC,MACI,IAAI,CAAC9J,KAAK,CAACyJ,OAAO,EAAE;QACrBW,QAAQ,CAAC;UACLP,WAAW,EAAE,IAAAlB,kBAAM,EAACb,SAAS,CAAC,CACzB+D,GAAG,CAAC3J,CAAC,GAAG2H,WAAW,EAAE,GAAG,CAAC,CACzB4B,MAAM,CAACC,iBAAU,CAACC,MAAM,CAAC;UAC9B7B,QAAQ,EAAEiC,IAAI,CAACC,KAAK,CAAE,CAAC9J,CAAC,GAAG2H,WAAW,IAAInB,SAAS,GAAI,GAAG;QAC9D,CAAC,CAAC;QACFxG,CAAC,EAAE;MACP;IACJ,CAAC,EAAE,IAAI,CAAC;EACZ,CAAC;EACD;EACA,IAAM4K,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAS;IACtB,IAAMtC,MAAM,GAAGxB,SAAS,CAACyB,OAAO;IAChCD,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACuC,KAAK,CAAC,YAAM;MAC/D3C,QAAQ,CAAC;QAAEZ,IAAI,EAAE;MAAM,CAAC,CAAC;IAC7B,CAAC,CAAC;IACF,IAAIhB,IAAI,CAACiC,OAAO,EAAE;MACdG,aAAa,CAACpC,IAAI,CAACiC,OAAO,CAAC;MAC3BjC,IAAI,CAACiC,OAAO,GAAG,IAAI;IACvB;EACJ,CAAC;EACD;EACA,IAAMuC,YAAY,GAAG,SAAfA,YAAYA,CAAA,EAAS;IACvB,IAAMxC,MAAM,GAAGxB,SAAS,CAACyB,OAAO;IAChCD,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACyC,MAAM,CAAC,YAAM;MAChE7C,QAAQ,CAAC;QAAEZ,IAAI,EAAE;MAAK,CAAC,CAAC;IAC5B,CAAC,CAAC;IACF,IAAIhB,IAAI,CAACiC,OAAO,EAAE;MACdG,aAAa,CAACpC,IAAI,CAACiC,OAAO,CAAC;MAC3BjC,IAAI,CAACiC,OAAO,GAAG,IAAI;IACvB;IACA,IAAItM,IAAI,KAAK,IAAI,EAAE;MACf;IACJ;IACA,IAAI+D,CAAC,GAAG,CAAC;IACTsG,IAAI,CAACiC,OAAO,GAAGmB,WAAW,CAAC,YAAM;MAC7B,IAAI,IAAAjD,kBAAM,EAAC3I,KAAK,CAAC6J,WAAW,CAAC,CAACiC,IAAI,CAAC,CAAC,GAAG5J,CAAC,IAAI,IAAAyG,kBAAM,EAACZ,OAAO,CAAC,CAAC+D,IAAI,CAAC,CAAC,EAAE;QAChElB,aAAa,CAACpC,IAAI,CAACiC,OAAO,CAAC;QAC3BjC,IAAI,CAACiC,OAAO,GAAG,IAAI;QACnBL,QAAQ,CAAC;UACLP,WAAW,EAAE,EAAE;UACfC,QAAQ,EAAE;QACd,CAAC,CAAC;MACN;MACA,IAAI,CAAC9J,KAAK,CAACyJ,OAAO,EAAE;QAChBW,QAAQ,CAAC;UACLP,WAAW,EAAE,IAAAlB,kBAAM,EAAC3I,KAAK,CAAC6J,WAAW,CAAC,CAACgC,GAAG,CAAC3J,CAAC,EAAE,GAAG,CAAC,CAACuJ,MAAM,CAACC,iBAAU,CAACC,MAAM,CAAC;UAC5E7B,QAAQ,EAAEiC,IAAI,CAACC,KAAK,CAAE,CAAC9J,CAAC,GAAG,IAAAyG,kBAAM,EAAC3I,KAAK,CAAC6J,WAAW,CAAC,CAACiC,IAAI,CAAC,CAAC,IAAIpD,SAAS,GAAI,GAAG;QACnF,CAAC,CAAC;QACFxG,CAAC,EAAE;MACP;IACJ,CAAC,EAAE,IAAI,CAAC;EACZ,CAAC;EACD,OAAQ,IAAAgL,gBAAK,EAAC,KAAK,EAAEnR,MAAM,CAACoR,MAAM,CAAC;IAAEC,SAAS,EAAE,oBAAoB;IAAEtG,GAAG,EAAEgC,OAAO;IAAEuE,KAAK,EAAE;MAAE7F,KAAK,EAALA,KAAK;MAAEE,MAAM,EAANA;IAAO;EAAE,CAAC,EAAE;IAAE4F,QAAQ,EAAE,CAAC,IAAAC,eAAI,EAAC,KAAK,EAAE;MAAEzG,GAAG,EAAE+B,YAAY;MAAEwE,KAAK,EAAE;QAAE3F,MAAM,EAAE,MAAM;QAAEF,KAAK,EAAE;MAAO,CAAC;MAAEkC,EAAE,EAAE1J,KAAK,CAAC0J;IAAG,CAAC,CAAC,EAAE1J,KAAK,CAACyJ,OAAO,IAAI,IAAA8D,eAAI,EAACC,sBAAY,EAAE,CAAC,CAAC,CAAC,EAAE,IAAAD,eAAI,EAACE,mBAAS,EAAE;MAAEtF,QAAQ,EAAEA,QAAQ;MAAErH,IAAI,EAAEA;IAAK,CAAC,CAAC,EAAE,IAAAoM,gBAAK,EAAC,KAAK,EAAEnR,MAAM,CAACoR,MAAM,CAAC;MAAEC,SAAS,EAAE,UAAU;MAAEtG,GAAG,EAAEiC,WAAW;MAAEsE,KAAK,EAAE;QAAEK,MAAM,EAAE7F,aAAa;QAAE8F,OAAO,EAAEpF,cAAc,GAAG,CAAC,GAAG3H;MAAU;IAAE,CAAC,EAAE;MAAE0M,QAAQ,EAAE,CAACtN,KAAK,CAACwJ,IAAI,GAAI,IAAA+D,eAAI,EAACK,gBAAS,EAAE;QAAEC,OAAO,EAAEf;MAAY,CAAC,CAAC,GAAK,IAAAS,eAAI,EAACO,eAAQ,EAAE;QAAED,OAAO,EAAEb;MAAa,CAAC,CAAE,EAAEhN,KAAK,CAACiK,eAAe,IAAK,IAAAiD,gBAAK,EAACa,oBAAS,EAAE;QAAET,QAAQ,EAAE,CAAC,IAAAJ,gBAAK,EAAC,KAAK,EAAEnR,MAAM,CAACoR,MAAM,CAAC;UAAEC,SAAS,EAAE;QAAO,CAAC,EAAE;UAAEE,QAAQ,EAAE,CAAC,IAAAC,eAAI,EAAC,MAAM,EAAExR,MAAM,CAACoR,MAAM,CAAC;YAAEC,SAAS,EAAE;UAAU,CAAC,EAAE;YAAEE,QAAQ,EAAEtN,KAAK,CAAC6J,WAAW,GAC9tB,IAAAlB,kBAAM,EAAC3I,KAAK,CAAC6J,WAAW,CAAC,CAAC4B,MAAM,CAAC,UAAU,CAAC,GAC5C;UAAI,CAAC,CAAC,CAAC,EAAE,IAAAyB,gBAAK,EAAC,MAAM,EAAEnR,MAAM,CAACoR,MAAM,CAAC;YAAEC,SAAS,EAAE;UAAQ,CAAC,EAAE;YAAEE,QAAQ,EAAE,CAAC,GAAG,EAAE,IAAA3E,kBAAM,EAACZ,OAAO,CAAC,CAAC0D,MAAM,CAAC,UAAU,CAAC;UAAE,CAAC,CAAC,CAAC;QAAE,CAAC,CAAC,CAAC,EAAE,IAAA8B,eAAI,EAAC,KAAK,EAAExR,MAAM,CAACoR,MAAM,CAAC;UAAEC,SAAS,EAAE;QAAS,CAAC,EAAE;UAAEE,QAAQ,EAAE,IAAAC,eAAI,EAACS,kBAAM,EAAE;YAAEC,QAAQ,EAAE,CAACjO,KAAK,CAACgK,QAAQ,CAACF,QAAQ;YAAEoE,YAAY,EAAE,IAAI;YAAEC,QAAQ,EAAEtB,YAAY;YAAEvQ,KAAK,EAAE0D,KAAK,CAAC8J;UAAS,CAAC;QAAE,CAAC,CAAC,CAAC;MAAE,CAAC,CAAE,EAAE,IAAAoD,gBAAK,EAACkB,iBAAK,EAAErS,MAAM,CAACoR,MAAM,CAAC;QAAEC,SAAS,EAAE,OAAO;QAAEiB,IAAI,EAAE,EAAE;QAAEC,KAAK,EAAE;MAAS,CAAC,EAAE;QAAEhB,QAAQ,EAAE,CAAC,IAAAC,eAAI,EAACgB,uBAAa,EAAE;UAAE/D,MAAM,EAAExB,SAAS,CAACyB,OAAO;UAAE+D,YAAY,EAAE,CAAC;UAAE7D,SAAS,EAAE5B,WAAW,CAAC0B;QAAQ,CAAC,CAAC,EAAEzK,KAAK,CAACkK,YAAY,IAAK,IAAAqD,eAAI,EAACkB,sBAAY,EAAE;UAAEjE,MAAM,EAAExB,SAAS,CAACyB,OAAO;UAAEE,SAAS,EAAE5B,WAAW,CAAC0B;QAAQ,CAAC,CAAE,EAAE,CAAC,CAACxC,UAAU,IAAI,IAAAsF,eAAI,EAACmB,kBAAW,EAAE;UAAEb,OAAO,EAAErB;QAAc,CAAC,CAAC,EAAEnE,WAAW,GAAGA,WAAW,GAAG,IAAI,EAAEe,YAAY,GAAI,IAAAmE,eAAI,EAACoB,yBAAkB,EAAE;UAAEd,OAAO,EAAElB;QAAiB,CAAC,CAAC,GAAK,IAAAY,eAAI,EAACqB,qBAAc,EAAE;UAAEf,OAAO,EAAElB;QAAiB,CAAC,CAAE;MAAE,CAAC,CAAC,CAAC;IAAE,CAAC,CAAC,CAAC;EAAE,CAAC,CAAC,CAAC;AACv4B,CAAC,CAAC;AAAC9Q,OAAA,CAAA8K,aAAA,GAAAA,aAAA;AACHA,aAAa,CAACxE,WAAW,GAAG,eAAe;AAAC,IAAA0M,QAAA,GAC7BlI,aAAa;AAAA9K,OAAA,cAAAgT,QAAA"}
@@ -1,10 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  require("antd/lib/slider/style/css");
4
-
5
4
  require("antd/lib/space/style/css");
6
-
7
5
  require("../../controls/style/css");
8
-
9
6
  require("./index.css");
10
7
  //# sourceMappingURL=css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"css.js","names":[],"sources":["history-player/style/index.js"],"sourcesContent":["import \"antd/lib/slider/style\";\nimport \"antd/lib/space/style\";\nimport '../../controls/style';\nimport './index.less';\n"],"mappings":";;AAAA;;AACA;;AACA;;AACA"}
1
+ {"version":3,"file":"css.js","names":["require"],"sources":["history-player/style/index.js"],"sourcesContent":["import \"antd/lib/slider/style\";\nimport \"antd/lib/space/style\";\nimport '../../controls/style';\nimport './index.less';\n"],"mappings":";;AAAAA,OAAA;AACAA,OAAA;AACAA,OAAA;AACAA,OAAA"}
@@ -1,10 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  require("antd/lib/slider/style");
4
-
5
4
  require("antd/lib/space/style");
6
-
7
5
  require("../../controls/style");
8
-
9
6
  require("./index.less");
10
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["history-player/style/index.js"],"sourcesContent":["import \"antd/lib/slider/style\";\nimport \"antd/lib/space/style\";\nimport '../../controls/style';\nimport './index.less';\n"],"mappings":";;AAAA;;AACA;;AACA;;AACA"}
1
+ {"version":3,"file":"index.js","names":["require"],"sources":["history-player/style/index.js"],"sourcesContent":["import \"antd/lib/slider/style\";\nimport \"antd/lib/space/style\";\nimport '../../controls/style';\nimport './index.less';\n"],"mappings":";;AAAAA,OAAA;AACAA,OAAA;AACAA,OAAA;AACAA,OAAA"}
@@ -1,102 +1,102 @@
1
- .vtx-history-player {
2
- position: relative;
3
- display: flex;
4
- align-items: center;
5
- justify-content: center;
6
- background-color: #2b3d51;
7
- border: 1px solid transparent;
8
-
9
- .controls {
10
- position: absolute;
11
- bottom: 0;
12
- display: flex;
13
- align-items: center;
14
- width: 100%;
15
- height: 30px;
16
- padding: 0 12px;
17
- background-color: #131d27;
18
- border-bottom: 1px solid rgba(82, 196 ,26 , 1);
19
- opacity: 0;
20
- transition: opacity 0.5s;
21
-
22
- .time {
23
- padding: 4px 12px;
24
- margin: 0 12px;
25
- background-color: rgba(145 ,165, 185 , 0.3);
26
-
27
- .current {
28
- color: white;
29
- }
30
-
31
- .total {
32
- color: rgba(255, 255 ,255 , .85);
33
- }
34
- }
35
-
36
- .slider {
37
- flex-grow: 1;
38
- margin-right: 24px;
39
-
40
- .ant-slider {
41
- .ant-slider-rail {
42
- background-color: rgba(173, 176, 180,1);
43
- }
44
- }
45
- }
46
-
47
- .right {
48
- margin-left: auto;
49
-
50
- > div {
51
- height: 24px;
52
- }
53
- }
54
- }
55
-
56
- &:hover {
57
- .controls {
58
- opacity: 1;
59
- }
60
- }
61
-
62
- video {
63
- width: 100%;
64
- height: 100%;
65
- object-fit: fill;
66
- }
67
-
68
- .sub-wnd {
69
- width: 100% !important;
70
- height: 100% !important;
71
- pointer-events: none;
72
- background-color: #2b3d51 !important;
73
- border: 1px solid transparent !important;
74
- }
75
-
76
- .error-container {
77
- position: absolute;
78
- top: 50%;
79
- left: 50%;
80
- display: flex;
81
- flex-direction: column;
82
- align-items: center;
83
- transform: translate(-50%, -50%);
84
-
85
- .text {
86
- margin: 20px 0;
87
- font-size: 14px;
88
- color:rgba(255, 255 ,255 , .65);
89
- }
90
-
91
- img {
92
- cursor: pointer;
93
- }
94
- }
95
-
96
- .loading-container {
97
- position: absolute;
98
- top: 50%;
99
- left: 50%;
100
- transform: translate(-50%, -50%);
101
- }
102
- }
1
+ .vtx-history-player {
2
+ position: relative;
3
+ display: flex;
4
+ align-items: center;
5
+ justify-content: center;
6
+ background-color: #2b3d51;
7
+ border: 1px solid transparent;
8
+
9
+ .controls {
10
+ position: absolute;
11
+ bottom: 0;
12
+ display: flex;
13
+ align-items: center;
14
+ width: 100%;
15
+ height: 30px;
16
+ padding: 0 12px;
17
+ background-color: #131d27;
18
+ border-bottom: 1px solid rgba(82, 196 ,26 , 1);
19
+ opacity: 0;
20
+ transition: opacity 0.5s;
21
+
22
+ .time {
23
+ padding: 4px 12px;
24
+ margin: 0 12px;
25
+ background-color: rgba(145 ,165, 185 , 0.3);
26
+
27
+ .current {
28
+ color: white;
29
+ }
30
+
31
+ .total {
32
+ color: rgba(255, 255 ,255 , .85);
33
+ }
34
+ }
35
+
36
+ .slider {
37
+ flex-grow: 1;
38
+ margin-right: 24px;
39
+
40
+ .ant-slider {
41
+ .ant-slider-rail {
42
+ background-color: rgba(173, 176, 180,1);
43
+ }
44
+ }
45
+ }
46
+
47
+ .right {
48
+ margin-left: auto;
49
+
50
+ > div {
51
+ height: 24px;
52
+ }
53
+ }
54
+ }
55
+
56
+ &:hover {
57
+ .controls {
58
+ opacity: 1;
59
+ }
60
+ }
61
+
62
+ video {
63
+ width: 100%;
64
+ height: 100%;
65
+ object-fit: fill;
66
+ }
67
+
68
+ .sub-wnd {
69
+ width: 100% !important;
70
+ height: 100% !important;
71
+ pointer-events: none;
72
+ background-color: #2b3d51 !important;
73
+ border: 1px solid transparent !important;
74
+ }
75
+
76
+ .error-container {
77
+ position: absolute;
78
+ top: 50%;
79
+ left: 50%;
80
+ display: flex;
81
+ flex-direction: column;
82
+ align-items: center;
83
+ transform: translate(-50%, -50%);
84
+
85
+ .text {
86
+ margin: 20px 0;
87
+ font-size: 14px;
88
+ color:rgba(255, 255 ,255 , .65);
89
+ }
90
+
91
+ img {
92
+ cursor: pointer;
93
+ }
94
+ }
95
+
96
+ .loading-container {
97
+ position: absolute;
98
+ top: 50%;
99
+ left: 50%;
100
+ transform: translate(-50%, -50%);
101
+ }
102
+ }
@@ -4,25 +4,20 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
-
8
7
  var _react = require("react");
9
-
10
8
  var _context = require("../context");
11
-
12
9
  /**
13
10
  * 获取配置信息
14
11
  * @returns
15
12
  */
16
13
  var useSettings = function useSettings() {
17
14
  var _useContext = (0, _react.useContext)(_context.PlayerThemeContext),
18
- theme = _useContext.theme;
19
-
15
+ theme = _useContext.theme;
20
16
  return {
21
17
  theme: theme,
22
18
  isDark: theme === 'light'
23
19
  };
24
20
  };
25
-
26
21
  var _default = useSettings;
27
22
  exports["default"] = _default;
28
23
  //# sourceMappingURL=useSettings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSettings.js","names":["useSettings","useContext","PlayerThemeContext","theme","isDark"],"sources":["hooks/useSettings.js"],"sourcesContent":["import { useContext } from 'react';\nimport { PlayerThemeContext } from '../context';\n/**\n * 获取配置信息\n * @returns\n */\nconst useSettings = () => {\n const { theme } = useContext(PlayerThemeContext);\n return { theme, isDark: theme === 'light' };\n};\nexport default useSettings;\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;AACA;AACA;AACA;AACA,IAAMA,WAAW,GAAG,SAAdA,WAAc,GAAM;EACtB,kBAAkB,IAAAC,iBAAA,EAAWC,2BAAX,CAAlB;EAAA,IAAQC,KAAR,eAAQA,KAAR;;EACA,OAAO;IAAEA,KAAK,EAALA,KAAF;IAASC,MAAM,EAAED,KAAK,KAAK;EAA3B,CAAP;AACH,CAHD;;eAIeH,W"}
1
+ {"version":3,"file":"useSettings.js","names":["_react","require","_context","useSettings","_useContext","useContext","PlayerThemeContext","theme","isDark","_default","exports"],"sources":["hooks/useSettings.js"],"sourcesContent":["import { useContext } from 'react';\nimport { PlayerThemeContext } from '../context';\n/**\n * 获取配置信息\n * @returns\n */\nconst useSettings = () => {\n const { theme } = useContext(PlayerThemeContext);\n return { theme, isDark: theme === 'light' };\n};\nexport default useSettings;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA;AACA;AACA;AACA;AACA,IAAME,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAS;EACtB,IAAAC,WAAA,GAAkB,IAAAC,iBAAU,EAACC,2BAAkB,CAAC;IAAxCC,KAAK,GAAAH,WAAA,CAALG,KAAK;EACb,OAAO;IAAEA,KAAK,EAALA,KAAK;IAAEC,MAAM,EAAED,KAAK,KAAK;EAAQ,CAAC;AAC/C,CAAC;AAAC,IAAAE,QAAA,GACaN,WAAW;AAAAO,OAAA,cAAAD,QAAA"}