@cloud-app-dev/vidc 3.0.4 → 3.0.7

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 (46) hide show
  1. package/.umirc.ts +12 -7
  2. package/es/DisableMark/index.css +9 -0
  3. package/es/DisableMark/index.d.ts +8 -0
  4. package/es/DisableMark/index.js +9 -0
  5. package/es/Drawer/index.css +1 -0
  6. package/es/Map/AMap.d.ts +14 -1
  7. package/es/Map/BasicMap/AMapInstance.js +18 -2
  8. package/es/Map/Config/utils.js +2 -2
  9. package/es/Player/demo.js +4 -3
  10. package/es/Player/iconfont.d.ts +1 -1
  11. package/es/Player/iconfont.js +1 -1
  12. package/es/Player/live_heart.js +7 -32
  13. package/es/Player/style/iconfont.ttf +0 -0
  14. package/es/Player/style/iconfont.woff +0 -0
  15. package/es/Player/style/iconfont.woff2 +0 -0
  16. package/es/ScreenPlayer/Live.d.ts +1 -1
  17. package/es/ScreenPlayer/Live.js +13 -3
  18. package/es/ScreenPlayer/LiveTools.d.ts +3 -1
  19. package/es/ScreenPlayer/LiveTools.js +84 -47
  20. package/es/ScreenPlayer/PlayerWithExt.js +0 -3
  21. package/es/ScreenPlayer/Record.d.ts +1 -1
  22. package/es/ScreenPlayer/Record.js +55 -16
  23. package/es/ScreenPlayer/RecordTools.d.ts +7 -1
  24. package/es/ScreenPlayer/RecordTools.js +112 -46
  25. package/es/ScreenPlayer/ScreenSelect.d.ts +7 -0
  26. package/es/ScreenPlayer/ScreenSelect.js +28 -0
  27. package/es/ScreenPlayer/SegmentTimeLine.d.ts +5 -2
  28. package/es/ScreenPlayer/SegmentTimeLine.js +14 -9
  29. package/es/ScreenPlayer/TimeMode.d.ts +7 -0
  30. package/es/ScreenPlayer/TimeMode.js +23 -0
  31. package/es/ScreenPlayer/TimeSelect.d.ts +7 -0
  32. package/es/ScreenPlayer/TimeSelect.js +128 -0
  33. package/es/ScreenPlayer/TimeSlider.d.ts +1 -1
  34. package/es/ScreenPlayer/TimeSlider.js +7 -10
  35. package/es/ScreenPlayer/demo.d.ts +1 -1
  36. package/es/ScreenPlayer/demo.js +9 -4
  37. package/es/ScreenPlayer/demo2.js +1 -1
  38. package/es/ScreenPlayer/index.css +79 -4
  39. package/es/ScreenPlayer/interface.d.ts +32 -0
  40. package/es/ScreenPlayer/utils.d.ts +3 -0
  41. package/es/ScreenPlayer/utils.js +9 -0
  42. package/es/Timeout/index.d.ts +8 -9
  43. package/es/Timeout/index.js +17 -23
  44. package/es/index.d.ts +1 -0
  45. package/es/index.js +1 -0
  46. package/package.json +1 -1
package/.umirc.ts CHANGED
@@ -2,7 +2,7 @@ import { defineConfig } from 'dumi';
2
2
  import path from 'path';
3
3
 
4
4
  const token =
5
- 'eyJhbGciOiJIUzI1NiJ9.eyJvcmdhbml6YXRpb25JZCI6IjEwMDEwMTAwMDQ0NSIsImV4dCI6MTY2MTM4OTU0MzA4NSwidWlkIjoiMTAxMDAwMDAwNjk5IiwidmFsaWRTdGF0ZSI6MTA0NDA2LCJyb2xlSWQiOlsxMDAwMDAxMTA1MTgsMTAwMDAwMTEwNzI4XSwidmFsaWRUaW1lIjoxNzA0MzgzOTk5MDAwLCJvcHRDZW50ZXJJZCI6IjEwMDEwMDAwMDIzMyIsInVzZXJUeXBlIjoxMDA3MDQsImlhdCI6MTY2MTEzMDM0MzA4NX0.-0vh7SpomB6UWteJ6WIA5VneryhSW3Vrsz6RnHfgcRI';
5
+ 'eyJhbGciOiJIUzI1NiJ9.eyJvcmdhbml6YXRpb25JZCI6IjEwMDEwMTAwMDQ0NSIsImV4dCI6MTY2MTY1NjgzMTU3MywidWlkIjoiMTAxMDAwMDAwNjk5IiwidmFsaWRTdGF0ZSI6MTA0NDA2LCJyb2xlSWQiOlsxMDAwMDAxMTA1MTgsMTAwMDAwMTEwNzI4XSwidmFsaWRUaW1lIjoxNzA0MzgzOTk5MDAwLCJvcHRDZW50ZXJJZCI6IjEwMDEwMDAwMDIzMyIsInVzZXJUeXBlIjoxMDA3MDQsImlhdCI6MTY2MTM5NzYzMTU3M30.OWPxfPgFBWqGJaRsYLSAZohn2AarhbkOuWLa1bwgZE4';
6
6
 
