fcr-ui-scene 3.7.5 → 3.7.6

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 (220) hide show
  1. package/lib/creator/index.js +3 -1
  2. package/lib/creator/provider-initializer.browser.js +13 -1
  3. package/lib/creator/provider-initializer.electron.js +22 -6
  4. package/lib/electron/bootstrap-sdk.js +39 -5
  5. package/lib/electron/injections.d.ts +1 -0
  6. package/lib/electron/injections.js +5 -1
  7. package/lib/electron/ipc/type.d.ts +1 -0
  8. package/lib/electron/ipc/type.js +1 -0
  9. package/lib/electron/preload.js +1 -0
  10. package/lib/electron/sdk-helper.d.ts +3 -0
  11. package/lib/electron/sdk-helper.js +53 -19
  12. package/lib/electron/until.d.ts +5 -1
  13. package/lib/electron/until.js +6 -2
  14. package/lib/fragments/annotation/store.js +2 -0
  15. package/lib/modules/action-bar/components/more/poppover-content.js +1 -1
  16. package/lib/modules/action-bar/components/screen-share/index.browser.js +4 -2
  17. package/lib/modules/action-bar/components/screen-share/index.electron.js +4 -2
  18. package/lib/modules/action-bar/components/screen-share/submenu.d.ts +5 -1
  19. package/lib/modules/action-bar/components/screen-share/submenu.js +11 -8
  20. package/lib/modules/audio-stream/index.js +4 -2
  21. package/lib/modules/chat/index.css +4 -0
  22. package/lib/modules/chat/view.js +2 -1
  23. package/lib/modules/components/control-bar/index.css +0 -2
  24. package/lib/modules/components/control-bar/index.d.ts +1 -0
  25. package/lib/modules/components/control-bar/index.js +26 -9
  26. package/lib/modules/components/leave-meeting/main-scene/store.d.ts +3 -0
  27. package/lib/modules/components/leave-meeting/main-scene/store.js +12 -0
  28. package/lib/modules/components/leave-meeting/store.base.d.ts +4 -3
  29. package/lib/modules/components/leave-meeting/store.base.js +0 -10
  30. package/lib/modules/components/leave-meeting/waiting-scene/store.d.ts +5 -1
  31. package/lib/modules/components/leave-meeting/waiting-scene/store.js +17 -3
  32. package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +1 -2
  33. package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.js +4 -3
  34. package/lib/modules/components/member-window/components/video-player/components/zoomable-container.js +18 -32
  35. package/lib/modules/components/toolbar/hooks/use-resize-visible.js +14 -2
  36. package/lib/modules/control-bar/components/boundary-detector.d.ts +7 -5
  37. package/lib/modules/control-bar/components/boundary-detector.js +22 -2
  38. package/lib/modules/control-bar/components/cloud-recording-buttons.js +3 -0
  39. package/lib/modules/control-bar/hooks.js +2 -1
  40. package/lib/modules/control-bar/store.d.ts +1 -0
  41. package/lib/modules/control-bar/store.js +10 -1
  42. package/lib/modules/control-bar/view.js +96 -28
  43. package/lib/modules/dialog/components/confirm/index.js +6 -24
  44. package/lib/modules/dialog/components/dialog-container/index.css +7 -0
  45. package/lib/modules/dialog/dialogs/device-setting/index.d.ts +1 -0
  46. package/lib/modules/dialog/dialogs/device-setting/index.js +4 -2
  47. package/lib/modules/dialog/dialogs/invite/index.d.ts +1 -0
  48. package/lib/modules/dialog/dialogs/invite/index.js +2 -1
  49. package/lib/modules/dialog/dialogs/mute-all/index.d.ts +1 -0
  50. package/lib/modules/dialog/dialogs/mute-all/index.js +2 -1
  51. package/lib/modules/dialog/dialogs/participant/index.js +7 -1
  52. package/lib/modules/dialog/dialogs/share-screen-selection/index.js +1 -1
  53. package/lib/modules/dialog/dialogs/sub-window/index.js +1 -7
  54. package/lib/modules/dialog/dialogs/toast/index.d.ts +1 -1
  55. package/lib/modules/dialog/dialogs/toast/index.js +1 -1
  56. package/lib/modules/dialog/dialogs/video-window/index.d.ts +4 -1
  57. package/lib/modules/dialog/dialogs/video-window/index.js +5 -2
  58. package/lib/modules/dialog/dialogs/widget/index.d.ts +2 -0
  59. package/lib/modules/dialog/dialogs/widget/index.js +11 -3
  60. package/lib/modules/dialog/index.css +6 -2
  61. package/lib/modules/dialog/level-config.d.ts +1 -0
  62. package/lib/modules/dialog/level-config.js +2 -1
  63. package/lib/modules/dialog/store.base.d.ts +2 -0
  64. package/lib/modules/dialog/store.browser.d.ts +2 -0
  65. package/lib/modules/dialog/store.browser.js +6 -1
  66. package/lib/modules/dialog/store.electron.d.ts +9 -1
  67. package/lib/modules/dialog/store.electron.js +64 -4
  68. package/lib/modules/dialog/type.d.ts +3 -0
  69. package/lib/modules/event-toast/index.css +0 -1
  70. package/lib/modules/event-toast/index.js +1 -0
  71. package/lib/modules/event-toast/store.base.d.ts +2 -0
  72. package/lib/modules/event-toast/store.base.js +40 -21
  73. package/lib/modules/event-toast/store.electron.d.ts +2 -0
  74. package/lib/modules/event-toast/store.electron.js +19 -9
  75. package/lib/modules/layout/components/CommonVideoRenderer.js +1 -0
  76. package/lib/modules/participant/components/confirm-input/index.js +1 -1
  77. package/lib/modules/participant/store.base.d.ts +30 -3
  78. package/lib/modules/participant/store.base.js +249 -96
  79. package/lib/modules/participant/store.browser.js +4 -3
  80. package/lib/modules/participant/store.electron.js +5 -3
  81. package/lib/modules/pc-audio-connect/main-scene/store.js +1 -0
  82. package/lib/modules/secondary-window/store.d.ts +1 -0
  83. package/lib/modules/secondary-window/store.js +5 -0
  84. package/lib/modules/secondary-window/view.js +4 -5
  85. package/lib/modules/setting/audio-settings/audio-settings.js +0 -17
  86. package/lib/modules/setting/index.css +1 -0
  87. package/lib/modules/setting/index.js +1 -1
  88. package/lib/modules/setting/state/index.js +1 -1
  89. package/lib/modules/setting/store.base.d.ts +5 -2
  90. package/lib/modules/setting/store.base.js +66 -26
  91. package/lib/modules/setting/view.js +3 -0
  92. package/lib/modules/share-screen/components/selection/index.css +4 -0
  93. package/lib/modules/share-screen/store.base.js +17 -4
  94. package/lib/modules/share-screen/store.electron.js +4 -1
  95. package/lib/modules/video-window/popover-watcher.d.ts +3 -11
  96. package/lib/modules/video-window/popover-watcher.js +22 -32
  97. package/lib/modules/video-window/store.d.ts +15 -5
  98. package/lib/modules/video-window/store.js +109 -64
  99. package/lib/modules/video-window/view.js +50 -1
  100. package/lib/modules/whiteboard/index.d.ts +1 -1
  101. package/lib/modules/whiteboard/index.js +1 -1
  102. package/lib/modules/whiteboard/store.d.ts +3 -0
  103. package/lib/modules/whiteboard/store.js +11 -0
  104. package/lib/modules/whiteboard/view.js +10 -1
  105. package/lib/modules/widget/sdk.js +1 -1
  106. package/lib/modules/widget/store.base.d.ts +1 -0
  107. package/lib/modules/widget/store.browser.d.ts +1 -0
  108. package/lib/modules/widget/store.browser.js +60 -4
  109. package/lib/modules/widget/store.electron.d.ts +1 -0
  110. package/lib/modules/widget/store.electron.js +59 -2
  111. package/lib/modules/widget/type.d.ts +3 -2
  112. package/lib/modules/widget/view.js +9 -4
  113. package/lib/modules/widget/web-widget.d.ts +2 -1
  114. package/lib/modules/widget/web-widget.js +7 -5
  115. package/lib/object-manager.d.ts +2 -1
  116. package/lib/object-manager.js +1 -0
  117. package/lib/providers/board-share/provider.base.d.ts +8 -1
  118. package/lib/providers/board-share/provider.base.js +12 -2
  119. package/lib/providers/device-provider.d.ts +16 -2
  120. package/lib/providers/device-provider.js +48 -59
  121. package/lib/providers/dialog/provider.base.d.ts +1 -0
  122. package/lib/providers/dialog/provider.browser.d.ts +1 -0
  123. package/lib/providers/dialog/provider.browser.js +7 -2
  124. package/lib/providers/dialog/provider.electron.d.ts +4 -1
  125. package/lib/providers/dialog/provider.electron.js +88 -2
  126. package/lib/providers/dialog/type.d.ts +7 -0
  127. package/lib/providers/mouse-detect/provider.d.ts +4 -1
  128. package/lib/providers/mouse-detect/provider.js +94 -5
  129. package/lib/providers/mouse-detect/struct.d.ts +2 -1
  130. package/lib/providers/mouse-detect/struct.js +1 -0
  131. package/lib/providers/mouse-detect/type.d.ts +2 -0
  132. package/lib/providers/renderer-provider.d.ts +5 -0
  133. package/lib/providers/renderer-provider.js +5 -0
  134. package/lib/providers/room-provider/room-provider.d.ts +1 -0
  135. package/lib/providers/room-provider/room-provider.js +23 -13
  136. package/lib/providers/screen-share/provider.base.js +3 -11
  137. package/lib/providers/screen-share/provider.browser.js +23 -14
  138. package/lib/providers/screen-share/provider.electron.d.ts +1 -0
  139. package/lib/providers/screen-share/provider.electron.js +44 -17
  140. package/lib/providers/screen-share/strategy/browser.js +16 -13
  141. package/lib/providers/screen-share/strategy/electron.d.ts +2 -2
  142. package/lib/providers/screen-share/strategy/electron.js +15 -10
  143. package/lib/providers/screen-share/strategy/type.d.ts +6 -0
  144. package/lib/providers/screen-share/stream-state-sync.d.ts +3 -2
  145. package/lib/providers/screen-share/stream-state-sync.js +7 -4
  146. package/lib/providers/screen-share/struct.d.ts +9 -7
  147. package/lib/providers/screen-share/struct.js +11 -8
  148. package/lib/providers/screen-share/type.d.ts +7 -1
  149. package/lib/providers/widget-provider.d.ts +5 -3
  150. package/lib/providers/widget-provider.js +12 -18
  151. package/lib/providers/window/main-window.js +3 -0
  152. package/lib/providers/window/renderer-window.js +4 -1
  153. package/lib/runtime.d.ts +1 -0
  154. package/lib/runtime.js +2 -1
  155. package/lib/scenes/main-scene.js +7 -0
  156. package/lib/shared-context/board-context.d.ts +2 -0
  157. package/lib/shared-context/board-context.js +2 -0
  158. package/lib/shared-data/member-data.d.ts +0 -8
  159. package/lib/shared-data/member-data.js +26 -78
  160. package/lib/shared-data/widget-data.d.ts +13 -0
  161. package/lib/shared-data/widget-data.js +50 -0
  162. package/lib/translations/enUS.d.ts +0 -2
  163. package/lib/translations/enUS.js +4 -6
  164. package/lib/translations/zhCN.d.ts +0 -2
  165. package/lib/translations/zhCN.js +4 -6
  166. package/lib/type.d.ts +5 -0
  167. package/lib/ui-scene.d.ts +2 -4
  168. package/lib/ui-scene.js +27 -40
  169. package/lib/utilities/constant.d.ts +3 -1
  170. package/lib/utilities/constant.js +5 -2
  171. package/lib/utilities/default-config.d.ts +18 -0
  172. package/lib/utilities/default-config.js +19 -1
  173. package/lib/utilities/focus-helper.js +10 -3
  174. package/lib/utilities/logger.js +3 -1
  175. package/lib/utilities/renderer.d.ts +1 -0
  176. package/lib/utilities/renderer.js +7 -1
  177. package/package.json +5 -5
  178. package/public/index.html +13 -3
  179. package/lib/modules/action-bar/index.d.ts +0 -17
  180. package/lib/modules/action-bar/index.js +0 -63
  181. package/lib/modules/action-bar/store.base.d.ts +0 -15
  182. package/lib/modules/action-bar/store.base.js +0 -117
  183. package/lib/modules/action-bar/view.d.ts +0 -5
  184. package/lib/modules/action-bar/view.js +0 -112
  185. package/lib/modules/action-bar/waiting-scene/store.d.ts +0 -6
  186. package/lib/modules/action-bar/waiting-scene/store.js +0 -91
  187. package/lib/modules/control-bar/types.d.ts +0 -31
  188. package/lib/modules/control-bar/types.js +0 -6
  189. package/lib/modules/dialog/dialogs/pre-setting/index.css +0 -26
  190. package/lib/modules/dialog/dialogs/pre-setting/index.d.ts +0 -6
  191. package/lib/modules/dialog/dialogs/pre-setting/index.js +0 -57
  192. package/lib/modules/dialog/hooks/use-popover-watcher.d.ts +0 -14
  193. package/lib/modules/dialog/hooks/use-popover-watcher.js +0 -112
  194. package/lib/modules/event-toast/store.d.ts +0 -23
  195. package/lib/modules/event-toast/store.js +0 -187
  196. package/lib/modules/setting/common/advance-link.d.ts +0 -3
  197. package/lib/modules/setting/common/advance-link.js +0 -27
  198. package/lib/modules/setting/common/index.css +0 -26
  199. package/lib/modules/setting/common/useNamespace.d.ts +0 -15
  200. package/lib/modules/setting/common/useNamespace.js +0 -66
  201. package/lib/modules/widget/store.d.ts +0 -17
  202. package/lib/modules/widget/store.js +0 -71
  203. package/lib/providers/board-share/provider.d.ts +0 -66
  204. package/lib/providers/board-share/provider.js +0 -456
  205. package/lib/providers/screen-share/provider.d.ts +0 -69
  206. package/lib/providers/screen-share/provider.js +0 -615
  207. package/lib/providers/whiteboard-provider.d.ts +0 -26
  208. package/lib/providers/whiteboard-provider.js +0 -131
  209. package/lib/providers/window/browser-window-proxy.d.ts +0 -0
  210. package/lib/providers/window/browser-window-proxy.js +0 -1
  211. package/lib/providers/window/ipc-protocol.d.ts +0 -0
  212. package/lib/providers/window/ipc-protocol.js +0 -1
  213. package/lib/providers/window/main-process-handler.d.ts +0 -0
  214. package/lib/providers/window/main-process-handler.js +0 -1
  215. package/lib/providers/window/main-process-integration.d.ts +0 -0
  216. package/lib/providers/window/main-process-integration.js +0 -1
  217. package/lib/shared-data/whiteboard-data.d.ts +0 -70
  218. package/lib/shared-data/whiteboard-data.js +0 -342
  219. package/lib/utilities/ipc-protocol.d.ts +0 -91
  220. package/lib/utilities/ipc-protocol.js +0 -61
