@vtx/player 1.10.19 → 1.12.1

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 (177) hide show
  1. package/lib/api/fetch.js +68 -71
  2. package/lib/api/fetch.js.map +1 -1
  3. package/lib/api/index.js +33 -51
  4. package/lib/api/index.js.map +1 -1
  5. package/lib/api/types.d.ts +14 -7
  6. package/lib/api/types.js +0 -1
  7. package/lib/api/types.js.map +1 -1
  8. package/lib/bd/PlayerManager.js +8 -7
  9. package/lib/bd/PlayerManager.js.map +1 -1
  10. package/lib/bd2.x/PlayerManager.d.ts +71 -0
  11. package/lib/bd2.x/PlayerManager.js +228 -0
  12. package/lib/bd2.x/PlayerManager.js.map +1 -0
  13. package/lib/bd2.x/swfobject-all.d.ts +11 -0
  14. package/lib/bd2.x/swfobject-all.js +158 -0
  15. package/lib/bd2.x/swfobject-all.js.map +1 -0
  16. package/lib/bd2.x/swfobject.d.ts +40 -0
  17. package/lib/bd2.x/swfobject.js +722 -0
  18. package/lib/bd2.x/swfobject.js.map +1 -0
  19. package/lib/bill-player/index.d.ts +1 -1
  20. package/lib/bill-player/index.js +32 -32
  21. package/lib/bill-player/index.js.map +1 -1
  22. package/lib/components/download-tag/index.js +19 -18
  23. package/lib/components/download-tag/index.js.map +1 -1
  24. package/lib/components/set-tag-video/index.js +25 -24
  25. package/lib/components/set-tag-video/index.js.map +1 -1
  26. package/lib/components/split-screen/index.d.ts +1 -1
  27. package/lib/components/split-screen/index.js +3 -5
  28. package/lib/components/split-screen/index.js.map +1 -1
  29. package/lib/components/tag-video/index.js +16 -13
  30. package/lib/components/tag-video/index.js.map +1 -1
  31. package/lib/components/video-scale/index.d.ts +1 -1
  32. package/lib/components/video-scale/index.js +16 -15
  33. package/lib/components/video-scale/index.js.map +1 -1
  34. package/lib/config.d.ts +1 -1
  35. package/lib/config.js +1 -2
  36. package/lib/config.js.map +1 -1
  37. package/lib/context/index.js +3 -5
  38. package/lib/context/index.js.map +1 -1
  39. package/lib/controls/index.d.ts +13 -12
  40. package/lib/controls/index.js +44 -42
  41. package/lib/controls/index.js.map +1 -1
  42. package/lib/h264/PlayerManager.js +8 -7
  43. package/lib/h264/PlayerManager.js.map +1 -1
  44. package/lib/history-control/index.d.ts +2 -2
  45. package/lib/history-control/index.js +24 -23
  46. package/lib/history-control/index.js.map +1 -1
  47. package/lib/history-control-v2/components/grid-item/index.js +33 -13
  48. package/lib/history-control-v2/components/grid-item/index.js.map +1 -1
  49. package/lib/history-control-v2/components/panel/VideoTable.d.ts +4 -2
  50. package/lib/history-control-v2/components/panel/VideoTable.js +283 -74
  51. package/lib/history-control-v2/components/panel/VideoTable.js.map +1 -1
  52. package/lib/history-control-v2/components/panel/index.d.ts +1 -0
  53. package/lib/history-control-v2/components/panel/index.js +51 -26
  54. package/lib/history-control-v2/components/panel/index.js.map +1 -1
  55. package/lib/history-control-v2/context.js +1 -2
  56. package/lib/history-control-v2/context.js.map +1 -1
  57. package/lib/history-control-v2/index.d.ts +4 -4
  58. package/lib/history-control-v2/index.js +77 -77
  59. package/lib/history-control-v2/index.js.map +1 -1
  60. package/lib/history-control-v2/interface.d.ts +20 -11
  61. package/lib/history-control-v2/utils.d.ts +1 -1
  62. package/lib/history-control-v2/utils.js +51 -27
  63. package/lib/history-control-v2/utils.js.map +1 -1
  64. package/lib/history-player/index.d.ts +20 -1
  65. package/lib/history-player/index.js +238 -185
  66. package/lib/history-player/index.js.map +1 -1
  67. package/lib/hooks/useSettings.js +1 -2
  68. package/lib/hooks/useSettings.js.map +1 -1
  69. package/lib/hooks/useTranslation.d.ts +14 -0
  70. package/lib/hooks/useTranslation.js +204 -0
  71. package/lib/hooks/useTranslation.js.map +1 -0
  72. package/lib/icc/PlayerManager.js +9 -8
  73. package/lib/icc/PlayerManager.js.map +1 -1
  74. package/lib/icc/api.d.ts +1 -68
  75. package/lib/icc/api.js +7 -3
  76. package/lib/icc/api.js.map +1 -1
  77. package/lib/icons/index.d.ts +38 -38
  78. package/lib/icons/index.js +101 -467
  79. package/lib/icons/index.js.map +1 -1
  80. package/lib/index.d.ts +2 -0
  81. package/lib/index.js +38 -1
  82. package/lib/index.js.map +1 -1
  83. package/lib/live-channel-player/index.d.ts +1 -1
  84. package/lib/live-channel-player/index.js +28 -32
  85. package/lib/live-channel-player/index.js.map +1 -1
  86. package/lib/live-control/index.d.ts +4 -2
  87. package/lib/live-control/index.js +29 -19
  88. package/lib/live-control/index.js.map +1 -1
  89. package/lib/live-control-v2/index.d.ts +5 -3
  90. package/lib/live-control-v2/index.js +22 -22
  91. package/lib/live-control-v2/index.js.map +1 -1
  92. package/lib/live-player/index.d.ts +1 -0
  93. package/lib/live-player/index.js +169 -143
  94. package/lib/live-player/index.js.map +1 -1
  95. package/lib/locales/en.json +93 -0
  96. package/lib/locales/index.d.ts +20 -0
  97. package/lib/locales/index.js +105 -0
  98. package/lib/locales/index.js.map +1 -0
  99. package/lib/locales/zh-CN.json +93 -0
  100. package/lib/mpegts/PlayerManager.js +14 -8
  101. package/lib/mpegts/PlayerManager.js.map +1 -1
  102. package/lib/player/BdPlayer.d.ts +7 -2
  103. package/lib/player/BdPlayer.js +138 -47
  104. package/lib/player/BdPlayer.js.map +1 -1
  105. package/lib/player/BdPlayer2.d.ts +117 -0
  106. package/lib/player/BdPlayer2.js +341 -0
  107. package/lib/player/BdPlayer2.js.map +1 -0
  108. package/lib/player/FlvPlayer.d.ts +2 -1
  109. package/lib/player/FlvPlayer.js +17 -20
  110. package/lib/player/FlvPlayer.js.map +1 -1
  111. package/lib/player/H264Player.d.ts +2 -1
  112. package/lib/player/H264Player.js +17 -20
  113. package/lib/player/H264Player.js.map +1 -1
  114. package/lib/player/HkcarwsPlayer.d.ts +10 -1
  115. package/lib/player/HkcarwsPlayer.js +149 -36
  116. package/lib/player/HkcarwsPlayer.js.map +1 -1
  117. package/lib/player/HkwsPlayer.d.ts +19 -1
  118. package/lib/player/HkwsPlayer.js +178 -90
  119. package/lib/player/HkwsPlayer.js.map +1 -1
  120. package/lib/player/HlsPlayer.d.ts +2 -1
  121. package/lib/player/HlsPlayer.js +17 -20
  122. package/lib/player/HlsPlayer.js.map +1 -1
  123. package/lib/player/IccwsPlayer.d.ts +2 -1
  124. package/lib/player/IccwsPlayer.js +19 -22
  125. package/lib/player/IccwsPlayer.js.map +1 -1
  126. package/lib/player/IframePlayer.d.ts +2 -1
  127. package/lib/player/IframePlayer.js +8 -7
  128. package/lib/player/IframePlayer.js.map +1 -1
  129. package/lib/player/Mp4Player.d.ts +2 -1
  130. package/lib/player/Mp4Player.js +17 -20
  131. package/lib/player/Mp4Player.js.map +1 -1
  132. package/lib/player/RslPlayer.d.ts +2 -1
  133. package/lib/player/RslPlayer.js +17 -20
  134. package/lib/player/RslPlayer.js.map +1 -1
  135. package/lib/player/VtxHlsPlayer.d.ts +2 -1
  136. package/lib/player/VtxHlsPlayer.js +17 -20
  137. package/lib/player/VtxHlsPlayer.js.map +1 -1
  138. package/lib/player/VtxwhepPlayer.d.ts +2 -1
  139. package/lib/player/VtxwhepPlayer.js +17 -20
  140. package/lib/player/VtxwhepPlayer.js.map +1 -1
  141. package/lib/player/VtxwsPlayer.d.ts +2 -1
  142. package/lib/player/VtxwsPlayer.js +16 -19
  143. package/lib/player/VtxwsPlayer.js.map +1 -1
  144. package/lib/player/Web34Player.d.ts +172 -0
  145. package/lib/player/Web34Player.js +1912 -0
  146. package/lib/player/Web34Player.js.map +1 -0
  147. package/lib/player/WebrtcPlayer.d.ts +2 -1
  148. package/lib/player/WebrtcPlayer.js +17 -20
  149. package/lib/player/WebrtcPlayer.js.map +1 -1
  150. package/lib/player/WfsPlayer.d.ts +2 -1
  151. package/lib/player/WfsPlayer.js +17 -20
  152. package/lib/player/WfsPlayer.js.map +1 -1
  153. package/lib/player/YsyPlayer.d.ts +116 -0
  154. package/lib/player/YsyPlayer.js +273 -0
  155. package/lib/player/YsyPlayer.js.map +1 -0
  156. package/lib/player/index.d.ts +4 -1
  157. package/lib/player/index.js +22 -1
  158. package/lib/player/index.js.map +1 -1
  159. package/lib/player/indexOld.d.ts +2 -1
  160. package/lib/player/indexOld.js +98 -101
  161. package/lib/player/indexOld.js.map +1 -1
  162. package/lib/rsl/PlayerManager.d.ts +1 -1
  163. package/lib/rsl/PlayerManager.js +10 -9
  164. package/lib/rsl/PlayerManager.js.map +1 -1
  165. package/lib/typings/h5player.d.ts +33 -1
  166. package/lib/utils/index.d.ts +1 -1
  167. package/lib/utils/index.js +16 -27
  168. package/lib/utils/index.js.map +1 -1
  169. package/lib/vtxHls/PlayerManager.js +8 -7
  170. package/lib/vtxHls/PlayerManager.js.map +1 -1
  171. package/lib/vtxHls/WhepManager.js +11 -10
  172. package/lib/vtxHls/WhepManager.js.map +1 -1
  173. package/lib/webrtc/PlayerManager.js +8 -7
  174. package/lib/webrtc/PlayerManager.js.map +1 -1
  175. package/lib/wfs/PlayerManager.js +8 -7
  176. package/lib/wfs/PlayerManager.js.map +1 -1
  177. package/package.json +5 -1
