@cloud-app-dev/vidc 3.0.17 → 3.0.19

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 (78) hide show
  1. package/.umirc.ts +1 -1
  2. package/es/CustomRenderSelect/index.d.ts +1 -1
  3. package/es/CustomRenderSelect/index.js +3 -3
  4. package/es/LoaderScript/utils.js +1 -0
  5. package/es/Map/LevelCenter/DragMarker/index.d.ts +1 -4
  6. package/es/Map/LevelCenter/DragMarker/index.js +2 -5
  7. package/es/Map/LevelCenter/index.js +13 -2
  8. package/es/Map/SinglePoint/index.d.ts +10 -3
  9. package/es/Map/SinglePoint/index.js +37 -15
  10. package/es/Map/hook/useMapEvent.js +9 -8
  11. package/es/Map/index.d.ts +1 -1
  12. package/es/Player/api/index.d.ts +5 -1
  13. package/es/Player/api/index.js +36 -24
  14. package/es/Player/context.d.ts +21 -0
  15. package/es/Player/context.js +16 -0
  16. package/es/Player/contraller_bar/contraller_event.d.ts +1 -4
  17. package/es/Player/contraller_bar/contraller_event.js +37 -28
  18. package/es/Player/contraller_bar/index.d.ts +2 -7
  19. package/es/Player/contraller_bar/index.js +4 -12
  20. package/es/Player/contraller_bar/left_bar.d.ts +2 -7
  21. package/es/Player/contraller_bar/left_bar.js +29 -33
  22. package/es/Player/contraller_bar/right_bar.d.ts +1 -6
  23. package/es/Player/contraller_bar/right_bar.js +6 -3
  24. package/es/Player/contraller_bar/time.d.ts +3 -0
  25. package/es/Player/contraller_bar/time.js +34 -0
  26. package/es/Player/contraller_bar/useBarStatus.js +17 -24
  27. package/es/Player/contraller_bar/volume.d.ts +9 -0
  28. package/es/Player/contraller_bar/volume.js +86 -0
  29. package/es/Player/demo.js +5 -1
  30. package/es/Player/event/errorEvent.js +34 -43
  31. package/es/Player/event/eventName.d.ts +17 -2
  32. package/es/Player/event/eventName.js +5 -1
  33. package/es/Player/event/index.d.ts +2 -0
  34. package/es/Player/event/index.js +55 -3
  35. package/es/Player/fps_play.d.ts +11 -0
  36. package/es/Player/fps_play.js +99 -0
  37. package/es/Player/frontend_player.js +0 -2
  38. package/es/Player/frontend_timeline.d.ts +1 -5
  39. package/es/Player/frontend_timeline.js +14 -11
  40. package/es/Player/live_heart.js +1 -1
  41. package/es/Player/message.js +69 -84
  42. package/es/Player/player.d.ts +15 -15
  43. package/es/Player/segment_player.js +12 -29
  44. package/es/Player/segment_timeline.d.ts +1 -6
  45. package/es/Player/segment_timeline.js +56 -11
  46. package/es/Player/single_player.js +80 -35
  47. package/es/Player/style/bar.css +2 -1
  48. package/es/Player/style/iconfont.js +15 -16
  49. package/es/Player/style/index.css +8 -0
  50. package/es/Player/style/timeline.css +7 -0
  51. package/es/Player/style/volume.css +19 -0
  52. package/es/Player/timeline.d.ts +1 -1
  53. package/es/Player/timeline.js +26 -37
  54. package/es/Player/util.d.ts +2 -1
  55. package/es/Player/util.js +10 -6
  56. package/es/ScreenPlayer/Live.js +0 -1
  57. package/es/ScreenPlayer/LiveTools.js +7 -27
  58. package/es/ScreenPlayer/PlayerWithExt.d.ts +1 -1
  59. package/es/ScreenPlayer/PlayerWithExt.js +2 -4
  60. package/es/ScreenPlayer/Record.js +0 -1
  61. package/es/ScreenPlayer/RecordTools.js +31 -16
  62. package/es/ScreenPlayer/ScreenSelect.js +2 -2
  63. package/es/ScreenPlayer/TimeMode.js +1 -1
  64. package/es/ScreenPlayer/demo2.js +1 -1
  65. package/es/ScreenPlayer/index.css +17 -8
  66. package/es/ScreenPlayer/utils.js +4 -4
  67. package/es/index.d.ts +1 -0
  68. package/es/index.js +1 -0
  69. package/es/useRafInterval/index.d.ts +5 -0
  70. package/es/useRafInterval/index.js +94 -0
  71. package/icon-fix.js +31 -0
  72. package/package.json +1 -1
  73. package/es/Map/SinglePoint/Marker/index.d.ts +0 -7
  74. package/es/Map/SinglePoint/Marker/index.js +0 -29
  75. package/es/Player/event/browserTabEvent.d.ts +0 -9
  76. package/es/Player/event/browserTabEvent.js +0 -57
  77. package/es/ScreenPlayer/TimeSlider.d.ts +0 -129
  78. package/es/ScreenPlayer/TimeSlider.js +0 -556
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.eyJvcmdhbml6YXRpb25JZCI6IjEwMDEwMTAwMDQ0NSIsImV4dCI6MTY2MjI1ODMwNzUxNSwidWlkIjoiMTAxMDAwMDAwNjk5IiwidmFsaWRTdGF0ZSI6MTA0NDA2LCJyb2xlSWQiOlsxMDAwMDAxMTA1MTgsMTAwMDAwMTEwNzI4XSwidmFsaWRUaW1lIjoxNzA0MzgzOTk5MDAwLCJvcHRDZW50ZXJJZCI6IjEwMDEwMDAwMDIzMyIsInVzZXJUeXBlIjoxMDA3MDQsImlhdCI6MTY2MTk5OTEwNzUxNX0.uk_G3vqBCFqxQM2jbV6CSN-z9YNVt_cx5nWXkSuCOIA';
5
+ 'eyJhbGciOiJIUzI1NiJ9.eyJvcmdhbml6YXRpb25JZCI6IjEwMDEwMTAwMDQ0NSIsImV4dCI6MTY2MzQwNTM5ODYzOCwidWlkIjoiMTAxMDAwMDAwNjk5IiwidmFsaWRTdGF0ZSI6MTA0NDA2LCJyb2xlSWQiOlsxMDAwMDAxMTA1MTgsMTAwMDAwMTEwNzI4XSwidmFsaWRUaW1lIjoxNzA0MzgzOTk5MDAwLCJvcHRDZW50ZXJJZCI6IjEwMDEwMDAwMDIzMyIsInVzZXJUeXBlIjoxMDA3MDQsImlhdCI6MTY2MzE0NjE5ODYzOH0.EPh_1eNPNFl-fmLODbHo0mu5R_1kKdt3UUu_0qfBGFY';
6
6
 
