@vtx/player 1.3.12 → 1.4.0

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.
@@ -10,6 +10,7 @@ interface BillPlayerProps {
10
10
  live?: boolean;
11
11
  /** 是否显示历史视频,默认为true */
12
12
  history?: boolean;
13
+ theme?: 'blue';
13
14
  /** 实时默认播放 */
14
15
  defaultLivePlay?: boolean;
15
16
  /** 历史默认播放 */
@@ -70,17 +70,26 @@ var BillPlayer = function BillPlayer(props) {
70
70
  _props$defaultLivePla = props.defaultLivePlay,
71
71
  defaultLivePlay = _props$defaultLivePla === void 0 ? true : _props$defaultLivePla,
72
72
  _props$isDark = props.isDark,
73
- isDark = _props$isDark === void 0 ? false : _props$isDark;
73
+ isDark = _props$isDark === void 0 ? false : _props$isDark,
74
+ _props$theme = props.theme,
75
+ theme = _props$theme === void 0 ? '' : _props$theme;
74
76
 
75
77
  var _useSetState = (0, _ahooks.useSetState)({
76
78
  datePickerDisabled: false,
77
79
  liveListState: new Map(),
78
- deviceId: ''
80
+ deviceId: '',
81
+ mode: 'live'
79
82
  }),
80
83
  _useSetState2 = _slicedToArray(_useSetState, 2),
81
84
  state = _useSetState2[0],
82
85
  setState = _useSetState2[1];
83
86
 
87
+ var handleModeChange = function handleModeChange(e) {
88
+ setState({
89
+ mode: e.target.value
90
+ });
91
+ };
92
+
84
93
  var _useRequest = (0, _ahooks.useRequest)(function () {
85
94
  return (0, _api.loadVideoInfo)(params);
86
95
  }, {
@@ -270,6 +279,7 @@ var BillPlayer = function BillPlayer(props) {
270
279
  className: "player-container"
271
280
  }, {
272
281
  children: (0, _jsxRuntime.jsx)(_historyControl["default"], {
282
+ theme: theme,
273
283
  isDark: isDark,
274
284
  ref: historyRef
275
285
  })
@@ -388,7 +398,8 @@ var BillPlayer = function BillPlayer(props) {
388
398
  }, {
389
399
  children: (0, _jsxRuntime.jsx)(_button["default"], Object.assign({
390
400
  type: "primary",
391
- htmlType: "submit"
401
+ htmlType: "submit",
402
+ className: "submit-button"
392
403
  }, {
393
404
  children: "\u67E5\u8BE2"
394
405
  }))
@@ -403,13 +414,45 @@ var BillPlayer = function BillPlayer(props) {
403
414
  locale: _zh_CN["default"]
404
415
  }, {
405
416
  children: (0, _jsxRuntime.jsxs)("div", Object.assign({
406
- className: "vtx-bill-player".concat(isDark ? ' bill-dark' : ''),
417
+ className: "vtx-bill-player".concat(isDark ? ' bill-dark' : '', " ").concat(theme),
407
418
  style: {
408
419
  height: height,
409
420
  width: width
410
421
  }
411
422
  }, {
412
- children: [live && history && (0, _jsxRuntime.jsxs)(_tabs["default"], Object.assign({
423
+ children: [live && history && (theme === 'blue' ? (0, _jsxRuntime.jsx)("div", Object.assign({
424
+ className: "blue-body"
425
+ }, {
426
+ children: (0, _jsxRuntime.jsxs)("div", Object.assign({
427
+ className: "ridio-list"
428
+ }, {
429
+ children: [(0, _jsxRuntime.jsx)("div", Object.assign({
430
+ className: "radio-head"
431
+ }, {
432
+ children: (0, _jsxRuntime.jsxs)(_radio["default"].Group, Object.assign({
433
+ onChange: handleModeChange,
434
+ value: state.mode,
435
+ className: "radio-group"
436
+ }, {
437
+ children: [(0, _jsxRuntime.jsx)(_radio["default"].Button, Object.assign({
438
+ value: "live"
439
+ }, {
440
+ children: (0, _jsxRuntime.jsx)("span", {
441
+ children: "\u5B9E\u65F6\u89C6\u9891"
442
+ })
443
+ })), (0, _jsxRuntime.jsx)(_radio["default"].Button, Object.assign({
444
+ value: "history"
445
+ }, {
446
+ children: "\u5386\u53F2\u89C6\u9891"
447
+ }))]
448
+ }))
449
+ })), (0, _jsxRuntime.jsx)("div", Object.assign({
450
+ className: "ridio-body"
451
+ }, {
452
+ children: state.mode === 'live' ? getLivePanel() : getHistoryPanel()
453
+ }))]
454
+ }))
455
+ })) : (0, _jsxRuntime.jsxs)(_tabs["default"], Object.assign({
413
456
  defaultActiveKey: "live",
414
457
  className: "bill-tabs"
415
458
  }, {
@@ -422,7 +465,7 @@ var BillPlayer = function BillPlayer(props) {
422
465
  }, {
423
466
  children: getHistoryPanel()
424
467
  }), "history")]
425
- })), live && !history && getLivePanel(), history && !live && getHistoryPanel()]
468
+ }))), live && !history && getLivePanel(), history && !live && getHistoryPanel()]
426
469
  }))
427
470
  }));
428
471
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["TabPane","Tabs","BillPlayer","props","params","live","history","height","width","defaultLivePlay","isDark","useSetState","datePickerDisabled","liveListState","Map","deviceId","state","setState","useRequest","loadVideoInfo","refreshDeps","billId","onSuccess","result","livePlayer","liveRef","current","item","set","channelNum","videoDeviceId","multiLoad","map","channelId","form","setFieldsValue","data","Form","useForm","useRef","historyRef","getLivePanel","list","_jsx","Checkbox","Object","assign","checked","get","onChange","e","target","liveControl","load","unLoad","children","channelName","_jsxs","className","LiveControl","ref","onChannelChange","channelsNum","includes","onHistorySubmit","values","historyControl","beginTime","moment","format","TimeFormat","endTime","onTimeRadioChange","value","startOf","subtract","endOf","getHistoryPanel","HistoryControl","name","labelCol","span","wrapperCol","onFinish","requiredMark","colon","initialValues","autoComplete","Item","label","Radio","Group","defaultValue","rules","required","message","DatePicker","style","showTime","disabled","dropdownClassName","Select","Option","textAlign","Button","type","htmlType","ConfigProvider","locale","zhCN","defaultActiveKey","tab"],"sources":["bill-player/index.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useRef } from 'react';\nimport { loadVideoInfo } from '../api';\nimport HistoryControl from '../history-control';\nimport LiveControl from '../live-control';\nimport { TimeFormat } from '../utils';\nimport { useRequest, useSetState } from 'ahooks';\nimport zhCN from 'antd/es/locale/zh_CN';\n// import { Button, Checkbox, DatePicker, Form, Radio, RadioChangeEvent, Select, Tabs } from 'antd';\nimport Button from 'antd/lib/button';\nimport Checkbox from 'antd/lib/checkbox';\nimport ConfigProvider from 'antd/lib/config-provider';\nimport DatePicker from 'antd/lib/date-picker';\nimport Form from 'antd/lib/form';\nimport Radio from 'antd/lib/radio';\nimport Select from 'antd/lib/select';\nimport Tabs from 'antd/lib/tabs';\nimport moment from 'moment';\nconst { TabPane } = Tabs;\nexport const BillPlayer = (props) => {\n const { params, live = true, history = true, height = '100%', width = '100%', defaultLivePlay = true, isDark = false, } = props;\n const [state, setState] = useSetState({\n datePickerDisabled: false,\n liveListState: new Map(),\n deviceId: '',\n });\n const { data } = useRequest(() => loadVideoInfo(params), {\n refreshDeps: [params.billId],\n onSuccess: (result) => {\n if (defaultLivePlay) {\n const livePlayer = liveRef.current;\n if (livePlayer) {\n const liveListState = new Map();\n for (const item of result) {\n liveListState.set(item.channelNum, true);\n }\n setState({ liveListState, deviceId: result[0].videoDeviceId });\n livePlayer.multiLoad(result.map((item) => ({\n channelNum: item.channelNum,\n deviceId: item.videoDeviceId,\n channelId: item.channelNum,\n })));\n }\n }\n form.setFieldsValue({ channelNum: result[0].channelNum });\n },\n });\n const [form] = Form.useForm();\n const liveRef = useRef(null);\n const historyRef = useRef(null);\n const getLivePanel = () => {\n const list = data === null || data === void 0 ? void 0 : data.map((item) => (_jsx(Checkbox, Object.assign({ checked: state.liveListState.get(item.channelNum), onChange: (e) => {\n const checked = e.target.checked;\n const liveControl = liveRef.current;\n if (liveControl) {\n if (checked) {\n liveControl.load(Object.assign(Object.assign({}, item), { deviceId: item.videoDeviceId }));\n }\n else {\n liveControl.unLoad(item.channelNum);\n }\n }\n } }, { children: item.channelName }), item.channelNum)));\n return (_jsxs(\"div\", Object.assign({ className: \"player-panel\" }, { children: [_jsx(\"div\", Object.assign({ className: \"player-container\" }, { children: _jsx(LiveControl, { ref: liveRef, isDark: isDark, onChannelChange: (channelsNum) => {\n const liveListState = new Map(state.liveListState);\n for (const channelNum of channelsNum) {\n liveListState.set(channelNum, !liveListState.get(channelNum));\n }\n for (const item of liveListState) {\n if (channelsNum.includes(item[0]))\n liveListState.set(item[0], true);\n else\n liveListState.set(item[0], false);\n }\n setState({ liveListState });\n } }) })), _jsxs(\"div\", Object.assign({ className: \"control-container\" }, { children: [_jsx(\"div\", Object.assign({ className: \"header\" }, { children: \"\\u89C6\\u9891\\u901A\\u9053\" })), _jsx(\"div\", Object.assign({ className: \"list\" }, { children: list }))] }))] })));\n };\n const onHistorySubmit = (values) => {\n const historyControl = historyRef.current;\n historyControl === null || historyControl === void 0 ? void 0 : historyControl.load({\n channelNum: values.channelNum,\n deviceId: state.deviceId,\n beginTime: moment(values.beginTime).format(TimeFormat.params),\n endTime: moment(values.endTime).format(TimeFormat.params),\n });\n };\n const onTimeRadioChange = (e) => {\n const value = e.target.value;\n if (value === 'custom') {\n setState({ datePickerDisabled: false });\n }\n else {\n setState({ datePickerDisabled: true });\n if (value === 'today') {\n form.setFieldsValue({\n beginTime: moment().startOf('day'),\n endTime: moment(),\n });\n }\n if (value === 'yesterday') {\n form.setFieldsValue({\n beginTime: moment().subtract(1, 'day').startOf('day'),\n endTime: moment().subtract(1, 'day').endOf('day'),\n });\n }\n if (value === 'dayBeforeYesterday') {\n form.setFieldsValue({\n beginTime: moment().subtract(2, 'day').startOf('day'),\n endTime: moment().subtract(2, 'day').endOf('day'),\n });\n }\n }\n };\n const getHistoryPanel = () => {\n return (_jsxs(\"div\", Object.assign({ className: \"player-panel\" }, { children: [_jsx(\"div\", Object.assign({ className: \"player-container\" }, { children: _jsx(HistoryControl, { isDark: isDark, ref: historyRef }) })), _jsxs(\"div\", Object.assign({ className: \"control-container\" }, { children: [_jsx(\"div\", Object.assign({ className: \"header\" }, { children: \"\\u67E5\\u8BE2\\u89C6\\u9891\" })), _jsx(\"div\", Object.assign({ className: \"form\" }, { children: _jsxs(Form, Object.assign({ form: form, name: \"history\", labelCol: { span: 5 }, wrapperCol: { span: 19 }, onFinish: onHistorySubmit, requiredMark: false, colon: false, initialValues: {\n beginTime: moment().subtract(1, 'day').startOf('day'),\n endTime: moment().subtract(1, 'day').endOf('day'),\n }, autoComplete: \"off\" }, { children: [_jsx(Form.Item, Object.assign({ label: \"\\u9009\\u62E9\\u65F6\\u6BB5\" }, { children: _jsxs(Radio.Group, Object.assign({ onChange: onTimeRadioChange, defaultValue: \"custom\", className: \"time-radio-group\" }, { children: [_jsx(Radio, Object.assign({ value: \"today\" }, { children: \"\\u5F53\\u65E5\" })), _jsx(Radio, Object.assign({ value: \"yesterday\" }, { children: \"\\u6628\\u65E5\" })), _jsx(Radio, Object.assign({ value: \"dayBeforeYesterday\" }, { children: \"\\u524D\\u65E5\" })), _jsx(Radio, Object.assign({ value: \"custom\" }, { children: \"\\u81EA\\u9009\" }))] })) })), _jsx(Form.Item, Object.assign({ label: \"\\u5F00\\u59CB\\u65F6\\u95F4\", name: \"beginTime\", rules: [{ required: true, message: '请输入开始时间' }] }, { children: _jsx(DatePicker, { style: { width: '100%' }, showTime: true, disabled: state.datePickerDisabled, dropdownClassName: \"date-dark\" }) })), _jsx(Form.Item, Object.assign({ label: \"\\u7ED3\\u675F\\u65F6\\u95F4\", name: \"endTime\", rules: [{ required: true, message: '请输入结束时间' }] }, { children: _jsx(DatePicker, { style: { width: '100%' }, showTime: true, disabled: state.datePickerDisabled, dropdownClassName: \"date-dark\" }) })), _jsx(Form.Item, Object.assign({ label: \"\\u89C6\\u9891\\u901A\\u9053\", name: \"channelNum\", rules: [{ required: true, message: '请选择视频通道' }] }, { children: _jsx(Select, Object.assign({ dropdownClassName: \"select-dark\" }, { children: data === null || data === void 0 ? void 0 : data.map((item) => (_jsx(Select.Option, Object.assign({ value: item.channelNum }, { children: item.channelName }), item.channelNum))) })) })), _jsx(Form.Item, Object.assign({ wrapperCol: { span: 24 }, style: { textAlign: 'center' } }, { children: _jsx(Button, Object.assign({ type: \"primary\", htmlType: \"submit\" }, { children: \"\\u67E5\\u8BE2\" })) }))] })) }))] }))] })));\n };\n return (_jsx(ConfigProvider, Object.assign({ locale: zhCN }, { children: _jsxs(\"div\", Object.assign({ className: `vtx-bill-player${isDark ? ' bill-dark' : ''}`, style: { height, width } }, { children: [live && history && (_jsxs(Tabs, Object.assign({ defaultActiveKey: \"live\", className: \"bill-tabs\" }, { children: [_jsx(TabPane, Object.assign({ tab: \"\\u5B9E\\u65F6\\u89C6\\u9891\" }, { children: getLivePanel() }), \"live\"), _jsx(TabPane, Object.assign({ tab: \"\\u5386\\u53F2\\u89C6\\u9891\" }, { children: getHistoryPanel() }), \"history\")] }))), live && !history && getLivePanel(), history && !live && getHistoryPanel()] })) })));\n};\nexport default BillPlayer;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["TabPane","Tabs","BillPlayer","props","params","live","history","height","width","defaultLivePlay","isDark","theme","useSetState","datePickerDisabled","liveListState","Map","deviceId","mode","state","setState","handleModeChange","e","target","value","useRequest","loadVideoInfo","refreshDeps","billId","onSuccess","result","livePlayer","liveRef","current","item","set","channelNum","videoDeviceId","multiLoad","map","channelId","form","setFieldsValue","data","Form","useForm","useRef","historyRef","getLivePanel","list","_jsx","Checkbox","Object","assign","checked","get","onChange","liveControl","load","unLoad","children","channelName","_jsxs","className","LiveControl","ref","onChannelChange","channelsNum","includes","onHistorySubmit","values","historyControl","beginTime","moment","format","TimeFormat","endTime","onTimeRadioChange","startOf","subtract","endOf","getHistoryPanel","HistoryControl","name","labelCol","span","wrapperCol","onFinish","requiredMark","colon","initialValues","autoComplete","Item","label","Radio","Group","defaultValue","rules","required","message","DatePicker","style","showTime","disabled","dropdownClassName","Select","Option","textAlign","Button","type","htmlType","ConfigProvider","locale","zhCN","defaultActiveKey","tab"],"sources":["bill-player/index.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useRef } from 'react';\nimport { loadVideoInfo } from '../api';\nimport HistoryControl from '../history-control';\nimport LiveControl from '../live-control';\nimport { TimeFormat } from '../utils';\nimport { useRequest, useSetState } from 'ahooks';\nimport zhCN from 'antd/es/locale/zh_CN';\n// import { Button, Checkbox, DatePicker, Form, Radio, RadioChangeEvent, Select, Tabs } from 'antd';\nimport Button from 'antd/lib/button';\nimport Checkbox from 'antd/lib/checkbox';\nimport ConfigProvider from 'antd/lib/config-provider';\nimport DatePicker from 'antd/lib/date-picker';\nimport Form from 'antd/lib/form';\nimport Radio from 'antd/lib/radio';\nimport Select from 'antd/lib/select';\nimport Tabs from 'antd/lib/tabs';\nimport moment from 'moment';\nconst { TabPane } = Tabs;\nexport const BillPlayer = (props) => {\n const { params, live = true, history = true, height = '100%', width = '100%', defaultLivePlay = true, isDark = false, theme = '', } = props;\n const [state, setState] = useSetState({\n datePickerDisabled: false,\n liveListState: new Map(),\n deviceId: '',\n mode: 'live',\n });\n const handleModeChange = (e) => {\n setState({\n mode: e.target.value,\n });\n };\n const { data } = useRequest(() => loadVideoInfo(params), {\n refreshDeps: [params.billId],\n onSuccess: (result) => {\n if (defaultLivePlay) {\n const livePlayer = liveRef.current;\n if (livePlayer) {\n const liveListState = new Map();\n for (const item of result) {\n liveListState.set(item.channelNum, true);\n }\n setState({ liveListState, deviceId: result[0].videoDeviceId });\n livePlayer.multiLoad(result.map((item) => ({\n channelNum: item.channelNum,\n deviceId: item.videoDeviceId,\n channelId: item.channelNum,\n })));\n }\n }\n form.setFieldsValue({ channelNum: result[0].channelNum });\n },\n });\n const [form] = Form.useForm();\n const liveRef = useRef(null);\n const historyRef = useRef(null);\n const getLivePanel = () => {\n const list = data === null || data === void 0 ? void 0 : data.map((item) => (_jsx(Checkbox, Object.assign({ checked: state.liveListState.get(item.channelNum), onChange: (e) => {\n const checked = e.target.checked;\n const liveControl = liveRef.current;\n if (liveControl) {\n if (checked) {\n liveControl.load(Object.assign(Object.assign({}, item), { deviceId: item.videoDeviceId }));\n }\n else {\n liveControl.unLoad(item.channelNum);\n }\n }\n } }, { children: item.channelName }), item.channelNum)));\n return (_jsxs(\"div\", Object.assign({ className: \"player-panel\" }, { children: [_jsx(\"div\", Object.assign({ className: \"player-container\" }, { children: _jsx(LiveControl, { ref: liveRef, isDark: isDark, onChannelChange: (channelsNum) => {\n const liveListState = new Map(state.liveListState);\n for (const channelNum of channelsNum) {\n liveListState.set(channelNum, !liveListState.get(channelNum));\n }\n for (const item of liveListState) {\n if (channelsNum.includes(item[0]))\n liveListState.set(item[0], true);\n else\n liveListState.set(item[0], false);\n }\n setState({ liveListState });\n } }) })), _jsxs(\"div\", Object.assign({ className: `control-container` }, { children: [_jsx(\"div\", Object.assign({ className: \"header\" }, { children: \"\\u89C6\\u9891\\u901A\\u9053\" })), _jsx(\"div\", Object.assign({ className: \"list\" }, { children: list }))] }))] })));\n };\n const onHistorySubmit = (values) => {\n const historyControl = historyRef.current;\n historyControl === null || historyControl === void 0 ? void 0 : historyControl.load({\n channelNum: values.channelNum,\n deviceId: state.deviceId,\n beginTime: moment(values.beginTime).format(TimeFormat.params),\n endTime: moment(values.endTime).format(TimeFormat.params),\n });\n };\n const onTimeRadioChange = (e) => {\n const value = e.target.value;\n if (value === 'custom') {\n setState({ datePickerDisabled: false });\n }\n else {\n setState({ datePickerDisabled: true });\n if (value === 'today') {\n form.setFieldsValue({\n beginTime: moment().startOf('day'),\n endTime: moment(),\n });\n }\n if (value === 'yesterday') {\n form.setFieldsValue({\n beginTime: moment().subtract(1, 'day').startOf('day'),\n endTime: moment().subtract(1, 'day').endOf('day'),\n });\n }\n if (value === 'dayBeforeYesterday') {\n form.setFieldsValue({\n beginTime: moment().subtract(2, 'day').startOf('day'),\n endTime: moment().subtract(2, 'day').endOf('day'),\n });\n }\n }\n };\n const getHistoryPanel = () => {\n return (_jsxs(\"div\", Object.assign({ className: \"player-panel\" }, { children: [_jsx(\"div\", Object.assign({ className: \"player-container\" }, { children: _jsx(HistoryControl, { theme: theme, isDark: isDark, ref: historyRef }) })), _jsxs(\"div\", Object.assign({ className: \"control-container\" }, { children: [_jsx(\"div\", Object.assign({ className: \"header\" }, { children: \"\\u67E5\\u8BE2\\u89C6\\u9891\" })), _jsx(\"div\", Object.assign({ className: \"form\" }, { children: _jsxs(Form, Object.assign({ form: form, name: \"history\", labelCol: { span: 5 }, wrapperCol: { span: 19 }, onFinish: onHistorySubmit, requiredMark: false, colon: false, initialValues: {\n beginTime: moment().subtract(1, 'day').startOf('day'),\n endTime: moment().subtract(1, 'day').endOf('day'),\n }, autoComplete: \"off\" }, { children: [_jsx(Form.Item, Object.assign({ label: \"\\u9009\\u62E9\\u65F6\\u6BB5\" }, { children: _jsxs(Radio.Group, Object.assign({ onChange: onTimeRadioChange, defaultValue: \"custom\", className: \"time-radio-group\" }, { children: [_jsx(Radio, Object.assign({ value: \"today\" }, { children: \"\\u5F53\\u65E5\" })), _jsx(Radio, Object.assign({ value: \"yesterday\" }, { children: \"\\u6628\\u65E5\" })), _jsx(Radio, Object.assign({ value: \"dayBeforeYesterday\" }, { children: \"\\u524D\\u65E5\" })), _jsx(Radio, Object.assign({ value: \"custom\" }, { children: \"\\u81EA\\u9009\" }))] })) })), _jsx(Form.Item, Object.assign({ label: \"\\u5F00\\u59CB\\u65F6\\u95F4\", name: \"beginTime\", rules: [{ required: true, message: '请输入开始时间' }] }, { children: _jsx(DatePicker, { style: { width: '100%' }, showTime: true, disabled: state.datePickerDisabled, dropdownClassName: \"date-dark\" }) })), _jsx(Form.Item, Object.assign({ label: \"\\u7ED3\\u675F\\u65F6\\u95F4\", name: \"endTime\", rules: [{ required: true, message: '请输入结束时间' }] }, { children: _jsx(DatePicker, { style: { width: '100%' }, showTime: true, disabled: state.datePickerDisabled, dropdownClassName: \"date-dark\" }) })), _jsx(Form.Item, Object.assign({ label: \"\\u89C6\\u9891\\u901A\\u9053\", name: \"channelNum\", rules: [{ required: true, message: '请选择视频通道' }] }, { children: _jsx(Select, Object.assign({ dropdownClassName: \"select-dark\" }, { children: data === null || data === void 0 ? void 0 : data.map((item) => (_jsx(Select.Option, Object.assign({ value: item.channelNum }, { children: item.channelName }), item.channelNum))) })) })), _jsx(Form.Item, Object.assign({ wrapperCol: { span: 24 }, style: { textAlign: 'center' } }, { children: _jsx(Button, Object.assign({ type: \"primary\", htmlType: \"submit\", className: \"submit-button\" }, { children: \"\\u67E5\\u8BE2\" })) }))] })) }))] }))] })));\n };\n return (_jsx(ConfigProvider, Object.assign({ locale: zhCN }, { children: _jsxs(\"div\", Object.assign({ className: `vtx-bill-player${isDark ? ' bill-dark' : ''} ${theme}`, style: { height, width } }, { children: [live &&\n history &&\n (theme === 'blue' ? (_jsx(\"div\", Object.assign({ className: \"blue-body\" }, { children: _jsxs(\"div\", Object.assign({ className: \"ridio-list\" }, { children: [_jsx(\"div\", Object.assign({ className: \"radio-head\" }, { children: _jsxs(Radio.Group, Object.assign({ onChange: handleModeChange, value: state.mode, className: \"radio-group\" }, { children: [_jsx(Radio.Button, Object.assign({ value: \"live\" }, { children: _jsx(\"span\", { children: \"\\u5B9E\\u65F6\\u89C6\\u9891\" }) })), _jsx(Radio.Button, Object.assign({ value: \"history\" }, { children: \"\\u5386\\u53F2\\u89C6\\u9891\" }))] })) })), _jsx(\"div\", Object.assign({ className: \"ridio-body\" }, { children: state.mode === 'live' ? getLivePanel() : getHistoryPanel() }))] })) }))) : (_jsxs(Tabs, Object.assign({ defaultActiveKey: \"live\", className: \"bill-tabs\" }, { children: [_jsx(TabPane, Object.assign({ tab: \"\\u5B9E\\u65F6\\u89C6\\u9891\" }, { children: getLivePanel() }), \"live\"), _jsx(TabPane, Object.assign({ tab: \"\\u5386\\u53F2\\u89C6\\u9891\" }, { children: getHistoryPanel() }), \"history\")] })))), live && !history && getLivePanel(), history && !live && getHistoryPanel()] })) })));\n};\nexport default BillPlayer;\n"],"mappings":"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"}
@@ -2,10 +2,10 @@
2
2
  color: rgba(255, 255, 255, 0.65);
3
3
  }