@@ -5,12 +5,10 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports["default"] = exports.PlayerThemeContext = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
9
- var PlayerThemeContext = /*#__PURE__*/_react["default"].createContext({
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
9
+ var PlayerThemeContext = exports.PlayerThemeContext = /*#__PURE__*/_react["default"].createContext({
10
10
  theme: 'light'
11
11
  });
12
- exports.PlayerThemeContext = PlayerThemeContext;
13
12
  var PlayerThemeProvider = PlayerThemeContext.Provider;
14
- var _default = PlayerThemeProvider;
15
- exports["default"] = _default;
13
+ var _default = exports["default"] = PlayerThemeProvider;
16
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","obj","__esModule","PlayerThemeContext","React","createContext","theme","exports","PlayerThemeProvider","Provider","_default"],"sources":["context/index.js"],"sourcesContent":["import React from 'react';\nexport const PlayerThemeContext = React.createContext({\n theme: 'light',\n});\nconst PlayerThemeProvider = PlayerThemeContext.Provider;\nexport default PlayerThemeProvider;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA0B,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AACnB,IAAME,kBAAkB,gBAAGC,iBAAK,CAACC,aAAa,CAAC;EAClDC,KAAK,EAAE;AACX,CAAC,CAAC;AAACC,OAAA,CAAAJ,kBAAA,GAAAA,kBAAA;AACH,IAAMK,mBAAmB,GAAGL,kBAAkB,CAACM,QAAQ;AAAC,IAAAC,QAAA,GACzCF,mBAAmB;AAAAD,OAAA,cAAAG,QAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","e","__esModule","PlayerThemeContext","exports","React","createContext","theme","PlayerThemeProvider","Provider","_default"],"sources":["context/index.js"],"sourcesContent":["import React from 'react';\nexport const PlayerThemeContext = React.createContext({\n theme: 'light',\n});\nconst PlayerThemeProvider = PlayerThemeContext.Provider;\nexport default PlayerThemeProvider;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA0B,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,gBAAAA,CAAA;AACnB,IAAME,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,gBAAGE,iBAAK,CAACC,aAAa,CAAC;EAClDC,KAAK,EAAE;AACX,CAAC,CAAC;AACF,IAAMC,mBAAmB,GAAGL,kBAAkB,CAACM,QAAQ;AAAC,IAAAC,QAAA,GAAAN,OAAA,cACzCI,mBAAmB","ignoreList":[]}
@@ -1,26 +1,26 @@
1
1
  /// <reference types="react" />
2
- import { CloudControlParams } from '../api/types';
2
+ import { CloudControlCommandType, CloudControlParams } from '../api/types';
3
3
  interface VolumeControlProps {
4
4
  container: HTMLDivElement | null;
5
5
  player?: any;
6
6
  defaultValue?: number;
7
7
  }
8
8
  /** 音量控制 */
9
- export declare const VolumeControl: (props: VolumeControlProps) => JSX.Element;
10
- declare type SpeedValue = 0.5 | 1 | 2 | 4 | 8;
9
+ export declare const VolumeControl: (props: VolumeControlProps) => import("react").JSX.Element;
10
+ type SpeedValue = 0.5 | 1 | 2 | 4 | 8;
11
11
  interface SpeedControlProps {
12
12
  container: HTMLDivElement | null;
13
13
  player?: any;
14
14
  defaultValue?: SpeedValue;
15
15
  }
16
16
  /** 速度控制 */
17
- export declare const SpeedControl: (props: SpeedControlProps) => JSX.Element;
17
+ export declare const SpeedControl: (props: SpeedControlProps) => import("react").JSX.Element;
18
18
  interface ErrorStateProps {
19
19
  /** 重试回调 */
20
20
  onClick?: () => void;
21
21
  }
22
- export declare const ErrorState: (props: ErrorStateProps) => JSX.Element;
23
- export declare const LoadingState: () => JSX.Element;
22
+ export declare const ErrorState: (props: ErrorStateProps) => import("react").JSX.Element;
23
+ export declare const LoadingState: () => import("react").JSX.Element;
24
24
  interface PlayerHeaderProps {
25
25
  /** 名称 */
26
26
  name: string;
@@ -29,7 +29,7 @@ interface PlayerHeaderProps {
29
29
  extraButton?: React.ReactNode;
30
30
  }
31
31
  /** 播放器头部 */
32
- export declare const PlayerHeader: (props: PlayerHeaderProps) => JSX.Element;
32
+ export declare const PlayerHeader: (props: PlayerHeaderProps) => import("react").JSX.Element;
33
33
  interface TalkControlProps {
34
34
  /** 播放器 */
35
35
  player?: any;
@@ -42,15 +42,16 @@ interface TalkControlProps {
42
42
  * 对讲控制器
43
43
  * @returns
44
44
  */
45
- export declare const TalkControl: (props: TalkControlProps) => JSX.Element;
46
- export declare type CloudControlType = 'all' | 'onlyFocus' | 'onlyRotate' | 'none';
47
- export declare type CloudControlPanelProps = {
45
+ export declare const TalkControl: (props: TalkControlProps) => import("react").JSX.Element;
46
+ export type CloudControlType = 'all' | 'onlyFocus' | 'onlyRotate' | 'none';
47
+ export type CloudControlPanelProps = {
48
48
  query: Omit<CloudControlParams, 'action' | 'command'>;
49
49
  type: CloudControlType;
50
50
  hasCloudControl?: boolean;
51
+ localControl?: (action: 0 | 1, command: CloudControlCommandType) => void;
51
52
  };
52
53
  /** 云台控制面板 */
53
- export declare const CloudControlPanel: (props: CloudControlPanelProps) => JSX.Element;
54
+ export declare const CloudControlPanel: (props: CloudControlPanelProps) => import("react").JSX.Element;
54
55
  interface InfoPanelProps {
55
56
  /** 是否显示 */
56
57
  showInfo: boolean | 'leftTop' | 'leftBottom' | 'rightTop' | 'rightBottom';
@@ -58,5 +59,5 @@ interface InfoPanelProps {
58
59
  info: Array<Array<string>>;
59
60
  }
60
61
  /** 信息展示 */
61
- export declare const InfoPanel: (props: InfoPanelProps) => JSX.Element;
62
+ export declare const InfoPanel: (props: InfoPanelProps) => import("react").JSX.Element;
62
63
  export {};
@@ -8,6 +8,7 @@ var _jsxRuntime = require("react/jsx-runtime");
8
8
  var _react = require("react");
9
9
  var _api = require("../api");
10
10
  var _icons = require("../icons");
11
+ var _locales = require("../locales");
11
12
  var _utils = require("@vtx/utils");
12
13
  var _ahooks = require("ahooks");
13
14
  var _message = _interopRequireDefault(require("antd/lib/message"));
@@ -17,16 +18,16 @@ var _space = _interopRequireDefault(require("antd/lib/space"));
17
18
  var _spin = _interopRequireDefault(require("antd/lib/spin"));
18
19
  var _arrow = _interopRequireDefault(require("./images/arrow.png"));
19
20
  var _error = _interopRequireDefault(require("./images/error.png"));
20
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
21
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
21
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
22
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
22
23
  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."); }
23
- 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); }
24
- 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; }
25
- 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; }
26
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } // import Player from '../player/indexOld';
24
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
25
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
26
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
27
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } // import Player from '../player/indexOld';
27
28
  // import Button from 'antd/lib/button';
28
29
  /** 音量控制 */
29
- var VolumeControl = function VolumeControl(props) {
30
+ var VolumeControl = exports.VolumeControl = function VolumeControl(props) {
30
31
  var _props$defaultValue = props.defaultValue,
31
32
  defaultValue = _props$defaultValue === void 0 ? 0 : _props$defaultValue,
32
33
  player = props.player,
@@ -88,12 +89,12 @@ var VolumeControl = function VolumeControl(props) {
88
89
  }));
89
90
  };
90
91
  /** 速度控制 */
91
- exports.VolumeControl = VolumeControl;
92
- var SpeedControl = function SpeedControl(props) {
92
+ var SpeedControl = exports.SpeedControl = function SpeedControl(props) {
93
93
  var _props$defaultValue2 = props.defaultValue,
94
94
  defaultValue = _props$defaultValue2 === void 0 ? 1 : _props$defaultValue2,
95
95
  player = props.player,
96
96
  container = props.container;
97
+ var messages = (0, _locales.getLocaleMessages)();
97
98
  var _useState3 = (0, _react.useState)(defaultValue),
98
99
  _useState4 = _slicedToArray(_useState3, 2),
99
100
  value = _useState4[0],
@@ -136,15 +137,15 @@ var SpeedControl = function SpeedControl(props) {
136
137
  }, {
137
138
  children: (0, _jsxRuntime.jsx)("div", Object.assign({
138
139
  className: "vtx-player-speed-control",
139
- title: "\u500D\u901F"
140
+ title: messages.controls.speed
140
141
  }, {
141
142
  children: "".concat(value.toFixed(1), "x")
142
143
  }))
143
144
  }));
144
145
  };
145
- exports.SpeedControl = SpeedControl;
146
- var ErrorState = function ErrorState(props) {
146
+ var ErrorState = exports.ErrorState = function ErrorState(props) {
147
147
  var _onClick = props.onClick;
148
+ var messages = (0, _locales.getLocaleMessages)();
148
149
  var wrapHeight = document.getElementsByClassName('vtx-live-player')[0].clientHeight;
149
150
  return (0, _jsxRuntime.jsxs)("div", Object.assign({
150
151
  className: "error-container"
@@ -154,16 +155,15 @@ var ErrorState = function ErrorState(props) {
154
155
  onClick: function onClick() {
155
156
  return _onClick && _onClick();
156
157
  },
157
- alt: "\u64AD\u653E\u9519\u8BEF"
158
+ alt: messages.controls.playErrorAlt
158
159
  }), wrapHeight >= 150 && (0, _jsxRuntime.jsx)("span", Object.assign({
159
160
  className: "text"
160
161
  }, {
161
- children: "\u89C6\u9891\u64AD\u653E\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5"
162
+ children: messages.controls.playErrorRetry
162
163
  }))]
163
164
  }));
164
165
  };