7
7
  export default defineConfig({
8
8
  title: 'CloudApp VIDC',
@@ -6,5 +6,5 @@ interface ICustomRenderSelectProps extends SelectProps {
6
6
  value: any;
7
7
  customRender: (value: any) => JSX.Element;
8
8
  }
9
- declare function CustomRenderSelect({ children, value, customRender, dropdownClassName, getPopupContainer, ...props }: ICustomRenderSelectProps): JSX.Element;
9
+ declare function CustomRenderSelect({ children, value, customRender, popupClassName, getPopupContainer, ...props }: ICustomRenderSelectProps): JSX.Element;
10
10
  export default CustomRenderSelect;
@@ -24,9 +24,9 @@ function CustomRenderSelect(_a) {
24
24
  var children = _a.children,
25
25
  value = _a.value,
26
26
  customRender = _a.customRender,
27
- dropdownClassName = _a.dropdownClassName,
27
+ popupClassName = _a.popupClassName,
28
28
  getPopupContainer = _a.getPopupContainer,
29
- props = __rest(_a, ["children", "value", "customRender", "dropdownClassName", "getPopupContainer"]);
29
+ props = __rest(_a, ["children", "value", "customRender", "popupClassName", "getPopupContainer"]);
30
30
 
31
31
  var classname = useMemo(function () {
32
32
  return "custom-render-select-dropdown-".concat(_uuid());
@@ -57,7 +57,7 @@ function CustomRenderSelect(_a) {
57
57
  ref: domRef
58
58
  }, /*#__PURE__*/React.createElement(_Select, Object.assign({}, props, {
59
59
  value: value,
60
- dropdownClassName: "custom-render-select-dropdown ".concat(classname, " ").concat(dropdownClassName),
60
+ popupClassName: "custom-render-select-dropdown ".concat(classname, " ").concat(popupClassName),
61
61
  getPopupContainer: getPopupContainer ? getPopupContainer : function () {
62
62
  return domRef.current.parentElement.parentElement;
63
63
  },
@@ -26,6 +26,7 @@ if (!global._LOADER_SCRIPT_URL) {
26
26
  }
27
27
 
28
28
  export var loadScript = function loadScript(url) {
29
+ console.log(url);
29
30
  return new Promise(function (resolve, reject) {
30
31
  if (global._LOADER_SCRIPT_URL[url]) {
31
32
  resolve(null);
@@ -1,11 +1,8 @@
1
1
  /// <reference types="react" />
2
- import { LatLng } from '../../interface';
3
2
  export interface IDragMarkerProps {
4
3
  center?: [number, number];
5
- zoom?: number;
6
4
  onChange?: (options: {
7
- center: [number, number] | LatLng;
8
- zoom: number;
5
+ center: [number, number];
9
6
  }) => void;
10
7
  }
11
8
  declare function DragMarker({ center, onChange }: IDragMarkerProps): JSX.Element;
@@ -29,16 +29,13 @@ function DragMarker(_ref) {
29
29
  var latlng = type.leaflet ? e.target.getLatLng() : e.target.getPosition();
30
30
  instance.setCenter(latlng);
31
31
  onChange === null || onChange === void 0 ? void 0 : onChange({
32
- center: latlng,
33
- zoom: instance.getZoom()
32
+ center: latlng
34
33
  });
35
34
  });
36
35
  instance.map.on('zoomend', function (e) {
37
- var zoom = e.target.getZoom();
38
36
  var latlng = type.leaflet ? marker.getLatLng() : marker.getPosition();
39
37
  onChange === null || onChange === void 0 ? void 0 : onChange({
40
- center: latlng,
41
- zoom: zoom
38
+ center: [latlng.getLng(), latlng.getLat()]
42
39
  });
43
40
  }); // eslint-disable-next-line react-hooks/exhaustive-deps
44
41
  }, [marker]);
@@ -48,14 +48,25 @@ function LevelCenter(_ref) {
48
48
  });
49
49
  }
50
50
  });
51
+ useMapEvent('zoomed', function (event) {
52
+ onLevelCenterChange === null || onLevelCenterChange === void 0 ? void 0 : onLevelCenterChange({
53
+ center: defaultCenter,
54
+ zoom: event.target.getZoom()
55
+ });
56
+ });
51
57
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(ClusterLayer, {
52
58
  points: points
53
59
  }), /*#__PURE__*/React.createElement(ResetTools, {
54
60
  onMapReset: mapRest
55
61
  }), /*#__PURE__*/React.createElement(DragMarker, {
56
62
  center: defaultCenter,
57
- zoom: defaultZoom,
58
- onChange: onLevelCenterChange
63
+ onChange: function onChange(_ref2) {
64
+ var center = _ref2.center;
65
+ return onLevelCenterChange === null || onLevelCenterChange === void 0 ? void 0 : onLevelCenterChange({
66
+ center: center,
67
+ zoom: defaultZoom
68
+ });
69
+ }
59
70
  }), children);
60
71
  }
61
72
 
@@ -1,7 +1,14 @@
1
+ import React from 'react';
1
2
  import { MapPoint } from '../interface';
2
3
  import './index.less';
3
- export interface ISinglePoint {
4
- point: MapPoint;
4
+ export interface ISinglePlayerProps {
5
+ center?: [number, number];
6
+ points: MapPoint[];
7
+ enableClick?: boolean;
8
+ onCenterChange?: (options: {
9
+ center: [number, number];
10
+ }) => void;
11
+ children?: React.ReactNode;
5
12
  }
6
- declare const _default: (props: ISinglePoint) => JSX.Element;
13
+ declare const _default: (props: ISinglePlayerProps) => JSX.Element;
7
14
  export default _default;
@@ -1,35 +1,57 @@
1
1
  import _useMount from "ahooks/es/useMount";
2
- import React, { useCallback, useContext, useMemo } from 'react';
2
+ import React, { useCallback, useContext } from 'react';
3
+ import ClusterLayer from '../ClusterLayer';
3
4
  import ResetTools from '../ResetTools';
4
- import Marker from './Marker';
5
+ import DragMarker from '../LevelCenter/DragMarker';
5
6
  import withMap from '../withMap';
6
7
  import { mapContext } from '../Context';
7
- import useMapType from '../hook/useMapType';
8
+ import useMapEvent from '../hook/useMapEvent';
8
9
  import "./index.css";
9
10
 
10
11
  function SinglePoint(_ref) {
11
- var point = _ref.point;
12
+ var center = _ref.center,
13
+ points = _ref.points,
14
+ onCenterChange = _ref.onCenterChange,
15
+ enableClick = _ref.enableClick,
16
+ children = _ref.children;
12
17
 
13
18
  var _useContext = useContext(mapContext),
14
19
  instance = _useContext.instance;
15
20
 
16
- var type = useMapType();
17
- var defaultCenter = useMemo(function () {
18
- return type.AMap ? [point.longitude, point.latitude] : [point.latitude, point.longitude];
19
- }, [type.AMap, point.longitude, point.latitude]);
20
21
  var mapRest = useCallback(function () {
21
- return instance.setZoomAndCenter(instance.config.zoom, defaultCenter);
22
- }, [defaultCenter, instance]);
22
+ return instance.setZoomAndCenter(instance.config.zoom, instance.config.center);
23
+ }, [instance]);
23
24
 
24
25
  _useMount(function () {
25
- return mapRest();
26
+ if (enableClick) {
27
+ instance.setCursor('pointer');
28
+ }
29
+
30
+ mapRest();
26
31
  });
27
32
 
28
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(ResetTools, {
33
+ useMapEvent('click', function (event) {
34
+ if (enableClick) {
35
+ var _center = [event.lnglat.lng, event.lnglat.lat];
36
+ instance.setCenter(_center);
37
+ onCenterChange === null || onCenterChange === void 0 ? void 0 : onCenterChange({
38
+ center: _center
39
+ });
40
+ }
41
+ });
42
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(ClusterLayer, {
43
+ points: points
44
+ }), /*#__PURE__*/React.createElement(ResetTools, {
29
45
  onMapReset: mapRest
30
- }), /*#__PURE__*/React.createElement(Marker, {
31
- point: point
32
- }));
46
+ }), /*#__PURE__*/React.createElement(DragMarker, {
47
+ center: center,
48
+ onChange: function onChange(_ref2) {
49
+ var center = _ref2.center;
50
+ return onCenterChange === null || onCenterChange === void 0 ? void 0 : onCenterChange({
51
+ center: center
52
+ });
53
+ }
54
+ }), children);
33
55
  }