@@ -151,8 +151,10 @@ var AudioStreamUIModule = exports.AudioStreamUIModule = /*#__PURE__*/function (_
151
151
  streams.forEach(function (stream) {
152
152
  if (stream.owner.userId !== _this._localUser.userId) {
153
153
  var isAudioPublished = stream.streamType === _fcrCore.FcrStreamType.AUDIO || stream.streamType === _fcrCore.FcrStreamType.BOTH;
154
- var isAudioDeviceStarted = stream.audioSourceState === _fcrCore.FcrMediaSourceState.OPEN;
155
- if (isAudioPublished && isAudioDeviceStarted) {
154
+
155
+ // const isAudioDeviceStarted = stream.audioSourceState === FcrMediaSourceState.OPEN;
156
+
157
+ if (isAudioPublished) {
156
158
  _this.logger.info('start play remote audio', stream.streamId);
157
159
  streamControl.startPlayRemoteAudioStream(stream.streamId);
158
160
  } else {
@@ -107,3 +107,7 @@
107
107
  .fcr-line-message-container {
108
108
  width: 100%;
109
109
  }
110
+
111
+ .fcr-chat-container-box {
112
+ height: calc(100% - 46px);
113
+ }
@@ -194,7 +194,8 @@ var Chat = exports.Chat = (0, _mobxReact.observer)(function (_ref) {
194
194
  }
195
195
  });
196
196
  };
197
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
197
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
198
+ className: "fcr-chat-container-box",
198
199
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_chatTabs["default"], {}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
199
200
  style: _objectSpread({}, styles),
200
201
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_chatWrapper.ChatWrapper, {
@@ -21,12 +21,10 @@
21
21
  }
22
22
  .fcr-whiteboard-controlbar-body {
23
23
  width: 100%;
24
- height: 100%;
25
24
  /* display: flex;
26
25
  align-items: center;
27
26
  justify-content: center; */
28
27
  position: absolute;
29
- top: 0;
30
28
  bottom: 0;
31
29
  background-color: #e5e7eb;
32
30
  }
@@ -20,6 +20,7 @@ type WhiteboardProps = {
20
20
  isSharingWithAudio?: boolean;
21
21
  ownerUserName: string;
22
22
  isMyBoard: boolean;
23
+ showControlBar?: boolean;
23
24
  };
24
25
  type PickRequired<T extends object, K extends keyof T> = Required<Pick<T, K>> & Omit<T, K>;
25
26
  type SharingType<T extends 'whiteboard' | 'screenshare' | undefined> = T extends 'whiteboard' ? WhiteboardProps : PickRequired<Partial<WhiteboardProps>, 'onZoomIn' | 'onZoomOut' | 'onAdaptive' | 'onOrigin' | 'isSharingWithAudio'>;
@@ -21,9 +21,10 @@ var _i18n = require("agora-ui-foundation/lib/i18n");
21
21
  var _type2 = require("../../whiteboard/type");
22
22
  var _enums = require("fcr-core/lib/room-control/whiteboard-control/enums");
23
23
  require("./index.css");
24
+ var _debounce = _interopRequireDefault(require("lodash/debounce"));
24
25
  var _jsxRuntime = require("react/jsx-runtime");
25
26
  var initWidth = 1920;
26
- var initHeight = 1220;
27
+ var initHeight = 1080;
27
28
  var WhiteboardControlbar = exports.WhiteboardControlbar = function WhiteboardControlbar(props) {
28
29
  var transI18n = (0, _i18n.useI18n)();
29
30
  var onClose = props.onClose,
@@ -43,7 +44,9 @@ var WhiteboardControlbar = exports.WhiteboardControlbar = function WhiteboardCon
43
44
  onZoomOut = props.onZoomOut,
44
45
  onAdaptive = props.onAdaptive,
45
46
  onOrigin = props.onOrigin,
46
- isSharingWithAudio = props.isSharingWithAudio;
47
+ isSharingWithAudio = props.isSharingWithAudio,
48
+ _props$showControlBar = props.showControlBar,
49
+ showControlBar = _props$showControlBar === void 0 ? true : _props$showControlBar;
47
50
  var boardRef = (0, _react.useRef)(undefined);
48
51
  var _useState = (0, _react.useState)(false),
49
52
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
@@ -81,16 +84,28 @@ var WhiteboardControlbar = exports.WhiteboardControlbar = function WhiteboardCon
81
84
  var cursor = (0, _react.useMemo)(function () {
82
85
  return _enums.FcrBoardToolType[currentTool || _enums.FcrBoardToolType.NONE].toLowerCase();
83
86
  }, [currentTool]);
87
+ var resetHeight = (0, _react.useCallback)(function () {
88
+ var _boardRef$current;
89
+ var height = ((_boardRef$current = boardRef.current) === null || _boardRef$current === void 0 ? void 0 : _boardRef$current.clientHeight) || 0;
90
+ setContianHeight(height);
91
+ }, []);
92
+ var resetHeightDebounce = (0, _react.useCallback)((0, _debounce["default"])(resetHeight, 100), []);
84
93
  (0, _react.useEffect)(function () {
94
+ window.addEventListener('resize', resetHeightDebounce);
85
95
  return function () {
86
- return setLoading(false);
96
+ setLoading(false);
97
+ window.removeEventListener('resize', resetHeightDebounce);
98
+ if (boardRef.current) {
99
+ boardRef.current.removeEventListener('transitionend', resetHeight);
100
+ }
87
101
  };
88
102
  }, []);
89
103
  var handleBoardRef = function handleBoardRef(ref) {
90
- var _boardRef$current;
91
104
  boardRef.current = ref;
92
- var height = ((_boardRef$current = boardRef.current) === null || _boardRef$current === void 0 ? void 0 : _boardRef$current.clientHeight) || 0;
93
- setContianHeight(height);
105
+ resetHeight();
106
+ if (boardRef.current) {
107
+ boardRef.current.addEventListener('transitionend', resetHeight);
108
+ }
94
109
  };
95
110
  var showEditButton = !controlEnabled && !isMyBoard && !isHost && isWhiteboard;
96
111
  var showChangeThemeButton = (canWriteBoard || isMyBoard || isHost) && setTheme && currentTheme;
@@ -175,7 +190,7 @@ var WhiteboardControlbar = exports.WhiteboardControlbar = function WhiteboardCon
175
190
  style: {
176
191
  height: isWhiteboard ? '100%' : 'auto'
177
192
  },
178
- children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
193
+ children: [showControlBar && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
179
194
  className: "fcr-whiteboard-controlbar-header",
180
195
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
181
196
  className: "fcr-whiteboard-controlbar-left",
@@ -307,7 +322,9 @@ var WhiteboardControlbar = exports.WhiteboardControlbar = function WhiteboardCon
307
322
  className: "fcr-whiteboard-controlbar-body",
308
323
  ref: handleBoardRef,
309
324
  style: {
310
- backgroundColor: '#e5e7eb'
325
+ backgroundColor: '#e5e7eb',
326
+ height: showControlBar ? 'calc(100% - 28px)' : '100%',
327
+ top: showControlBar ? '28px' : '0'
311
328
  },
312
329
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
313
330
  className: "fcr-whiteboard-controlbar-body-content",
@@ -317,7 +334,7 @@ var WhiteboardControlbar = exports.WhiteboardControlbar = function WhiteboardCon
317
334
  position: 'absolute',
318
335
  left: "-".concat(width / 2, "px"),
319
336
  marginLeft: '50%',
320
- top: "-".concat((height - contianHeight) / 2, "px")
337
+ top: "-".concat(height === contianHeight ? 0 : (height - contianHeight) / 2, "px")
321
338
  },
322
339
  children: [onBoardDomLoaded && preventAction && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
323
340
  className: "whiteboard-action-prevent"
@@ -4,7 +4,10 @@ import { FcrPlatform } from 'fcr-core/lib/type';
4
4
  export default class LeaveMeetingStoreMain extends LeaveMeetingStoreBase {
5
5
  private _sharedMemberDataSource;
6
6
  private _abilityProvider;
7
+ private _memberDataSource;
7
8
  constructor(args: LeaveMeetingStoreArgs);
9
+ get localUserId(): string;
10
+ get localUserRole(): import("fcr-core/lib/type").FcrUserRole;
8
11
  get hostAvailibleRemoteUsers(): import("fcr-core/lib/type").FcrUserInfo[];
9
12
  get isPstnUser(): boolean;
10
13
  isHostSupportedByPlatform(platform: FcrPlatform): boolean;
@@ -73,10 +73,22 @@ var LeaveMeetingStoreMain = exports["default"] = /*#__PURE__*/function (_LeaveMe
73
73
  (0, _defineProperty2["default"])(_this, _ref, void _initProto(_this));
74
74
  _this._sharedMemberDataSource = args.objectManager.getObject(_objectManager.FcrUIObjectKeys.S_SHARED_MEMBER_DATA_SOURCE);
75
75
  _this._abilityProvider = args.objectManager.getObject(_objectManager.FcrUIObjectKeys.P_ABILITY_PROVIDER);
76
+ var memberDataSource = args.objectManager.getObject(_objectManager.FcrUIObjectKeys.S_SHARED_MEMBER_DATA_SOURCE);
77
+ _this._memberDataSource = memberDataSource;
76
78
  return _this;
77
79
  }
78
80
  (0, _inherits2["default"])(LeaveMeetingStoreMain, _LeaveMeetingStoreBas);
79
81
  return (0, _createClass2["default"])(LeaveMeetingStoreMain, [{
82
+ key: "localUserId",
83
+ get: function get() {
84
+ return this._memberDataSource.localUser.userId;
85
+ }
86
+ }, {
87
+ key: "localUserRole",
88
+ get: function get() {
89
+ return this._memberDataSource.localUserRole;
90
+ }
91
+ }, {
80
92
  key: "hostAvailibleRemoteUsers",
81
93
  get: function get() {
82
94
  var _this2 = this;
@@ -1,8 +1,9 @@
1
1
  import { FcrUserInfo, FcrUserRole, FcrPlatform } from 'fcr-core/lib/type';
2
+ import { FcrUserControl } from 'fcr-core';
2
3
  import { LeaveMeetingStoreArgs } from './type';
3
4
  export declare abstract class LeaveMeetingStoreBase {
4
5
  private _roomControl;
5
- private _userControl;
6
+ protected _userControl: FcrUserControl;
6
7
  private _streamControl;
7
8
  private _privilegeProvider;
8
9
  private _dialogProvider;
@@ -12,8 +13,8 @@ export declare abstract class LeaveMeetingStoreBase {
12
13
  accessor canAssign: boolean;
13
14
  accessor loading: boolean;
14
15
  get isLocked(): boolean;
15
- get localUserId(): string;
16
- get localUserRole(): FcrUserRole;
16
+ abstract get localUserId(): string;
17
+ abstract get localUserRole(): FcrUserRole;
17
18
  get hasAssignHostBeforeLeavingPermission(): boolean;
18
19
  get hasEndRoomPermission(): boolean;
19
20
  abstract get hostAvailibleRemoteUsers(): FcrUserInfo[];
@@ -121,16 +121,6 @@ var LeaveMeetingStoreBase = exports.LeaveMeetingStoreBase = /*#__PURE__*/functio
121
121
  get: function get() {
122
122
  return this._privilegeProvider.isLockRoomEnabled();
123
123
  }
124
- }, {
125
- key: "localUserId",
126
- get: function get() {
127
- return this._userControl.getLocalUser().userId;
128
- }
129
- }, {
130
- key: "localUserRole",
131
- get: function get() {
132
- return this._userControl.getLocalUser().userRole;
133
- }
134
124
  }, {
135
125
  key: "hasAssignHostBeforeLeavingPermission",
136
126
  get: function get() {
@@ -1,8 +1,12 @@
1
1
  import { LeaveMeetingStoreBase } from '../store.base';
2
2
  import { LeaveMeetingStoreArgs } from '../type';
3
- import { FcrPlatform } from 'fcr-core/lib/type';
3
+ import { FcrPlatform, FcrUserRole } from 'fcr-core/lib/type';
4
4
  export default class LeaveMeetingStoreWaiting extends LeaveMeetingStoreBase {
5
+ private _localUserId;
6
+ private _localUserRole;
5
7
  constructor(args: LeaveMeetingStoreArgs);
8
+ get localUserId(): string;
9
+ get localUserRole(): FcrUserRole;
6
10
  get hostAvailibleRemoteUsers(): never[];
7
11
  get isPstnUser(): boolean;
8
12
  isHostSupportedByPlatform(platform: FcrPlatform): boolean;
@@ -48,6 +48,7 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
48
48
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
49
49
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
50
50
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
51
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
51
52
  var _mobx = require("mobx");
52
53
  var _store = require("../store.base");
53
54
  var _LeaveMeetingStoreWaiting;
@@ -59,17 +60,30 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
59
60
  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); }
60
61
  function _setFunctionName(e, t, n) { "symbol" == _typeof(t) && (t = (t = t.description) ? "[" + t + "]" : ""); try { Object.defineProperty(e, "name", { configurable: !0, value: n ? n + " " + t : t }); } catch (e) {} return e; }
61
62
  function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== e ? _typeof(e) : "null")); return e; }
62
- _ref = (_isHostSupportedByPlatformDecs = [_mobx.action, _mobx.action.bound], "hostAvailibleRemoteUsers");
63
+ _ref = (_isHostSupportedByPlatformDecs = [_mobx.action, _mobx.action.bound], "_localUserId");
63
64
  var LeaveMeetingStoreWaiting = exports["default"] = /*#__PURE__*/function (_LeaveMeetingStoreBas) {
64
65
  function LeaveMeetingStoreWaiting(args) {
65
66
  var _this;
66
67
  (0, _classCallCheck2["default"])(this, LeaveMeetingStoreWaiting);
67
- _initProto(_this = _callSuper(this, LeaveMeetingStoreWaiting, [args]));
68
+ _this = _callSuper(this, LeaveMeetingStoreWaiting, [args]);
69
+ (0, _defineProperty2["default"])(_this, _ref, void _initProto(_this));
70
+ _this._localUserId = _this._userControl.getLocalUser().userId;
71
+ _this._localUserRole = _this._userControl.getLocalUser().userRole;
68
72
  return _this;
69
73
  }
70
74
  (0, _inherits2["default"])(LeaveMeetingStoreWaiting, _LeaveMeetingStoreBas);
71
75
  return (0, _createClass2["default"])(LeaveMeetingStoreWaiting, [{
72
- key: _ref,
76
+ key: "localUserId",
77
+ get: function get() {
78
+ return this._localUserId;
79
+ }
80
+ }, {
81
+ key: "localUserRole",
82
+ get: function get() {
83
+ return this._localUserRole;
84
+ }
85
+ }, {
86
+ key: "hostAvailibleRemoteUsers",
73
87
  get: function get() {
74
88
  return [];
75
89
  }
@@ -111,8 +111,7 @@ var MoreActions = exports.MoreActions = (0, _mobxReact.observer)(function (_ref)
111
111
  boxShadow: 'var(--fcr_web_light_dropup_m)',
112
112
  borderRadius: 'var(--fcr_cornerradius_l)',
113
113
  minWidth: '210px',
114
- maxWidth: '300px',
115
- width: 'fit-content'
114
+ maxWidth: '300px'
116
115
  },
117
116
  overlayClassName: "member-window-actions__more-actions",
118
117
  mouseEnterDelay: 0,
@@ -20,14 +20,15 @@ var FcrUILocalCameraVideoPlayer = (0, _mobxReact.observer)(function (props) {
20
20
  cameraEnabled = _context$localVideoRe.cameraEnabled,
21
21
  cameraId = _context$localVideoRe.cameraId,
22
22
  startCameraPreview = _context$localVideoRe.startCameraPreview,
23
- stopCameraPreview = _context$localVideoRe.stopCameraPreview;
23
+ stopCameraPreview = _context$localVideoRe.stopCameraPreview,
24
+ isLocalMirrorEnabled = _context$localVideoRe.isLocalMirrorEnabled;
24
25
  (0, _react.useEffect)(function () {
25
26
  var dom = divRef.current;
26
27
  if (dom && cameraEnabled) {
27
28
  isPreviewingRef.current = true;
28
29
  startCameraPreview(dom, {
29
30
  renderMode: renderMode,
30
- isMirror: false
31
+ isMirror: isLocalMirrorEnabled
31
32
  });
32
33
  }
33
34
  return function () {
@@ -38,7 +39,7 @@ var FcrUILocalCameraVideoPlayer = (0, _mobxReact.observer)(function (props) {
38
39
  stopCameraPreview(dom);
39
40
  }
40
41
  };
41
- }, [cameraEnabled, cameraId]);
42
+ }, [cameraEnabled, cameraId, isLocalMirrorEnabled]);
42
43
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
43
44
  className: "fcr-member-window-body fcr-member-window-body-video",
44
45
  ref: divRef
@@ -33,7 +33,6 @@ var ZoomableContainer = exports.ZoomableContainer = function ZoomableContainer(_
33
33
  onScaleChange = _ref.onScaleChange,
34
34
  onPositionChange = _ref.onPositionChange;
35
35
  var containerRef = (0, _react.useRef)(null);
36
- var contentRef = (0, _react.useRef)(null);
37
36
  var _useState = (0, _react.useState)(initialScale),
38
37
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
39
38
  scale = _useState2[0],
@@ -63,13 +62,6 @@ var ZoomableContainer = exports.ZoomableContainer = function ZoomableContainer(_
63
62
  _useState0 = (0, _slicedToArray2["default"])(_useState9, 2),
64
63
  containerSize = _useState0[0],
65
64
  setContainerSize = _useState0[1];
66
- var _useState1 = (0, _react.useState)({
67
- width: 0,
68
- height: 0
69
- }),
70
- _useState10 = (0, _slicedToArray2["default"])(_useState1, 2),
71
- contentSize = _useState10[0],
72
- setContentSize = _useState10[1];
73
65
 
74
66
  // 处理鼠标按下
75
67
  var handleMouseDown = (0, _react.useCallback)(function (e) {
@@ -85,9 +77,12 @@ var ZoomableContainer = exports.ZoomableContainer = function ZoomableContainer(_
85
77
 
86
78
  // 计算边界限制
87
79
  var getBoundedPosition = (0, _react.useCallback)(function (newPosition) {
88
- if (!containerSize.width || !contentSize.width) return newPosition;
89
- var scaledContentWidth = contentSize.width * scale;
90
- var scaledContentHeight = contentSize.height * scale;
80
+ if (!containerSize.width) return newPosition;
81
+
82
+ // 计算缩放后的内容尺寸
83
+ // 内容的 width 和 height 均为 100%,所以内容基础尺寸即为容器尺寸
84
+ var scaledContentWidth = containerSize.width * scale;
85
+ var scaledContentHeight = containerSize.height * scale;
91
86
 
92
87
  // 计算边界
93
88
  var maxX = Math.max(0, (scaledContentWidth - containerSize.width) / 2);
@@ -98,7 +93,7 @@ var ZoomableContainer = exports.ZoomableContainer = function ZoomableContainer(_
98
93
  x: Math.max(minX, Math.min(maxX, newPosition.x)),
99
94
  y: Math.max(minY, Math.min(maxY, newPosition.y))
100
95
  };
101
- }, [containerSize, contentSize, scale]);
96
+ }, [containerSize, scale]);
102
97
 
103
98
  // 处理鼠标移动
104
99
  var handleMouseMove = (0, _react.useCallback)(function (e) {
@@ -144,26 +139,18 @@ var ZoomableContainer = exports.ZoomableContainer = function ZoomableContainer(_
144
139
 
145
140
  // 监听容器和内容尺寸变化
146
141
  (0, _react.useEffect)(function () {
147
- var updateSizes = function updateSizes() {
148
- if (containerRef.current) {
149
- var rect = containerRef.current.getBoundingClientRect();
150
- setContainerSize({
151
- width: rect.width,
152
- height: rect.height
153
- });
154
- }
155
- if (contentRef.current) {
156
- var _rect = contentRef.current.getBoundingClientRect();
157
- setContentSize({
158
- width: _rect.width,
159
- height: _rect.height
160
- });
161
- }
162
- };
163
- updateSizes();
164
- window.addEventListener('resize', updateSizes);
142
+ var container = containerRef.current;
143
+ if (!container) return;
144
+ var resizeObserver = new ResizeObserver(function () {
145
+ var rect = container.getBoundingClientRect();
146
+ setContainerSize({
147
+ width: rect.width,
148
+ height: rect.height
149
+ });
150
+ });
151
+ resizeObserver.observe(container);
165
152
  return function () {
166
- return window.removeEventListener('resize', updateSizes);
153
+ resizeObserver.disconnect();
167
154
  };
168
155
  }, []);
169
156
 
@@ -241,7 +228,6 @@ var ZoomableContainer = exports.ZoomableContainer = function ZoomableContainer(_
241
228
  userSelect: 'none'
242
229
  },
243
230
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
244
- ref: contentRef,
245
231
  style: {
246
232
  width: '100%',
247
233
  height: '100%',
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.useResizeVisible = void 0;
9
+ require("core-js/modules/web.timers.js");
9
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
11
  var _react = require("react");
11
12
  var _item = require("../components/item");
@@ -27,16 +28,27 @@ var useResizeVisible = exports.useResizeVisible = function useResizeVisible() {
27
28
  var actionbar = document.querySelector(".".concat(_constants.actionBarClassName));
28
29
  var actionBarHeight = (actionbar === null || actionbar === void 0 ? void 0 : actionbar.getBoundingClientRect().height) || 0;
29
30
  var bottomHeight = 20;
31
+ var timer = (0, _react.useRef)(null);
30
32
  var handleResize = (0, _react.useCallback)(function () {
31
- var offsetHeight = document.body.offsetHeight;
32
- var coverSize = threshold - offsetHeight;
33
+ var _document$documentEle = document.documentElement.getBoundingClientRect(),
34
+ height = _document$documentEle.height;
35
+ var coverSize = threshold - height;
33
36
  var coverCount = Math.floor(coverSize / itemHeight);
34
37
  setCoverCount(coverCount);
35
38
  }, [threshold]);
36
39
  (0, _react.useEffect)(function () {
37
40
  window.addEventListener('resize', handleResize);
41
+ window.addEventListener('animationend', handleResize);
42
+ if (timer.current) {
43
+ window.clearTimeout(timer.current);
44
+ }
45
+ timer.current = window.setTimeout(handleResize);
38
46
  return function () {
39
47
  window.removeEventListener('resize', handleResize);
48
+ window.removeEventListener('animationend', handleResize);
49
+ if (timer.current) {
50
+ window.clearTimeout(timer.current);
51
+ }
40
52
  };
41
53
  }, [threshold]);
42
54
  var setToolbarDom = (0, _react.useCallback)(function (dom) {
@@ -1,6 +1,8 @@
1
- import { PropsWithChildren, FC } from 'react';
2
- type BoundaryDetectorProps = PropsWithChildren<{
1
+ export type DetectorRef = {
2
+ getBoundaries: () => FcrUI.FcrUIRectangle;
3
+ };
4
+ export declare const BoundaryDetector: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<{
3
5
  onBoundariesChanged: (boundaries: FcrUI.FcrUIRectangle) => void;
4
- }>;
5
- export declare const BoundaryDetector: FC<BoundaryDetectorProps>;
6
- export {};
6
+ } & {
7
+ children?: import("react").ReactNode | undefined;
8
+ } & import("react").RefAttributes<DetectorRef>>>;
@@ -9,13 +9,32 @@ var _react = require("react");
9
9
  var _context = require("../context");
10
10
  var _hooks = require("../hooks");
11
11
  var _jsxRuntime = require("react/jsx-runtime");
12
- var BoundaryDetector = exports.BoundaryDetector = /*#__PURE__*/(0, _react.memo)(function (_ref) {
12
+ var BoundaryDetector = exports.BoundaryDetector = /*#__PURE__*/(0, _react.memo)(/*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
13
13
  var children = _ref.children,
14
14
  onBoundariesChanged = _ref.onBoundariesChanged;
15
15
  var _useContext = (0, _react.useContext)(_context.DragContext),
16
16
  position = _useContext.position,
17
17
  isDragging = _useContext.isDragging;
18
18
  var containerRef = (0, _react.useRef)(null);
19
+ (0, _react.useImperativeHandle)(ref, function () {
20
+ return {
21
+ getBoundaries: function getBoundaries() {
22
+ if (!containerRef.current) return {
23
+ x: 0,
24
+ y: 0,
25
+ width: 0,
26
+ height: 0
27
+ };
28
+ var bounds = containerRef.current.getBoundingClientRect();
29
+ return {
30
+ x: bounds.x,
31
+ y: bounds.y,
32
+ width: bounds.width,
33
+ height: bounds.height
34
+ };
35
+ }
36
+ };
37
+ }, []);
19
38
  var boundaryCallbacks = (0, _react.useMemo)(function () {
20
39
  return {
21
40
  onBoundariesChanged: onBoundariesChanged
@@ -24,6 +43,7 @@ var BoundaryDetector = exports.BoundaryDetector = /*#__PURE__*/(0, _react.memo)(
24
43
  (0, _hooks.useBoundaryDetect)(containerRef, boundaryCallbacks);
25
44
  (0, _react.useEffect)(function () {
26
45
  if (!isDragging) {
46
+ if (!containerRef.current) return;
27
47
  var bounds = containerRef.current.getBoundingClientRect();
28
48
  boundaryCallbacks.onBoundariesChanged(bounds);
29
49
  }
@@ -33,4 +53,4 @@ var BoundaryDetector = exports.BoundaryDetector = /*#__PURE__*/(0, _react.memo)(
33
53
  className: "fcr-control-bar__sizer",
34
54
  children: children
35
55
  });
36
- });
56
+ }));
@@ -25,6 +25,7 @@ var CloudRecordingButtons = exports.CloudRecordingButtons = (0, _mobxReact.obser
25
25
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
26
26
  className: "fcr-control-bar-cloud-recording-buttons",
27
27
  children: [cloudRecordingState === _type.FcrRecordingState.Paused ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
28
+ mouseEnterDelay: 0,
28
29
  content: transI18n('fmt_record_button_Cloudrecording_restore'),
29
30
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
30
31
  onClick: resumeCloudRecording,
@@ -37,6 +38,7 @@ var CloudRecordingButtons = exports.CloudRecordingButtons = (0, _mobxReact.obser
37
38
  })
38
39
  })
39
40
  }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
41
+ mouseEnterDelay: 0,
40
42
  content: transI18n('fmt_settings_options_pausecloudrecording'),
41
43
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
42
44
  onClick: pauseCloudRecording,
@@ -51,6 +53,7 @@ var CloudRecordingButtons = exports.CloudRecordingButtons = (0, _mobxReact.obser
51
53
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_stopRecordDialog.StopCloudRecording, {
52
54
  stopCloudRecording: stopCloudRecording,
53
55
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
56
+ mouseEnterDelay: 0,
54
57
  content: transI18n('fmt_record_button_Cloudrecording_stop'),
55
58
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
56
59
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
@@ -22,7 +22,8 @@ var useBoundaryDetect = exports.useBoundaryDetect = function useBoundaryDetect(r
22
22
  if (ref.current === null) return;
23
23
  var contentRect = ref.current.getBoundingClientRect();
24
24
  callbacks.onBoundariesChanged(contentRect);
25
- }, 100);
25
+ // 部分气泡动画需要时间渲染完成后才能获取到正确的位置
26
+ }, 300);
26
27
  };
27
28
  restartTask();
28
29
  return function () {
@@ -102,5 +102,6 @@ export default class ControlBarStore implements FcrUIManagedObject {
102
102
  handleLeaveRoom(): void;
103
103
  closeLeaveMeetingDialog(): void;
104
104
  handleMoreClick(actionKey: MoreAction): void;
105
+ updateWindowBounds(): void;
105
106
  }
106
107
  export declare const StoreContext: import("react").Context<ControlBarStore>;
@@ -127,8 +127,10 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
127
127
  _this.titleHeight = (0, _platform.isWindows)() ? 0 : topOffset !== null && topOffset !== void 0 ? topOffset : 0;
128
128
  (0, _mobx.runInAction)(function () {
129
129
  _this.currentShareDisplayId = _this._renderer.getDisplayNearestPoint(_this.draggableArea).id;
130
+ _this._mouseDetectProvider.setDisplayId(_this.currentShareDisplayId);
130
131
  });
131
132
  _this._mouseDetectProvider.setDetectionPositionOffset(display.bounds);
133
+ _this.updateWindowBounds();
132
134
  },
133
135
  onShareSourceReplaced: function onShareSourceReplaced() {
134
136
  var display = _this._renderer.getDisplayNearestPoint(_this.draggableArea);
@@ -138,6 +140,7 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
138
140
  _this.titleHeight = (0, _platform.isWindows)() ? 0 : topOffset !== null && topOffset !== void 0 ? topOffset : 0;
139
141
  (0, _mobx.runInAction)(function () {
140
142
  _this.currentShareDisplayId = _this._renderer.getDisplayNearestPoint(_this.draggableArea).id;
143
+ _this._mouseDetectProvider.setDisplayId(_this.currentShareDisplayId);
141
144
  });
142
145
  _this._mouseDetectProvider.setDetectionPositionOffset(display.bounds);
143
146
  },
@@ -704,10 +707,16 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
704
707
  break;
705
708
  }
706
709
  }
710
+ }, {
711
+ key: "updateWindowBounds",
712
+ value: function updateWindowBounds() {
713
+ var sharingDisplayBounds = this._screenShareProvider.sharingDisplayBounds;
714
+ this._controlBarWindow.setBounds(sharingDisplayBounds);
715
+ }
707
716
  }]);
708
717
  }();
709
718
  _ControlBarStore = ControlBarStore;
710
- var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_ControlBarStore, [[_mobx.observable, 1, "roomDuration"], [_mobx.observable, 1, "startTime"], [_mobx.observable, 1, "cloudRecordingState"], [_mobx.observable, 1, "playUrl"], [_mobx.observable, 1, "liveStreamingState"], [_mobx.observable, 1, "allApplicationWindows"], [_mobx.observable, 1, "boardOwnerUser"], [_mobx.observable, 1, "currentShareDisplayId"], [_mobx.observable, 1, "position"], [_mobx.computed, 3, "hasEndRoomPermission"], [_mobx.computed, 3, "hasGetLiveStreamingUrlPermission"], [_mobx.computed, 3, "hasStartCloudRecordingPermission"], [_mobx.computed, 3, "hasStartLiveStreamingPermission"], [_mobx.computed, 3, "hasChatPermission"], [_mobx.computed, 3, "liveStreamingButtonVisible"], [_mobx.computed, 3, "recordingButtonVisible"], [_mobx.computed, 3, "isConnecting"], [_setCheckedStateMapDecs, 18, "setCheckedStateMap"], [_decorator.bound, 2, "setShareWithAudioState"], [_decorator.bound, 2, "setShareInSmoothMode"], [_showLockedRoomToastDecs, 18, "showLockedRoomToast"], [_handleNewShareDecs, 18, "handleNewShare"], [_handlerStopShareDecs, 18, "handlerStopShare"], [_decorator.bound, 2, "handleMouseEnter"], [_decorator.bound, 2, "handleMouseLeave"], [_decorator.bound, 2, "openLiveStreamingDialog"], [_decorator.bound, 2, "setShareAudioMode"], [_pauseCloudRecordingDecs, 2, "pauseCloudRecording"], [_resumeCloudRecordingDecs, 2, "resumeCloudRecording"], [_stopCloudRecordingDecs, 2, "stopCloudRecording"], [_decorator.bound, 2, "startCloudRecording"], [_decorator.bound, 2, "startLiveStreaming"], [_decorator.bound, 2, "stopLiveStreaming"], [_showToastDecs, 18, "showToast"], [_decorator.bound, 2, "handleOpenParticipant"], [_decorator.bound, 2, "handleOpenLiveStreaming"], [_decorator.bound, 2, "setEnableWaitingRoom"], [_decorator.bound, 2, "getLocalMeetingTime"], [[_decorator.bound, _decorator.trace], 2, "setStateNavArea"], [[_decorator.bound, _decorator.trace], 2, "setControlBarContentArea"], [[_decorator.bound, _decorator.trace], 2, "setPopoverArea"], [_handleLeaveRoomDecs, 18, "handleLeaveRoom"], [_closeLeaveMeetingDialogDecs, 18, "closeLeaveMeetingDialog"], [_handleMoreClickDecs, 18, "handleMoreClick"]], []).e, 10);
719
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_ControlBarStore, [[_mobx.observable, 1, "roomDuration"], [_mobx.observable, 1, "startTime"], [_mobx.observable, 1, "cloudRecordingState"], [_mobx.observable, 1, "playUrl"], [_mobx.observable, 1, "liveStreamingState"], [_mobx.observable, 1, "allApplicationWindows"], [_mobx.observable, 1, "boardOwnerUser"], [_mobx.observable, 1, "currentShareDisplayId"], [_mobx.observable, 1, "position"], [_mobx.computed, 3, "hasEndRoomPermission"], [_mobx.computed, 3, "hasGetLiveStreamingUrlPermission"], [_mobx.computed, 3, "hasStartCloudRecordingPermission"], [_mobx.computed, 3, "hasStartLiveStreamingPermission"], [_mobx.computed, 3, "hasChatPermission"], [_mobx.computed, 3, "liveStreamingButtonVisible"], [_mobx.computed, 3, "recordingButtonVisible"], [_mobx.computed, 3, "isConnecting"], [_setCheckedStateMapDecs, 18, "setCheckedStateMap"], [_decorator.bound, 2, "setShareWithAudioState"], [_decorator.bound, 2, "setShareInSmoothMode"], [_showLockedRoomToastDecs, 18, "showLockedRoomToast"], [_handleNewShareDecs, 18, "handleNewShare"], [_handlerStopShareDecs, 18, "handlerStopShare"], [_decorator.bound, 2, "handleMouseEnter"], [_decorator.bound, 2, "handleMouseLeave"], [_decorator.bound, 2, "openLiveStreamingDialog"], [_decorator.bound, 2, "setShareAudioMode"], [_pauseCloudRecordingDecs, 2, "pauseCloudRecording"], [_resumeCloudRecordingDecs, 2, "resumeCloudRecording"], [_stopCloudRecordingDecs, 2, "stopCloudRecording"], [_decorator.bound, 2, "startCloudRecording"], [_decorator.bound, 2, "startLiveStreaming"], [_decorator.bound, 2, "stopLiveStreaming"], [_showToastDecs, 18, "showToast"], [_decorator.bound, 2, "handleOpenParticipant"], [_decorator.bound, 2, "handleOpenLiveStreaming"], [_decorator.bound, 2, "setEnableWaitingRoom"], [_decorator.bound, 2, "getLocalMeetingTime"], [[_decorator.bound, _decorator.trace], 2, "setStateNavArea"], [[_decorator.bound, _decorator.trace], 2, "setControlBarContentArea"], [[_decorator.bound, _decorator.trace], 2, "setPopoverArea"], [_handleLeaveRoomDecs, 18, "handleLeaveRoom"], [_closeLeaveMeetingDialogDecs, 18, "closeLeaveMeetingDialog"], [_handleMoreClickDecs, 18, "handleMoreClick"], [[_decorator.trace, _decorator.bound], 2, "updateWindowBounds"]], []).e, 10);
711
720
  _init_roomDuration = _applyDecs$e[0];
712
721
  _init_startTime = _applyDecs$e[1];
713
722
  _init_cloudRecordingState = _applyDecs$e[2];