165
- exports.ErrorState = ErrorState;
166
- var LoadingState = function LoadingState() {
166
+ var LoadingState = exports.LoadingState = function LoadingState() {
167
167
  return (0, _jsxRuntime.jsx)("div", Object.assign({
168
168
  className: "loading-container"
169
169
  }, {
@@ -173,8 +173,7 @@ var LoadingState = function LoadingState() {
173
173
  }));
174
174
  };
175
175
  /** 播放器头部 */
176
- exports.LoadingState = LoadingState;
177
- var PlayerHeader = function PlayerHeader(props) {
176
+ var PlayerHeader = exports.PlayerHeader = function PlayerHeader(props) {
178
177
  var name = props.name,
179
178
  onClose = props.onClose,
180
179
  extraButton = props.extraButton;
@@ -202,11 +201,11 @@ var PlayerHeader = function PlayerHeader(props) {
202
201
  * 对讲控制器
203
202
  * @returns
204
203
  */
205
- exports.PlayerHeader = PlayerHeader;
206
- var TalkControl = function TalkControl(props) {
204
+ var TalkControl = exports.TalkControl = function TalkControl(props) {
207
205
  var player = props.player,
208
206
  deviceId = props.deviceId,
209
207
  channelNum = props.channelNum;
208
+ var messages = (0, _locales.getLocaleMessages)();
210
209
  var _useState5 = (0, _react.useState)(true),
211
210
  _useState6 = _slicedToArray(_useState5, 2),
212
211
  active = _useState6[0],
@@ -224,7 +223,7 @@ var TalkControl = function TalkControl(props) {
224
223
  linkMode: 'wss'
225
224
  }).then(function (res) {
226
225
  if (!res.url) {
227
- _message["default"].error('未设置语音对讲!');
226
+ _message["default"].error(messages.controls.talkNotConfigured);
228
227
  } else {
229
228
  var urls = res.url.split('/proxy');
230
229
  var str = '';
@@ -251,15 +250,20 @@ var TalkControl = function TalkControl(props) {
251
250
  });
252
251
  };
253
252
  /** 云台控制面板 */
254
- exports.TalkControl = TalkControl;
255
- var CloudControlPanel = function CloudControlPanel(props) {
253
+ var CloudControlPanel = exports.CloudControlPanel = function CloudControlPanel(props) {
256
254
  var query = props.query,
257
- type = props.type;
255
+ type = props.type,
256
+ localControl = props.localControl;
257
+ var messages = (0, _locales.getLocaleMessages)();
258
258
  var _useRequest = (0, _ahooks.useRequest)(_api.cloudControl, {
259
259
  manual: true
260
260
  }),
261
261
  run = _useRequest.run;
262
262
  var handleEvent = function handleEvent(action, command) {
263
+ if (localControl) {
264
+ localControl(action, command);
265
+ return;
266
+ }
263
267
  run(Object.assign(Object.assign({}, query), {
264
268
  action: action,
265
269
  command: command
@@ -306,53 +310,52 @@ var CloudControlPanel = function CloudControlPanel(props) {
306
310
  className: "buttons"
307
311
  }, {
308
312
  children: [(0, _jsxRuntime.jsx)(CloudControlButton, {
309
- text: "\u7126\u8DDD",
313
+ text: messages.controls.zoom,
310
314
  onAddDown: function onAddDown() {
311
- return handleEvent(0, 'ZOOM_IN');
315
+ return handleEvent(localControl ? 1 : 0, 'ZOOM_IN');
312
316
  },
313
317
  onAddUp: function onAddUp() {
314
- return handleEvent(1, 'ZOOM_IN');
318
+ return handleEvent(localControl ? 0 : 1, 'ZOOM_IN');
315
319
  },
316
320
  onReduceDown: function onReduceDown() {
317
- return handleEvent(0, 'ZOOM_OUT');
321
+ return handleEvent(localControl ? 1 : 0, 'ZOOM_OUT');
318
322
  },
319
323
  onReduceUp: function onReduceUp() {
320
- return handleEvent(1, 'ZOOM_OUT');
324
+ return handleEvent(localControl ? 0 : 1, 'ZOOM_OUT');
321
325
  }
322
326
  }), (0, _jsxRuntime.jsx)(CloudControlButton, {
323
- text: "\u5149\u5708",
327
+ text: messages.controls.iris,
324
328
  onAddDown: function onAddDown() {
325
- return handleEvent(0, 'IRIS_ENLARGE');
329
+ return handleEvent(localControl ? 1 : 0, 'IRIS_ENLARGE');
326
330
  },
327
331
  onAddUp: function onAddUp() {
328
- return handleEvent(1, 'IRIS_ENLARGE');
332
+ return handleEvent(localControl ? 0 : 1, 'IRIS_ENLARGE');
329
333
  },
330
334
  onReduceDown: function onReduceDown() {
331
- return handleEvent(0, 'IRIS_REDUCE');
335
+ return handleEvent(localControl ? 1 : 0, 'IRIS_REDUCE');
332
336
  },
333
337
  onReduceUp: function onReduceUp() {
334
- return handleEvent(1, 'IRIS_REDUCE');
338
+ return handleEvent(localControl ? 0 : 1, 'IRIS_REDUCE');
335
339
  }
336
340
  }), (0, _jsxRuntime.jsx)(CloudControlButton, {
337
- text: "\u8DDD\u79BB",
341
+ text: messages.controls.focus,
338
342
  onAddDown: function onAddDown() {
339
- return handleEvent(0, 'FOCUS_NEAR');
343
+ return handleEvent(localControl ? 1 : 0, 'FOCUS_NEAR');
340
344
  },
341
345
  onAddUp: function onAddUp() {
342
- return handleEvent(1, 'FOCUS_NEAR');
346
+ return handleEvent(localControl ? 0 : 1, 'FOCUS_NEAR');
343
347
  },
344
348
  onReduceDown: function onReduceDown() {
345
- return handleEvent(0, 'FOCUS_FAR');
349
+ return handleEvent(localControl ? 1 : 0, 'FOCUS_FAR');
346
350
  },
347
351
  onReduceUp: function onReduceUp() {
348
- return handleEvent(1, 'FOCUS_FAR');
352
+ return handleEvent(localControl ? 0 : 1, 'FOCUS_FAR');
349
353
  }
350
354
  })]
351
355
  }))]
352
356
  }));
353
357
  };
354
358
  /** 云台控制箭头 */
355
- exports.CloudControlPanel = CloudControlPanel;
356
359
  var CloudControlArrow = function CloudControlArrow(props) {
357
360
  var _props$name = props.name,
358
361
  name = _props$name === void 0 ? '' : _props$name,
@@ -417,7 +420,7 @@ var STYLE = {
417
420
  }
418
421
  };
419
422
  /** 信息展示 */
420
- var InfoPanel = function InfoPanel(props) {
423
+ var InfoPanel = exports.InfoPanel = function InfoPanel(props) {
421
424
  var showInfo = props.showInfo,
422
425
  info = props.info;
423
426
  var position = showInfo ? showInfo === true ? 'rightTop' : showInfo : false;
@@ -432,5 +435,4 @@ var InfoPanel = function InfoPanel(props) {
432
435
  })
433
436
  })) : (0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {});
434
437
  };
435
- exports.InfoPanel = InfoPanel;
436
438
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_jsxRuntime","require","_react","_api","_icons","_utils","_ahooks","_message","_interopRequireDefault","_popover","_slider","_space","_spin","_arrow","_error","obj","__esModule","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","_i","Symbol","iterator","_arr","_n","_d","_s","_e","next","done","push","value","err","isArray","VolumeControl","props","_props$defaultValue","defaultValue","player","container","_useState","useState","_useState2","setValue","preValueRef","useRef","handleChange","val","current","setVolume","content","_jsxs","assign","className","children","_jsx","Slider","vertical","onChange","max","handleVisibleChange","visible","style","opacity","removeProperty","handleMuted","Popover","title","overlayClassName","onVisibleChange","getPopupContainer","document","getElementsByClassName","onClick","VolumeMutedIcon","VolumeLargeIcon","VolumeSmallIcon","exports","SpeedControl","_props$defaultValue2","_useState3","_useState4","setSpeed","list","map","concat","toFixed","ErrorState","wrapHeight","clientHeight","src","errorImg","alt","LoadingState","Spin","size","PlayerHeader","onClose","extraButton","CloseIcon","e","stopPropagation","TalkControl","deviceId","channelNum","_useState5","_useState6","active","setActive","handleClick","stopTalk","then","getTalkUrl","tenantId","getVtxToken","linkMode","res","url","message","error","urls","split","str","startsWith","location","host","startTalk","TalkIcon","TalkDisableIcon","CloudControlPanel","query","type","_useRequest","useRequest","cloudControl","manual","run","handleEvent","action","command","_Fragment","CloudControlArrow","event","Space","CloudControlButton","text","onAddDown","onAddUp","onReduceDown","onReduceUp","_props$name","arrowImg","onMouseDown","onMouseUp","STYLE","leftTop","left","top","leftBottom","bottom","rightTop","right","rightBottom","InfoPanel","showInfo","info","position","item","index"],"sources":["controls/index.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { useRef, useState } from 'react';\nimport { cloudControl } from '../api';\nimport { getTalkUrl } from '../api';\nimport { CloseIcon, TalkDisableIcon, TalkIcon, VolumeLargeIcon, VolumeMutedIcon, VolumeSmallIcon, } from '../icons';\n// import Player from '../player/indexOld';\nimport { getVtxToken } from '@vtx/utils';\nimport { useRequest } from 'ahooks';\n// import Button from 'antd/lib/button';\nimport message from 'antd/lib/message';\nimport Popover from 'antd/lib/popover';\nimport Slider from 'antd/lib/slider';\nimport Space from 'antd/lib/space';\nimport Spin from 'antd/lib/spin';\nimport arrowImg from './images/arrow.png';\nimport errorImg from './images/error.png';\n/** 音量控制 */\nexport const VolumeControl = (props) => {\n const { defaultValue = 0, player, container } = props;\n const [value, setValue] = useState(defaultValue);\n const preValueRef = useRef(defaultValue);\n const handleChange = (val) => {\n preValueRef.current = val;\n player === null || player === void 0 ? void 0 : player.setVolume(val);\n setValue(val);\n };\n const content = (_jsxs(\"div\", Object.assign({ className: \"volume-content\" }, { children: [_jsx(\"span\", Object.assign({ className: \"value\" }, { children: value })), _jsx(Slider, { vertical: true, value: value, onChange: handleChange, max: 100 })] })));\n const handleVisibleChange = (visible) => {\n if (container) {\n if (visible) {\n container.style.opacity = '1';\n }\n else {\n container.style.removeProperty('opacity');\n }\n }\n };\n const handleMuted = () => {\n if (value === 0) {\n handleChange(preValueRef.current);\n }\n else {\n handleChange(0);\n }\n };\n return (_jsx(Popover, Object.assign({ title: null, content: content, overlayClassName: \"player-control-popover\", onVisibleChange: handleVisibleChange, getPopupContainer: () => {\n return (document.getElementsByClassName('vtx-live-player')[0] ||\n document.getElementsByClassName('vtx-history-player')[0]);\n } }, { children: _jsx(\"div\", Object.assign({ onClick: handleMuted }, { children: value === 0 ? (_jsx(VolumeMutedIcon, {})) : value > 50 ? (_jsx(VolumeLargeIcon, {})) : (_jsx(VolumeSmallIcon, {})) })) })));\n};\n/** 速度控制 */\nexport const SpeedControl = (props) => {\n const { defaultValue = 1, player, container } = props;\n const [value, setValue] = useState(defaultValue);\n const handleChange = (val) => {\n player === null || player === void 0 ? void 0 : player.setSpeed(val);\n setValue(val);\n };\n const content = () => {\n const list = [0.5, 1, 2, 4, 8];\n return (_jsx(\"div\", Object.assign({ className: \"speed-content\" }, { children: list.map((i) => (_jsx(\"div\", Object.assign({ className: \"item\", onClick: () => handleChange(i) }, { children: `${i.toFixed(1)}x` }), i))) })));\n };\n const handleVisibleChange = (visible) => {\n if (container) {\n if (visible) {\n container.style.opacity = '1';\n }\n else {\n container.style.removeProperty('opacity');\n }\n }\n };\n return (_jsx(Popover, Object.assign({ title: null, content: content, overlayClassName: \"player-control-popover\", onVisibleChange: handleVisibleChange }, { children: _jsx(\"div\", Object.assign({ className: \"vtx-player-speed-control\", title: \"\\u500D\\u901F\" }, { children: `${value.toFixed(1)}x` })) })));\n};\nexport const ErrorState = (props) => {\n const { onClick } = props;\n const wrapHeight = document.getElementsByClassName('vtx-live-player')[0].clientHeight;\n return (_jsxs(\"div\", Object.assign({ className: \"error-container\" }, { children: [_jsx(\"img\", { src: errorImg, onClick: () => onClick && onClick(), alt: \"\\u64AD\\u653E\\u9519\\u8BEF\" }), wrapHeight >= 150 && _jsx(\"span\", Object.assign({ className: \"text\" }, { children: \"\\u89C6\\u9891\\u64AD\\u653E\\u5931\\u8D25\\uFF0C\\u8BF7\\u7A0D\\u540E\\u91CD\\u8BD5\" }))] })));\n};\nexport const LoadingState = () => {\n return (_jsx(\"div\", Object.assign({ className: \"loading-container\" }, { children: _jsx(Spin, { size: \"large\" }) })));\n};\n/** 播放器头部 */\nexport const PlayerHeader = (props) => {\n const { name, onClose, extraButton } = props;\n return (_jsxs(\"div\", Object.assign({ className: \"vtx-player-header\" }, { children: [_jsx(\"span\", Object.assign({ className: \"title\", title: name }, { children: name })), extraButton ? extraButton : null, _jsx(\"span\", Object.assign({ className: \"close\" }, { children: _jsx(CloseIcon, { onClick: (e) => {\n onClose();\n e.stopPropagation();\n } }) }))] })));\n};\n/**\n * 对讲控制器\n * @returns\n */\nexport const TalkControl = (props) => {\n const { player, deviceId, channelNum } = props;\n const [active, setActive] = useState(true);\n const handleClick = () => {\n if (!active) {\n player === null || player === void 0 ? void 0 : player.stopTalk().then(() => setActive(true));\n }\n else {\n getTalkUrl({\n deviceId,\n channelNum,\n tenantId: getVtxToken('tenantId'),\n linkMode: 'wss',\n }).then((res) => {\n if (!res.url) {\n message.error('未设置语音对讲!');\n }\n else {\n const urls = res.url.split('/proxy');\n let str = '';\n if (res.url.startsWith('wss')) {\n str = res.url;\n }\n else {\n str = `wss://${location.host}/proxy${urls[1]}`;\n }\n player === null || player === void 0 ? void 0 : player.startTalk(str).then(() => setActive(false));\n }\n });\n }\n };\n return (_jsx(\"div\", { children: active ? (_jsx(TalkIcon, { active: true, onClick: handleClick })) : (_jsx(TalkDisableIcon, { active: false, onClick: handleClick })) }));\n};\n/** 云台控制面板 */\nexport const CloudControlPanel = (props) => {\n const { query, type } = props;\n const { run } = useRequest(cloudControl, { manual: true });\n const handleEvent = (action, command) => {\n run(Object.assign(Object.assign({}, query), { action, command }));\n };\n return (_jsxs(\"div\", Object.assign({ className: \"cloud-control-panel\" }, { children: [type !== 'onlyFocus' && (_jsxs(_Fragment, { children: [_jsx(CloudControlArrow, { name: \"up\", event: handleEvent, type: \"UP\" }), _jsx(CloudControlArrow, { name: \"down\", event: handleEvent, type: \"DOWN\" }), _jsx(CloudControlArrow, { name: \"left\", event: handleEvent, type: \"LEFT\" }), _jsx(CloudControlArrow, { name: \"right\", event: handleEvent, type: \"RIGHT\" }), _jsx(CloudControlArrow, { name: \"left-up\", event: handleEvent, type: \"LEFT_UP\" }), _jsx(CloudControlArrow, { name: \"left-down\", event: handleEvent, type: \"LEFT_DOWN\" }), _jsx(CloudControlArrow, { name: \"right-up\", event: handleEvent, type: \"RIGHT_UP\" }), _jsx(CloudControlArrow, { name: \"right-down\", event: handleEvent, type: \"RIGHT_DOWN\" })] })), type !== 'onlyRotate' && (_jsxs(Space, Object.assign({ className: \"buttons\" }, { children: [_jsx(CloudControlButton, { text: \"\\u7126\\u8DDD\", onAddDown: () => handleEvent(0, 'ZOOM_IN'), onAddUp: () => handleEvent(1, 'ZOOM_IN'), onReduceDown: () => handleEvent(0, 'ZOOM_OUT'), onReduceUp: () => handleEvent(1, 'ZOOM_OUT') }), _jsx(CloudControlButton, { text: \"\\u5149\\u5708\", onAddDown: () => handleEvent(0, 'IRIS_ENLARGE'), onAddUp: () => handleEvent(1, 'IRIS_ENLARGE'), onReduceDown: () => handleEvent(0, 'IRIS_REDUCE'), onReduceUp: () => handleEvent(1, 'IRIS_REDUCE') }), _jsx(CloudControlButton, { text: \"\\u8DDD\\u79BB\", onAddDown: () => handleEvent(0, 'FOCUS_NEAR'), onAddUp: () => handleEvent(1, 'FOCUS_NEAR'), onReduceDown: () => handleEvent(0, 'FOCUS_FAR'), onReduceUp: () => handleEvent(1, 'FOCUS_FAR') })] })))] })));\n};\n/** 云台控制箭头 */\nconst CloudControlArrow = (props) => {\n const { name = '', event, type } = props;\n return (_jsx(\"img\", { className: `arrow ${name}`, src: arrowImg, onMouseDown: () => event(1, type), onMouseUp: () => event(0, type) }));\n};\n/** 云台控制按钮 */\nconst CloudControlButton = (props) => {\n const { text, onAddDown, onAddUp, onReduceDown, onReduceUp } = props;\n return (_jsxs(\"div\", Object.assign({ className: \"control-button\" }, { children: [_jsx(\"span\", Object.assign({ className: \"icon\", onMouseDown: onReduceDown, onMouseUp: onReduceUp }, { children: \"+\" })), _jsx(\"span\", Object.assign({ className: \"text\" }, { children: text })), _jsx(\"span\", Object.assign({ className: \"icon\", onMouseDown: onAddDown, onMouseUp: onAddUp }, { children: \"-\" }))] })));\n};\nconst STYLE = {\n leftTop: {\n left: 8,\n top: 8,\n },\n leftBottom: {\n left: 8,\n bottom: 8,\n },\n rightTop: {\n right: 8,\n top: 8,\n },\n rightBottom: {\n right: 8,\n bottom: 8,\n },\n};\n/** 信息展示 */\nexport const InfoPanel = (props) => {\n const { showInfo, info } = props;\n const position = showInfo ? (showInfo === true ? 'rightTop' : showInfo) : false;\n return position ? (_jsx(\"div\", Object.assign({ className: \"infoPanel\", style: STYLE[position] }, { children: info === null || info === void 0 ? void 0 : info.map((item, index) => {\n return _jsx(\"div\", { children: `${item[0]}: ${item[1]}` }, index);\n }) }))) : (_jsx(_Fragment, {}));\n};\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,IAAA,GAAAF,OAAA;AAEA,IAAAG,MAAA,GAAAH,OAAA;AAEA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AAEA,IAAAM,QAAA,GAAAC,sBAAA,CAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAD,sBAAA,CAAAP,OAAA;AACA,IAAAS,OAAA,GAAAF,sBAAA,CAAAP,OAAA;AACA,IAAAU,MAAA,GAAAH,sBAAA,CAAAP,OAAA;AACA,IAAAW,KAAA,GAAAJ,sBAAA,CAAAP,OAAA;AACA,IAAAY,MAAA,GAAAL,sBAAA,CAAAP,OAAA;AACA,IAAAa,MAAA,GAAAN,sBAAA,CAAAP,OAAA;AAA0C,SAAAO,uBAAAO,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAE,eAAAC,GAAA,EAAAC,CAAA,WAAAC,eAAA,CAAAF,GAAA,KAAAG,qBAAA,CAAAH,GAAA,EAAAC,CAAA,KAAAG,2BAAA,CAAAJ,GAAA,EAAAC,CAAA,KAAAI,gBAAA;AAAA,SAAAA,iBAAA,cAAAC,SAAA;AAAA,SAAAF,4BAAAG,CAAA,EAAAC,MAAA,SAAAD,CAAA,qBAAAA,CAAA,sBAAAE,iBAAA,CAAAF,CAAA,EAAAC,MAAA,OAAAE,CAAA,GAAAC,MAAA,CAAAC,SAAA,CAAAC,QAAA,CAAAC,IAAA,CAAAP,CAAA,EAAAQ,KAAA,aAAAL,CAAA,iBAAAH,CAAA,CAAAS,WAAA,EAAAN,CAAA,GAAAH,CAAA,CAAAS,WAAA,CAAAC,IAAA,MAAAP,CAAA,cAAAA,CAAA,mBAAAQ,KAAA,CAAAC,IAAA,CAAAZ,CAAA,OAAAG,CAAA,+DAAAU,IAAA,CAAAV,CAAA,UAAAD,iBAAA,CAAAF,CAAA,EAAAC,MAAA;AAAA,SAAAC,kBAAAT,GAAA,EAAAqB,GAAA,QAAAA,GAAA,YAAAA,GAAA,GAAArB,GAAA,CAAAsB,MAAA,EAAAD,GAAA,GAAArB,GAAA,CAAAsB,MAAA,WAAArB,CAAA,MAAAsB,IAAA,OAAAL,KAAA,CAAAG,GAAA,GAAApB,CAAA,GAAAoB,GAAA,EAAApB,CAAA,MAAAsB,IAAA,CAAAtB,CAAA,IAAAD,GAAA,CAAAC,CAAA,YAAAsB,IAAA;AAAA,SAAApB,sBAAAH,GAAA,EAAAC,CAAA,QAAAuB,EAAA,GAAAxB,GAAA,yBAAAyB,MAAA,oBAAAzB,GAAA,CAAAyB,MAAA,CAAAC,QAAA,KAAA1B,GAAA,oBAAAwB,EAAA,sBAAAG,IAAA,WAAAC,EAAA,aAAAC,EAAA,cAAAC,EAAA,EAAAC,EAAA,aAAAP,EAAA,GAAAA,EAAA,CAAAV,IAAA,CAAAd,GAAA,KAAA4B,EAAA,IAAAE,EAAA,GAAAN,EAAA,CAAAQ,IAAA,IAAAC,IAAA,GAAAL,EAAA,WAAAD,IAAA,CAAAO,IAAA,CAAAJ,EAAA,CAAAK,KAAA,OAAAlC,CAAA,IAAA0B,IAAA,CAAAL,MAAA,KAAArB,CAAA,oBAAAmC,GAAA,IAAAP,EAAA,SAAAE,EAAA,GAAAK,GAAA,yBAAAR,EAAA,IAAAJ,EAAA,oBAAAA,EAAA,8BAAAK,EAAA,QAAAE,EAAA,aAAAJ,IAAA;AAAA,SAAAzB,gBAAAF,GAAA,QAAAkB,KAAA,CAAAmB,OAAA,CAAArC,GAAA,UAAAA,GAAA,IAV1C;AAGA;AAQA;AACO,IAAMsC,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,KAAK,EAAK;EACpC,IAAAC,mBAAA,GAAgDD,KAAK,CAA7CE,YAAY;IAAZA,YAAY,GAAAD,mBAAA,cAAG,CAAC,GAAAA,mBAAA;IAAEE,MAAM,GAAgBH,KAAK,CAA3BG,MAAM;IAAEC,SAAS,GAAKJ,KAAK,CAAnBI,SAAS;EAC3C,IAAAC,SAAA,GAA0B,IAAAC,eAAQ,EAACJ,YAAY,CAAC;IAAAK,UAAA,GAAA/C,cAAA,CAAA6C,SAAA;IAAzCT,KAAK,GAAAW,UAAA;IAAEC,QAAQ,GAAAD,UAAA;EACtB,IAAME,WAAW,GAAG,IAAAC,aAAM,EAACR,YAAY,CAAC;EACxC,IAAMS,YAAY,GAAG,SAAfA,YAAYA,CAAIC,GAAG,EAAK;IAC1BH,WAAW,CAACI,OAAO,GAAGD,GAAG;IACzBT,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACW,SAAS,CAACF,GAAG,CAAC;IACrEJ,QAAQ,CAACI,GAAG,CAAC;EACjB,CAAC;EACD,IAAMG,OAAO,GAAI,IAAAC,gBAAK,EAAC,KAAK,EAAE5C,MAAM,CAAC6C,MAAM,CAAC;IAAEC,SAAS,EAAE;EAAiB,CAAC,EAAE;IAAEC,QAAQ,EAAE,CAAC,IAAAC,eAAI,EAAC,MAAM,EAAEhD,MAAM,CAAC6C,MAAM,CAAC;MAAEC,SAAS,EAAE;IAAQ,CAAC,EAAE;MAAEC,QAAQ,EAAEvB;IAAM,CAAC,CAAC,CAAC,EAAE,IAAAwB,eAAI,EAACC,kBAAM,EAAE;MAAEC,QAAQ,EAAE,IAAI;MAAE1B,KAAK,EAAEA,KAAK;MAAE2B,QAAQ,EAAEZ,YAAY;MAAEa,GAAG,EAAE;IAAI,CAAC,CAAC;EAAE,CAAC,CAAC,CAAE;EAC1P,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,OAAO,EAAK;IACrC,IAAItB,SAAS,EAAE;MACX,IAAIsB,OAAO,EAAE;QACTtB,SAAS,CAACuB,KAAK,CAACC,OAAO,GAAG,GAAG;MACjC,CAAC,MACI;QACDxB,SAAS,CAACuB,KAAK,CAACE,cAAc,CAAC,SAAS,CAAC;MAC7C;IACJ;EACJ,CAAC;EACD,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAS;IACtB,IAAIlC,KAAK,KAAK,CAAC,EAAE;MACbe,YAAY,CAACF,WAAW,CAACI,OAAO,CAAC;IACrC,CAAC,MACI;MACDF,YAAY,CAAC,CAAC,CAAC;IACnB;EACJ,CAAC;EACD,OAAQ,IAAAS,eAAI,EAACW,mBAAO,EAAE3D,MAAM,CAAC6C,MAAM,CAAC;IAAEe,KAAK,EAAE,IAAI;IAAEjB,OAAO,EAAEA,OAAO;IAAEkB,gBAAgB,EAAE,wBAAwB;IAAEC,eAAe,EAAET,mBAAmB;IAAEU,iBAAiB,EAAE,SAAAA,kBAAA,EAAM;MACxK,OAAQC,QAAQ,CAACC,sBAAsB,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IACzDD,QAAQ,CAACC,sBAAsB,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAChE;EAAE,CAAC,EAAE;IAAElB,QAAQ,EAAE,IAAAC,eAAI,EAAC,KAAK,EAAEhD,MAAM,CAAC6C,MAAM,CAAC;MAAEqB,OAAO,EAAER;IAAY,CAAC,EAAE;MAAEX,QAAQ,EAAEvB,KAAK,KAAK,CAAC,GAAI,IAAAwB,eAAI,EAACmB,sBAAe,EAAE,CAAC,CAAC,CAAC,GAAI3C,KAAK,GAAG,EAAE,GAAI,IAAAwB,eAAI,EAACoB,sBAAe,EAAE,CAAC,CAAC,CAAC,GAAK,IAAApB,eAAI,EAACqB,sBAAe,EAAE,CAAC,CAAC;IAAG,CAAC,CAAC;EAAE,CAAC,CAAC,CAAC;AACnN,CAAC;AACD;AAAAC,OAAA,CAAA3C,aAAA,GAAAA,aAAA;AACO,IAAM4C,YAAY,GAAG,SAAfA,YAAYA,CAAI3C,KAAK,EAAK;EACnC,IAAA4C,oBAAA,GAAgD5C,KAAK,CAA7CE,YAAY;IAAZA,YAAY,GAAA0C,oBAAA,cAAG,CAAC,GAAAA,oBAAA;IAAEzC,MAAM,GAAgBH,KAAK,CAA3BG,MAAM;IAAEC,SAAS,GAAKJ,KAAK,CAAnBI,SAAS;EAC3C,IAAAyC,UAAA,GAA0B,IAAAvC,eAAQ,EAACJ,YAAY,CAAC;IAAA4C,UAAA,GAAAtF,cAAA,CAAAqF,UAAA;IAAzCjD,KAAK,GAAAkD,UAAA;IAAEtC,QAAQ,GAAAsC,UAAA;EACtB,IAAMnC,YAAY,GAAG,SAAfA,YAAYA,CAAIC,GAAG,EAAK;IAC1BT,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAAC4C,QAAQ,CAACnC,GAAG,CAAC;IACpEJ,QAAQ,CAACI,GAAG,CAAC;EACjB,CAAC;EACD,IAAMG,OAAO,GAAG,SAAVA,OAAOA,CAAA,EAAS;IAClB,IAAMiC,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9B,OAAQ,IAAA5B,eAAI,EAAC,KAAK,EAAEhD,MAAM,CAAC6C,MAAM,CAAC;MAAEC,SAAS,EAAE;IAAgB,CAAC,EAAE;MAAEC,QAAQ,EAAE6B,IAAI,CAACC,GAAG,CAAC,UAACvF,CAAC;QAAA,OAAM,IAAA0D,eAAI,EAAC,KAAK,EAAEhD,MAAM,CAAC6C,MAAM,CAAC;UAAEC,SAAS,EAAE,MAAM;UAAEoB,OAAO,EAAE,SAAAA,QAAA;YAAA,OAAM3B,YAAY,CAACjD,CAAC,CAAC;UAAA;QAAC,CAAC,EAAE;UAAEyD,QAAQ,KAAA+B,MAAA,CAAKxF,CAAC,CAACyF,OAAO,CAAC,CAAC,CAAC;QAAI,CAAC,CAAC,EAAEzF,CAAC,CAAC;MAAA,CAAC;IAAE,CAAC,CAAC,CAAC;EAC/N,CAAC;EACD,IAAM+D,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,OAAO,EAAK;IACrC,IAAItB,SAAS,EAAE;MACX,IAAIsB,OAAO,EAAE;QACTtB,SAAS,CAACuB,KAAK,CAACC,OAAO,GAAG,GAAG;MACjC,CAAC,MACI;QACDxB,SAAS,CAACuB,KAAK,CAACE,cAAc,CAAC,SAAS,CAAC;MAC7C;IACJ;EACJ,CAAC;EACD,OAAQ,IAAAT,eAAI,EAACW,mBAAO,EAAE3D,MAAM,CAAC6C,MAAM,CAAC;IAAEe,KAAK,EAAE,IAAI;IAAEjB,OAAO,EAAEA,OAAO;IAAEkB,gBAAgB,EAAE,wBAAwB;IAAEC,eAAe,EAAET;EAAoB,CAAC,EAAE;IAAEN,QAAQ,EAAE,IAAAC,eAAI,EAAC,KAAK,EAAEhD,MAAM,CAAC6C,MAAM,CAAC;MAAEC,SAAS,EAAE,0BAA0B;MAAEc,KAAK,EAAE;IAAe,CAAC,EAAE;MAAEb,QAAQ,KAAA+B,MAAA,CAAKtD,KAAK,CAACuD,OAAO,CAAC,CAAC,CAAC;IAAI,CAAC,CAAC;EAAE,CAAC,CAAC,CAAC;AAC/S,CAAC;AAACT,OAAA,CAAAC,YAAA,GAAAA,YAAA;AACK,IAAMS,UAAU,GAAG,SAAbA,UAAUA,CAAIpD,KAAK,EAAK;EACjC,IAAQsC,QAAO,GAAKtC,KAAK,CAAjBsC,OAAO;EACf,IAAMe,UAAU,GAAGjB,QAAQ,CAACC,sBAAsB,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAACiB,YAAY;EACrF,OAAQ,IAAAtC,gBAAK,EAAC,KAAK,EAAE5C,MAAM,CAAC6C,MAAM,CAAC;IAAEC,SAAS,EAAE;EAAkB,CAAC,EAAE;IAAEC,QAAQ,EAAE,CAAC,IAAAC,eAAI,EAAC,KAAK,EAAE;MAAEmC,GAAG,EAAEC,iBAAQ;MAAElB,OAAO,EAAE,SAAAA,QAAA;QAAA,OAAMA,QAAO,IAAIA,QAAO,CAAC,CAAC;MAAA;MAAEmB,GAAG,EAAE;IAA2B,CAAC,CAAC,EAAEJ,UAAU,IAAI,GAAG,IAAI,IAAAjC,eAAI,EAAC,MAAM,EAAEhD,MAAM,CAAC6C,MAAM,CAAC;MAAEC,SAAS,EAAE;IAAO,CAAC,EAAE;MAAEC,QAAQ,EAAE;IAA2E,CAAC,CAAC,CAAC;EAAE,CAAC,CAAC,CAAC;AAClW,CAAC;AAACuB,OAAA,CAAAU,UAAA,GAAAA,UAAA;AACK,IAAMM,YAAY,GAAG,SAAfA,YAAYA,CAAA,EAAS;EAC9B,OAAQ,IAAAtC,eAAI,EAAC,KAAK,EAAEhD,MAAM,CAAC6C,MAAM,CAAC;IAAEC,SAAS,EAAE;EAAoB,CAAC,EAAE;IAAEC,QAAQ,EAAE,IAAAC,eAAI,EAACuC,gBAAI,EAAE;MAAEC,IAAI,EAAE;IAAQ,CAAC;EAAE,CAAC,CAAC,CAAC;AACvH,CAAC;AACD;AAAAlB,OAAA,CAAAgB,YAAA,GAAAA,YAAA;AACO,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAI7D,KAAK,EAAK;EACnC,IAAQtB,IAAI,GAA2BsB,KAAK,CAApCtB,IAAI;IAAEoF,OAAO,GAAkB9D,KAAK,CAA9B8D,OAAO;IAAEC,WAAW,GAAK/D,KAAK,CAArB+D,WAAW;EAClC,OAAQ,IAAA/C,gBAAK,EAAC,KAAK,EAAE5C,MAAM,CAAC6C,MAAM,CAAC;IAAEC,SAAS,EAAE;EAAoB,CAAC,EAAE;IAAEC,QAAQ,EAAE,CAAC,IAAAC,eAAI,EAAC,MAAM,EAAEhD,MAAM,CAAC6C,MAAM,CAAC;MAAEC,SAAS,EAAE,OAAO;MAAEc,KAAK,EAAEtD;IAAK,CAAC,EAAE;MAAEyC,QAAQ,EAAEzC;IAAK,CAAC,CAAC,CAAC,EAAEqF,WAAW,GAAGA,WAAW,GAAG,IAAI,EAAE,IAAA3C,eAAI,EAAC,MAAM,EAAEhD,MAAM,CAAC6C,MAAM,CAAC;MAAEC,SAAS,EAAE;IAAQ,CAAC,EAAE;MAAEC,QAAQ,EAAE,IAAAC,eAAI,EAAC4C,gBAAS,EAAE;QAAE1B,OAAO,EAAE,SAAAA,QAAC2B,CAAC,EAAK;UACzRH,OAAO,CAAC,CAAC;UACTG,CAAC,CAACC,eAAe,CAAC,CAAC;QACvB;MAAE,CAAC;IAAE,CAAC,CAAC,CAAC;EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AACD;AACA;AACA;AACA;AAHAxB,OAAA,CAAAmB,YAAA,GAAAA,YAAA;AAIO,IAAMM,WAAW,GAAG,SAAdA,WAAWA,CAAInE,KAAK,EAAK;EAClC,IAAQG,MAAM,GAA2BH,KAAK,CAAtCG,MAAM;IAAEiE,QAAQ,GAAiBpE,KAAK,CAA9BoE,QAAQ;IAAEC,UAAU,GAAKrE,KAAK,CAApBqE,UAAU;EACpC,IAAAC,UAAA,GAA4B,IAAAhE,eAAQ,EAAC,IAAI,CAAC;IAAAiE,UAAA,GAAA/G,cAAA,CAAA8G,UAAA;IAAnCE,MAAM,GAAAD,UAAA;IAAEE,SAAS,GAAAF,UAAA;EACxB,IAAMG,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAS;IACtB,IAAI,CAACF,MAAM,EAAE;MACTrE,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACwE,QAAQ,CAAC,CAAC,CAACC,IAAI,CAAC;QAAA,OAAMH,SAAS,CAAC,IAAI,CAAC;MAAA,EAAC;IACjG,CAAC,MACI;MACD,IAAAI,eAAU,EAAC;QACPT,QAAQ,EAARA,QAAQ;QACRC,UAAU,EAAVA,UAAU;QACVS,QAAQ,EAAE,IAAAC,kBAAW,EAAC,UAAU,CAAC;QACjCC,QAAQ,EAAE;MACd,CAAC,CAAC,CAACJ,IAAI,CAAC,UAACK,GAAG,EAAK;QACb,IAAI,CAACA,GAAG,CAACC,GAAG,EAAE;UACVC,mBAAO,CAACC,KAAK,CAAC,UAAU,CAAC;QAC7B,CAAC,MACI;UACD,IAAMC,IAAI,GAAGJ,GAAG,CAACC,GAAG,CAACI,KAAK,CAAC,QAAQ,CAAC;UACpC,IAAIC,GAAG,GAAG,EAAE;UACZ,IAAIN,GAAG,CAACC,GAAG,CAACM,UAAU,CAAC,KAAK,CAAC,EAAE;YAC3BD,GAAG,GAAGN,GAAG,CAACC,GAAG;UACjB,CAAC,MACI;YACDK,GAAG,YAAArC,MAAA,CAAYuC,QAAQ,CAACC,IAAI,YAAAxC,MAAA,CAASmC,IAAI,CAAC,CAAC,CAAC,CAAE;UAClD;UACAlF,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACwF,SAAS,CAACJ,GAAG,CAAC,CAACX,IAAI,CAAC;YAAA,OAAMH,SAAS,CAAC,KAAK,CAAC;UAAA,EAAC;QACtG;MACJ,CAAC,CAAC;IACN;EACJ,CAAC;EACD,OAAQ,IAAArD,eAAI,EAAC,KAAK,EAAE;IAAED,QAAQ,EAAEqD,MAAM,GAAI,IAAApD,eAAI,EAACwE,eAAQ,EAAE;MAAEpB,MAAM,EAAE,IAAI;MAAElC,OAAO,EAAEoC;IAAY,CAAC,CAAC,GAAK,IAAAtD,eAAI,EAACyE,sBAAe,EAAE;MAAErB,MAAM,EAAE,KAAK;MAAElC,OAAO,EAAEoC;IAAY,CAAC;EAAG,CAAC,CAAC;AAC3K,CAAC;AACD;AAAAhC,OAAA,CAAAyB,WAAA,GAAAA,WAAA;AACO,IAAM2B,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAI9F,KAAK,EAAK;EACxC,IAAQ+F,KAAK,GAAW/F,KAAK,CAArB+F,KAAK;IAAEC,IAAI,GAAKhG,KAAK,CAAdgG,IAAI;EACnB,IAAAC,WAAA,GAAgB,IAAAC,kBAAU,EAACC,iBAAY,EAAE;MAAEC,MAAM,EAAE;IAAK,CAAC,CAAC;IAAlDC,GAAG,GAAAJ,WAAA,CAAHI,GAAG;EACX,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAIC,MAAM,EAAEC,OAAO,EAAK;IACrCH,GAAG,CAACjI,MAAM,CAAC6C,MAAM,CAAC7C,MAAM,CAAC6C,MAAM,CAAC,CAAC,CAAC,EAAE8E,KAAK,CAAC,EAAE;MAAEQ,MAAM,EAANA,MAAM;MAAEC,OAAO,EAAPA;IAAQ,CAAC,CAAC,CAAC;EACrE,CAAC;EACD,OAAQ,IAAAxF,gBAAK,EAAC,KAAK,EAAE5C,MAAM,CAAC6C,MAAM,CAAC;IAAEC,SAAS,EAAE;EAAsB,CAAC,EAAE;IAAEC,QAAQ,EAAE,CAAC6E,IAAI,KAAK,WAAW,IAAK,IAAAhF,gBAAK,EAACyF,oBAAS,EAAE;MAAEtF,QAAQ,EAAE,CAAC,IAAAC,eAAI,EAACsF,iBAAiB,EAAE;QAAEhI,IAAI,EAAE,IAAI;QAAEiI,KAAK,EAAEL,WAAW;QAAEN,IAAI,EAAE;MAAK,CAAC,CAAC,EAAE,IAAA5E,eAAI,EAACsF,iBAAiB,EAAE;QAAEhI,IAAI,EAAE,MAAM;QAAEiI,KAAK,EAAEL,WAAW;QAAEN,IAAI,EAAE;MAAO,CAAC,CAAC,EAAE,IAAA5E,eAAI,EAACsF,iBAAiB,EAAE;QAAEhI,IAAI,EAAE,MAAM;QAAEiI,KAAK,EAAEL,WAAW;QAAEN,IAAI,EAAE;MAAO,CAAC,CAAC,EAAE,IAAA5E,eAAI,EAACsF,iBAAiB,EAAE;QAAEhI,IAAI,EAAE,OAAO;QAAEiI,KAAK,EAAEL,WAAW;QAAEN,IAAI,EAAE;MAAQ,CAAC,CAAC,EAAE,IAAA5E,eAAI,EAACsF,iBAAiB,EAAE;QAAEhI,IAAI,EAAE,SAAS;QAAEiI,KAAK,EAAEL,WAAW;QAAEN,IAAI,EAAE;MAAU,CAAC,CAAC,EAAE,IAAA5E,eAAI,EAACsF,iBAAiB,EAAE;QAAEhI,IAAI,EAAE,WAAW;QAAEiI,KAAK,EAAEL,WAAW;QAAEN,IAAI,EAAE;MAAY,CAAC,CAAC,EAAE,IAAA5E,eAAI,EAACsF,iBAAiB,EAAE;QAAEhI,IAAI,EAAE,UAAU;QAAEiI,KAAK,EAAEL,WAAW;QAAEN,IAAI,EAAE;MAAW,CAAC,CAAC,EAAE,IAAA5E,eAAI,EAACsF,iBAAiB,EAAE;QAAEhI,IAAI,EAAE,YAAY;QAAEiI,KAAK,EAAEL,WAAW;QAAEN,IAAI,EAAE;MAAa,CAAC,CAAC;IAAE,CAAC,CAAE,EAAEA,IAAI,KAAK,YAAY,IAAK,IAAAhF,gBAAK,EAAC4F,iBAAK,EAAExI,MAAM,CAAC6C,MAAM,CAAC;MAAEC,SAAS,EAAE;IAAU,CAAC,EAAE;MAAEC,QAAQ,EAAE,CAAC,IAAAC,eAAI,EAACyF,kBAAkB,EAAE;QAAEC,IAAI,EAAE,cAAc;QAAEC,SAAS,EAAE,SAAAA,UAAA;UAAA,OAAMT,WAAW,CAAC,CAAC,EAAE,SAAS,CAAC;QAAA;QAAEU,OAAO,EAAE,SAAAA,QAAA;UAAA,OAAMV,WAAW,CAAC,CAAC,EAAE,SAAS,CAAC;QAAA;QAAEW,YAAY,EAAE,SAAAA,aAAA;UAAA,OAAMX,WAAW,CAAC,CAAC,EAAE,UAAU,CAAC;QAAA;QAAEY,UAAU,EAAE,SAAAA,WAAA;UAAA,OAAMZ,WAAW,CAAC,CAAC,EAAE,UAAU,CAAC;QAAA;MAAC,CAAC,CAAC,EAAE,IAAAlF,eAAI,EAACyF,kBAAkB,EAAE;QAAEC,IAAI,EAAE,cAAc;QAAEC,SAAS,EAAE,SAAAA,UAAA;UAAA,OAAMT,WAAW,CAAC,CAAC,EAAE,cAAc,CAAC;QAAA;QAAEU,OAAO,EAAE,SAAAA,QAAA;UAAA,OAAMV,WAAW,CAAC,CAAC,EAAE,cAAc,CAAC;QAAA;QAAEW,YAAY,EAAE,SAAAA,aAAA;UAAA,OAAMX,WAAW,CAAC,CAAC,EAAE,aAAa,CAAC;QAAA;QAAEY,UAAU,EAAE,SAAAA,WAAA;UAAA,OAAMZ,WAAW,CAAC,CAAC,EAAE,aAAa,CAAC;QAAA;MAAC,CAAC,CAAC,EAAE,IAAAlF,eAAI,EAACyF,kBAAkB,EAAE;QAAEC,IAAI,EAAE,cAAc;QAAEC,SAAS,EAAE,SAAAA,UAAA;UAAA,OAAMT,WAAW,CAAC,CAAC,EAAE,YAAY,CAAC;QAAA;QAAEU,OAAO,EAAE,SAAAA,QAAA;UAAA,OAAMV,WAAW,CAAC,CAAC,EAAE,YAAY,CAAC;QAAA;QAAEW,YAAY,EAAE,SAAAA,aAAA;UAAA,OAAMX,WAAW,CAAC,CAAC,EAAE,WAAW,CAAC;QAAA;QAAEY,UAAU,EAAE,SAAAA,WAAA;UAAA,OAAMZ,WAAW,CAAC,CAAC,EAAE,WAAW,CAAC;QAAA;MAAC,CAAC,CAAC;IAAE,CAAC,CAAC,CAAE;EAAE,CAAC,CAAC,CAAC;AACrlD,CAAC;AACD;AAAA5D,OAAA,CAAAoD,iBAAA,GAAAA,iBAAA;AACA,IAAMY,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAI1G,KAAK,EAAK;EACjC,IAAAmH,WAAA,GAAmCnH,KAAK,CAAhCtB,IAAI;IAAJA,IAAI,GAAAyI,WAAA,cAAG,EAAE,GAAAA,WAAA;IAAER,KAAK,GAAW3G,KAAK,CAArB2G,KAAK;IAAEX,IAAI,GAAKhG,KAAK,CAAdgG,IAAI;EAC9B,OAAQ,IAAA5E,eAAI,EAAC,KAAK,EAAE;IAAEF,SAAS,WAAAgC,MAAA,CAAWxE,IAAI,CAAE;IAAE6E,GAAG,EAAE6D,iBAAQ;IAAEC,WAAW,EAAE,SAAAA,YAAA;MAAA,OAAMV,KAAK,CAAC,CAAC,EAAEX,IAAI,CAAC;IAAA;IAAEsB,SAAS,EAAE,SAAAA,UAAA;MAAA,OAAMX,KAAK,CAAC,CAAC,EAAEX,IAAI,CAAC;IAAA;EAAC,CAAC,CAAC;AAC1I,CAAC;AACD;AACA,IAAMa,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAI7G,KAAK,EAAK;EAClC,IAAQ8G,IAAI,GAAmD9G,KAAK,CAA5D8G,IAAI;IAAEC,SAAS,GAAwC/G,KAAK,CAAtD+G,SAAS;IAAEC,OAAO,GAA+BhH,KAAK,CAA3CgH,OAAO;IAAEC,YAAY,GAAiBjH,KAAK,CAAlCiH,YAAY;IAAEC,UAAU,GAAKlH,KAAK,CAApBkH,UAAU;EAC1D,OAAQ,IAAAlG,gBAAK,EAAC,KAAK,EAAE5C,MAAM,CAAC6C,MAAM,CAAC;IAAEC,SAAS,EAAE;EAAiB,CAAC,EAAE;IAAEC,QAAQ,EAAE,CAAC,IAAAC,eAAI,EAAC,MAAM,EAAEhD,MAAM,CAAC6C,MAAM,CAAC;MAAEC,SAAS,EAAE,MAAM;MAAEmG,WAAW,EAAEJ,YAAY;MAAEK,SAAS,EAAEJ;IAAW,CAAC,EAAE;MAAE/F,QAAQ,EAAE;IAAI,CAAC,CAAC,CAAC,EAAE,IAAAC,eAAI,EAAC,MAAM,EAAEhD,MAAM,CAAC6C,MAAM,CAAC;MAAEC,SAAS,EAAE;IAAO,CAAC,EAAE;MAAEC,QAAQ,EAAE2F;IAAK,CAAC,CAAC,CAAC,EAAE,IAAA1F,eAAI,EAAC,MAAM,EAAEhD,MAAM,CAAC6C,MAAM,CAAC;MAAEC,SAAS,EAAE,MAAM;MAAEmG,WAAW,EAAEN,SAAS;MAAEO,SAAS,EAAEN;IAAQ,CAAC,EAAE;MAAE7F,QAAQ,EAAE;IAAI,CAAC,CAAC,CAAC;EAAE,CAAC,CAAC,CAAC;AAC5Y,CAAC;AACD,IAAMoG,KAAK,GAAG;EACVC,OAAO,EAAE;IACLC,IAAI,EAAE,CAAC;IACPC,GAAG,EAAE;EACT,CAAC;EACDC,UAAU,EAAE;IACRF,IAAI,EAAE,CAAC;IACPG,MAAM,EAAE;EACZ,CAAC;EACDC,QAAQ,EAAE;IACNC,KAAK,EAAE,CAAC;IACRJ,GAAG,EAAE;EACT,CAAC;EACDK,WAAW,EAAE;IACTD,KAAK,EAAE,CAAC;IACRF,MAAM,EAAE;EACZ;AACJ,CAAC;AACD;AACO,IAAMI,SAAS,GAAG,SAAZA,SAASA,CAAIhI,KAAK,EAAK;EAChC,IAAQiI,QAAQ,GAAWjI,KAAK,CAAxBiI,QAAQ;IAAEC,IAAI,GAAKlI,KAAK,CAAdkI,IAAI;EACtB,IAAMC,QAAQ,GAAGF,QAAQ,GAAIA,QAAQ,KAAK,IAAI,GAAG,UAAU,GAAGA,QAAQ,GAAI,KAAK;EAC/E,OAAOE,QAAQ,GAAI,IAAA/G,eAAI,EAAC,KAAK,EAAEhD,MAAM,CAAC6C,MAAM,CAAC;IAAEC,SAAS,EAAE,WAAW;IAAES,KAAK,EAAE4F,KAAK,CAACY,QAAQ;EAAE,CAAC,EAAE;IAAEhH,QAAQ,EAAE+G,IAAI,KAAK,IAAI,IAAIA,IAAI,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,IAAI,CAACjF,GAAG,CAAC,UAACmF,IAAI,EAAEC,KAAK,EAAK;MAC3K,OAAO,IAAAjH,eAAI,EAAC,KAAK,EAAE;QAAED,QAAQ,KAAA+B,MAAA,CAAKkF,IAAI,CAAC,CAAC,CAAC,QAAAlF,MAAA,CAAKkF,IAAI,CAAC,CAAC,CAAC;MAAG,CAAC,EAAEC,KAAK,CAAC;IACrE,CAAC;EAAE,CAAC,CAAC,CAAC,GAAK,IAAAjH,eAAI,EAACqF,oBAAS,EAAE,CAAC,CAAC,CAAE;AACvC,CAAC;AAAC/D,OAAA,CAAAsF,SAAA,GAAAA,SAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_jsxRuntime","require","_react","_api","_icons","_locales","_utils","_ahooks","_message","_interopRequireDefault","_popover","_slider","_space","_spin","_arrow","_error","e","__esModule","_slicedToArray","r","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","t","toString","call","slice","constructor","name","Array","from","test","length","n","l","Symbol","iterator","i","u","f","o","next","Object","done","push","value","isArray","VolumeControl","exports","props","_props$defaultValue","defaultValue","player","container","_useState","useState","_useState2","setValue","preValueRef","useRef","handleChange","val","current","setVolume","content","_jsxs","assign","className","children","_jsx","Slider","vertical","onChange","max","handleVisibleChange","visible","style","opacity","removeProperty","handleMuted","Popover","title","overlayClassName","onVisibleChange","getPopupContainer","document","getElementsByClassName","onClick","VolumeMutedIcon","VolumeLargeIcon","VolumeSmallIcon","SpeedControl","_props$defaultValue2","messages","getLocaleMessages","_useState3","_useState4","setSpeed","list","map","concat","toFixed","controls","speed","ErrorState","wrapHeight","clientHeight","src","errorImg","alt","playErrorAlt","playErrorRetry","LoadingState","Spin","size","PlayerHeader","onClose","extraButton","CloseIcon","stopPropagation","TalkControl","deviceId","channelNum","_useState5","_useState6","active","setActive","handleClick","stopTalk","then","getTalkUrl","tenantId","getVtxToken","linkMode","res","url","message","error","talkNotConfigured","urls","split","str","startsWith","location","host","startTalk","TalkIcon","TalkDisableIcon","CloudControlPanel","query","type","localControl","_useRequest","useRequest","cloudControl","manual","run","handleEvent","action","command","_Fragment","CloudControlArrow","event","Space","CloudControlButton","text","zoom","onAddDown","onAddUp","onReduceDown","onReduceUp","iris","focus","_props$name","arrowImg","onMouseDown","onMouseUp","STYLE","leftTop","left","top","leftBottom","bottom","rightTop","right","rightBottom","InfoPanel","showInfo","info","position","item","index"],"sources":["controls/index.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { useRef, useState } from 'react';\nimport { cloudControl } from '../api';\nimport { getTalkUrl } from '../api';\nimport { CloseIcon, TalkDisableIcon, TalkIcon, VolumeLargeIcon, VolumeMutedIcon, VolumeSmallIcon, } from '../icons';\nimport { getLocaleMessages } from '../locales';\n// import Player from '../player/indexOld';\nimport { getVtxToken } from '@vtx/utils';\nimport { useRequest } from 'ahooks';\n// import Button from 'antd/lib/button';\nimport message from 'antd/lib/message';\nimport Popover from 'antd/lib/popover';\nimport Slider from 'antd/lib/slider';\nimport Space from 'antd/lib/space';\nimport Spin from 'antd/lib/spin';\nimport arrowImg from './images/arrow.png';\nimport errorImg from './images/error.png';\n/** 音量控制 */\nexport const VolumeControl = (props) => {\n const { defaultValue = 0, player, container } = props;\n const [value, setValue] = useState(defaultValue);\n const preValueRef = useRef(defaultValue);\n const handleChange = (val) => {\n preValueRef.current = val;\n player === null || player === void 0 ? void 0 : player.setVolume(val);\n setValue(val);\n };\n const content = (_jsxs(\"div\", Object.assign({ className: \"volume-content\" }, { children: [_jsx(\"span\", Object.assign({ className: \"value\" }, { children: value })), _jsx(Slider, { vertical: true, value: value, onChange: handleChange, max: 100 })] })));\n const handleVisibleChange = (visible) => {\n if (container) {\n if (visible) {\n container.style.opacity = '1';\n }\n else {\n container.style.removeProperty('opacity');\n }\n }\n };\n const handleMuted = () => {\n if (value === 0) {\n handleChange(preValueRef.current);\n }\n else {\n handleChange(0);\n }\n };\n return (_jsx(Popover, Object.assign({ title: null, content: content, overlayClassName: \"player-control-popover\", onVisibleChange: handleVisibleChange, getPopupContainer: () => {\n return (document.getElementsByClassName('vtx-live-player')[0] ||\n document.getElementsByClassName('vtx-history-player')[0]);\n } }, { children: _jsx(\"div\", Object.assign({ onClick: handleMuted }, { children: value === 0 ? (_jsx(VolumeMutedIcon, {})) : value > 50 ? (_jsx(VolumeLargeIcon, {})) : (_jsx(VolumeSmallIcon, {})) })) })));\n};\n/** 速度控制 */\nexport const SpeedControl = (props) => {\n const { defaultValue = 1, player, container } = props;\n const messages = getLocaleMessages();\n const [value, setValue] = useState(defaultValue);\n const handleChange = (val) => {\n player === null || player === void 0 ? void 0 : player.setSpeed(val);\n setValue(val);\n };\n const content = () => {\n const list = [0.5, 1, 2, 4, 8];\n return (_jsx(\"div\", Object.assign({ className: \"speed-content\" }, { children: list.map((i) => (_jsx(\"div\", Object.assign({ className: \"item\", onClick: () => handleChange(i) }, { children: `${i.toFixed(1)}x` }), i))) })));\n };\n const handleVisibleChange = (visible) => {\n if (container) {\n if (visible) {\n container.style.opacity = '1';\n }\n else {\n container.style.removeProperty('opacity');\n }\n }\n };\n return (_jsx(Popover, Object.assign({ title: null, content: content, overlayClassName: \"player-control-popover\", onVisibleChange: handleVisibleChange }, { children: _jsx(\"div\", Object.assign({ className: \"vtx-player-speed-control\", title: messages.controls.speed }, { children: `${value.toFixed(1)}x` })) })));\n};\nexport const ErrorState = (props) => {\n const { onClick } = props;\n const messages = getLocaleMessages();\n const wrapHeight = document.getElementsByClassName('vtx-live-player')[0].clientHeight;\n return (_jsxs(\"div\", Object.assign({ className: \"error-container\" }, { children: [_jsx(\"img\", { src: errorImg, onClick: () => onClick && onClick(), alt: messages.controls.playErrorAlt }), wrapHeight >= 150 && _jsx(\"span\", Object.assign({ className: \"text\" }, { children: messages.controls.playErrorRetry }))] })));\n};\nexport const LoadingState = () => {\n return (_jsx(\"div\", Object.assign({ className: \"loading-container\" }, { children: _jsx(Spin, { size: \"large\" }) })));\n};\n/** 播放器头部 */\nexport const PlayerHeader = (props) => {\n const { name, onClose, extraButton } = props;\n return (_jsxs(\"div\", Object.assign({ className: \"vtx-player-header\" }, { children: [_jsx(\"span\", Object.assign({ className: \"title\", title: name }, { children: name })), extraButton ? extraButton : null, _jsx(\"span\", Object.assign({ className: \"close\" }, { children: _jsx(CloseIcon, { onClick: (e) => {\n onClose();\n e.stopPropagation();\n } }) }))] })));\n};\n/**\n * 对讲控制器\n * @returns\n */\nexport const TalkControl = (props) => {\n const { player, deviceId, channelNum } = props;\n const messages = getLocaleMessages();\n const [active, setActive] = useState(true);\n const handleClick = () => {\n if (!active) {\n player === null || player === void 0 ? void 0 : player.stopTalk().then(() => setActive(true));\n }\n else {\n getTalkUrl({\n deviceId,\n channelNum,\n tenantId: getVtxToken('tenantId'),\n linkMode: 'wss',\n }).then((res) => {\n if (!res.url) {\n message.error(messages.controls.talkNotConfigured);\n }\n else {\n const urls = res.url.split('/proxy');\n let str = '';\n if (res.url.startsWith('wss')) {\n str = res.url;\n }\n else {\n str = `wss://${location.host}/proxy${urls[1]}`;\n }\n player === null || player === void 0 ? void 0 : player.startTalk(str).then(() => setActive(false));\n }\n });\n }\n };\n return (_jsx(\"div\", { children: active ? (_jsx(TalkIcon, { active: true, onClick: handleClick })) : (_jsx(TalkDisableIcon, { active: false, onClick: handleClick })) }));\n};\n/** 云台控制面板 */\nexport const CloudControlPanel = (props) => {\n const { query, type, localControl } = props;\n const messages = getLocaleMessages();\n const { run } = useRequest(cloudControl, { manual: true });\n const handleEvent = (action, command) => {\n if (localControl) {\n localControl(action, command);\n return;\n }\n run(Object.assign(Object.assign({}, query), { action, command }));\n };\n return (_jsxs(\"div\", Object.assign({ className: \"cloud-control-panel\" }, { children: [type !== 'onlyFocus' && (_jsxs(_Fragment, { children: [_jsx(CloudControlArrow, { name: \"up\", event: handleEvent, type: \"UP\" }), _jsx(CloudControlArrow, { name: \"down\", event: handleEvent, type: \"DOWN\" }), _jsx(CloudControlArrow, { name: \"left\", event: handleEvent, type: \"LEFT\" }), _jsx(CloudControlArrow, { name: \"right\", event: handleEvent, type: \"RIGHT\" }), _jsx(CloudControlArrow, { name: \"left-up\", event: handleEvent, type: \"LEFT_UP\" }), _jsx(CloudControlArrow, { name: \"left-down\", event: handleEvent, type: \"LEFT_DOWN\" }), _jsx(CloudControlArrow, { name: \"right-up\", event: handleEvent, type: \"RIGHT_UP\" }), _jsx(CloudControlArrow, { name: \"right-down\", event: handleEvent, type: \"RIGHT_DOWN\" })] })), type !== 'onlyRotate' && (_jsxs(Space, Object.assign({ className: \"buttons\" }, { children: [_jsx(CloudControlButton, { text: messages.controls.zoom, onAddDown: () => handleEvent(localControl ? 1 : 0, 'ZOOM_IN'), onAddUp: () => handleEvent(localControl ? 0 : 1, 'ZOOM_IN'), onReduceDown: () => handleEvent(localControl ? 1 : 0, 'ZOOM_OUT'), onReduceUp: () => handleEvent(localControl ? 0 : 1, 'ZOOM_OUT') }), _jsx(CloudControlButton, { text: messages.controls.iris, onAddDown: () => handleEvent(localControl ? 1 : 0, 'IRIS_ENLARGE'), onAddUp: () => handleEvent(localControl ? 0 : 1, 'IRIS_ENLARGE'), onReduceDown: () => handleEvent(localControl ? 1 : 0, 'IRIS_REDUCE'), onReduceUp: () => handleEvent(localControl ? 0 : 1, 'IRIS_REDUCE') }), _jsx(CloudControlButton, { text: messages.controls.focus, onAddDown: () => handleEvent(localControl ? 1 : 0, 'FOCUS_NEAR'), onAddUp: () => handleEvent(localControl ? 0 : 1, 'FOCUS_NEAR'), onReduceDown: () => handleEvent(localControl ? 1 : 0, 'FOCUS_FAR'), onReduceUp: () => handleEvent(localControl ? 0 : 1, 'FOCUS_FAR') })] })))] })));\n};\n/** 云台控制箭头 */\nconst CloudControlArrow = (props) => {\n const { name = '', event, type } = props;\n return (_jsx(\"img\", { className: `arrow ${name}`, src: arrowImg, onMouseDown: () => event(1, type), onMouseUp: () => event(0, type) }));\n};\n/** 云台控制按钮 */\nconst CloudControlButton = (props) => {\n const { text, onAddDown, onAddUp, onReduceDown, onReduceUp } = props;\n return (_jsxs(\"div\", Object.assign({ className: \"control-button\" }, { children: [_jsx(\"span\", Object.assign({ className: \"icon\", onMouseDown: onReduceDown, onMouseUp: onReduceUp }, { children: \"+\" })), _jsx(\"span\", Object.assign({ className: \"text\" }, { children: text })), _jsx(\"span\", Object.assign({ className: \"icon\", onMouseDown: onAddDown, onMouseUp: onAddUp }, { children: \"-\" }))] })));\n};\nconst STYLE = {\n leftTop: {\n left: 8,\n top: 8,\n },\n leftBottom: {\n left: 8,\n bottom: 8,\n },\n rightTop: {\n right: 8,\n top: 8,\n },\n rightBottom: {\n right: 8,\n bottom: 8,\n },\n};\n/** 信息展示 */\nexport const InfoPanel = (props) => {\n const { showInfo, info } = props;\n const position = showInfo ? (showInfo === true ? 'rightTop' : showInfo) : false;\n return position ? (_jsx(\"div\", Object.assign({ className: \"infoPanel\", style: STYLE[position] }, { children: info === null || info === void 0 ? void 0 : info.map((item, index) => {\n return _jsx(\"div\", { children: `${item[0]}: ${item[1]}` }, index);\n }) }))) : (_jsx(_Fragment, {}));\n};\n"],"mappings":"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","ignoreList":[]}
@@ -4,9 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
8
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
9
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
7
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
8
+ function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
9
+ function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
10
+ function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
11
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
12
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
10
13
  /**
11
14
  */
12
15
  var H264PlayerManager = /*#__PURE__*/function () {
@@ -20,7 +23,7 @@ var H264PlayerManager = /*#__PURE__*/function () {
20
23
  /**
21
24
  * 初始化实时预览播放器
22
25
  */
23
- _createClass(H264PlayerManager, [{
26
+ return _createClass(H264PlayerManager, [{
24
27
  key: "initPlayer",
25
28
  value: function initPlayer(opt) {
26
29
  var jmuxer = new JMuxer({
@@ -123,8 +126,6 @@ var H264PlayerManager = /*#__PURE__*/function () {
123
126
  // this.player.jumpPlayByTime(time);
124
127
  }
125
128
  }]);
126
- return H264PlayerManager;
127
129
  }();
128
- var _default = H264PlayerManager;
129
- exports["default"] = _default;
130
+ var _default = exports["default"] = H264PlayerManager;
130
131
  //# sourceMappingURL=PlayerManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlayerManager.js","names":["H264PlayerManager","opt","_classCallCheck","player","id","url","initPlayer","_createClass","key","value","jmuxer","JMuxer","node","mode","flushingTime","fps","clearBuffer","debug","xhr","XMLHttpRequest","async","open","responseType","onreadystatechange","event","readyState","feed","video","Uint8Array","response","send","pause","recordPlayer","play","playSpeed","speed","close","destroy","setFullScreen","setPlayerAdapter","playerAdapter","setPlayerNum","number","setSelectIndex","index","jumpPlayByTime","time","_default","exports"],"sources":["h264/PlayerManager.js"],"sourcesContent":["/**\n */\nclass H264PlayerManager {\n constructor(opt) {\n this.player = null;\n this.id = opt.id;\n this.url = opt.url;\n this.initPlayer();\n }\n /**\n * 初始化实时预览播放器\n */\n initPlayer(opt) {\n const jmuxer = new JMuxer({\n node: 'playerh264',\n mode: 'video',\n flushingTime: 1000,\n fps: 12,\n clearBuffer: false,\n debug: true,\n });\n var xhr = new XMLHttpRequest();\n var async = true;\n if (!this.url)\n return;\n xhr.open('GET', this.url, async);\n xhr.responseType = 'arraybuffer';\n xhr.onreadystatechange = function (event) {\n if (xhr.readyState === 4) {\n jmuxer.feed({\n video: new Uint8Array(xhr.response),\n });\n this.player = jmuxer;\n }\n };\n xhr.send(null);\n }\n pause() {\n this.recordPlayer && this.player.pause();\n }\n /**\n * 录像暂停后播放\n * 只有暂停后的录像调用才有效\n */\n play() {\n //\n }\n /**\n * 倍速播放\n * @param {number} speed 速率 0.125 0.25 0.5 1 2 4 8 共7种速率\n */\n playSpeed(speed) {\n // this.recordPlayer && this.recordPlayer.playSpeed(speed);\n }\n /**\n * 关闭播放器\n * @param {number} index 可选,关闭指定索引的窗口的播放器,不传则表示关闭所有播放器\n */\n close() {\n this.player && this.player.destroy();\n }\n /**\n * 设置全屏\n */\n setFullScreen() {\n // this.player.setFullScreen();\n }\n /**\n * 设置窗口自适应还是拉伸\n * @param {string} playerAdapter selfAdaption 自适应 | stretching 拉伸\n */\n setPlayerAdapter(playerAdapter) {\n // this.player.setPlayerAdapter(playerAdapter);\n }\n /**\n * 控制视频播放器显示的路数: 1 4 9 16 25,不会超过最大显示路数\n * @param {number} number\n */\n setPlayerNum(number) {\n // this.player.setPlayerNum(number);\n }\n /**\n * 设置选中的播放器的索引\n * @param {number} index\n */\n setSelectIndex(index) {\n // this.player.setSelectIndex(index);\n }\n /**\n * 录像跳转播放\n * @param {string} time HH:mm:ss格式\n */\n jumpPlayByTime(time) {\n // this.player.jumpPlayByTime(time);\n }\n}\nexport default H264PlayerManager;\n"],"mappings":";;;;;;;;;AAAA;AACA;AADA,IAEMA,iBAAiB;EACnB,SAAAA,kBAAYC,GAAG,EAAE;IAAAC,eAAA,OAAAF,iBAAA;IACb,IAAI,CAACG,MAAM,GAAG,IAAI;IAClB,IAAI,CAACC,EAAE,GAAGH,GAAG,CAACG,EAAE;IAChB,IAAI,CAACC,GAAG,GAAGJ,GAAG,CAACI,GAAG;IAClB,IAAI,CAACC,UAAU,CAAC,CAAC;EACrB;EACA;AACJ;AACA;EAFIC,YAAA,CAAAP,iBAAA;IAAAQ,GAAA;IAAAC,KAAA,EAGA,SAAAH,WAAWL,GAAG,EAAE;MACZ,IAAMS,MAAM,GAAG,IAAIC,MAAM,CAAC;QACtBC,IAAI,EAAE,YAAY;QAClBC,IAAI,EAAE,OAAO;QACbC,YAAY,EAAE,IAAI;QAClBC,GAAG,EAAE,EAAE;QACPC,WAAW,EAAE,KAAK;QAClBC,KAAK,EAAE;MACX,CAAC,CAAC;MACF,IAAIC,GAAG,GAAG,IAAIC,cAAc,CAAC,CAAC;MAC9B,IAAIC,KAAK,GAAG,IAAI;MAChB,IAAI,CAAC,IAAI,CAACf,GAAG,EACT;MACJa,GAAG,CAACG,IAAI,CAAC,KAAK,EAAE,IAAI,CAAChB,GAAG,EAAEe,KAAK,CAAC;MAChCF,GAAG,CAACI,YAAY,GAAG,aAAa;MAChCJ,GAAG,CAACK,kBAAkB,GAAG,UAAUC,KAAK,EAAE;QACtC,IAAIN,GAAG,CAACO,UAAU,KAAK,CAAC,EAAE;UACtBf,MAAM,CAACgB,IAAI,CAAC;YACRC,KAAK,EAAE,IAAIC,UAAU,CAACV,GAAG,CAACW,QAAQ;UACtC,CAAC,CAAC;UACF,IAAI,CAAC1B,MAAM,GAAGO,MAAM;QACxB;MACJ,CAAC;MACDQ,GAAG,CAACY,IAAI,CAAC,IAAI,CAAC;IAClB;EAAC;IAAAtB,GAAA;IAAAC,KAAA,EACD,SAAAsB,MAAA,EAAQ;MACJ,IAAI,CAACC,YAAY,IAAI,IAAI,CAAC7B,MAAM,CAAC4B,KAAK,CAAC,CAAC;IAC5C;IACA;AACJ;AACA;AACA;EAHI;IAAAvB,GAAA;IAAAC,KAAA,EAIA,SAAAwB,KAAA,EAAO;MACH;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAAzB,GAAA;IAAAC,KAAA,EAIA,SAAAyB,UAAUC,KAAK,EAAE;MACb;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAA3B,GAAA;IAAAC,KAAA,EAIA,SAAA2B,MAAA,EAAQ;MACJ,IAAI,CAACjC,MAAM,IAAI,IAAI,CAACA,MAAM,CAACkC,OAAO,CAAC,CAAC;IACxC;IACA;AACJ;AACA;EAFI;IAAA7B,GAAA;IAAAC,KAAA,EAGA,SAAA6B,cAAA,EAAgB;MACZ;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAA9B,GAAA;IAAAC,KAAA,EAIA,SAAA8B,iBAAiBC,aAAa,EAAE;MAC5B;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAAhC,GAAA;IAAAC,KAAA,EAIA,SAAAgC,aAAaC,MAAM,EAAE;MACjB;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAAlC,GAAA;IAAAC,KAAA,EAIA,SAAAkC,eAAeC,KAAK,EAAE;MAClB;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAApC,GAAA;IAAAC,KAAA,EAIA,SAAAoC,eAAeC,IAAI,EAAE;MACjB;IAAA;EACH;EAAA,OAAA9C,iBAAA;AAAA;AAAA,IAAA+C,QAAA,GAEU/C,iBAAiB;AAAAgD,OAAA,cAAAD,QAAA","ignoreList":[]}
1
+ {"version":3,"file":"PlayerManager.js","names":["H264PlayerManager","opt","_classCallCheck","player","id","url","initPlayer","_createClass","key","value","jmuxer","JMuxer","node","mode","flushingTime","fps","clearBuffer","debug","xhr","XMLHttpRequest","async","open","responseType","onreadystatechange","event","readyState","feed","video","Uint8Array","response","send","pause","recordPlayer","play","playSpeed","speed","close","destroy","setFullScreen","setPlayerAdapter","playerAdapter","setPlayerNum","number","setSelectIndex","index","jumpPlayByTime","time","_default","exports"],"sources":["h264/PlayerManager.js"],"sourcesContent":["/**\n */\nclass H264PlayerManager {\n constructor(opt) {\n this.player = null;\n this.id = opt.id;\n this.url = opt.url;\n this.initPlayer();\n }\n /**\n * 初始化实时预览播放器\n */\n initPlayer(opt) {\n const jmuxer = new JMuxer({\n node: 'playerh264',\n mode: 'video',\n flushingTime: 1000,\n fps: 12,\n clearBuffer: false,\n debug: true,\n });\n var xhr = new XMLHttpRequest();\n var async = true;\n if (!this.url)\n return;\n xhr.open('GET', this.url, async);\n xhr.responseType = 'arraybuffer';\n xhr.onreadystatechange = function (event) {\n if (xhr.readyState === 4) {\n jmuxer.feed({\n video: new Uint8Array(xhr.response),\n });\n this.player = jmuxer;\n }\n };\n xhr.send(null);\n }\n pause() {\n this.recordPlayer && this.player.pause();\n }\n /**\n * 录像暂停后播放\n * 只有暂停后的录像调用才有效\n */\n play() {\n //\n }\n /**\n * 倍速播放\n * @param {number} speed 速率 0.125 0.25 0.5 1 2 4 8 共7种速率\n */\n playSpeed(speed) {\n // this.recordPlayer && this.recordPlayer.playSpeed(speed);\n }\n /**\n * 关闭播放器\n * @param {number} index 可选,关闭指定索引的窗口的播放器,不传则表示关闭所有播放器\n */\n close() {\n this.player && this.player.destroy();\n }\n /**\n * 设置全屏\n */\n setFullScreen() {\n // this.player.setFullScreen();\n }\n /**\n * 设置窗口自适应还是拉伸\n * @param {string} playerAdapter selfAdaption 自适应 | stretching 拉伸\n */\n setPlayerAdapter(playerAdapter) {\n // this.player.setPlayerAdapter(playerAdapter);\n }\n /**\n * 控制视频播放器显示的路数: 1 4 9 16 25,不会超过最大显示路数\n * @param {number} number\n */\n setPlayerNum(number) {\n // this.player.setPlayerNum(number);\n }\n /**\n * 设置选中的播放器的索引\n * @param {number} index\n */\n setSelectIndex(index) {\n // this.player.setSelectIndex(index);\n }\n /**\n * 录像跳转播放\n * @param {string} time HH:mm:ss格式\n */\n jumpPlayByTime(time) {\n // this.player.jumpPlayByTime(time);\n }\n}\nexport default H264PlayerManager;\n"],"mappings":";;;;;;;;;;;;AAAA;AACA;AADA,IAEMA,iBAAiB;EACnB,SAAAA,kBAAYC,GAAG,EAAE;IAAAC,eAAA,OAAAF,iBAAA;IACb,IAAI,CAACG,MAAM,GAAG,IAAI;IAClB,IAAI,CAACC,EAAE,GAAGH,GAAG,CAACG,EAAE;IAChB,IAAI,CAACC,GAAG,GAAGJ,GAAG,CAACI,GAAG;IAClB,IAAI,CAACC,UAAU,CAAC,CAAC;EACrB;EACA;AACJ;AACA;EAFI,OAAAC,YAAA,CAAAP,iBAAA;IAAAQ,GAAA;IAAAC,KAAA,EAGA,SAAAH,UAAUA,CAACL,GAAG,EAAE;MACZ,IAAMS,MAAM,GAAG,IAAIC,MAAM,CAAC;QACtBC,IAAI,EAAE,YAAY;QAClBC,IAAI,EAAE,OAAO;QACbC,YAAY,EAAE,IAAI;QAClBC,GAAG,EAAE,EAAE;QACPC,WAAW,EAAE,KAAK;QAClBC,KAAK,EAAE;MACX,CAAC,CAAC;MACF,IAAIC,GAAG,GAAG,IAAIC,cAAc,CAAC,CAAC;MAC9B,IAAIC,KAAK,GAAG,IAAI;MAChB,IAAI,CAAC,IAAI,CAACf,GAAG,EACT;MACJa,GAAG,CAACG,IAAI,CAAC,KAAK,EAAE,IAAI,CAAChB,GAAG,EAAEe,KAAK,CAAC;MAChCF,GAAG,CAACI,YAAY,GAAG,aAAa;MAChCJ,GAAG,CAACK,kBAAkB,GAAG,UAAUC,KAAK,EAAE;QACtC,IAAIN,GAAG,CAACO,UAAU,KAAK,CAAC,EAAE;UACtBf,MAAM,CAACgB,IAAI,CAAC;YACRC,KAAK,EAAE,IAAIC,UAAU,CAACV,GAAG,CAACW,QAAQ;UACtC,CAAC,CAAC;UACF,IAAI,CAAC1B,MAAM,GAAGO,MAAM;QACxB;MACJ,CAAC;MACDQ,GAAG,CAACY,IAAI,CAAC,IAAI,CAAC;IAClB;EAAC;IAAAtB,GAAA;IAAAC,KAAA,EACD,SAAAsB,KAAKA,CAAA,EAAG;MACJ,IAAI,CAACC,YAAY,IAAI,IAAI,CAAC7B,MAAM,CAAC4B,KAAK,CAAC,CAAC;IAC5C;IACA;AACJ;AACA;AACA;EAHI;IAAAvB,GAAA;IAAAC,KAAA,EAIA,SAAAwB,IAAIA,CAAA,EAAG;MACH;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAAzB,GAAA;IAAAC,KAAA,EAIA,SAAAyB,SAASA,CAACC,KAAK,EAAE;MACb;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAA3B,GAAA;IAAAC,KAAA,EAIA,SAAA2B,KAAKA,CAAA,EAAG;MACJ,IAAI,CAACjC,MAAM,IAAI,IAAI,CAACA,MAAM,CAACkC,OAAO,CAAC,CAAC;IACxC;IACA;AACJ;AACA;EAFI;IAAA7B,GAAA;IAAAC,KAAA,EAGA,SAAA6B,aAAaA,CAAA,EAAG;MACZ;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAA9B,GAAA;IAAAC,KAAA,EAIA,SAAA8B,gBAAgBA,CAACC,aAAa,EAAE;MAC5B;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAAhC,GAAA;IAAAC,KAAA,EAIA,SAAAgC,YAAYA,CAACC,MAAM,EAAE;MACjB;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAAlC,GAAA;IAAAC,KAAA,EAIA,SAAAkC,cAAcA,CAACC,KAAK,EAAE;MAClB;IAAA;IAEJ;AACJ;AACA;AACA;EAHI;IAAApC,GAAA;IAAAC,KAAA,EAIA,SAAAoC,cAAcA,CAACC,IAAI,EAAE;MACjB;IAAA;EACH;AAAA;AAAA,IAAAC,QAAA,GAAAC,OAAA,cAEUhD,iBAAiB","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { GetHistoryUrlParams } from '../api/types';
3
- export declare type HistoryControlHandle = {
3
+ export type HistoryControlHandle = {
4
4
  load: (channel: GetHistoryUrlParams) => void;
5
5
  };
6
6
  interface HistoryControlProps {
@@ -25,7 +25,7 @@ interface HistoryControlProps {
25
25
  * 历史视频控制器
26
26
  */
27
27
  export declare const HistoryControl: import("react").ForwardRefExoticComponent<HistoryControlProps & import("react").RefAttributes<HistoryControlHandle>>;
28
- export declare type UrlsTableItemType = {
28
+ export type UrlsTableItemType = {
29
29
  /** 序号 */
30
30
  index: number;
31
31
  /** 设备名称 */