34
56
 
35
57
  export default withMap(SinglePoint, 'single-point-map-container');
@@ -1,22 +1,23 @@
1
- import _useCreation from "ahooks/es/useCreation";
1
+ import _useLatest from "ahooks/es/useLatest";
2
2
  import { useContext, useEffect } from 'react';
3
3
  import { mapContext } from '../Context';
4
4
 
5
5
  function useMapEvent(type, fn) {
6
- var action = _useCreation(function () {
7
- return fn;
8
- }, []);
6
+ var fnRef = _useLatest(fn);
9
7
 
10
8
  var _useContext = useContext(mapContext),
11
9
  instance = _useContext.instance;
12
10
 
13
11
  useEffect(function () {
14
- console.log(11111);
15
- instance.on(type, action);
12
+ var eventAction = function eventAction(event) {
13
+ fnRef.current(event);
14
+ };
15
+
16
+ instance.on(type, eventAction);
16
17
  return function () {
17
- return instance.off(type, action);
18
+ return instance.off(type, eventAction);
18
19
  }; // eslint-disable-next-line react-hooks/exhaustive-deps
19
- }, []);
20
+ }, [instance, type]);
20
21
  }
21
22
 
22
23
  export default useMapEvent;
package/es/Map/index.d.ts CHANGED
@@ -16,7 +16,7 @@ declare const Map: {
16
16
  LoaderMap: typeof LoaderMap;
17
17
  BasicMap: typeof BasicMap;
18
18
  ResetTools: typeof ResetTools;
19
- SinglePoint: (props: import("./SinglePoint").ISinglePoint) => JSX.Element;
19
+ SinglePoint: (props: import("./SinglePoint").ISinglePlayerProps) => JSX.Element;
20
20
  useMarker: typeof useMarker;
21
21
  withMap: typeof withMap;
22
22
  };