7
7
  export default defineConfig({
8
8
  title: 'CloudApp VIDC',
@@ -39,12 +39,17 @@ export default defineConfig({
39
39
  },
40
40
  },
41
41
  },
42
- mfsu: {
43
- development: {
44
- output: './.mfsu/dev',
45
- },
46
- production: undefined,
47
- },
42
+ mfsu:
43
+ process.env.NODE_ENV === 'development'
44
+ ? {
45
+ development: {
46
+ output: './.mfsu/dev',
47
+ },
48
+ production: {
49
+ output: './.mfsu/prod',
50
+ },
51
+ }
52
+ : undefined,
48
53
  scripts: ['//at.alicdn.com/t/font_1724012_972m5d05cou.js'],
49
54
  styles: [
50
55
  `:root{
@@ -0,0 +1,9 @@
1
+ .disable-mark {
2
+ position: absolute;
3
+ cursor: not-allowed;
4
+ width: 100%;
5
+ height: 100%;
6
+ top: 0;
7
+ left: 0;
8
+ z-index: 999;
9
+ }
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import './index.less';
3
+ interface IDisableMarkProps {
4
+ children: React.ReactNode;
5
+ disabled: boolean;
6
+ }
7
+ export default function DisableMark({ children, disabled }: IDisableMarkProps): JSX.Element;
8
+ export {};
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import "./index.css";
3
+ export default function DisableMark(_ref) {
4
+ var children = _ref.children,
5
+ disabled = _ref.disabled;
6
+ return /*#__PURE__*/React.createElement(React.Fragment, null, disabled ? /*#__PURE__*/React.createElement("div", {
7
+ className: "disable-mark"
8
+ }) : null, children);
9
+ }
@@ -17,6 +17,7 @@
17
17
  .lm-drawer-container.cloudapp-drawer .cloudapp-drawer-header .cloudapp-drawer-title {
18
18
  color: inherit;
19
19
  font-size: var(--fs-large);
20
+ line-height: 2em;
20
21
  }
21
22
  .lm-drawer-container.cloudapp-drawer .cloudapp-drawer-header .cloudapp-drawer-close {
22
23
  padding: 0;
package/es/Map/AMap.d.ts CHANGED
@@ -1,3 +1,5 @@
1
+ /* eslint-disable @typescript-eslint/no-use-before-define */
2
+ /* eslint-disable @typescript-eslint/no-unused-vars */
1
3
  declare global {
2
4
  namespace AMap {
3
5
  /**
@@ -75,6 +77,7 @@ declare global {
75
77
  * @param {boolean} [opts.geodesic=false] 是否绘制成大地线,默认false
76
78
  * @param {boolean} [opts.showDir=false] 是否延路径显示白色方向箭头,默认false。建议折线宽度大于6时使用
77
79
  */
80
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
78
81
  export class BezierCurve extends CombinePolyline<Required<BezierCurveOptions>> {
79
82
  _prevZoom: number;
80
83
  readonly className: OverlayType;
@@ -364,6 +367,7 @@ declare global {
364
367
  * });
365
368
  * map.addLayer(buildingLayer);
366
369
  */
370
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
367
371
  export class BuildingLayer extends BuildingLayer_2 {
368
372
  constructor(opts?: Partial<BuildingLayerOpts> | any);
369
373
  /**
@@ -406,6 +410,7 @@ declare global {
406
410
  /**
407
411
  * @public
408
412
  */
413
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
409
414
  class BuildingLayer_2 extends Layer {
410
415
  CLASS_NAME: string;
411
416
  constructor();
@@ -464,6 +469,7 @@ declare global {
464
469
  * @extends {ImageLayer}
465
470
  * @public
466
471
  */
472
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
467
473
  export class CanvasLayer extends CoreImageLayer {
468
474
  constructor(opts?: CanvasLayerOptions);
469
475
  /**
@@ -549,6 +555,7 @@ declare global {
549
555
  * 虚线:[10,10] ,[10,10] 表示10个像素的实线和10个像素的空白(如此反复)组成的虚线
550
556
  * 点画线:[10,2,10], [10,2,10] 表示10个像素的实线和2个像素的空白 + 10个像素的实线和10个像素的空白 (如此反复)组成的虚线
551
557
  */
558
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
552
559
  export class Circle extends CombinePolygon<Required<CircleOptions>> {
553
560
  readonly className: OverlayType;
554
561
 
@@ -642,6 +649,7 @@ declare global {
642
649
  * @param {boolean} [opts.draggable=false] 设置多边形是否可拖拽移动,默认为false
643
650
  * @param {object} [opts.extData] 用户自定义属性,支持JavaScript API任意数据类型,如Polygon的id等
644
651
  */
652
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
645
653
  export class CircleMarker extends CoreCircleMarker {
646
654
  className: OverlayType;
647
655
 
@@ -731,6 +739,7 @@ declare global {
731
739
  * @public
732
740
  * @private
733
741
  */
742
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define, @typescript-eslint/no-unused-vars
734
743
  abstract class CombinePolygon<T = any> extends CorePolygon {
735
744
  abstract setOptions(optsArg: any): void;
736
745
  /**
@@ -5054,7 +5063,11 @@ declare global {
5054
5063
  export class MarkerCluster extends Event {
5055
5064
  constructor(map: AMap.Map, dataOtions: any[], MarkerClusterOptions: MarkerClusterOptions);
5056
5065
  setData(data: any[]);
5057
-
5066
+ }
5067
+
5068
+ export class ControlBar extends Control {
5069
+ constructor(options: any);
5070
+ addTo(map: AMap.Map): void;
5058
5071
  }
5059
5072
 
5060
5073
  /**
@@ -16,16 +16,32 @@ var AMapInstance = /*#__PURE__*/function () {
16
16
  _createClass(AMapInstance, [{
17
17
  key: "createMap",
18
18
  value: function createMap() {
19
+ var _this = this;
20
+
19
21
  var _a;
20
22
 
21
23
  this.map = new AMap.Map(this.mapContainer, {
22
- viewMode: '2D',
24
+ viewMode: '3D',
23
25
  zoom: this.config.zoom,
24
26
  center: this.config.center,
25
- // pitch: 30,
27
+ rotateEnable: true,
28
+ pitchEnable: true,
29
+ pitch: 50,
30
+ rotation: -15,
31
+ zooms: [2, 20],
26
32
  resizeEnable: true,
27
33
  mapStyle: "amap://styles/".concat((_a = this.config.amapStyle) !== null && _a !== void 0 ? _a : 'normal')
28
34
  });
35
+ AMap.plugin(['AMap.ControlBar'], function () {
36
+ var controlBar = new AMap.ControlBar({
37
+ position: {
38
+ right: '10px',
39
+ top: '10px'
40
+ }
41
+ });
42
+
43
+ _this.map.addControl(controlBar);
44
+ });
29
45
  }
30
46
  }, {
31
47
  key: "destoryMap",
@@ -10,7 +10,7 @@ var localconfig = {
10
10
  center: [118.767413, 32.041544],
11
11
  maxZoom: 18,
12
12
  minZoom: 3,
13
- zoom: 8,
13
+ zoom: 16,
14
14
  zoomOffset: 0,
15
15
  distance: 50,
16
16
  amapStyle: 'normal',
@@ -25,7 +25,7 @@ export function queryMapConfig(type) {
25
25
  case 0:
26
26
  url = localconfig.url, crs = localconfig.crs, maxBounds = localconfig.maxBounds, subdomains = localconfig.subdomains, zoom = localconfig.zoom, zoomOffset = localconfig.zoomOffset, center = localconfig.center, maxZoom = localconfig.maxZoom, minZoom = localconfig.minZoom, distance = localconfig.distance, amapStyle = localconfig.amapStyle;
27
27
 
28
- if (!(type == 'L')) {
28
+ if (!(type === 'L')) {
29
29
  _context.next = 3;
30
30
  break;
31
31
  }
package/es/Player/demo.js CHANGED
@@ -118,7 +118,8 @@ function Demo1() {
118
118
  }, "\u64AD\u653E")), /*#__PURE__*/React.createElement(Player, {
119
119
  type: state.type,
120
120
  url: state.url,
121
- isLive: !!state.isLive
121
+ isLive: !!state.isLive,
122
+ customTimeLine: state.isLive ? /*#__PURE__*/React.createElement(React.Fragment, null) : undefined
122
123
  }));
123
124
  }
124
125
 
@@ -199,8 +200,8 @@ function Demo3() {
199
200
  var _useState5 = useState({
200
201
  url: 'http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4',
201
202
  tempUrl: '',
202
- begin: 1652889636,
203
- end: 1652890200
203
+ begin: 1652889636000,
204
+ end: 1652890200000
204
205
  }),
205
206
  _useState6 = _slicedToArray(_useState5, 2),
206
207
  state = _useState6[0],
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import './style/iconfont.less';
2
+ import './style/iconfont.css';
3
3
  interface IPlayerIconFontProps extends React.AllHTMLAttributes<HTMLLIElement> {
4
4
  type: string;
5
5
  className: string;
@@ -1,6 +1,6 @@
1
1
  import { __rest } from "tslib";
2
2
  import React from 'react';
3
- import "./style/iconfont.css";
3
+ import './style/iconfont.css';
4
4
 
5
5
  function IconFont(_a) {
6
6
  var type = _a.type,
@@ -1,28 +1,10 @@
1
- import _useUpdateEffect from "ahooks/es/useUpdateEffect";
2
-
3
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
-
5
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
6
-
7
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
8
-
9
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
10
-
11
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
12
-
13
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
-
15
- import React, { useEffect, useState } from 'react';
1
+ import _useRafInterval from "ahooks/es/useRafInterval";
2
+ import React, { useEffect } from 'react';
16
3
  import BrowserTab from './event/browserTabEvent';
17
4
 
18
5
  function LiveHeart(_ref) {
19
6
  var api = _ref.api;
20
7
 
21
- var _useState = useState(Date.now()),
22
- _useState2 = _slicedToArray(_useState, 2),
23
- runDep = _useState2[0],
24
- setRundep = _useState2[1];
25
-
26
8
  var run = function run() {
27
9
  var current = api.getCurrentTime();
28
10
  var buffered = api.getSecondsLoaded();
@@ -30,6 +12,7 @@ function LiveHeart(_ref) {
30
12
  if (buffered - current > 5) {
31
13
  console.debug("\u5F53\u524D\u5EF6\u65F6\u8FC7\u5927current->".concat(current, " buffered->").concat(buffered, ", \u57FA\u4E8E\u89C6\u9891\u5F53\u524D\u7F13\u5B58\u65F6\u95F4\u66F4\u65B0\u5F53\u524D\u64AD\u653E\u65F6\u95F4 updateTime -> ").concat(buffered - 2));
32
14
  api.seekTo(buffered - 2 > 0 ? buffered - 2 : 0);
15
+ api.play();
33
16
  }
34
17
  };
35
18
 
@@ -41,21 +24,13 @@ function LiveHeart(_ref) {
41
24
  BrowserTab.addEventListener(browserTabChange);
42
25
  return function () {
43
26
  BrowserTab.removeEventListener(browserTabChange);
44
- };
27
+ }; // eslint-disable-next-line react-hooks/exhaustive-deps
45
28
  }, [api]);
46
29
 
47
- _useUpdateEffect(function () {
48
- run();
49
- }, [runDep]);
30
+ _useRafInterval(function () {
31
+ return run();
32
+ }, 30 * 1000);
50
33
 
51
- useEffect(function () {
52
- var timer = setInterval(function () {
53
- return setRundep(Date.now());
54
- }, 30 * 1000);
55
- return function () {
56
- return clearInterval(timer);
57
- };
58
- }, []);
59
34
  return /*#__PURE__*/React.createElement(React.Fragment, null);
60
35
  }
61
36
 
Binary file
Binary file
Binary file
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
2
  import type { ILivePlayerProps } from './interface';
3
3
  import './index.less';
4
- declare function LivePlayer({ list, children }: ILivePlayerProps): JSX.Element;
4
+ declare function LivePlayer({ list, children, onIndexChange, onClose, onCloseAll }: ILivePlayerProps): JSX.Element;
5
5
  export default LivePlayer;
@@ -10,7 +10,7 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
10
10
 
11
11
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
12
12
 
13
- import React, { useMemo, useRef, useState } from 'react';
13
+ import React, { useEffect, useMemo, useRef, useState } from 'react';
14
14
  import { ScreenType, mergeFill } from './utils';
15
15
  import { LivePlayerWithExt } from './PlayerWithExt';
16
16
  import Tools from './LiveTools';
@@ -20,7 +20,10 @@ import "./index.css";
20
20
  function LivePlayer(_ref) {
21
21
  var _ref$list = _ref.list,
22
22
  list = _ref$list === void 0 ? [] : _ref$list,
23
- children = _ref.children;
23
+ children = _ref.children,
24
+ onIndexChange = _ref.onIndexChange,
25
+ onClose = _ref.onClose,
26
+ onCloseAll = _ref.onCloseAll;
24
27
 
25
28
  var _useState = useState({
26
29
  screenNum: 4,
@@ -73,8 +76,13 @@ function LivePlayer(_ref) {
73
76
  setState(function (old) {
74
77
  return Object.assign(Object.assign({}, old), obj);
75
78
  });
76
- };
79
+ }; // index变化同步到父组件
80
+ // eslint-disable-next-line react-hooks/exhaustive-deps
77
81
 
82
+
83
+ useEffect(function () {
84
+ return onIndexChange(state.selectIndex);
85
+ }, [state.selectIndex]);
78
86
  return /*#__PURE__*/React.createElement("div", {
79
87
  className: "split-screen-player-wrapper",
80
88
  ref: domRef
@@ -102,6 +110,8 @@ function LivePlayer(_ref) {
102
110
  }
103
111
  }));
104
112
  })), /*#__PURE__*/React.createElement(Tools, {
113
+ onClose: onClose,
114
+ onCloseAll: onCloseAll,
105
115
  fit: fit,
106
116
  toggleFit: toggleFit,
107
117
  getPlayerItem: getPlayerItem,
@@ -12,6 +12,8 @@ interface IToolsProps {
12
12
  getPlayerItem: () => ExportPlayerType | undefined;
13
13
  fit?: string;
14
14
  toggleFit?: () => void;
15
+ onClose?: () => void;
16
+ onCloseAll?: () => void;
15
17
  }
16
- declare function LiveTools({ containerRef, updateState, screenNum, getPlayerItem, mode, toggleFit, fit }: IToolsProps): JSX.Element;
18
+ declare function LiveTools({ containerRef, updateState, screenNum, getPlayerItem, mode, toggleFit, fit, onClose, onCloseAll }: IToolsProps): JSX.Element;
17
19
  export default LiveTools;
@@ -1,3 +1,4 @@
1
+ import _useUpdate from "ahooks/es/useUpdate";
1
2
  import _useFullscreen3 from "ahooks/es/useFullscreen";
2
3
 
3
4
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
@@ -13,7 +14,8 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
13
14
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
15
 
15
16
  import React from 'react';
16
- import { ScreenType } from './utils';
17
+ import IconFont from '../Player/iconfont';
18
+ import ScreenSelect from './ScreenSelect';
17
19
 
18
20
  function LiveTools(_ref) {
19
21
  var containerRef = _ref.containerRef,
@@ -22,22 +24,29 @@ function LiveTools(_ref) {
22
24
  getPlayerItem = _ref.getPlayerItem,
23
25
  mode = _ref.mode,
24
26
  toggleFit = _ref.toggleFit,
25
- fit = _ref.fit;
27
+ fit = _ref.fit,
28
+ onClose = _ref.onClose,
29
+ onCloseAll = _ref.onCloseAll;
26
30
 
27
31
  var _useFullscreen = _useFullscreen3(containerRef),
28
32
  _useFullscreen2 = _slicedToArray(_useFullscreen, 2),
29
33
  isFullscreen = _useFullscreen2[0],
30
- toggleFullscreen = _useFullscreen2[1].toggleFullscreen; // 播放状态控制
34
+ toggleFullscreen = _useFullscreen2[1].toggleFullscreen;
35
+
36
+ var update = _useUpdate(); // 播放状态控制
31
37
 
32
38
 
33
39
  var playToggle = function playToggle() {
34
- var player = getPlayerItem();
40
+ var player = getPlayerItem(); // eslint-disable-next-line @typescript-eslint/no-unused-expressions
41
+
35
42
  player ? player.video.paused ? player.api.play() : player.api.pause() : undefined;
43
+ update();
36
44
  }; // 重连
37
45
 
38
46
 
39
47
  var reload = function reload() {
40
- var player = getPlayerItem();
48
+ var player = getPlayerItem(); // eslint-disable-next-line @typescript-eslint/no-unused-expressions
49
+
41
50
  player ? player.reload ? player.reload() : player.api.reload() : undefined;
42
51
  };
43
52
 
@@ -46,57 +55,85 @@ function LiveTools(_ref) {
46
55
  return player ? player.api.snapshot() : undefined;
47
56
  };
48
57
 
58
+ var player = getPlayerItem();
49
59
  return /*#__PURE__*/React.createElement("div", {
50
60
  className: "player-tools"
51
61
  }, /*#__PURE__*/React.createElement("div", {
52
- className: "split-num"
53
- }, ScreenType.map(function (item) {
54
- return /*#__PURE__*/React.createElement("span", {
55
- key: "".concat(item.name),
56
- style: {
57
- padding: 6
58
- },
59
- onClick: function onClick() {
60
- return updateState({
61
- screenNum: item.name
62
- });
63
- }
64
- }, item.name);
65
- }), /*#__PURE__*/React.createElement("span", {
66
- style: {
67
- padding: 6
68
- },
69
- onClick: toggleFullscreen
70
- }, isFullscreen ? '退出' : '全屏'), /*#__PURE__*/React.createElement("span", {
71
- style: {
72
- padding: 6
73
- },
62
+ className: "player-tools-left"
63
+ }, /*#__PURE__*/React.createElement("span", {
64
+ className: "player-tools-item"
65
+ }, /*#__PURE__*/React.createElement(IconFont, {
66
+ type: "lm-player-volume-close",
67
+ title: "\u97F3\u91CF"
68
+ })), /*#__PURE__*/React.createElement("span", {
69
+ className: "player-tools-item"
70
+ }, /*#__PURE__*/React.createElement(IconFont, {
71
+ type: "lm-player-xiangji1fill",
72
+ title: "\u622A\u56FE",
73
+ onClick: snapshot
74
+ })), /*#__PURE__*/React.createElement("span", {
75
+ className: "player-tools-item",
76
+ onClick: reload
77
+ }, /*#__PURE__*/React.createElement(IconFont, {
78
+ type: "lm-player-Refresh_Main",
79
+ title: "\u91CD\u8F7D"
80
+ })), /*#__PURE__*/React.createElement("span", {
81
+ className: "player-tools-item",
82
+ onClick: onClose
83
+ }, /*#__PURE__*/React.createElement(IconFont, {
84
+ type: "lm-player-YesorNo_No_Dark",
85
+ title: "\u5173\u95ED\u5F53\u524D"
86
+ }))), /*#__PURE__*/React.createElement("div", {
87
+ className: "player-tools-mid"
88
+ }, /*#__PURE__*/React.createElement("span", {
89
+ className: "player-tools-item",
90
+ onClick: playToggle
91
+ }, player && !player.video.paused ? /*#__PURE__*/React.createElement(IconFont, {
92
+ type: "lm-player-Pause_Main",
93
+ title: "\u6682\u505C"
94
+ }) : /*#__PURE__*/React.createElement(IconFont, {
95
+ type: "lm-player-Play_Main",
96
+ title: "\u64AD\u653E"
97
+ }))), /*#__PURE__*/React.createElement("div", {
98
+ className: "player-tools-right"
99
+ }, /*#__PURE__*/React.createElement("span", {
100
+ className: "player-tools-item",
101
+ onClick: onCloseAll
102
+ }, /*#__PURE__*/React.createElement(IconFont, {
103
+ type: "lm-player-YesorNo_No_Dark",
104
+ title: "\u5173\u95ED\u6240\u6709"
105
+ })), /*#__PURE__*/React.createElement("span", {
106
+ className: "player-tools-item",
74
107
  onClick: function onClick() {
75
108
  return updateState({
76
109
  mode: mode === 1 ? 2 : 1
77
110
  });
78
111
  }
79
- }, "\u5207\u6362", mode === 1 ? '插件' : '浏览器', "\u6A21\u5F0F"), /*#__PURE__*/React.createElement("span", {
80
- style: {
81
- padding: 6
82
- },
83
- onClick: playToggle
84
- }, "\u64AD\u653E/\u6682\u505C"), /*#__PURE__*/React.createElement("span", {
85
- style: {
86
- padding: 6
87
- },
88
- onClick: reload
89
- }, "\u91CD\u8FDE"), /*#__PURE__*/React.createElement("span", {
90
- style: {
91
- padding: 6
92
- },
112
+ }, /*#__PURE__*/React.createElement(IconFont, {
113
+ type: "lm-player-YesorNo_No_Dark",
114
+ title: "\u5207\u6362".concat(mode === 1 ? '插件' : '浏览器', "\u6A21\u5F0F")
115
+ })), /*#__PURE__*/React.createElement("span", {
116
+ className: "player-tools-item",
93
117
  onClick: toggleFit
94
- }, fit === 'fill' ? '自适应' : '填充'), /*#__PURE__*/React.createElement("span", {
95
- style: {
96
- padding: 6
97
- },
98
- onClick: snapshot
99
- }, "\u622A\u56FE")));
118
+ }, fit === 'fill' ? /*#__PURE__*/React.createElement(IconFont, {
119
+ type: "lm-player-S_View_ScreenSizeFull",
120
+ title: "\u81EA\u9002\u5E94"
121
+ }) : /*#__PURE__*/React.createElement(IconFont, {
122
+ type: "lm-player-S_View_ScreenSizeFull",
123
+ title: "\u586B\u5145"
124
+ })), /*#__PURE__*/React.createElement(ScreenSelect, {
125
+ screenNum: screenNum,
126
+ updateState: updateState
127
+ }), /*#__PURE__*/React.createElement("span", {
128
+ className: "player-tools-item",
129
+ onClick: toggleFullscreen
130
+ }, isFullscreen ? /*#__PURE__*/React.createElement(IconFont, {
131
+ type: "lm-player-ExitFull_Main",
132
+ title: "\u5168\u5C4F"
133
+ }) : /*#__PURE__*/React.createElement(IconFont, {
134
+ type: "lm-player-Full_Main",
135
+ title: "\u5168\u5C4F"
136
+ }))));
100
137
  }
101
138
 
102
139
  export default LiveTools;
@@ -40,7 +40,6 @@ export function LivePlayerWithExt(_a) {
40
40
 
41
41
  var _useFullscreen = _useFullscreen3((_b = ref.current) === null || _b === void 0 ? void 0 : _b.container),
42
42
  _useFullscreen2 = _slicedToArray(_useFullscreen, 2),
43
- _ = _useFullscreen2[0],
44
43
  toggleFullscreen = _useFullscreen2[1].toggleFullscreen;
45
44
 
46
45
  return /*#__PURE__*/React.createElement("div", {
@@ -79,7 +78,6 @@ export function SegmentPlayerWithExt(_a) {
79
78
 
80
79
  var _useFullscreen4 = _useFullscreen3((_b = ref.current) === null || _b === void 0 ? void 0 : _b.container),
81
80
  _useFullscreen5 = _slicedToArray(_useFullscreen4, 2),
82
- _ = _useFullscreen5[0],
83
81
  toggleFullscreen = _useFullscreen5[1].toggleFullscreen;
84
82
 
85
83
  return /*#__PURE__*/React.createElement("div", {
@@ -161,7 +159,6 @@ export function FrontendPlayerWithExt(_ref) {
161
159
 
162
160
  var _useFullscreen6 = _useFullscreen3((_a = ref.current) === null || _a === void 0 ? void 0 : _a.container),
163
161
  _useFullscreen7 = _slicedToArray(_useFullscreen6, 2),
164
- _ = _useFullscreen7[0],
165
162
  toggleFullscreen = _useFullscreen7[1].toggleFullscreen;
166
163
 
167
164
  return /*#__PURE__*/React.createElement("div", {
@@ -6,5 +6,5 @@ import './index.less';
6
6
  * @param param0
7
7
  * @returns
8
8
  */
9
- declare function RecordPlayer({ list, children, queryRecord, onIndexChange }: IRecordPlayerProps): JSX.Element;
9
+ declare function RecordPlayer({ list, children, queryRecord, onIndexChange, onClose, onCloseAll }: IRecordPlayerProps): JSX.Element;
10
10
  export default RecordPlayer;