4
4
  .bill-dark .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {
5
- color: #95FFF9;
5
+ color: #95fff9;
6
6
  }
7
7
  .bill-dark .ant-tabs-ink-bar {
8
- background: #95FFF9;
8
+ background: #95fff9;
9
9
  }
10
10
  .bill-dark .control-container {
11
11
  background: rgba(0, 59, 64, 0.3);
@@ -17,11 +17,11 @@
17
17
  border: 1px solid rgba(255, 255, 255, 0.2);
18
18
  }
19
19
  .bill-dark .control-container .list .ant-checkbox-wrapper {
20
- color: #95FFF9;
20
+ color: #95fff9;
21
21
  }
22
22
  .bill-dark .control-container .list .ant-checkbox-checked .ant-checkbox-inner {
23
- background-color: #95FFF9;
24
- border-color: #95FFF9;
23
+ background-color: #95fff9;
24
+ border-color: #95fff9;
25
25
  }
26
26
  .bill-dark .control-container .list .ant-checkbox-checked .ant-checkbox-inner::after {
27
27
  border-color: #000;
@@ -33,10 +33,10 @@
33
33
  color: rgba(255, 255, 255, 0.65);
34
34
  }
35
35
  .bill-dark .control-container .form .time-radio-group .ant-radio-checked .ant-radio-inner {
36
- border-color: #95FFF9;
36
+ border-color: #95fff9;
37
37
  }