@@ -7,12 +7,15 @@ declare class Api {
7
7
  get video(): HTMLVideoElement;
8
8
  play: () => void;
9
9
  pause: () => void;
10
+ get paused(): boolean;
11
+ get muted(): boolean;
10
12
  /**
11
13
  * 设置currentTime实现seek
12
14
  * @param {*} seconds
13
15
  */
14
16
  seekTo: (seconds: number) => void;
15
17
  setVolume: (fraction: number) => void;
18
+ getVolume: () => number;
16
19
  mute: () => void;
17
20
  unmute: () => void;
18
21
  /**
@@ -51,7 +54,8 @@ declare class Api {
51
54
  unload: () => void;
52
55
  reload: () => void;
53
56
  toggleFit: () => void;
54
- setIndex: (i: number) => void;
57
+ openFpsPlay: () => void;
58
+ closeFpsPlay: () => void;
55
59
  destroy: () => void;
56
60
  }
57
61
  export declare type TypeAndPlay = {
@@ -50,6 +50,10 @@ var Api = /*#__PURE__*/function () {
50
50
  _this.video.volume = fraction;
51
51
  };
52
52
 
53
+ this.getVolume = function () {
54
+ return _this.video.volume;
55
+ };
56
+
53
57
  this.mute = function () {
54
58
  _this.video.muted = true;
55
59
  };
@@ -164,7 +168,9 @@ var Api = /*#__PURE__*/function () {
164
168
 
165
169
  this.toggleFit = function () {};
166
170
 
167
- this.setIndex = function (i) {};
171
+ this.openFpsPlay = function () {};
172
+
173
+ this.closeFpsPlay = function () {};
168
174
 
169
175
  this.destroy = function () {
170
176
  _this.container = null;
@@ -178,6 +184,16 @@ var Api = /*#__PURE__*/function () {
178
184
  get: function get() {
179
185
  return this.container.querySelector('video');
180
186
  }
187
+ }, {
188
+ key: "paused",
189
+ get: function get() {
190
+ return this.video.paused;
191
+ }
192
+ }, {
193
+ key: "muted",
194
+ get: function get() {
195
+ return this.video.muted;
196
+ }
181
197
  }]);
182
198
 
183
199
  return Api;
@@ -195,37 +211,33 @@ export function useTypeAndPlay(url, type, isLive, container, segments, flvConfig
195
211
  setState = _useState2[1];
196
212
 
197
213
  useEffect(function () {
198
- if (!container) {
214
+ var isReady = container && (url || type === 'flv' && segments);
215
+
216
+ if (!isReady) {
199
217
  return undefined;
200
218
  }
201
219
 
202
220
  var video = container.querySelector('video');
203
221
  var options = {};
204
222
 
205
- if (type === 'flv') {
206
- if (!(url || segments)) {
207
- return undefined;
208
- }
209
-
210
- options.type = 'flv';
211
- options.flv = createFlvPlayer(video, url, isLive, flvConfig);
212
- }
213
-
214
- if (type === 'hls') {
215
- if (!url) {
216
- return undefined;
217
- }
218
-
219
- options.type = 'hls';
220
- options.hls = createHlsPlayer(video, url, hlsConfig);
221
- }
222
-
223
- if (url && type === 'native') {
224
- options.type = 'native';
225
- video.setAttribute('src', url);
223
+ switch (type) {
224
+ case 'flv':
225
+ options.type = 'flv';
226
+ options.flv = createFlvPlayer(video, url, isLive, flvConfig);
227
+ break;
228
+
229
+ case 'hls':
230
+ options.type = 'hls';
231
+ options.hls = createHlsPlayer(video, url, isLive, hlsConfig);
232
+ break;
233
+
234
+ default:
235
+ options.type = 'native';
236
+ video.setAttribute('src', url);
237
+ break;
226
238
  }
227
239
 
228
- url && video.paused && tryCatch(function () {
240
+ video.paused && tryCatch(function () {
229
241
  return video.play();
230
242
  });
231
243
  setState(options);
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+ import type Api from './api';
3
+ import type VideoEventInstance from './event';
4
+ export interface IPlayerContextProps {
5
+ /**
6
+ * @description 用于获取微应用顶层的dom节点
7
+ */
8
+ container: HTMLElement;
9
+ api: Api;
10
+ event: VideoEventInstance;
11
+ isLive: boolean;
12
+ isFpsPlay: boolean;
13
+ children: React.ReactNode;
14
+ }
15
+ export declare const Context: React.Context<Omit<IPlayerContextProps, "children">>;
16
+ export declare function Provider({ children, ...props }: IPlayerContextProps): JSX.Element;
17
+ export declare namespace Provider {
18
+ var defaultProps: {
19
+ getContainer: () => HTMLElement;
20
+ };
21
+ }
@@ -0,0 +1,16 @@
1
+ import { __rest } from "tslib";
2
+ import React from 'react';
3
+ export var Context = /*#__PURE__*/React.createContext(null);
4
+ export function Provider(_a) {
5
+ var children = _a.children,
6
+ props = __rest(_a, ["children"]);
7
+
8
+ return /*#__PURE__*/React.createElement(Context.Provider, {
9
+ value: Object.assign({}, props)
10
+ }, children);
11
+ }
12
+ Provider.defaultProps = {
13
+ getContainer: function getContainer() {
14
+ return document.body;
15
+ }
16
+ };
@@ -1,9 +1,6 @@
1
1
  import React from 'react';
2
- import VideoEventInstance from '../event';
3
2
  interface IContrallerEventProps {
4
- event?: VideoEventInstance;
5
- container?: HTMLElement;
6
3
  children?: React.ReactNode;
7
4
  }
8
- declare function ContrallerEvent({ event, container, children }: IContrallerEventProps): JSX.Element;
5
+ declare function ContrallerEvent({ children }: IContrallerEventProps): JSX.Element;
9
6
  export default ContrallerEvent;
@@ -1,3 +1,6 @@
1
+ import _useEventListener from "ahooks/es/useEventListener";
2
+ import _useMount from "ahooks/es/useMount";
3
+
1
4
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
5
 
3
6
  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."); }
@@ -10,13 +13,17 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
10
13
 
11
14
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
12
15
 
13
- import React, { useEffect, useState, useRef } from 'react';
16
+ import React, { useState, useRef, useContext } from 'react';
17
+ import { Context } from '../context';
14
18
  import EventName from '../event/eventName';
15
19
 
16
20
  function ContrallerEvent(_ref) {
17
- var event = _ref.event,
18
- container = _ref.container,
19
- children = _ref.children;
21
+ var children = _ref.children;
22
+
23
+ var _useContext = useContext(Context),
24
+ event = _useContext.event,
25
+ container = _useContext.container;
26
+
20
27
  var timer = useRef(null);
21
28
 
22
29
  var _useState = useState(true),
@@ -24,30 +31,32 @@ function ContrallerEvent(_ref) {
24
31
  visibel = _useState2[0],
25
32
  setVisibel = _useState2[1];
26
33
 
27
- useEffect(function () {
28
- var showContraller = function showContraller() {
29
- clearTimeout(timer.current);
30
- setVisibel(true);
31
- event.emit(EventName.SHOW_CONTRALLER);
32
- };
33
-
34
- var hideContraller = function hideContraller() {
35
- clearTimeout(timer.current);
36
- timer.current = setTimeout(function () {
37
- setVisibel(false);
38
- event.emit(EventName.HIDE_CONTRALLER);
39
- }, 3 * 1000);
40
- }; // 默认执行延时hide
41
-
42
-
43
- hideContraller();
44
- container.addEventListener('mouseenter', showContraller, false);
45
- container.addEventListener('mouseleave', hideContraller, false);
46
- return function () {
47
- container.removeEventListener('mouseenter', showContraller, false);
48
- container.removeEventListener('mouseleave', hideContraller, false);
49
- };
50
- }, [container, event]);
34
+ var showContraller = function showContraller() {
35
+ clearTimeout(timer.current);
36
+ setVisibel(true);
37
+ event.emit(EventName.SHOW_CONTRALLER);
38
+ };
39
+
40
+ var hideContraller = function hideContraller() {
41
+ clearTimeout(timer.current);
42
+ timer.current = setTimeout(function () {
43
+ setVisibel(false);
44
+ event.emit(EventName.HIDE_CONTRALLER);
45
+ }, 3 * 1000);
46
+ };
47
+
48
+ _useMount(function () {
49
+ return hideContraller();
50
+ });
51
+
52
+ _useEventListener('mouseenter', showContraller, {
53
+ target: container
54
+ });
55
+
56
+ _useEventListener('mouseleave', hideContraller, {
57
+ target: container
58
+ });
59
+
51
60
  return /*#__PURE__*/React.createElement(React.Fragment, null, React.Children.map(children, function (child) {
52
61
  return /*#__PURE__*/React.isValidElement(child) ? /*#__PURE__*/React.cloneElement(child, {
53
62
  visibel: visibel
@@ -1,19 +1,14 @@
1
1
  import React from 'react';
2
- import type Api from '../api';
3
- import type VideoEventInstance from '../event';
4
2
  import '../style/bar.less';
5
3
  interface IContrallerBarProps {
6
- container?: HTMLElement;
7
4
  rightExtContents: React.ReactNode;
8
5
  rightMidExtContents: React.ReactNode;
9
6
  visibel?: boolean;
10
- api: Api;
11
- event: VideoEventInstance;
12
- isLive?: boolean;
13
7
  leftExtContents: React.ReactNode;
14
8
  leftMidExtContents: React.ReactNode;
15
9
  reload: () => void;
16
10
  hideTimeProgress?: boolean;
11
+ oneFpsPlay?: boolean;
17
12
  }
18
- declare function ContrallerBar({ container, rightExtContents, rightMidExtContents, visibel, api, event, isLive, leftExtContents, leftMidExtContents, reload, hideTimeProgress, }: IContrallerBarProps): JSX.Element;
13
+ declare function ContrallerBar({ rightExtContents, rightMidExtContents, visibel, leftExtContents, leftMidExtContents, reload, hideTimeProgress, oneFpsPlay, }: IContrallerBarProps): JSX.Element;
19
14
  export default ContrallerBar;
@@ -4,31 +4,23 @@ import RightBar from './right_bar';
4
4
  import "../style/bar.css";
5
5
 
6
6
  function ContrallerBar(_ref) {
7
- var container = _ref.container,
8
- rightExtContents = _ref.rightExtContents,
7
+ var rightExtContents = _ref.rightExtContents,
9
8
  rightMidExtContents = _ref.rightMidExtContents,
10
9
  visibel = _ref.visibel,
11
- api = _ref.api,
12
- event = _ref.event,
13
- isLive = _ref.isLive,
14
10
  leftExtContents = _ref.leftExtContents,
15
11
  leftMidExtContents = _ref.leftMidExtContents,
16
12
  reload = _ref.reload,
17
- hideTimeProgress = _ref.hideTimeProgress;
13
+ hideTimeProgress = _ref.hideTimeProgress,
14
+ oneFpsPlay = _ref.oneFpsPlay;
18
15
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
19
16
  className: "contraller-bar-layout ".concat(!visibel ? 'hide-contraller-bar' : '')
20
17
  }, /*#__PURE__*/React.createElement(LeftBar, {
18
+ oneFpsPlay: oneFpsPlay,
21
19
  hideTimeProgress: hideTimeProgress,
22
- api: api,
23
20
  reload: reload,
24
- event: event,
25
- container: container,
26
- isLive: isLive,
27
21
  leftMidExtContents: leftMidExtContents,
28
22
  leftExtContents: leftExtContents
29
23
  }), /*#__PURE__*/React.createElement(RightBar, {
30
- api: api,
31
- container: container,
32
24
  rightExtContents: rightExtContents,
33
25
  rightMidExtContents: rightMidExtContents
34
26
  })));
@@ -1,15 +1,10 @@
1
1
  import React from 'react';
2
- import Api from '../api';
3
- import VideoEventInstance from '../event';
4
2
  interface ILeftBarProps {
5
- api: Api;
6
- event: VideoEventInstance;
7
- container: HTMLElement;
8
- isLive: boolean;
9
3
  leftExtContents?: React.ReactNode;
10
4
  leftMidExtContents?: React.ReactNode;
11
5
  reload: () => void;
12
6
  hideTimeProgress?: boolean;
7
+ oneFpsPlay?: boolean;
13
8
  }
14
- declare function LeftBar({ api, event, container, isLive, reload, leftExtContents, leftMidExtContents, hideTimeProgress }: ILeftBarProps): JSX.Element;
9
+ declare function LeftBar({ reload, leftExtContents, leftMidExtContents, hideTimeProgress, oneFpsPlay }: ILeftBarProps): JSX.Element;
15
10
  export default LeftBar;