38
38
  .bill-dark .control-container .form .time-radio-group .ant-radio-inner::after {
39
- background: #95FFF9;
39
+ background: #95fff9;
40
40
  }
41
41
  .bill-dark .control-container .form .ant-picker {
42
42
  background: transparent;
@@ -49,19 +49,105 @@
49
49
  }
50
50
  .bill-dark .control-container .form .ant-picker:hover,
51
51
  .bill-dark .control-container .form .ant-picker-focused {
52
- border-color: #95FFF9;
52
+ border-color: #95fff9;
53
53
  }
54
54
  .bill-dark .control-container .form .ant-select-selector {
55
55
  background-color: transparent;
56
56
  color: rgba(255, 255, 255, 0.65);
57
57
  }
58
58
  .bill-dark .control-container .form .ant-select:not(.ant-select-disabled):hover .ant-select-selector {
59
- border-color: #95FFF9;
59
+ border-color: #95fff9;
60
60
  }
61
61
  .bill-dark .control-container .form .ant-btn-primary {
62
62
  color: rgba(0, 0, 0, 0.65);
63
- border-color: #95FFF9;
64
- background: #95FFF9;
63
+ border-color: #95fff9;
64
+ background: #95fff9;
65
+ }
66
+ .blue-body {
67
+ font-size: #fff;
68
+ height: 100%;
69
+ background: #02355b;
70
+ }
71
+ .bludColor {
72
+ background: -webkit-gradient(linear, left bottom, left top, from(#2a55e9), to(#0dbafe)) !important;
73
+ background: linear-gradient(0deg, #2a55e9 0%, #0dbafe 100%) !important;
74
+ -webkit-background-clip: text !important;
75
+ color: transparent !important;
76
+ }
77
+ .blue .control-container {
78
+ background: rgba(3, 177, 252, 0.1) !important;
79
+ border-radius: 2px 2px 2px 2px;
80
+ border: 1px solid rgba(255, 255, 255, 0.2);
81
+ }
82
+ .blue .control-container .header {
83
+ color: #fff;
84
+ border: 1px solid rgba(255, 255, 255, 0.2);
85
+ }
86
+ .blue .control-container .list .ant-checkbox-wrapper {
87
+ color: #0d517c;
88
+ }
89
+ .blue .control-container .list .ant-checkbox-checked .ant-checkbox-inner {
90
+ background-color: #0d517c;
91
+ border-color: #0d517c;
92
+ }
93
+ .blue .control-container .list .ant-checkbox-checked .ant-checkbox-inner::after {
94
+ border-color: #000;
95
+ }
96
+ .blue .control-container .list .ant-checkbox-inner::after {
97
+ border-color: #03b1fc !important;
98
+ }
99
+ .blue .control-container .list .ant-checkbox-wrapper-checked span {
100
+ background: -webkit-gradient(linear, left bottom, left top, from(#2a55e9), to(#0dbafe)) !important;
101
+ background: linear-gradient(0deg, #2a55e9 0%, #0dbafe 100%) !important;
102
+ -webkit-background-clip: text !important;
103
+ color: transparent !important;
104
+ }
105
+ .blue .control-container .list .ant-checkbox-wrapper-checked .ant-checkbox-inner {
106
+ border: 1px solid #0faffb !important;
107
+ }
108
+ .blue .control-container .form .ant-form-item-label > label {
109
+ color: rgba(255, 255, 255, 0.65);
110
+ }
111
+ .blue .control-container .form .time-radio-group .ant-radio-wrapper {
112
+ color: rgba(255, 255, 255, 0.65);
113
+ }
114
+ .blue .control-container .form .time-radio-group .ant-radio-checked .ant-radio-inner {
115
+ border-color: #0d517c;
116
+ }
117
+ .blue .control-container .form .time-radio-group .ant-radio-inner::after {
118
+ background: #0d517c;
119
+ }
120
+ .blue .control-container .form .ant-picker {
121
+ background: transparent;
122
+ }
123
+ .blue .control-container .form .ant-picker-input > input {
124
+ color: rgba(255, 255, 255, 0.65);
125
+ }
126
+ .blue .control-container .form .ant-picker-suffix {
127
+ color: rgba(255, 255, 255, 0.65);
128
+ }
129
+ .blue .control-container .form .ant-picker:hover,
130
+ .blue .control-container .form .ant-picker-focused {
131
+ border-color: #0d517c;
132
+ }
133
+ .blue .control-container .form .ant-select-selector {
134
+ background-color: transparent;
135
+ color: rgba(255, 255, 255, 0.65);
136
+ }
137
+ .blue .control-container .form .ant-select:not(.ant-select-disabled):hover .ant-select-selector {
138
+ border-color: #0d517c;
139
+ }
140
+ .blue .control-container .form .ant-btn-primary {
141
+ color: rgba(0, 0, 0, 0.65);
142
+ border-color: #0d517c;
143
+ background: #0d517c;
144
+ }
145
+ .blue .submit-button {
146
+ background: -webkit-gradient(linear, left bottom, left top, from(#2a55e9), to(#0dbafe)) !important;
147
+ background: linear-gradient(0deg, #2a55e9, #0dbafe) !important;
148
+ border-radius: 4px;
149
+ border: none;
150
+ color: #fff !important;
65
151
  }
66
152
  .vtx-bill-player .bill-tabs {
67
153
  height: 100%;
@@ -72,6 +158,45 @@
72
158
  .vtx-bill-player .bill-tabs .ant-tabs-content-holder .ant-tabs-content {
73
159
  height: 100%;
74
160
  }
161
+ .vtx-bill-player .ridio-list {
162
+ width: 100%;
163
+ height: 100%;
164
+ display: -webkit-box;
165
+ display: -ms-flexbox;
166
+ display: flex;
167
+ -webkit-box-orient: vertical;
168
+ -webkit-box-direction: normal;
169
+ -ms-flex-direction: column;
170
+ flex-direction: column;
171
+ }
172
+ .vtx-bill-player .ridio-list .radio-head {
173
+ width: 100%;
174
+ padding: 12px;
175
+ background-color: rgba(255, 255, 255, 0.2);
176
+ margin-bottom: 12px;
177
+ }
178
+ .vtx-bill-player .ridio-list .radio-head .ant-radio-button-wrapper {
179
+ background-color: rgba(20, 64, 99, 0.4);
180
+ font-size: 14px;
181
+ color: #fff;
182
+ }
183
+ .vtx-bill-player .ridio-list .radio-head .ant-radio-button-checked {
184
+ border: 1px solid #fff;
185
+ background-image: -webkit-gradient(linear, left top, left bottom, from(#2661ea), to(#0faffb));
186
+ background-image: linear-gradient(to bottom, #2661ea, #0faffb);
187
+ }
188
+ .vtx-bill-player .ridio-list .radio-head .ant-radio-button-wrapper-checked span {
189
+ font-size: 14px;
190
+ color: #fff;
191
+ }
192
+ .vtx-bill-player .ridio-list .ridio-body {
193
+ width: 100%;
194
+ padding: 12px;
195
+ background-color: rgba(255, 255, 255, 0.2);
196
+ -webkit-box-flex: 1;
197
+ -ms-flex: 1;
198
+ flex: 1;
199
+ }
75
200
  .vtx-bill-player .player-panel {
76
201
  display: -webkit-box;
77
202
  display: -ms-flexbox;
@@ -113,6 +238,9 @@
113
238
  margin-bottom: 12px;
114
239
  margin-left: 0;
115
240
  }
241
+ .vtx-bill-player .player-panel .control-container .list .ant-checkbox-wrapper span {
242
+ color: #fff;
243
+ }
116
244
  .vtx-bill-player .player-panel .control-container .form {
117
245
  padding: 12px 24px;
118
246
  }
@@ -1,31 +1,30 @@
1
-
2
1
  .bill-dark {
3
2
  .ant-tabs-tab-btn {
4
- color: rgba(255,255,255,0.65);
3
+ color: rgba(255, 255, 255, 0.65);
5
4
  }
6
5
  .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {
7
- color: #95FFF9;
6
+ color: #95fff9;
8
7
  }
9
8
  .ant-tabs-ink-bar {
10
- background: #95FFF9;
9
+ background: #95fff9;
11
10
  }
12
11
  .control-container {
13
- background: rgba(0,59,64,0.3);
12
+ background: rgba(0, 59, 64, 0.3);
14
13
  border-radius: 2px 2px 2px 2px;
15
- border: 1px solid rgba(255,255,255,0.2);
14
+ border: 1px solid rgba(255, 255, 255, 0.2);
16
15
 
17
16
  .header {
18
17
  color: #fff;
19
- border: 1px solid rgba(255,255,255,0.2);
18
+ border: 1px solid rgba(255, 255, 255, 0.2);
20
19
  }
21
20
 
22
21
  .list {
23
22
  .ant-checkbox-wrapper {
24
- color: #95FFF9;
23
+ color: #95fff9;
25
24
  }
26
25
  .ant-checkbox-checked .ant-checkbox-inner {
27
- background-color: #95FFF9;
28
- border-color: #95FFF9;
26
+ background-color: #95fff9;
27
+ border-color: #95fff9;
29
28
  }
30
29
  .ant-checkbox-checked .ant-checkbox-inner::after {
31
30
  border-color: #000;
@@ -34,60 +33,163 @@
34
33
 
35
34
  .form {
36
35
  .ant-form-item-label > label {
37
- color: rgba(255,255,255,0.65);
36
+ color: rgba(255, 255, 255, 0.65);
38
37
  }
39
38
  .time-radio-group {
40
39
  .ant-radio-wrapper {
41
- color: rgba(255,255,255,0.65);
40
+ color: rgba(255, 255, 255, 0.65);
42
41
  }
43
42
  .ant-radio-checked .ant-radio-inner {
44
- border-color: #95FFF9;
43
+ border-color: #95fff9;
45
44
  }
46
45
  .ant-radio-inner::after {
47
- background: #95FFF9;
46
+ background: #95fff9;
48
47
  }
49
48
  }
50
49
  .ant-picker {
51
50
  background: transparent;
52
51
  }
53
52
  .ant-picker-input > input {
54
- color: rgba(255,255,255,0.65);
53
+ color: rgba(255, 255, 255, 0.65);
55
54
  }
56
55
  .ant-picker-suffix {
57
- color: rgba(255,255,255,0.65);
56
+ color: rgba(255, 255, 255, 0.65);
58
57
  }
59
- .ant-picker:hover,.ant-picker-focused {
60
- border-color: #95FFF9;
58
+ .ant-picker:hover,
59
+ .ant-picker-focused {
60
+ border-color: #95fff9;
61
61
  }
62
62
  .ant-select-selector {
63
63
  background-color: transparent;
64
- color: rgba(255,255,255,0.65);
64
+ color: rgba(255, 255, 255, 0.65);
65
65
  }
66
66
  .ant-select:not(.ant-select-disabled):hover .ant-select-selector {
67
- border-color: #95FFF9;
67
+ border-color: #95fff9;
68
68
  }
69
69
  .ant-btn-primary {
70
- color: rgba(0,0,0,0.65);
71
- border-color: #95FFF9;
72
- background: #95FFF9;
70
+ color: rgba(0, 0, 0, 0.65);
71
+ border-color: #95fff9;
72
+ background: #95fff9;
73
73
  }
74
74
 
75
75
  // 日历面板
76
76
  .date-dark {
77
77
  :global {
78
-
79
78
  }
80
79
  }
81
80
  // 下拉
82
81
  .select-dark {
83
82
  :global {
84
-
85
83
  }
86
84
  }
87
85
  }
88
86
  }
89
87
  }
88
+ .blue-body {
89
+ font-size: #fff;
90
+ height: 100%;
91
+ background: #02355b;
92
+ }
93
+ .bludColor {
94
+ background: linear-gradient(0deg, #2a55e9 0%, #0dbafe 100%) !important;
95
+ -webkit-background-clip: text !important;
96
+ color: transparent !important;
97
+ }
98
+ .blue {
99
+ .control-container {
100
+ background: rgba(3, 177, 252, 0.1) !important;
101
+ border-radius: 2px 2px 2px 2px;
102
+ border: 1px solid rgba(255, 255, 255, 0.2);
103
+
104
+ .header {
105
+ color: #fff;
106
+ border: 1px solid rgba(255, 255, 255, 0.2);
107
+ }
90
108
 
109
+ .list {
110
+ .ant-checkbox-wrapper {
111
+ color: #0d517c;
112
+ }
113
+ .ant-checkbox-checked .ant-checkbox-inner {
114
+ background-color: #0d517c;
115
+ border-color: #0d517c;
116
+ }
117
+ .ant-checkbox-checked .ant-checkbox-inner::after {
118
+ border-color: #000;
119
+ }
120
+ .ant-checkbox-inner::after {
121
+ border-color: #03b1fc !important;
122
+ }
123
+ .ant-checkbox-wrapper-checked {
124
+ span {
125
+ .bludColor();
126
+ }
127
+ .ant-checkbox-inner {
128
+ border: 1px solid #0faffb !important;
129
+ }
130
+ }
131
+ }
132
+
133
+ .form {
134
+ .ant-form-item-label > label {
135
+ color: rgba(255, 255, 255, 0.65);
136
+ }
137
+ .time-radio-group {
138
+ .ant-radio-wrapper {
139
+ color: rgba(255, 255, 255, 0.65);
140
+ }
141
+ .ant-radio-checked .ant-radio-inner {
142
+ border-color: #0d517c;
143
+ }
144
+ .ant-radio-inner::after {
145
+ background: #0d517c;
146
+ }
147
+ }
148
+ .ant-picker {
149
+ background: transparent;
150
+ }
151
+ .ant-picker-input > input {
152
+ color: rgba(255, 255, 255, 0.65);
153
+ }
154
+ .ant-picker-suffix {
155
+ color: rgba(255, 255, 255, 0.65);
156
+ }
157
+ .ant-picker:hover,
158
+ .ant-picker-focused {
159
+ border-color: #0d517c;
160
+ }
161
+ .ant-select-selector {
162
+ background-color: transparent;
163
+ color: rgba(255, 255, 255, 0.65);
164
+ }
165
+ .ant-select:not(.ant-select-disabled):hover .ant-select-selector {
166
+ border-color: #0d517c;
167
+ }
168
+ .ant-btn-primary {
169
+ color: rgba(0, 0, 0, 0.65);
170
+ border-color: #0d517c;
171
+ background: #0d517c;
172
+ }
173
+
174
+ // 日历面板
175
+ .date-dark {
176
+ :global {
177
+ }
178
+ }
179
+ // 下拉
180
+ .select-dark {
181
+ :global {
182
+ }
183
+ }
184
+ }
185
+ }
186
+ .submit-button {
187
+ background: linear-gradient(0deg, #2a55e9, #0dbafe) !important;
188
+ border-radius: 4px;
189
+ border: none;
190
+ color: #fff !important;
191
+ }
192
+ }
91
193
 
92
194
  .vtx-bill-player {
93
195
  .bill-tabs {
@@ -101,8 +203,39 @@
101
203
  }
102
204
  }
103
205
  }
104
-
105
-
206
+ .ridio-list {
207
+ width: 100%;
208
+ height: 100%;
209
+ display: flex;
210
+ flex-direction: column;
211
+ .radio-head {
212
+ width: 100%;
213
+ padding: 12px;
214
+ background-color: rgba(255, 255, 255, 0.2);
215
+ margin-bottom: 12px;
216
+ .ant-radio-button-wrapper {
217
+ background-color: rgba(20, 64, 99, 0.4);
218
+ font-size: 14px;
219
+ color: #fff;
220
+ }
221
+ .ant-radio-button-checked {
222
+ border: 1px solid #fff;
223
+ background-image: linear-gradient(to bottom, #2661ea, #0faffb);
224
+ }
225
+ .ant-radio-button-wrapper-checked {
226
+ span {
227
+ font-size: 14px;
228
+ color: #fff;
229
+ }
230
+ }
231
+ }
232
+ .ridio-body {
233
+ width: 100%;
234
+ padding: 12px;
235
+ background-color: rgba(255, 255, 255, 0.2);
236
+ flex: 1;
237
+ }
238
+ }
106
239
 
107
240
  .player-panel {
108
241
  display: flex;
@@ -135,6 +268,9 @@
135
268
  .ant-checkbox-wrapper {
136
269
  margin-bottom: 12px;
137
270
  margin-left: 0;
271
+ span {
272
+ color: #fff;
273
+ }
138
274
  }
139
275
  }
140
276
 
@@ -149,5 +285,4 @@
149
285
  }
150
286
  }
151
287
  }
152
-
153
288
  }
@@ -20,6 +20,8 @@ interface HistoryControlProps {
20
20
  info?: Array<Array<string>>;
21
21
  /** 是否暗色系 */
22
22
  isDark?: boolean;
23
+ /** 主题风格 */
24
+ theme?: 'blue' | string;
23
25
  }
24
26
  /**
25
27
  * 历史视频控制器
@@ -84,7 +84,8 @@ var HistoryControl = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
84
84
  _props$info = props.info,
85
85
  info = _props$info === void 0 ? [] : _props$info,
86
86
  _props$isDark = props.isDark,
87
- isDark = _props$isDark === void 0 ? false : _props$isDark;
87
+ isDark = _props$isDark === void 0 ? false : _props$isDark,
88
+ theme = props.theme;
88
89
  var segmentsRef = (0, _react.useRef)(null);
89
90
 
90
91
  var _useRequest = (0, _ahooks.useRequest)(_api.getHistoryUrl, {
@@ -348,7 +349,7 @@ var HistoryControl = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
348
349
  console.log('showInfo', showInfo);
349
350
  console.log('info', info);
350
351
  return (0, _jsxRuntime.jsxs)("div", Object.assign({
351
- className: "vtx-history-control".concat(isDark ? ' history-dark' : ''),
352
+ className: "vtx-history-control".concat(isDark ? ' history-dark' : '', " ").concat(theme),
352
353
  style: {
353
354
  width: width,
354
355
  height: height,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["DEFAULT_PLAY_PARAMS","index","url","enableAgent","startTime","endTime","channelNum","deviceId","deviceCode","deviceIp","devicePort","streamType","HistoryControl","forwardRef","props","ref","width","height","onExpandChange","onTimeChange","showInfo","onVideoClose","info","isDark","segmentsRef","useRef","useRequest","getHistoryUrl","manual","runAsync","loading","getPlaybackUrlSingle","GetHKV2Url","useCollapse","defaultExpanded","getCollapseProps","getToggleProps","isExpanded","useSetState","expand","name","tableData","segmentData","list","totalUrl","timeLinePosition","playParams","state","setState","useImperativeHandle","load","channel","JSON","stringify","useEffect","then","result","_a","_b","_c","_d","Array","isArray","getUrlTableData","start","moment","beginTime","startOf","end","endOf","map","item","Object","assign","deviceName","channelName","totalTimeUrl","params","hkType","code","tenantId","getUrlParam","data","playbackUrl","message","handleExpand","handleClose","undefined","columns","title","dataIndex","key","render","_","record","active","_jsx","Button","className","onClick","children","_jsxs","_Fragment","VideoCloseIcon","VideoPlayIcon","handleTimeChange","time","speed","progress","diff","getRef","current","console","log","style","backgroundColor","PlayerHeader","onClose","Spin","spinning","size","HistoryPlayer","controlBottom","length","src","collapseBtnImg","alt","transform","TimeVerticalLine","history","getSegments","TimePositionIcon","left","TimeLine","Table","dataSource","scroll","y","pagination","rowClassName","Space","align","Tooltip","FoldIcon","ExpandIcon","displayName","getSplitLines","step","i","element","push","total","itemStart","itemEnd","itemTotal","ONEDAY_MILL","mouse","useMouse","elementX","elementY","elementW","elementH","visible","percent","valueOf","format","TimeFormat","flag","playStart","playEnd","now","begin","playUrl"],"sources":["history-control/index.js"],"sourcesContent":["import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { forwardRef, useEffect, useImperativeHandle, useRef } from 'react';\nimport useCollapse from 'react-collapsed';\nimport { getHistoryUrl, getPlaybackUrlSingle } from '../api';\nimport { PlayerHeader } from '../controls';\nimport HistoryPlayer from '../history-player';\nimport { ExpandIcon, FoldIcon, TimePositionIcon, VideoCloseIcon, VideoPlayIcon } from '../icons';\nimport { TimeFormat, getUrlTableData, getUrlParam } from '../utils';\nimport { useMouse, useRequest, useSetState } from 'ahooks';\n// import { Button, Space, Table, Tooltip } from 'antd';\nimport Button from 'antd/lib/button';\nimport message from 'antd/lib/message';\nimport Space from 'antd/lib/space';\nimport Spin from 'antd/lib/spin';\nimport Table from 'antd/lib/table';\nimport Tooltip from 'antd/lib/tooltip';\nimport moment from 'moment';\nimport collapseBtnImg from './images/collapse.png';\n/** 默认播放器参数 */\nconst DEFAULT_PLAY_PARAMS = {\n index: -1,\n url: '',\n enableAgent: false,\n startTime: '',\n endTime: '',\n channelNum: '',\n deviceId: '',\n deviceCode: '',\n deviceIp: '',\n devicePort: '',\n streamType: '0'\n};\n/**\n * 历史视频控制器\n */\nexport const HistoryControl = forwardRef((props, ref) => {\n const { width = '100%', height = '100%', onExpandChange, onTimeChange, showInfo = false, onVideoClose, info = [], isDark = false } = props;\n const segmentsRef = useRef(null);\n const { runAsync, loading } = useRequest(getHistoryUrl, {\n manual: true,\n });\n const { runAsync: GetHKV2Url } = useRequest(getPlaybackUrlSingle, {\n manual: true,\n });\n const { getCollapseProps, getToggleProps, isExpanded } = useCollapse({\n defaultExpanded: true, // 默认展开\n });\n const [state, setState] = useSetState({\n expand: true,\n name: '',\n tableData: [],\n segmentData: { list: [] },\n totalUrl: '',\n timeLinePosition: -1,\n playParams: DEFAULT_PLAY_PARAMS,\n });\n useImperativeHandle(ref, () => {\n return {\n load: (channel) => {\n if (JSON.stringify(channel) !== JSON.stringify(state.channel)) {\n setState({ channel, timeLinePosition: -1 });\n }\n },\n };\n });\n useEffect(() => {\n if (state.channel) {\n runAsync(state.channel).then((result) => {\n var _a, _b, _c, _d;\n // 如果没有list,只有url,则直接播放url\n if (Array.isArray(result === null || result === void 0 ? void 0 : result.list)) {\n const tableData = getUrlTableData(result);\n const segmentData = {\n list: result.list,\n start: moment((_a = state.channel) === null || _a === void 0 ? void 0 : _a.beginTime).startOf('day'),\n end: moment((_b = state.channel) === null || _b === void 0 ? void 0 : _b.endTime).endOf('day'),\n };\n setState({\n tableData: tableData.map(item => (Object.assign(Object.assign({}, item), { enableAgent: result.enableAgent || false }))),\n segmentData,\n name: `${result.deviceName}-${result.channelName}`,\n totalUrl: result.totalTimeUrl,\n });\n }\n else if (result.totalTimeUrl) {\n const params = {\n tableData: [],\n segmentData: { list: [] },\n name: `${result.deviceName}-${result.channelName}`,\n totalUrl: result.totalTimeUrl,\n playParams: {\n index: 0,\n enableAgent: (result === null || result === void 0 ? void 0 : result.enableAgent) || false,\n url: result.totalTimeUrl,\n startTime: ((_c = state.channel) === null || _c === void 0 ? void 0 : _c.beginTime) || '',\n endTime: ((_d = state.channel) === null || _d === void 0 ? void 0 : _d.endTime) || '',\n channelNum: result.channelNum,\n deviceCode: result.deviceCode,\n deviceIp: result.deviceIp,\n deviceId: result.deviceId,\n devicePort: result.devicePort,\n streamType: result.streamType\n },\n };\n if (result.hkType === 'HK_CAR_CLOUD_V2') {\n GetHKV2Url({\n code: result.code,\n beginTime: result.beginTime,\n endTime: result.endTime,\n deviceId: result.deviceId,\n channelNum: result.channelNum,\n tenantId: getUrlParam('tenantId'),\n }).then((data) => {\n params.playParams.url = data.playbackUrl;\n setState(params);\n });\n }\n else {\n setState(params);\n }\n }\n else {\n message.info('未查询到视频');\n setState({\n tableData: [],\n segmentData: { list: [] },\n name: ``,\n playParams: DEFAULT_PLAY_PARAMS,\n });\n }\n });\n return () => {\n setState({\n tableData: [],\n segmentData: { list: [] },\n name: ``,\n playParams: DEFAULT_PLAY_PARAMS,\n });\n };\n }\n }, [state.channel]);\n const handleExpand = () => {\n onExpandChange && onExpandChange(!state.expand);\n setState({ expand: !state.expand });\n };\n const handleClose = () => {\n setState({ channel: undefined, timeLinePosition: -1 });\n onVideoClose && onVideoClose();\n };\n const columns = [\n {\n title: '序号',\n dataIndex: 'index',\n width: 60,\n },\n {\n title: '播放视频',\n key: 'play',\n width: 90,\n render: (_, record, index) => {\n const active = state.playParams.index === index;\n return (_jsx(Button, Object.assign({ className: `play-btn ${active ? 'active' : ''}`, onClick: () => {\n if (active) {\n setState({\n playParams: DEFAULT_PLAY_PARAMS,\n timeLinePosition: -1,\n });\n onVideoClose && onVideoClose();\n }\n else {\n const url = record.url || state.totalUrl;\n const params = {\n index,\n url,\n enableAgent: record.enableAgent || false,\n startTime: record.beginTime,\n endTime: record.endTime,\n channelNum: record.channelNum,\n deviceCode: record.deviceCode,\n streamType: record.streamType,\n deviceIp: record.deviceIp,\n devicePort: record.devicePort,\n deviceId: record.deviceId\n };\n if (record.hkType === 'HK_CAR_CLOUD_V2') {\n GetHKV2Url({\n code: record.code,\n beginTime: record.beginTime,\n endTime: record.endTime,\n deviceId: record.deviceId,\n channelNum: record.channelNum,\n tenantId: getUrlParam('tenantId'),\n }).then((data) => {\n setState({\n playParams: Object.assign(Object.assign({}, params), { url: data.playbackUrl })\n });\n });\n }\n else {\n setState({\n playParams: params\n });\n }\n }\n } }, { children: active ? (_jsxs(_Fragment, { children: [_jsx(VideoCloseIcon, { active: true }), \"\\u5173\\u95ED\"] })) : (_jsxs(_Fragment, { children: [_jsx(VideoPlayIcon, {}), \"\\u64AD\\u653E\"] })) })));\n },\n },\n // {\n // title: '设备名称',\n // dataIndex: 'deviceName',\n // },\n // {\n // title: '通道名称',\n // dataIndex: 'channelName',\n // },\n {\n title: '开始时间',\n dataIndex: 'beginTime',\n width: 170,\n },\n {\n title: '结束时间',\n dataIndex: 'endTime',\n width: 170,\n },\n {\n title: '持续时间',\n width: 120,\n dataIndex: 'duration',\n },\n {\n title: '视频大小',\n width: 100,\n dataIndex: 'size',\n },\n ];\n const handleTimeChange = (time, speed) => {\n var _a;\n onTimeChange && onTimeChange(time, speed);\n // 计算播放时间占起始时间当日的百分比\n const progress = (moment(time).diff(moment((_a = state.channel) === null || _a === void 0 ? void 0 : _a.beginTime).startOf('day'), 'seconds') /\n (24 * 60 * 60)) *\n 100;\n setState({ timeLinePosition: progress });\n };\n const getRef = () => {\n return segmentsRef.current;\n };\n console.log('state.playParams,', state.playParams);\n console.log('isExpanded', isExpanded);\n console.log('showInfo', showInfo);\n console.log('info', info);\n return (_jsxs(\"div\", Object.assign({ className: `vtx-history-control${isDark ? ' history-dark' : ''}`, style: { width, height, backgroundColor: isDark ? 'rgba(0,59,64,0.3)' : '#2b3d51' } }, { children: [state.name && _jsx(PlayerHeader, { name: state.name, onClose: handleClose }), _jsx(Spin, { spinning: loading, className: \"vtx-spin\", size: \"large\" }), _jsx(\"div\", Object.assign({ className: \"player-container\" }, { children: state.playParams.url && (_jsx(HistoryPlayer, Object.assign({}, state.playParams, { controlBottom: isExpanded ? 235 : 0, onTimeChange: handleTimeChange, showInfo: showInfo, info: info }))) })), state.tableData && state.tableData.length > 0 && (_jsxs(\"div\", Object.assign({ className: \"collapse-controls\" }, { children: [_jsx(\"div\", Object.assign({ className: \"action-bar\" }, getToggleProps({}), { children: _jsx(\"img\", { src: collapseBtnImg, alt: \"\", style: { transform: `rotate(${isExpanded ? 180 : 0}deg)` } }) })), _jsx(\"section\", Object.assign({ className: \"collapse-panel-container\" }, getCollapseProps(), { children: _jsxs(\"div\", Object.assign({ className: \"panels\" }, { children: [_jsxs(\"div\", Object.assign({ className: \"time-panel\" }, { children: [_jsxs(\"div\", Object.assign({ className: \"segments\", ref: segmentsRef }, { children: [_jsx(TimeVerticalLine, { getRef: getRef, history: state.segmentData, totalUrl: state.totalUrl, setState: setState }), getSegments(state.segmentData)] })), state.timeLinePosition >= 0 && (_jsx(TimePositionIcon, { className: \"time-line-icon\", style: { left: `${state.timeLinePosition}%` } })), _jsx(TimeLine, {})] })), _jsx(\"div\", Object.assign({ className: \"urls-panel\" }, { children: _jsx(Table, { className: \"history-url-table\", columns: columns, dataSource: state.tableData, scroll: { y: 100 }, pagination: false, rowClassName: (_, index) => index === state.playParams.index ? 'active' : '' }) }))] })) }))] }))), _jsx(\"div\", Object.assign({ className: \"bottom-controls\" }, { children: _jsx(Space, Object.assign({ className: \"left\", size: 12, align: \"center\" }, { children: onExpandChange && (_jsx(Tooltip, Object.assign({ title: state.expand ? '收起' : '展开' }, { children: _jsx(\"div\", Object.assign({ onClick: handleExpand }, { children: state.expand ? _jsx(FoldIcon, {}) : _jsx(ExpandIcon, {}) })) }))) })) }))] })));\n});\nHistoryControl.displayName = 'HistoryControl';\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 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.map((i) => {\n const itemStart = moment(i.beginTime).diff(startTime, 'seconds') > 0 ? moment(i.beginTime) : startTime;\n const itemEnd = moment(i.endTime);\n const itemTotal = itemEnd.diff(itemStart, 'seconds'); // 分段总时间\n const width = (itemTotal / total) * 100; // 分段时间占总时间百分比\n const left = (itemStart.diff(startTime, 'seconds') / total) * 100; // 分段其实时间\n return (_jsx(\"div\", { className: \"segment\", style: { width: `${width}%`, left: `${left < 0 ? 0 : left}%` } }, i.beginTime));\n });\n return result;\n};\nconst ONEDAY_MILL = 24 * 60 * 60 * 1000;\nconst TimeVerticalLine = ({ getRef, history, totalUrl, setState, }) => {\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, url, 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 const onClick = () => {\n const playUrl = url || totalUrl;\n setState({\n playParams: {\n index,\n url: playUrl,\n startTime: playStart,\n endTime: playEnd,\n },\n });\n };\n return visible ? (flag ? (_jsx(Tooltip, Object.assign({ title: time }, { children: _jsx(\"div\", { className: \"timeline\", style: { left: elementX }, onClick: onClick }) }))) : (_jsx(\"div\", { className: \"timeline\", style: { left: elementX }, onClick: onClick }))) : (_jsx(_Fragment, {}));\n};\nexport default HistoryControl;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["DEFAULT_PLAY_PARAMS","index","url","enableAgent","startTime","endTime","channelNum","deviceId","deviceCode","deviceIp","devicePort","streamType","HistoryControl","forwardRef","props","ref","width","height","onExpandChange","onTimeChange","showInfo","onVideoClose","info","isDark","theme","segmentsRef","useRef","useRequest","getHistoryUrl","manual","runAsync","loading","getPlaybackUrlSingle","GetHKV2Url","useCollapse","defaultExpanded","getCollapseProps","getToggleProps","isExpanded","useSetState","expand","name","tableData","segmentData","list","totalUrl","timeLinePosition","playParams","state","setState","useImperativeHandle","load","channel","JSON","stringify","useEffect","then","result","_a","_b","_c","_d","Array","isArray","getUrlTableData","start","moment","beginTime","startOf","end","endOf","map","item","Object","assign","deviceName","channelName","totalTimeUrl","params","hkType","code","tenantId","getUrlParam","data","playbackUrl","message","handleExpand","handleClose","undefined","columns","title","dataIndex","key","render","_","record","active","_jsx","Button","className","onClick","children","_jsxs","_Fragment","VideoCloseIcon","VideoPlayIcon","handleTimeChange","time","speed","progress","diff","getRef","current","console","log","style","backgroundColor","PlayerHeader","onClose","Spin","spinning","size","HistoryPlayer","controlBottom","length","src","collapseBtnImg","alt","transform","TimeVerticalLine","history","getSegments","TimePositionIcon","left","TimeLine","Table","dataSource","scroll","y","pagination","rowClassName","Space","align","Tooltip","FoldIcon","ExpandIcon","displayName","getSplitLines","step","i","element","push","total","itemStart","itemEnd","itemTotal","ONEDAY_MILL","mouse","useMouse","elementX","elementY","elementW","elementH","visible","percent","valueOf","format","TimeFormat","flag","playStart","playEnd","now","begin","playUrl"],"sources":["history-control/index.js"],"sourcesContent":["import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { forwardRef, useEffect, useImperativeHandle, useRef } from 'react';\nimport useCollapse from 'react-collapsed';\nimport { getHistoryUrl, getPlaybackUrlSingle } from '../api';\nimport { PlayerHeader } from '../controls';\nimport HistoryPlayer from '../history-player';\nimport { ExpandIcon, FoldIcon, TimePositionIcon, VideoCloseIcon, VideoPlayIcon } from '../icons';\nimport { TimeFormat, getUrlTableData, getUrlParam } from '../utils';\nimport { useMouse, useRequest, useSetState } from 'ahooks';\n// import { Button, Space, Table, Tooltip } from 'antd';\nimport Button from 'antd/lib/button';\nimport message from 'antd/lib/message';\nimport Space from 'antd/lib/space';\nimport Spin from 'antd/lib/spin';\nimport Table from 'antd/lib/table';\nimport Tooltip from 'antd/lib/tooltip';\nimport moment from 'moment';\nimport collapseBtnImg from './images/collapse.png';\n/** 默认播放器参数 */\nconst DEFAULT_PLAY_PARAMS = {\n index: -1,\n url: '',\n enableAgent: false,\n startTime: '',\n endTime: '',\n channelNum: '',\n deviceId: '',\n deviceCode: '',\n deviceIp: '',\n devicePort: '',\n streamType: '0'\n};\n/**\n * 历史视频控制器\n */\nexport const HistoryControl = forwardRef((props, ref) => {\n const { width = '100%', height = '100%', onExpandChange, onTimeChange, showInfo = false, onVideoClose, info = [], isDark = false, theme } = props;\n const segmentsRef = useRef(null);\n const { runAsync, loading } = useRequest(getHistoryUrl, {\n manual: true,\n });\n const { runAsync: GetHKV2Url } = useRequest(getPlaybackUrlSingle, {\n manual: true,\n });\n const { getCollapseProps, getToggleProps, isExpanded } = useCollapse({\n defaultExpanded: true, // 默认展开\n });\n const [state, setState] = useSetState({\n expand: true,\n name: '',\n tableData: [],\n segmentData: { list: [] },\n totalUrl: '',\n timeLinePosition: -1,\n playParams: DEFAULT_PLAY_PARAMS,\n });\n useImperativeHandle(ref, () => {\n return {\n load: (channel) => {\n if (JSON.stringify(channel) !== JSON.stringify(state.channel)) {\n setState({ channel, timeLinePosition: -1 });\n }\n },\n };\n });\n useEffect(() => {\n if (state.channel) {\n runAsync(state.channel).then((result) => {\n var _a, _b, _c, _d;\n // 如果没有list,只有url,则直接播放url\n if (Array.isArray(result === null || result === void 0 ? void 0 : result.list)) {\n const tableData = getUrlTableData(result);\n const segmentData = {\n list: result.list,\n start: moment((_a = state.channel) === null || _a === void 0 ? void 0 : _a.beginTime).startOf('day'),\n end: moment((_b = state.channel) === null || _b === void 0 ? void 0 : _b.endTime).endOf('day'),\n };\n setState({\n tableData: tableData.map(item => (Object.assign(Object.assign({}, item), { enableAgent: result.enableAgent || false }))),\n segmentData,\n name: `${result.deviceName}-${result.channelName}`,\n totalUrl: result.totalTimeUrl,\n });\n }\n else if (result.totalTimeUrl) {\n const params = {\n tableData: [],\n segmentData: { list: [] },\n name: `${result.deviceName}-${result.channelName}`,\n totalUrl: result.totalTimeUrl,\n playParams: {\n index: 0,\n enableAgent: (result === null || result === void 0 ? void 0 : result.enableAgent) || false,\n url: result.totalTimeUrl,\n startTime: ((_c = state.channel) === null || _c === void 0 ? void 0 : _c.beginTime) || '',\n endTime: ((_d = state.channel) === null || _d === void 0 ? void 0 : _d.endTime) || '',\n channelNum: result.channelNum,\n deviceCode: result.deviceCode,\n deviceIp: result.deviceIp,\n deviceId: result.deviceId,\n devicePort: result.devicePort,\n streamType: result.streamType\n },\n };\n if (result.hkType === 'HK_CAR_CLOUD_V2') {\n GetHKV2Url({\n code: result.code,\n beginTime: result.beginTime,\n endTime: result.endTime,\n deviceId: result.deviceId,\n channelNum: result.channelNum,\n tenantId: getUrlParam('tenantId'),\n }).then((data) => {\n params.playParams.url = data.playbackUrl;\n setState(params);\n });\n }\n else {\n setState(params);\n }\n }\n else {\n message.info('未查询到视频');\n setState({\n tableData: [],\n segmentData: { list: [] },\n name: ``,\n playParams: DEFAULT_PLAY_PARAMS,\n });\n }\n });\n return () => {\n setState({\n tableData: [],\n segmentData: { list: [] },\n name: ``,\n playParams: DEFAULT_PLAY_PARAMS,\n });\n };\n }\n }, [state.channel]);\n const handleExpand = () => {\n onExpandChange && onExpandChange(!state.expand);\n setState({ expand: !state.expand });\n };\n const handleClose = () => {\n setState({ channel: undefined, timeLinePosition: -1 });\n onVideoClose && onVideoClose();\n };\n const columns = [\n {\n title: '序号',\n dataIndex: 'index',\n width: 60,\n },\n {\n title: '播放视频',\n key: 'play',\n width: 90,\n render: (_, record, index) => {\n const active = state.playParams.index === index;\n return (_jsx(Button, Object.assign({ className: `play-btn ${active ? 'active' : ''}`, onClick: () => {\n if (active) {\n setState({\n playParams: DEFAULT_PLAY_PARAMS,\n timeLinePosition: -1,\n });\n onVideoClose && onVideoClose();\n }\n else {\n const url = record.url || state.totalUrl;\n const params = {\n index,\n url,\n enableAgent: record.enableAgent || false,\n startTime: record.beginTime,\n endTime: record.endTime,\n channelNum: record.channelNum,\n deviceCode: record.deviceCode,\n streamType: record.streamType,\n deviceIp: record.deviceIp,\n devicePort: record.devicePort,\n deviceId: record.deviceId\n };\n if (record.hkType === 'HK_CAR_CLOUD_V2') {\n GetHKV2Url({\n code: record.code,\n beginTime: record.beginTime,\n endTime: record.endTime,\n deviceId: record.deviceId,\n channelNum: record.channelNum,\n tenantId: getUrlParam('tenantId'),\n }).then((data) => {\n setState({\n playParams: Object.assign(Object.assign({}, params), { url: data.playbackUrl })\n });\n });\n }\n else {\n setState({\n playParams: params\n });\n }\n }\n } }, { children: active ? (_jsxs(_Fragment, { children: [_jsx(VideoCloseIcon, { active: true }), \"\\u5173\\u95ED\"] })) : (_jsxs(_Fragment, { children: [_jsx(VideoPlayIcon, {}), \"\\u64AD\\u653E\"] })) })));\n },\n },\n // {\n // title: '设备名称',\n // dataIndex: 'deviceName',\n // },\n // {\n // title: '通道名称',\n // dataIndex: 'channelName',\n // },\n {\n title: '开始时间',\n dataIndex: 'beginTime',\n width: 170,\n },\n {\n title: '结束时间',\n dataIndex: 'endTime',\n width: 170,\n },\n {\n title: '持续时间',\n width: 120,\n dataIndex: 'duration',\n },\n {\n title: '视频大小',\n width: 100,\n dataIndex: 'size',\n },\n ];\n const handleTimeChange = (time, speed) => {\n var _a;\n onTimeChange && onTimeChange(time, speed);\n // 计算播放时间占起始时间当日的百分比\n const progress = (moment(time).diff(moment((_a = state.channel) === null || _a === void 0 ? void 0 : _a.beginTime).startOf('day'), 'seconds') /\n (24 * 60 * 60)) *\n 100;\n setState({ timeLinePosition: progress });\n };\n const getRef = () => {\n return segmentsRef.current;\n };\n console.log('state.playParams,', state.playParams);\n console.log('isExpanded', isExpanded);\n console.log('showInfo', showInfo);\n console.log('info', info);\n return (_jsxs(\"div\", Object.assign({ className: `vtx-history-control${isDark ? ' history-dark' : ''} ${theme}`, style: { width, height, backgroundColor: isDark ? 'rgba(0,59,64,0.3)' : '#2b3d51' } }, { children: [state.name && _jsx(PlayerHeader, { name: state.name, onClose: handleClose }), _jsx(Spin, { spinning: loading, className: \"vtx-spin\", size: \"large\" }), _jsx(\"div\", Object.assign({ className: \"player-container\" }, { children: state.playParams.url && (_jsx(HistoryPlayer, Object.assign({}, state.playParams, { controlBottom: isExpanded ? 235 : 0, onTimeChange: handleTimeChange, showInfo: showInfo, info: info }))) })), state.tableData && state.tableData.length > 0 && (_jsxs(\"div\", Object.assign({ className: \"collapse-controls\" }, { children: [_jsx(\"div\", Object.assign({ className: \"action-bar\" }, getToggleProps({}), { children: _jsx(\"img\", { src: collapseBtnImg, alt: \"\", style: { transform: `rotate(${isExpanded ? 180 : 0}deg)` } }) })), _jsx(\"section\", Object.assign({ className: \"collapse-panel-container\" }, getCollapseProps(), { children: _jsxs(\"div\", Object.assign({ className: \"panels\" }, { children: [_jsxs(\"div\", Object.assign({ className: \"time-panel\" }, { children: [_jsxs(\"div\", Object.assign({ className: \"segments\", ref: segmentsRef }, { children: [_jsx(TimeVerticalLine, { getRef: getRef, history: state.segmentData, totalUrl: state.totalUrl, setState: setState }), getSegments(state.segmentData)] })), state.timeLinePosition >= 0 && (_jsx(TimePositionIcon, { className: \"time-line-icon\", style: { left: `${state.timeLinePosition}%` } })), _jsx(TimeLine, {})] })), _jsx(\"div\", Object.assign({ className: \"urls-panel\" }, { children: _jsx(Table, { className: \"history-url-table\", columns: columns, dataSource: state.tableData, scroll: { y: 100 }, pagination: false, rowClassName: (_, index) => index === state.playParams.index ? 'active' : '' }) }))] })) }))] }))), _jsx(\"div\", Object.assign({ className: \"bottom-controls\" }, { children: _jsx(Space, Object.assign({ className: \"left\", size: 12, align: \"center\" }, { children: onExpandChange && (_jsx(Tooltip, Object.assign({ title: state.expand ? '收起' : '展开' }, { children: _jsx(\"div\", Object.assign({ onClick: handleExpand }, { children: state.expand ? _jsx(FoldIcon, {}) : _jsx(ExpandIcon, {}) })) }))) })) }))] })));\n});\nHistoryControl.displayName = 'HistoryControl';\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 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.map((i) => {\n const itemStart = moment(i.beginTime).diff(startTime, 'seconds') > 0 ? moment(i.beginTime) : startTime;\n const itemEnd = moment(i.endTime);\n const itemTotal = itemEnd.diff(itemStart, 'seconds'); // 分段总时间\n const width = (itemTotal / total) * 100; // 分段时间占总时间百分比\n const left = (itemStart.diff(startTime, 'seconds') / total) * 100; // 分段其实时间\n return (_jsx(\"div\", { className: \"segment\", style: { width: `${width}%`, left: `${left < 0 ? 0 : left}%` } }, i.beginTime));\n });\n return result;\n};\nconst ONEDAY_MILL = 24 * 60 * 60 * 1000;\nconst TimeVerticalLine = ({ getRef, history, totalUrl, setState, }) => {\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, url, 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 const onClick = () => {\n const playUrl = url || totalUrl;\n setState({\n playParams: {\n index,\n url: playUrl,\n startTime: playStart,\n endTime: playEnd,\n },\n });\n };\n return visible ? (flag ? (_jsx(Tooltip, Object.assign({ title: time }, { children: _jsx(\"div\", { className: \"timeline\", style: { left: elementX }, onClick: onClick }) }))) : (_jsx(\"div\", { className: \"timeline\", style: { left: elementX }, onClick: onClick }))) : (_jsx(_Fragment, {}));\n};\nexport default HistoryControl;\n"],"mappings":"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"}
@@ -205,3 +205,18 @@
205
205
  color: #177ddc;
206
206
  border-color: #177ddc;
207
207
  }
208
+ .blue .bottom-controls {
209
+ background: rgba(3, 177, 252, 0.1) !important;
210
+ }
211
+ .blue .vtx-history-control {
212
+ background: rgba(3, 177, 252, 0.1);
213
+ }
214
+ .blue .vtx-player-header {
215
+ background: rgba(3, 177, 252, 0.1);
216
+ }
217
+ .blue .collapse-controls {
218
+ background: #0e3656;
219
+ }
220
+ .blue .collapse-controls .panels {
221
+ background: rgba(3, 177, 252, 0.1) !important;
222
+ }
@@ -1,6 +1,6 @@
1
1
  .history-dark {
2
2
  .bottom-controls {
3
- background-color: rgba(0,59,64,0.3) !important;
3
+ background-color: rgba(0, 59, 64, 0.3) !important;
4
4
  }
5
5
  }
6
6
 
@@ -41,7 +41,7 @@
41
41
  padding: 12px 20px;
42
42
  margin: 0 14px 14px;
43
43
  background-color: #141414;
44
- border: 1px solid rgba(255 ,255, 255,.2);
44
+ border: 1px solid rgba(255, 255, 255, 0.2);
45
45
  border-radius: 2px;
46
46
 
47
47
  .time-panel {
@@ -68,7 +68,7 @@
68
68
  .segment {
69
69
  position: absolute;
70
70
  height: 24px;
71
- background-color: rgba(186, 231, 255 , 1);
71
+ background-color: rgba(186, 231, 255, 1);
72
72
  border-left: 1px solid #141414;
73
73
  }
74
74
  }
@@ -86,7 +86,7 @@
86
86
  width: 100%;
87
87
  height: 1px;
88
88
  content: '';
89
- background-color: rgba(255, 255 ,255 , .65);
89
+ background-color: rgba(255, 255, 255, 0.65);
90
90
  }
91
91
 
92
92
  .line {
@@ -95,7 +95,7 @@
95
95
 
96
96
  .number {
97
97
  position: absolute;
98
- color: rgba(255, 255 ,255 , .65);
98
+ color: rgba(255, 255, 255, 0.65);
99
99
  transform: translate(-50%, 6px);
100
100
  }
101
101
 
@@ -104,7 +104,7 @@
104
104
  width: 1px;
105
105
  height: 8px;
106
106
  content: '';
107
- background-color:rgba(255, 255 ,255 , .65);
107
+ background-color: rgba(255, 255, 255, 0.65);
108
108
  }
109
109
  }
110
110
  }
@@ -152,9 +152,9 @@
152
152
  thead {
153
153
  th {
154
154
  padding: 8px;
155
- color: rgba(255, 255 ,255 , .85);
155
+ color: rgba(255, 255, 255, 0.85);
156
156
  white-space: no-wrap;
157
- background-color: rgba(255, 255 ,255 , .07);
157
+ background-color: rgba(255, 255, 255, 0.07);
158
158
  border: 1px solid #383838;
159
159
 
160
160
  &::before {
@@ -177,7 +177,7 @@
177
177
  }
178
178
 
179
179
  &::-webkit-scrollbar-thumb {
180
- background:rgba(255, 255 ,255 , .45);
180
+ background: rgba(255, 255, 255, 0.45);
181
181
  border-radius: 5px;
182
182
  }
183
183
 
@@ -186,7 +186,7 @@
186
186
  }
187
187
 
188
188
  &::-webkit-scrollbar-thumb:hover {
189
- background: rgba(255, 255 ,255 , .65);
189
+ background: rgba(255, 255, 255, 0.65);
190
190
  }
191
191
 
192
192
  table {
@@ -197,7 +197,7 @@
197
197
  td {
198
198
  padding: 6px 8px;
199
199
  font-size: 14px;
200
- color: rgba(255, 255 ,255 , .65);
200
+ color: rgba(255, 255, 255, 0.65);
201
201
  white-space: nowrap;
202
202
  background-color: transparent;
203
203
  border: 1px solid #383838;
@@ -215,9 +215,9 @@
215
215
  height: fit-content;
216
216
  padding: 0 8px;
217
217
  font-size: 14px;
218
- color: rgba(255, 255 ,255 , .65);
219
- background: rgba(255, 255 ,255 , .078);
220
- border: 1px solidrgba(255, 255 ,255 , .2);
218
+ color: rgba(255, 255, 255, 0.65);
219
+ background: rgba(255, 255, 255, 0.078);
220
+ border: 1px solidrgba(255, 255, 255, 0.2);
221
221
  border-radius: 2px;
222
222
 
223
223
  &.active {
@@ -230,3 +230,21 @@
230
230
  }
231
231
  }
232
232
  }
233
+ .blue {
234
+ .bottom-controls {
235
+ background: rgba(3, 177, 252, 0.1) !important;
236
+ // background-color: red !important;
237
+ }
238
+ .vtx-history-control {
239
+ background: rgba(3, 177, 252, 0.1);
240
+ }
241
+ .vtx-player-header {
242
+ background: rgba(3, 177, 252, 0.1);
243
+ }
244
+ .collapse-controls {
245
+ background: #0e3656;
246
+ .panels {
247
+ background: rgba(3, 177, 252, 0.1) !important;
248
+ }
249
+ }
250
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["DEFAULT_GRID","DEFAULT_ACTIVE","DEFAULT_CHANNELS","Array","fill","channelNum","LiveControl","forwardRef","props","ref","height","width","onExpandChange","onChannelChange","polling","isDark","useSetState","expand","grid","activeIndex","channels","state","setState","wrapRef","useRef","useFullscreen","isFullscreen","toggleFullscreen","channelRef","useInterval","hasVideo","some","item","timer","setTimeout","current","clearTimeout","useImperativeHandle","load","channel","index","findIndex","c","channelId","newChannels","getActiveIndex","multiLoad","length","i","push","unLoad","useEffect","filter","map","handleCloseAll","handleExpand","getGridItems","items","element","_jsx","GridItem","active","onClick","onClose","_jsxs","Object","assign","className","style","children","Space","size","align","Tooltip","title","display","FoldIcon","ExpandIcon","CloseAllIcon","Grid1x1Icon","Grid2x2Icon","Grid3x3Icon","ExitFullScreenIcon","FullScreenIcon","displayName","empty","useRequest","getPreviewUrl","ready","refreshDeps","data","name","deviceName","channelName","_Fragment","PlayerHeader","VtxLivePlayer","url","type","player","enableAgent","captureName","showInfo","info","currentIndex","currentChannels","slice"],"sources":["live-control/index.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { forwardRef, useEffect, useImperativeHandle, useRef } from 'react';\nimport { getPreviewUrl } from '../api';\nimport { PlayerHeader } from '../controls';\nimport { CloseAllIcon, ExitFullScreenIcon, ExpandIcon, FoldIcon, FullScreenIcon, Grid1x1Icon, Grid2x2Icon, Grid3x3Icon, } from '../icons';\nimport VtxLivePlayer from '../live-player';\nimport { useFullscreen, useInterval, useRequest, useSetState } from 'ahooks';\nimport Space from 'antd/lib/space';\n// import { Space, Tooltip } from 'antd';\nimport Tooltip from 'antd/lib/tooltip';\nconst DEFAULT_GRID = 2;\nconst DEFAULT_ACTIVE = 0;\nconst DEFAULT_CHANNELS = Array(9).fill({ channelNum: '' });\n/**\n * 实时分屏组件\n */\nconst LiveControl = forwardRef((props, ref) => {\n const { height = '100%', width = '100%', onExpandChange, onChannelChange, polling, isDark = false } = props;\n const [state, setState] = useSetState({\n expand: true,\n grid: DEFAULT_GRID,\n activeIndex: DEFAULT_ACTIVE,\n channels: DEFAULT_CHANNELS,\n });\n const wrapRef = useRef(null);\n const [isFullscreen, { toggleFullscreen }] = useFullscreen(wrapRef);\n const channelRef = useRef(DEFAULT_CHANNELS);\n // 实时视频轮询\n useInterval(() => {\n // 是否有视频正在播放\n const hasVideo = state.channels.some((item) => item.channelNum);\n if (polling && hasVideo) {\n setState({\n channels: DEFAULT_CHANNELS,\n });\n const timer = setTimeout(() => {\n setState({\n channels: channelRef.current,\n });\n clearTimeout(timer);\n }, 0);\n }\n }, polling);\n useImperativeHandle(ref, () => {\n return {\n load: (channel) => {\n const index = state.channels.findIndex((c) => c.channelId && channel.channelId && c.channelId === channel.channelId);\n if (~index) {\n setState({ activeIndex: index }); // 如果通道号已经存在,则设置激活索引为该通道\n }\n else {\n // 播放该通道\n const newChannels = [...state.channels];\n newChannels[state.activeIndex] = channel;\n const activeIndex = getActiveIndex(newChannels, state.grid, state.activeIndex);\n setState({ channels: newChannels, activeIndex });\n }\n },\n multiLoad: (channels) => {\n let grid = 1;\n if (channels.length > 1)\n grid = 2;\n if (channels.length > 4)\n grid = 3;\n const newChannels = [];\n for (let i = 0; i < 9; i++) {\n newChannels.push(channels[i] ? channels[i] : { channelNum: '' });\n }\n setState({ grid, channels: newChannels });\n },\n unLoad: (channelId) => {\n const index = state.channels.findIndex((c) => c.channelId === channelId);\n if (~index) {\n // 卸载通道\n const newChannels = [...state.channels];\n newChannels[index] = { channelNum: '' };\n setState({ channels: newChannels });\n }\n },\n };\n });\n useEffect(() => {\n channelRef.current = state.channels;\n if (onChannelChange) {\n onChannelChange(state.channels.filter((c) => !!c.channelNum).map((c) => c.channelNum));\n }\n }, [state.channels]);\n const handleCloseAll = () => {\n setState({ channels: DEFAULT_CHANNELS });\n };\n const handleExpand = () => {\n onExpandChange && onExpandChange(!state.expand);\n setState({ expand: !state.expand });\n };\n const getGridItems = () => {\n const items = [];\n for (let i = 0; i < state.grid * state.grid; i++) {\n const element = (_jsx(GridItem, { active: state.activeIndex === i, onClick: () => setState({ activeIndex: i }), channel: state.channels[i], onClose: () => {\n const newChannels = [...state.channels];\n newChannels[i] = { channelNum: '' };\n setState({ channels: newChannels });\n } }, i));\n items.push(element);\n }\n return items;\n };\n return (_jsxs(\"div\", Object.assign({ className: `vtx-live-control${isDark ? ' live-dark' : ''}`, ref: wrapRef, style: { height, width } }, { children: [_jsx(\"div\", Object.assign({ className: `player-grid-container _${state.grid}` }, { children: getGridItems() })), _jsxs(\"div\", Object.assign({ className: \"controls\" }, { children: [_jsx(Space, Object.assign({ className: \"left\", size: 12, align: \"center\" }, { children: onExpandChange && (_jsx(Tooltip, Object.assign({ title: state.expand ? '收起' : '展开' }, { children: _jsx(\"div\", Object.assign({ onClick: handleExpand, style: { display: 'flex' } }, { children: state.expand ? _jsx(FoldIcon, {}) : _jsx(ExpandIcon, {}) })) }))) })), _jsxs(Space, Object.assign({ className: \"right\", size: 12, align: \"center\" }, { children: [_jsx(Tooltip, Object.assign({ title: \"\\u5168\\u90E8\\u5173\\u95ED\" }, { children: _jsx(\"div\", { children: _jsx(CloseAllIcon, { onClick: handleCloseAll }) }) })), _jsx(Tooltip, Object.assign({ title: \"1\\u5206\\u5C4F\" }, { children: _jsx(\"div\", { children: _jsx(Grid1x1Icon, { active: state.grid === 1, onClick: () => setState({ grid: 1 }) }) }) })), _jsx(Tooltip, Object.assign({ title: \"4\\u5206\\u5C4F\" }, { children: _jsx(\"div\", { children: _jsx(Grid2x2Icon, { active: state.grid === 2, onClick: () => setState({ grid: 2 }) }) }) })), _jsx(Tooltip, Object.assign({ title: \"9\\u5206\\u5C4F\" }, { children: _jsx(\"div\", { children: _jsx(Grid3x3Icon, { active: state.grid === 3, onClick: () => setState({ grid: 3 }) }) }) })), _jsx(Tooltip, Object.assign({ title: \"\\u5168\\u5C4F\" }, { children: _jsx(\"div\", { children: isFullscreen ? (_jsx(ExitFullScreenIcon, { onClick: toggleFullscreen })) : (_jsx(FullScreenIcon, { onClick: toggleFullscreen })) }) }))] }))] }))] })));\n});\nLiveControl.displayName = 'LiveControl';\nconst GridItem = (props) => {\n const { active, onClick, channel, onClose } = props;\n const empty = !channel.channelNum;\n const { data } = useRequest(() => getPreviewUrl(channel), {\n ready: !!channel.channelNum,\n refreshDeps: [channel.channelNum],\n });\n const name = `${data === null || data === void 0 ? void 0 : data.deviceName}-${data === null || data === void 0 ? void 0 : data.channelName}`;\n return (_jsx(\"div\", Object.assign({ className: `grid-item-container ${active ? 'active' : ''}`, onClick: onClick }, { children: data && !empty && (_jsxs(_Fragment, { children: [_jsx(PlayerHeader, { name: name, onClose: onClose }), _jsx(\"div\", Object.assign({ className: \"content\" }, { children: _jsx(VtxLivePlayer, { url: data.url, type: (data === null || data === void 0 ? void 0 : data.player) || '', enableAgent: (data === null || data === void 0 ? void 0 : data.enableAgent) || false, captureName: name, showInfo: channel.showInfo, info: channel.info }) }))] })) })));\n};\n/**\n * 获取当前激活的网格\n * @param channels 现有通道数组\n * @param grid 当前网格状态\n * @param currentIndex 当前索引\n * @returns\n */\nconst getActiveIndex = (channels, grid, currentIndex) => {\n const currentChannels = channels.slice(0, grid * grid);\n for (let i = currentIndex + 1; i < currentChannels.length; i++) {\n if (!currentChannels[i].channelNum)\n return i;\n }\n for (let i = 0; i < currentIndex; i++) {\n if (!currentChannels[i].channelNum)\n return i;\n }\n return currentIndex;\n};\nexport default LiveControl;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["DEFAULT_GRID","DEFAULT_ACTIVE","DEFAULT_CHANNELS","Array","fill","channelNum","LiveControl","forwardRef","props","ref","height","width","onExpandChange","onChannelChange","polling","isDark","useSetState","expand","grid","activeIndex","channels","state","setState","wrapRef","useRef","useFullscreen","isFullscreen","toggleFullscreen","channelRef","useInterval","hasVideo","some","item","timer","setTimeout","current","clearTimeout","useImperativeHandle","load","channel","index","findIndex","c","channelId","newChannels","getActiveIndex","multiLoad","length","i","push","unLoad","useEffect","filter","map","handleCloseAll","handleExpand","getGridItems","items","element","_jsx","GridItem","active","onClick","onClose","_jsxs","Object","assign","className","style","children","Space","size","align","Tooltip","title","display","FoldIcon","ExpandIcon","CloseAllIcon","Grid1x1Icon","Grid2x2Icon","Grid3x3Icon","ExitFullScreenIcon","FullScreenIcon","displayName","empty","useRequest","getPreviewUrl","ready","refreshDeps","data","name","deviceName","channelName","_Fragment","PlayerHeader","VtxLivePlayer","url","type","player","enableAgent","captureName","showInfo","info","currentIndex","currentChannels","slice"],"sources":["live-control/index.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { forwardRef, useEffect, useImperativeHandle, useRef } from 'react';\nimport { getPreviewUrl } from '../api';\nimport { PlayerHeader } from '../controls';\nimport { CloseAllIcon, ExitFullScreenIcon, ExpandIcon, FoldIcon, FullScreenIcon, Grid1x1Icon, Grid2x2Icon, Grid3x3Icon, } from '../icons';\nimport VtxLivePlayer from '../live-player';\nimport { useFullscreen, useInterval, useRequest, useSetState } from 'ahooks';\nimport Space from 'antd/lib/space';\n// import { Space, Tooltip } from 'antd';\nimport Tooltip from 'antd/lib/tooltip';\nconst DEFAULT_GRID = 2;\nconst DEFAULT_ACTIVE = 0;\nconst DEFAULT_CHANNELS = Array(9).fill({ channelNum: '' });\n/**\n * 实时分屏组件\n */\nconst LiveControl = forwardRef((props, ref) => {\n const { height = '100%', width = '100%', onExpandChange, onChannelChange, polling, isDark = false, } = props;\n const [state, setState] = useSetState({\n expand: true,\n grid: DEFAULT_GRID,\n activeIndex: DEFAULT_ACTIVE,\n channels: DEFAULT_CHANNELS,\n });\n const wrapRef = useRef(null);\n const [isFullscreen, { toggleFullscreen }] = useFullscreen(wrapRef);\n const channelRef = useRef(DEFAULT_CHANNELS);\n // 实时视频轮询\n useInterval(() => {\n // 是否有视频正在播放\n const hasVideo = state.channels.some((item) => item.channelNum);\n if (polling && hasVideo) {\n setState({\n channels: DEFAULT_CHANNELS,\n });\n const timer = setTimeout(() => {\n setState({\n channels: channelRef.current,\n });\n clearTimeout(timer);\n }, 0);\n }\n }, polling);\n useImperativeHandle(ref, () => {\n return {\n load: (channel) => {\n const index = state.channels.findIndex((c) => c.channelId && channel.channelId && c.channelId === channel.channelId);\n if (~index) {\n setState({ activeIndex: index }); // 如果通道号已经存在,则设置激活索引为该通道\n }\n else {\n // 播放该通道\n const newChannels = [...state.channels];\n newChannels[state.activeIndex] = channel;\n const activeIndex = getActiveIndex(newChannels, state.grid, state.activeIndex);\n setState({ channels: newChannels, activeIndex });\n }\n },\n multiLoad: (channels) => {\n let grid = 1;\n if (channels.length > 1)\n grid = 2;\n if (channels.length > 4)\n grid = 3;\n const newChannels = [];\n for (let i = 0; i < 9; i++) {\n newChannels.push(channels[i] ? channels[i] : { channelNum: '' });\n }\n setState({ grid, channels: newChannels });\n },\n unLoad: (channelId) => {\n const index = state.channels.findIndex((c) => c.channelId === channelId);\n if (~index) {\n // 卸载通道\n const newChannels = [...state.channels];\n newChannels[index] = { channelNum: '' };\n setState({ channels: newChannels });\n }\n },\n };\n });\n useEffect(() => {\n channelRef.current = state.channels;\n if (onChannelChange) {\n onChannelChange(state.channels.filter((c) => !!c.channelNum).map((c) => c.channelNum));\n }\n }, [state.channels]);\n const handleCloseAll = () => {\n setState({ channels: DEFAULT_CHANNELS });\n };\n const handleExpand = () => {\n onExpandChange && onExpandChange(!state.expand);\n setState({ expand: !state.expand });\n };\n const getGridItems = () => {\n const items = [];\n for (let i = 0; i < state.grid * state.grid; i++) {\n const element = (_jsx(GridItem, { active: state.activeIndex === i, onClick: () => setState({ activeIndex: i }), channel: state.channels[i], onClose: () => {\n const newChannels = [...state.channels];\n newChannels[i] = { channelNum: '' };\n setState({ channels: newChannels });\n } }, i));\n items.push(element);\n }\n return items;\n };\n return (_jsxs(\"div\", Object.assign({ className: `vtx-live-control${isDark ? ' live-dark' : ''}`, ref: wrapRef, style: { height, width } }, { children: [_jsx(\"div\", Object.assign({ className: `player-grid-container _${state.grid}` }, { children: getGridItems() })), _jsxs(\"div\", Object.assign({ className: \"controls\" }, { children: [_jsx(Space, Object.assign({ className: \"left\", size: 12, align: \"center\" }, { children: onExpandChange && (_jsx(Tooltip, Object.assign({ title: state.expand ? '收起' : '展开' }, { children: _jsx(\"div\", Object.assign({ onClick: handleExpand, style: { display: 'flex' } }, { children: state.expand ? _jsx(FoldIcon, {}) : _jsx(ExpandIcon, {}) })) }))) })), _jsxs(Space, Object.assign({ className: \"right\", size: 12, align: \"center\" }, { children: [_jsx(Tooltip, Object.assign({ title: \"\\u5168\\u90E8\\u5173\\u95ED\" }, { children: _jsx(\"div\", { children: _jsx(CloseAllIcon, { onClick: handleCloseAll }) }) })), _jsx(Tooltip, Object.assign({ title: \"1\\u5206\\u5C4F\" }, { children: _jsx(\"div\", { children: _jsx(Grid1x1Icon, { active: state.grid === 1, onClick: () => setState({ grid: 1 }) }) }) })), _jsx(Tooltip, Object.assign({ title: \"4\\u5206\\u5C4F\" }, { children: _jsx(\"div\", { children: _jsx(Grid2x2Icon, { active: state.grid === 2, onClick: () => setState({ grid: 2 }) }) }) })), _jsx(Tooltip, Object.assign({ title: \"9\\u5206\\u5C4F\" }, { children: _jsx(\"div\", { children: _jsx(Grid3x3Icon, { active: state.grid === 3, onClick: () => setState({ grid: 3 }) }) }) })), _jsx(Tooltip, Object.assign({ title: \"\\u5168\\u5C4F\" }, { children: _jsx(\"div\", { children: isFullscreen ? (_jsx(ExitFullScreenIcon, { onClick: toggleFullscreen })) : (_jsx(FullScreenIcon, { onClick: toggleFullscreen })) }) }))] }))] }))] })));\n});\nLiveControl.displayName = 'LiveControl';\nconst GridItem = (props) => {\n const { active, onClick, channel, onClose } = props;\n const empty = !channel.channelNum;\n const { data } = useRequest(() => getPreviewUrl(channel), {\n ready: !!channel.channelNum,\n refreshDeps: [channel.channelNum],\n });\n const name = `${data === null || data === void 0 ? void 0 : data.deviceName}-${data === null || data === void 0 ? void 0 : data.channelName}`;\n return (_jsx(\"div\", Object.assign({ className: `grid-item-container ${active ? 'active' : ''}`, onClick: onClick }, { children: data && !empty && (_jsxs(_Fragment, { children: [_jsx(PlayerHeader, { name: name, onClose: onClose }), _jsx(\"div\", Object.assign({ className: \"content\" }, { children: _jsx(VtxLivePlayer, { url: data.url, type: (data === null || data === void 0 ? void 0 : data.player) || '', enableAgent: (data === null || data === void 0 ? void 0 : data.enableAgent) || false, captureName: name, showInfo: channel.showInfo, info: channel.info }) }))] })) })));\n};\n/**\n * 获取当前激活的网格\n * @param channels 现有通道数组\n * @param grid 当前网格状态\n * @param currentIndex 当前索引\n * @returns\n */\nconst getActiveIndex = (channels, grid, currentIndex) => {\n const currentChannels = channels.slice(0, grid * grid);\n for (let i = currentIndex + 1; i < currentChannels.length; i++) {\n if (!currentChannels[i].channelNum)\n return i;\n }\n for (let i = 0; i < currentIndex; i++) {\n if (!currentChannels[i].channelNum)\n return i;\n }\n return currentIndex;\n};\nexport default LiveControl;\n"],"mappings":"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"}
@@ -5,10 +5,22 @@
5
5
  background: rgba(0, 59, 64, 0.3) !important;
6
6
  }
7
7
  .live-dark .control-icon:hover {
8
- fill: #95FFF9;
8
+ fill: #95fff9;
9
9
  }
10
10
  .live-dark .control-icon.active {
11
- fill: #95FFF9;
11
+ fill: #95fff9;
12
+ }
13
+ .blue .grid-item-container {
14
+ background: rgba(3, 177, 252, 0.1) !important;
15
+ }
16
+ .blue .controls {
17
+ background: rgba(3, 177, 252, 0.1) !important;
18
+ }
19
+ .blue .control-icon:hover {
20
+ fill: #0DBAFE;
21
+ }
22
+ .blue .control-icon.active {
23
+ fill: #0DBAFE;
12
24
  }
13
25
  .vtx-live-control {
14
26
  display: -webkit-box;
@@ -1,17 +1,34 @@
1
1
  .live-dark {
2
2
  .grid-item-container {
3
- background-color: rgba(0,59,64,0.45) !important;
3
+ background-color: rgba(0, 59, 64, 0.45) !important;
4
4
  }
5
5
  .controls {
6
- background: rgba(0,59,64,0.3) !important;
6
+ background: rgba(0, 59, 64, 0.3) !important;
7
7
  }
8
8
  .control-icon {
9
9
  &:hover {
10
- fill: #95FFF9;
10
+ fill: #95fff9;
11
11
  }
12
12
 
13
13
  &.active {
14
- fill: #95FFF9;
14
+ fill: #95fff9;
15
+ }
16
+ }
17
+ }
18
+ .blue {
19
+ .grid-item-container {
20
+ background: rgba(3, 177, 252, 0.1) !important;
21
+ }
22
+ .controls {
23
+ background: rgba(3, 177, 252, 0.1) !important;
24
+ }
25
+ .control-icon {
26
+ &:hover {
27
+ fill: #0DBAFE;
28
+ }
29
+
30
+ &.active {
31
+ fill: #0DBAFE;
15
32
  }
16
33
  }
17
34
  }
@@ -25,7 +42,7 @@
25
42
  flex-grow: 1;
26
43
  grid-gap: 1px;
27
44
  height: 0;
28
- background-color: rgba(0 ,0 ,0 , .8);
45
+ background-color: rgba(0, 0, 0, 0.8);
29
46
 
30
47
  &._1 {
31
48
  grid-template-rows: 1fr;
@@ -70,14 +87,13 @@
70
87
  height: 32px;
71
88
  padding: 0 12px;
72
89
  background-color: #243241;
73
-
90
+
74
91
  .right {
75
92
  margin-left: auto;
76
-
93
+
77
94
  > div {
78
95
  height: 24px;
79
96
  }
80
97
  }
81
98
  }
82
99
  }
83
-
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vtx/player",
3
- "version": "1.3.12",
3
+ "version": "1.4.0",
4
4
  "private": false,
5
5
  "description": "视频业务组件",
6
6
  "main": "./lib/index.js",