fcr-ui-scene 3.2.0 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (219) hide show
  1. package/installer/icons/favicon.ico +0 -0
  2. package/installer/icons/favicon.png +0 -0
  3. package/installer/mac/entitlements.mac.plist +16 -0
  4. package/lib/common/device-store.d.ts +1 -1
  5. package/lib/common/device-store.js +11 -3
  6. package/lib/common/event-store.d.ts +17 -1
  7. package/lib/common/event-store.js +38 -5
  8. package/lib/common/security-store.d.ts +14 -4
  9. package/lib/common/security-store.js +149 -30
  10. package/lib/electron/bootstrap-dev.d.ts +1 -0
  11. package/lib/electron/bootstrap-dev.js +51 -0
  12. package/lib/electron/bootstrap-sdk.d.ts +1 -0
  13. package/lib/electron/bootstrap-sdk.js +56 -0
  14. package/lib/electron/bootstrap.d.ts +1 -0
  15. package/lib/electron/bootstrap.js +56 -0
  16. package/lib/electron/default-options.js +1 -1
  17. package/lib/electron/dev.d.ts +1 -0
  18. package/lib/electron/dev.js +51 -0
  19. package/lib/electron/injections.d.ts +1 -1
  20. package/lib/electron/injections.js +3 -6
  21. package/lib/electron/main.js +4 -16
  22. package/lib/electron/plugins/meeting-state.d.ts +2 -0
  23. package/lib/electron/plugins/meeting-state.js +39 -0
  24. package/lib/electron/preload.js +1 -1
  25. package/lib/fragments/control-bar/control-bar-store.d.ts +34 -1
  26. package/lib/fragments/control-bar/control-bar-store.js +371 -79
  27. package/lib/fragments/control-bar/device/index.js +5 -3
  28. package/lib/fragments/control-bar/index.css +15 -10
  29. package/lib/fragments/control-bar/index.js +18 -0
  30. package/lib/fragments/control-bar/meeting-details/meeting-detail.css +109 -0
  31. package/lib/fragments/control-bar/meeting-details/meeting-details-portal.d.ts +3 -0
  32. package/lib/fragments/control-bar/meeting-details/meeting-details-portal.js +60 -0
  33. package/lib/fragments/control-bar/meeting-details/meeting-details.d.ts +2 -0
  34. package/lib/fragments/control-bar/meeting-details/meeting-details.js +179 -0
  35. package/lib/fragments/control-bar/more-actions/index.css +53 -0
  36. package/lib/fragments/control-bar/more-actions/index.js +72 -37
  37. package/lib/fragments/control-bar/security-content/index.css +10 -0
  38. package/lib/fragments/control-bar/security-content/index.js +40 -18
  39. package/lib/fragments/control-bar/view.js +8 -2
  40. package/lib/login-confirm-dialog.d.ts +12 -0
  41. package/lib/login-confirm-dialog.js +80 -0
  42. package/lib/modules/action-bar/action-bar-collapes-items.js +5 -5
  43. package/lib/modules/action-bar/chat/index.js +5 -5
  44. package/lib/modules/action-bar/device/index.css +7 -2
  45. package/lib/modules/action-bar/device/index.js +4 -4
  46. package/lib/modules/action-bar/index.css +59 -12
  47. package/lib/modules/action-bar/index.d.ts +3 -2
  48. package/lib/modules/action-bar/index.dev.js +1 -1
  49. package/lib/modules/action-bar/index.js +21 -0
  50. package/lib/modules/action-bar/leave/assign-host.d.ts +3 -0
  51. package/lib/modules/action-bar/leave/assign-host.js +2 -4
  52. package/lib/modules/action-bar/leave/index.js +29 -6
  53. package/lib/modules/action-bar/leave/leave-meeting.d.ts +11 -0
  54. package/lib/modules/action-bar/leave/leave-meeting.js +25 -16
  55. package/lib/modules/action-bar/more/poppover-content.js +4 -4
  56. package/lib/modules/action-bar/participants/index.css +12 -0
  57. package/lib/modules/action-bar/participants/index.js +21 -14
  58. package/lib/modules/action-bar/screen-share/index.js +5 -1
  59. package/lib/modules/action-bar/screen-share/submenu.js +16 -22
  60. package/lib/modules/action-bar/security/drop-menu.js +90 -13
  61. package/lib/modules/action-bar/store.d.ts +38 -6
  62. package/lib/modules/action-bar/store.js +487 -95
  63. package/lib/modules/action-bar/view.js +65 -42
  64. package/lib/modules/chat/chat-bar/index.js +39 -27
  65. package/lib/modules/chat/chat-select/index.css +14 -4
  66. package/lib/modules/chat/chat.d.ts +1 -2
  67. package/lib/modules/chat/chat.js +184 -105
  68. package/lib/modules/chat/index.css +49 -0
  69. package/lib/modules/chat/index.d.ts +2 -2
  70. package/lib/modules/chat/index.dev.js +1 -1
  71. package/lib/modules/chat/index.js +13 -8
  72. package/lib/modules/chat/message-list.js +59 -48
  73. package/lib/modules/chat/store.d.ts +48 -2
  74. package/lib/modules/chat/store.js +258 -45
  75. package/lib/modules/connection-gateway/index.d.ts +2 -1
  76. package/lib/modules/connection-gateway/store.d.ts +6 -3
  77. package/lib/modules/connection-gateway/store.js +5 -1
  78. package/lib/modules/device-pretest/audio-preview/speaker-control.js +1 -1
  79. package/lib/modules/device-pretest/index.css +0 -4
  80. package/lib/modules/device-pretest/settings/beauty.js +17 -6
  81. package/lib/modules/device-pretest/store.js +7 -11
  82. package/lib/modules/dialog/components/chat/electron.js +2 -1
  83. package/lib/modules/dialog/components/confirm/electron.js +5 -3
  84. package/lib/modules/dialog/components/connection-gateway/electron.js +3 -1
  85. package/lib/modules/dialog/components/connection-gateway/index.css +0 -2
  86. package/lib/modules/dialog/components/device-setting/electron.js +3 -1
  87. package/lib/modules/dialog/components/device-setting/index.css +0 -1
  88. package/lib/modules/dialog/components/operation-waiting-room/electron.d.ts +5 -0
  89. package/lib/modules/dialog/components/operation-waiting-room/electron.js +89 -0
  90. package/lib/modules/dialog/components/operation-waiting-room/index.css +44 -0
  91. package/lib/modules/dialog/components/operation-waiting-room/index.d.ts +5 -0
  92. package/lib/modules/dialog/components/operation-waiting-room/index.js +156 -0
  93. package/lib/modules/dialog/components/participant/electron.js +2 -1
  94. package/lib/modules/dialog/components/remove-admit-waiting-room/electron.d.ts +5 -0
  95. package/lib/modules/dialog/components/remove-admit-waiting-room/electron.js +89 -0
  96. package/lib/modules/dialog/components/remove-admit-waiting-room/index.css +50 -0
  97. package/lib/modules/dialog/components/remove-admit-waiting-room/index.d.ts +5 -0
  98. package/lib/modules/dialog/components/remove-admit-waiting-room/index.js +90 -0
  99. package/lib/modules/dialog/components/whiteboard/index.js +2 -1
  100. package/lib/modules/dialog/dialogs.js +17 -13
  101. package/lib/modules/dialog/index.css +2 -0
  102. package/lib/modules/dialog/store.d.ts +4 -0
  103. package/lib/modules/dialog/store.js +16 -2
  104. package/lib/modules/event-notification/context.d.ts +2 -0
  105. package/lib/modules/event-notification/context.js +9 -0
  106. package/lib/modules/event-notification/index.css +58 -0
  107. package/lib/modules/event-notification/index.d.ts +13 -0
  108. package/lib/modules/event-notification/index.js +48 -0
  109. package/lib/modules/event-notification/store.d.ts +17 -0
  110. package/lib/modules/event-notification/store.js +133 -0
  111. package/lib/modules/event-notification/view.d.ts +5 -0
  112. package/lib/modules/event-notification/view.js +114 -0
  113. package/lib/modules/invite/index.css +4 -4
  114. package/lib/modules/invite/pstn-invite.js +1 -0
  115. package/lib/modules/layout/components/Gallery.js +7 -1
  116. package/lib/modules/layout/components/Layout.js +82 -57
  117. package/lib/modules/layout/components/index.css +33 -6
  118. package/lib/modules/layout/index.css +30 -0
  119. package/lib/modules/layout/member-window/index.js +9 -3
  120. package/lib/modules/layout/store.d.ts +19 -2
  121. package/lib/modules/layout/store.js +177 -70
  122. package/lib/modules/layout/video-window-datasource.d.ts +1 -1
  123. package/lib/modules/layout/video-window-datasource.js +1 -1
  124. package/lib/modules/live-streaming/index.dev.js +1 -1
  125. package/lib/modules/participant/attendee/index.d.ts +12 -3
  126. package/lib/modules/participant/attendee/index.js +132 -30
  127. package/lib/modules/participant/index.css +20 -0
  128. package/lib/modules/participant/index.d.ts +5 -2
  129. package/lib/modules/participant/index.dev.js +1 -1
  130. package/lib/modules/participant/index.js +27 -0
  131. package/lib/modules/participant/room-control-drop-menu/index.css +37 -0
  132. package/lib/modules/participant/store.d.ts +30 -5
  133. package/lib/modules/participant/store.js +347 -74
  134. package/lib/modules/participant/view.js +133 -34
  135. package/lib/modules/setting/index.css +1 -5
  136. package/lib/modules/setting/index.dev.js +1 -1
  137. package/lib/modules/setting/store.d.ts +2 -2
  138. package/lib/modules/setting/store.js +3 -8
  139. package/lib/modules/setting/translate-settings/translate-settings.js +1 -1
  140. package/lib/modules/setting/video-settings/index.css +9 -6
  141. package/lib/modules/share-screen/index.d.ts +2 -0
  142. package/lib/modules/share-screen/index.dev.js +3 -2
  143. package/lib/modules/share-screen/selection/index.css +2 -0
  144. package/lib/modules/share-screen/store.d.ts +6 -3
  145. package/lib/modules/share-screen/store.js +170 -129
  146. package/lib/modules/state-bar/index.css +2 -2
  147. package/lib/modules/state-bar/index.d.ts +2 -2
  148. package/lib/modules/state-bar/index.dev.js +1 -1
  149. package/lib/modules/state-bar/meeting-detail.css +6 -4
  150. package/lib/modules/state-bar/meeting-details.js +29 -3
  151. package/lib/modules/state-bar/meeting-network-state.css +14 -3
  152. package/lib/modules/state-bar/meeting-network-state.js +10 -4
  153. package/lib/modules/state-bar/recording.js +3 -5
  154. package/lib/modules/state-bar/store.d.ts +4 -2
  155. package/lib/modules/state-bar/store.js +18 -3
  156. package/lib/modules/state-bar/view.js +1 -6
  157. package/lib/modules/video-window/index.css +1 -0
  158. package/lib/modules/video-window/store.d.ts +2 -2
  159. package/lib/modules/video-window/store.js +14 -11
  160. package/lib/modules/waiting-room-layout/context.d.ts +2 -0
  161. package/lib/modules/waiting-room-layout/context.js +9 -0
  162. package/lib/modules/waiting-room-layout/index.css +71 -0
  163. package/lib/modules/waiting-room-layout/index.d.ts +8 -0
  164. package/lib/modules/waiting-room-layout/index.js +47 -0
  165. package/lib/modules/waiting-room-layout/store.d.ts +30 -0
  166. package/lib/modules/waiting-room-layout/store.js +189 -0
  167. package/lib/modules/waiting-room-layout/type.d.ts +0 -0
  168. package/lib/modules/waiting-room-layout/type.js +1 -0
  169. package/lib/modules/waiting-room-layout/view.d.ts +3 -0
  170. package/lib/modules/waiting-room-layout/view.js +67 -0
  171. package/lib/modules/whiteboard/app.js +0 -6
  172. package/lib/modules/whiteboard/components/control-bar/index.css +3 -0
  173. package/lib/modules/whiteboard/components/multi-window/index.js +6 -1
  174. package/lib/modules/whiteboard/components/progress/electron.js +2 -1
  175. package/lib/modules/whiteboard/components/switch-theme/index.css +4 -0
  176. package/lib/modules/whiteboard/components/switch-theme/index.d.ts +2 -1
  177. package/lib/modules/whiteboard/components/switch-theme/index.js +20 -15
  178. package/lib/modules/whiteboard/components/switch-theme/item.d.ts +1 -0
  179. package/lib/modules/whiteboard/components/switch-theme/item.js +9 -2
  180. package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +14 -10
  181. package/lib/modules/whiteboard/components/toolbar/store.d.ts +1 -0
  182. package/lib/modules/whiteboard/components/toolbar/store.js +3 -0
  183. package/lib/modules/whiteboard/context.d.ts +4 -0
  184. package/lib/modules/whiteboard/context.js +4 -2
  185. package/lib/modules/whiteboard/index.js +22 -6
  186. package/lib/plugins/browser-runtime-plugin.js +1 -1
  187. package/lib/plugins/module-dev-plugin.js +8 -6
  188. package/lib/runtime.d.ts +1 -1
  189. package/lib/translations/enUS.d.ts +449 -6
  190. package/lib/translations/enUS.js +485 -32
  191. package/lib/translations/zhCN.d.ts +447 -6
  192. package/lib/translations/zhCN.js +468 -17
  193. package/lib/type.d.ts +6 -2
  194. package/lib/ui-manager.d.ts +7 -3
  195. package/lib/ui-manager.js +576 -139
  196. package/lib/ui-scene.d.ts +1 -0
  197. package/lib/ui-scene.js +26 -21
  198. package/lib/utilities/constant.d.ts +43 -4
  199. package/lib/utilities/constant.js +41 -1
  200. package/lib/utilities/parameters.js +2 -2
  201. package/lib/utilities/renderer.d.ts +1 -0
  202. package/lib/utilities/renderer.js +6 -2
  203. package/package.json +14 -14
  204. package/public/assets/fcr_defaultpage.png +0 -0
  205. package/public/assets/login_confirm.png +0 -0
  206. package/public/index.html +29 -11
  207. package/dist/132.js +0 -2
  208. package/dist/132.js.LICENSE.txt +0 -311
  209. package/dist/651.js +0 -2
  210. package/dist/651.js.LICENSE.txt +0 -1
  211. package/dist/73.js +0 -1
  212. package/dist/index.html +0 -13
  213. package/dist/main.da7c203ab32d15742cfe.css +0 -11760
  214. package/dist/main.js +0 -2
  215. package/dist/main.js.LICENSE.txt +0 -254
  216. package/dist/worker-entry.worker.js.LICENSE.txt +0 -13
  217. package/lib/modules/device-pretest/settings/index.css +0 -15
  218. package/lib/modules/participant/attendee/participants-more-action.d.ts +0 -18
  219. package/lib/modules/participant/attendee/participants-more-action.js +0 -278
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.MeetingNetworkState = void 0;
8
+ require("core-js/modules/es.array.concat.js");
8
9
  var _react = require("react");
9
10
  var _i18n = require("agora-ui-foundation/lib/i18n");
10
11
  var _mobxReact = require("mobx-react");
@@ -51,16 +52,21 @@ var MeetingNetworkState = exports.MeetingNetworkState = (0, _mobxReact.observer)
51
52
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
52
53
  children: t('fmt_networkstatus_window_title')
53
54
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
54
- className: networkStatusData.text.toLowerCase(),
55
- children: [networkStatusData.text, " ", networkStatusData.icon]
55
+ className: networkStatus,
56
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
57
+ className: "meeting-network-state_text",
58
+ children: [networkStatusData.text, " "]
59
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
60
+ children: networkStatusData.icon
61
+ })]
56
62
  })]
57
63
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
58
64
  className: "meeting-network-state__delay",
59
65
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
60
66
  children: t('fmt_networkstatus_window_latency')
61
- }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
67
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
62
68
  className: "meeting-network-state__delay__value",
63
- children: [networkStats.networkDelay, " ", t('fmt_statusbar_label_millisecond')]
69
+ children: "".concat(networkStats.networkDelay, " ").concat(t('fmt_statusbar_label_millisecond'))
64
70
  })]
65
71
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
66
72
  className: "meeting-network-state__loss-rate",
@@ -20,7 +20,7 @@ var _context = require("./context");
20
20
  var _store = require("./store");
21
21
  var _jsxRuntime = require("react/jsx-runtime");
22
22
  var colors = {
23
- iconPrimary: 'currentColor'
23
+ iconPrimary: 'var(--fcr_ui_scene_icontext2)'
24
24
  };
25
25
  var Recording = exports.Recording = (0, _mobxReact.observer)(function () {
26
26
  var t = (0, _i18n.useI18n)();
@@ -43,7 +43,7 @@ var Recording = exports.Recording = (0, _mobxReact.observer)(function () {
43
43
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
44
44
  type: _type2.FcrIconType.FCR_CLOUDRECORD,
45
45
  colors: {
46
- iconPrimary: galleryWidth < _store.GALLERY_MIN_SIZE ? '' : 'currentColor'
46
+ iconPrimary: galleryWidth < _store.GALLERY_MIN_SIZE ? '' : 'var(--fcr_ui_scene_icontext2)'
47
47
  }
48
48
  }), galleryWidth >= _store.GALLERY_MIN_SIZE && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
49
49
  className: ns.e('record-text'),
@@ -53,9 +53,7 @@ var Recording = exports.Recording = (0, _mobxReact.observer)(function () {
53
53
  className: ns.e('record-tag'),
54
54
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
55
55
  type: _type2.FcrIconType.FCR_CLOUDRECORD,
56
- colors: {
57
- iconPrimary: 'currentColor'
58
- }
56
+ colors: colors
59
57
  }), galleryWidth >= _store.GALLERY_MIN_SIZE && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
60
58
  className: ns.e('record-text'),
61
59
  children: "REC"
@@ -3,7 +3,7 @@ import { FcrUIEventStore } from '../../common/event-store';
3
3
  import { DeviceSettingDialogConfig } from '../setting/store';
4
4
  import { FcrSecurityStore } from '../../common/security-store';
5
5
  import { FcrUISceneConfig } from '../../type';
6
- import { FcrMainRoomControl } from 'agora-edu-core/lib/room-control/type';
6
+ import { FcrMainRoomControl, FcrWaitingRoomControl } from 'agora-edu-core/lib/room-control/type';
7
7
  export type NetworkStatus = 'excellent' | 'average' | 'poor' | 'unknown';
8
8
  export declare const GALLERY_MIN_SIZE = 825;
9
9
  export default class StateBarStore {
@@ -37,8 +37,9 @@ export default class StateBarStore {
37
37
  get hasStartCloudRecordingPermission(): boolean;
38
38
  get hasStopLiveStreamingPermission(): boolean;
39
39
  get hasGetLiveStreamingLinkPermission(): boolean;
40
+ get password(): string | undefined;
40
41
  constructor({ roomControl, uiEventStore, securityStore, config, }: {
41
- roomControl: FcrMainRoomControl;
42
+ roomControl: FcrMainRoomControl | FcrWaitingRoomControl;
42
43
  uiEventStore: FcrUIEventStore;
43
44
  securityStore: FcrSecurityStore;
44
45
  config: FcrUISceneConfig;
@@ -60,6 +61,7 @@ export default class StateBarStore {
60
61
  resumeCloudRecording(): void;
61
62
  stopCloudRecording(): void;
62
63
  getShareLink(): string;
64
+ toastCopyInfo(type: 'error' | 'warn' | 'info' | 'normal', content: string): void;
63
65
  private _onNetworkQualityUpdated;
64
66
  private _uiEvents;
65
67
  private _setBrowserWidth;
@@ -320,6 +320,12 @@ var StateBarStore = exports["default"] = /*#__PURE__*/function () {
320
320
  get: function get() {
321
321
  return this._securityStore.hasGetLiveStreamingLinkPermission();
322
322
  }
323
+ }, {
324
+ key: "password",
325
+ get: function get() {
326
+ var _this$_roomControl$ge2;
327
+ return (_this$_roomControl$ge2 = this._roomControl.getRoomInfo()) === null || _this$_roomControl$ge2 === void 0 ? void 0 : _this$_roomControl$ge2.password;
328
+ }
323
329
  }, {
324
330
  key: "isLockRoomEnabled",
325
331
  value: function isLockRoomEnabled() {
@@ -439,6 +445,14 @@ var StateBarStore = exports["default"] = /*#__PURE__*/function () {
439
445
  }
440
446
  return "".concat(baseLink, "?").concat(strArgs);
441
447
  }
448
+ }, {
449
+ key: "toastCopyInfo",
450
+ value: function toastCopyInfo(type, content) {
451
+ this._uiEventStore.showToast({
452
+ type: type,
453
+ message: content
454
+ });
455
+ }
442
456
  }, {
443
457
  key: "_onNetworkQualityUpdated",
444
458
  value: function _onNetworkQualityUpdated(_roomId, event) {
@@ -453,6 +467,7 @@ var StateBarStore = exports["default"] = /*#__PURE__*/function () {
453
467
  case 3:
454
468
  case 4:
455
469
  case 5:
470
+ case 6:
456
471
  this.setNetworkStatus('poor');
457
472
  break;
458
473
  default:
@@ -531,10 +546,10 @@ var StateBarStore = exports["default"] = /*#__PURE__*/function () {
531
546
  }, {
532
547
  key: "_initRoomInfo",
533
548
  value: function _initRoomInfo() {
534
- var _this$_roomControl$ge2;
549
+ var _this$_roomControl$ge3;
535
550
  var info = this._roomControl.getRoomInfo();
536
551
  this.setRoomInfo(info);
537
- var user = (_this$_roomControl$ge2 = this._roomControl.getUserControl()) === null || _this$_roomControl$ge2 === void 0 ? void 0 : _this$_roomControl$ge2.getLocalUser();
552
+ var user = (_this$_roomControl$ge3 = this._roomControl.getUserControl()) === null || _this$_roomControl$ge3 === void 0 ? void 0 : _this$_roomControl$ge3.getLocalUser();
538
553
  this.setLocalUser(user);
539
554
  var scheduleInfo = this._roomControl.getRoomSchedule();
540
555
  scheduleInfo && this.setScheduleInfo(scheduleInfo);
@@ -542,7 +557,7 @@ var StateBarStore = exports["default"] = /*#__PURE__*/function () {
542
557
  }]);
543
558
  }();
544
559
  _StateBarStore = StateBarStore;
545
- var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_StateBarStore, [[_mobx.observable, 1, "networkStatus"], [_mobx.observable, 1, "localUser"], [_mobx.observable, 1, "roomInfo"], [_mobx.observable, 1, "scheduleInfo"], [_mobx.observable, 1, "isLiveStreaming"], [_mobx.observable, 1, "liveStreamingPlayUrl"], [_mobx.observable, 1, "galleryWidth"], [_mobx.observable, 1, "browserWidth"], [_mobx.observable, 1, "networkStats"], [_mobx.observable, 1, "attendeeCount"], [_mobx.observable, 1, "asideOpenedItem"], [_mobx.observable, 1, "layoutSize"], [_mobx.observable, 1, "layoutView"], [_mobx.observable, 1, "cloudRecordingState"], [_mobx.computed, 3, "isUserHost"], [_mobx.computed, 3, "shouldShowMeetingTime"], [_mobx.computed, 3, "hasStartCloudRecordingPermission"], [_mobx.computed, 3, "hasStopLiveStreamingPermission"], [_mobx.computed, 3, "hasGetLiveStreamingLinkPermission"], [_decorator.bound, 2, "isLockRoomEnabled"], [_setNetworkStatusDecs, 18, "setNetworkStatus"], [_setLocalUserDecs, 18, "setLocalUser"], [_setRoomInfoDecs, 18, "setRoomInfo"], [_setScheduleInfoDecs, 18, "setScheduleInfo"], [_mobx.action, 2, "refreshLayoutSize"], [_decorator.bound, 2, "openDeviceSettingDialog"], [_stopLiveStreamingDialogDecs, 18, "stopLiveStreamingDialog"], [_decorator.bound, 2, "startCloudRecording"], [_decorator.bound, 2, "pauseCloudRecording"], [_decorator.bound, 2, "resumeCloudRecording"], [_decorator.bound, 2, "stopCloudRecording"], [_decorator.bound, 2, "getShareLink"], [_uiEventsDecs, 18, "_uiEvents"], [_setBrowserWidthDecs, 18, "_setBrowserWidth"], [_onNetworkStatsUpdatedDecs, 18, "_onNetworkStatsUpdated"], [_onLiveStreamingStateUpdatedDecs, 18, "_onLiveStreamingStateUpdated"]], []).e, 15);
560
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_StateBarStore, [[_mobx.observable, 1, "networkStatus"], [_mobx.observable, 1, "localUser"], [_mobx.observable, 1, "roomInfo"], [_mobx.observable, 1, "scheduleInfo"], [_mobx.observable, 1, "isLiveStreaming"], [_mobx.observable, 1, "liveStreamingPlayUrl"], [_mobx.observable, 1, "galleryWidth"], [_mobx.observable, 1, "browserWidth"], [_mobx.observable, 1, "networkStats"], [_mobx.observable, 1, "attendeeCount"], [_mobx.observable, 1, "asideOpenedItem"], [_mobx.observable, 1, "layoutSize"], [_mobx.observable, 1, "layoutView"], [_mobx.observable, 1, "cloudRecordingState"], [_mobx.computed, 3, "isUserHost"], [_mobx.computed, 3, "shouldShowMeetingTime"], [_mobx.computed, 3, "hasStartCloudRecordingPermission"], [_mobx.computed, 3, "hasStopLiveStreamingPermission"], [_mobx.computed, 3, "hasGetLiveStreamingLinkPermission"], [_mobx.computed, 3, "password"], [_decorator.bound, 2, "isLockRoomEnabled"], [_setNetworkStatusDecs, 18, "setNetworkStatus"], [_setLocalUserDecs, 18, "setLocalUser"], [_setRoomInfoDecs, 18, "setRoomInfo"], [_setScheduleInfoDecs, 18, "setScheduleInfo"], [_mobx.action, 2, "refreshLayoutSize"], [_decorator.bound, 2, "openDeviceSettingDialog"], [_stopLiveStreamingDialogDecs, 18, "stopLiveStreamingDialog"], [_decorator.bound, 2, "startCloudRecording"], [_decorator.bound, 2, "pauseCloudRecording"], [_decorator.bound, 2, "resumeCloudRecording"], [_decorator.bound, 2, "stopCloudRecording"], [_decorator.bound, 2, "getShareLink"], [_decorator.bound, 2, "toastCopyInfo"], [_uiEventsDecs, 18, "_uiEvents"], [_setBrowserWidthDecs, 18, "_setBrowserWidth"], [_onNetworkStatsUpdatedDecs, 18, "_onNetworkStatsUpdated"], [_onLiveStreamingStateUpdatedDecs, 18, "_onLiveStreamingStateUpdated"]], []).e, 15);
546
561
  _init_networkStatus = _applyDecs$e[0];
547
562
  _init_localUser = _applyDecs$e[1];
548
563
  _init_roomInfo = _applyDecs$e[2];
@@ -12,7 +12,6 @@ var _i18n = require("agora-ui-foundation/lib/i18n");
12
12
  var _mobxReact = require("mobx-react");
13
13
  require("./index.css");
14
14
  var _useNamespace = require("../../utilities/useNamespace");
15
- var _stateBarLogo = _interopRequireDefault(require("../../../public/assets/state-bar-logo.png"));
16
15
  var _stepGradient = _interopRequireDefault(require("../../../public/assets/step-gradient.svg"));
17
16
  var _icon = require("agora-ui-foundation/lib/components/icon");
18
17
  var _type = require("agora-ui-foundation/lib/components/icon/type");
@@ -86,11 +85,7 @@ var View = exports.View = (0, _mobxReact.observer)(function () {
86
85
  className: ns.b(),
87
86
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
88
87
  className: ns.e('left-nav'),
89
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("img", {
90
- src: _stateBarLogo["default"],
91
- alt: "logo",
92
- className: ns.e('logo')
93
- }), isLockRoomEnabled() && /*#__PURE__*/(0, _jsxRuntime.jsx)(MyFcrToolTip, {
88
+ children: [isLockRoomEnabled() && /*#__PURE__*/(0, _jsxRuntime.jsx)(MyFcrToolTip, {
94
89
  content: "".concat(t('fmt_role_host')).concat(t('fmt_information_tips_lockedbyhost', {
95
90
  reason1: isUserHost ? t('fmt_participant_label_Me') : ''
96
91
  }), ")"),
@@ -8,6 +8,7 @@ body {
8
8
  height: 100%;
9
9
  width: 100%;
10
10
  box-sizing: border-box;
11
+ overflow: hidden;
11
12
  }
12
13
  .fcr-video-window-dialog-wrapper.electron {
13
14
  border: none !important;
@@ -65,9 +65,9 @@ export default class VideoWindowStore {
65
65
  sendParticipantEvent(payload: unknown): void;
66
66
  muteAudio(mute: boolean, userId: string): void;
67
67
  setLocalUserRole(role: FcrUserRole): void;
68
- computedVideoWindowHeight(list: FcrUIVideoWindowData[]): number;
68
+ computedVideoWindowHeight(list: FcrUIVideoWindowData[], previewType: FcrVideoWindowPreviewType): number;
69
69
  sliceFoldList(list: FcrUIVideoWindowData[], previewType: FcrVideoWindowPreviewType): FcrUIVideoWindowData[];
70
- changeVideoWindowBounds(x: number, y: number, width: number, height: number, list: FcrUIVideoWindowData[]): void;
70
+ changeVideoWindowBounds(x: number, y: number, width: number, height: number, list: FcrUIVideoWindowData[], previewType: FcrVideoWindowPreviewType): void;
71
71
  openPrivateChat(userId: string): void;
72
72
  hasMutePermission(targetRole: FcrPrivilegeUserRole | FcrUserRole): boolean;
73
73
  hasUnmutePermission(targetRole: FcrPrivilegeUserRole | FcrUserRole): boolean;
@@ -76,6 +76,7 @@ var _type4 = require("agora-rte-sdk/lib/core/rtc/type");
76
76
  var _renderer = require("../../utilities/renderer");
77
77
  var _type5 = require("agora-edu-core/lib/type");
78
78
  var _env = require("agora-foundation/lib/utilities/env");
79
+ var _attendee = require("agora-ui-foundation/lib/components/participants/attendee");
79
80
  var _VideoWindowStore;
80
81
  var _initProto, _init_userVolumeMap, _init_speakHover, _init_videoWindowPreviewType, _init_videoWindowCurrentWidth, _init_videoWindowCurrentHeight, _init_foldList, _init_workareaX, _init_workareaY, _init_workareaWidth, _init_workareaHeight, _init_localUserRole, _init__spotlightStreamId, _init_shouldHideNonVideoParticipants, _init_connectType, _init_bounds, _setBoundsDecs, _onAudioVolumeUpdatedDecs, _changeVideoWindowBoundsDecs, _onUserInfoUpdatedDecs, _setVideoWindowPreviewTypeDecs, _closeVideoWindowDecs, _setSpeakHoverDecs, _getAllowedOperationsDecs, _getCurrentDisplayBoundsDecs, _handleStreamsAddedOrUpdatedDecs, _ref;
81
82
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
@@ -387,7 +388,7 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
387
388
  key: "muteAudio",
388
389
  value: function muteAudio(mute, userId) {
389
390
  this._uiEventStore.sendEvent(_constant.UIAction.PARTICIPANT_ACTION, {
390
- action: mute ? _constant.ParticipantType.MUTE_AUDIO : _constant.ParticipantType.UNMUTE_AUDIO,
391
+ action: mute ? _attendee.ParticipantActionType.MUTE_AUDIO : _attendee.ParticipantActionType.UNMUTE_AUDIO,
391
392
  userId: userId
392
393
  });
393
394
  }
@@ -398,13 +399,13 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
398
399
  }
399
400
  }, {
400
401
  key: "computedVideoWindowHeight",
401
- value: function computedVideoWindowHeight(list) {
402
+ value: function computedVideoWindowHeight(list, previewType) {
402
403
  var _height = _type2.DefaultVideoWindowHeight;
403
404
  var listCount = list.length > 4 ? 4 : list.length;
404
- if (this.videoWindowPreviewType !== _type2.FcrVideoWindowPreviewType.MIX) {
405
- if (this.videoWindowPreviewType === _type2.FcrVideoWindowPreviewType.SMALL) {
405
+ if (previewType !== _type2.FcrVideoWindowPreviewType.MIX) {
406
+ if (previewType === _type2.FcrVideoWindowPreviewType.SMALL) {
406
407
  _height = _type2.DefaultVideoWindowHeight + _type2.VideoWindowItemHeight;
407
- } else if (this.videoWindowPreviewType === _type2.FcrVideoWindowPreviewType.MIDDLE) {
408
+ } else if (previewType === _type2.FcrVideoWindowPreviewType.MIDDLE) {
408
409
  _height = _type2.DefaultVideoWindowHeight + listCount * _type2.VideoWindowItemHeight;
409
410
  }
410
411
  }
@@ -417,9 +418,9 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
417
418
  }
418
419
  }, {
419
420
  key: "changeVideoWindowBounds",
420
- value: function changeVideoWindowBounds(x, y, width, height, list) {
421
+ value: function changeVideoWindowBounds(x, y, width, height, list, previewType) {
421
422
  this._uiEventStore.sendEvent(_constant.UIAction.VIDEO_WINDOW_BOUNDS, {
422
- videoWindowHeight: this.computedVideoWindowHeight(list),
423
+ videoWindowHeight: this.computedVideoWindowHeight(list, previewType),
423
424
  videoWindowPreviewType: this.videoWindowPreviewType,
424
425
  workareaX: x,
425
426
  workareaY: y,
@@ -465,11 +466,13 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
465
466
  }, {
466
467
  key: "setVideoWindowPreviewType",
467
468
  value: function setVideoWindowPreviewType(type) {
469
+ var _list = this.filterFoldList(this.foldList, this.shouldHideNonVideoParticipants);
468
470
  this.videoWindowPreviewType = type;
469
- this.changeVideoWindowBounds(this.workareaX, this.workareaY, this.workareaWidth, this.workareaHeight, this.filterFoldList(this.foldList, this.shouldHideNonVideoParticipants));
471
+ this.changeVideoWindowBounds(this.workareaX, this.workareaY, this.workareaWidth, this.workareaHeight, _list, type);
472
+ this.setBounds(_type2.DefaultVideoWindowWidth, this.computedVideoWindowHeight(_list, type));
470
473
  this._uiEventStore.sendEvent(_constant.UIAction.VIDEO_WINDOW_RESIZE, {
471
474
  width: _type2.DefaultVideoWindowWidth,
472
- height: this.computedVideoWindowHeight(this.filterFoldList(this.foldList, this.shouldHideNonVideoParticipants))
475
+ height: this.computedVideoWindowHeight(_list, type)
473
476
  });
474
477
  }
475
478
  }, {
@@ -533,7 +536,7 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
533
536
  this.workareaY = y;
534
537
  this.workareaWidth = width;
535
538
  this.workareaHeight = height;
536
- this.changeVideoWindowBounds(x, y, width, height, filterList);
539
+ this.changeVideoWindowBounds(x, y, width, height, filterList, this.videoWindowPreviewType);
537
540
  case 10:
538
541
  case "end":
539
542
  return _context.stop();
@@ -592,7 +595,7 @@ var VideoWindowStore = exports["default"] = /*#__PURE__*/function () {
592
595
  }
593
596
  if (action === _constant.UIAction.FOLD_LIST_CHANGED) {
594
597
  this.foldList = payload || [];
595
- this.changeVideoWindowBounds(this.workareaX, this.workareaY, this.workareaWidth, this.workareaHeight, this.filterFoldList(payload, this.shouldHideNonVideoParticipants));
598
+ this.changeVideoWindowBounds(this.workareaX, this.workareaY, this.workareaWidth, this.workareaHeight, this.filterFoldList(payload, this.shouldHideNonVideoParticipants), this.videoWindowPreviewType);
596
599
  }
597
600
  if (action === _constant.UIAction.SPOTLIGHT_STREAM_CHANGED) {
598
601
  var _ref6 = payload,
@@ -0,0 +1,2 @@
1
+ import LayoutStore from './store';
2
+ export declare const StoreContext: import("react").Context<LayoutStore>;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.StoreContext = void 0;
8
+ var _react = require("react");
9
+ var StoreContext = exports.StoreContext = /*#__PURE__*/(0, _react.createContext)(null);
@@ -0,0 +1,71 @@
1
+ .waiting-room-layout {
2
+ display: flex;
3
+ flex-direction: column;
4
+ justify-content: center;
5
+ align-items: center;
6
+ }
7
+
8
+ .waiting-room-module {
9
+ width: 100%;
10
+ background-color: var(--fcr_web_ui_scene_fill2);
11
+ }
12
+
13
+ .waiting-room-bottom {
14
+ position: absolute;
15
+ bottom: 0;
16
+ }
17
+
18
+ .waiting-room-title {
19
+ margin-top: 50px;
20
+ margin-bottom: 20px;
21
+ font-weight: 700;
22
+ font-size: 24px;
23
+ color: var(--fcr_ui_scene_icontext1);
24
+ text-align: center;
25
+ }
26
+
27
+ .waiting-room-desc {
28
+ margin-bottom: 20px;
29
+ font-weight: 400;
30
+ font-size: 15px;
31
+ color: var(--fcr_ui_scene_icontext1);
32
+ text-align: center;
33
+ line-height: 22.5px;
34
+ width: 570px;
35
+ }
36
+
37
+ .waiting-room-content {
38
+ display: flex;
39
+ height: calc(100vh - 275px);
40
+ margin: 0 auto;
41
+ border-radius: 10px;
42
+ box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
43
+ align-items: center;
44
+ width: 815px;
45
+ }
46
+
47
+ .waiting-room-video-content {
48
+ position: relative;
49
+ display: flex;
50
+ width: 452px;
51
+ height: 95%;
52
+ margin: 10px;
53
+ }
54
+
55
+ .waiting-room-chat-content {
56
+ height: 95%;
57
+ margin: 10px;
58
+ }
59
+
60
+ .waiting-room-attendee-name {
61
+ color: var(--fcr_ui_scene_icontext1);
62
+ font-weight: 400;
63
+ font-size: 12px;
64
+ position: absolute;
65
+ left: 10px;
66
+ bottom: 10px;
67
+ background: white;
68
+ border-radius: 50px;
69
+ padding: 5px 10px;
70
+ z-index: 100;
71
+ }
@@ -0,0 +1,8 @@
1
+ import { UIModule } from '../../base';
2
+ import { LayoutStoreParams, FcrLayoutSlots } from './store';
3
+ export declare class WaitingRoomLayout extends UIModule {
4
+ private _store;
5
+ constructor(args: LayoutStoreParams);
6
+ getComponent(slots?: Partial<FcrLayoutSlots>): import("react/jsx-runtime").JSX.Element;
7
+ onUnload(): void;
8
+ }
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ require("core-js/modules/es.reflect.construct.js");
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
+ Object.defineProperty(exports, "__esModule", {
7
+ value: true
8
+ });
9
+ exports.WaitingRoomLayout = void 0;
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
13
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
+ var _base = require("../../base");
16
+ var _context = require("./context");
17
+ var _store = _interopRequireDefault(require("./store"));
18
+ var _view = _interopRequireDefault(require("./view"));
19
+ var _jsxRuntime = require("react/jsx-runtime");
20
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
21
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
22
+ var WaitingRoomLayout = exports.WaitingRoomLayout = /*#__PURE__*/function (_UIModule) {
23
+ function WaitingRoomLayout(args) {
24
+ var _this;
25
+ (0, _classCallCheck2["default"])(this, WaitingRoomLayout);
26
+ _this = _callSuper(this, WaitingRoomLayout);
27
+ _this._store = new _store["default"](args);
28
+ return _this;
29
+ }
30
+ (0, _inherits2["default"])(WaitingRoomLayout, _UIModule);
31
+ return (0, _createClass2["default"])(WaitingRoomLayout, [{
32
+ key: "getComponent",
33
+ value: function getComponent() {
34
+ var slots = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
35
+ this._store.updateSlots(slots);
36
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_context.StoreContext.Provider, {
37
+ value: this._store,
38
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_view["default"], {})
39
+ });
40
+ }
41
+ }, {
42
+ key: "onUnload",
43
+ value: function onUnload() {
44
+ this._store.release();
45
+ }
46
+ }]);
47
+ }(_base.UIModule);
@@ -0,0 +1,30 @@
1
+ import { FcrDeviceStore } from '../../common/device-store';
2
+ import { FcrUserControl } from 'agora-edu-core';
3
+ export interface FcrLayoutSlots {
4
+ chat: React.ReactNode;
5
+ stateBar: React.ReactNode;
6
+ actionBar: React.ReactNode;
7
+ }
8
+ export interface LayoutStoreParams {
9
+ deviceStore: FcrDeviceStore;
10
+ userControl: FcrUserControl;
11
+ }
12
+ export default class LayoutStore implements FcrLayoutSlots {
13
+ private _deviceStore;
14
+ private _userControl;
15
+ accessor participant: React.ReactNode;
16
+ accessor chat: React.ReactNode;
17
+ accessor stateBar: React.ReactNode;
18
+ accessor actionBar: React.ReactNode;
19
+ accessor layers: React.ReactNode;
20
+ accessor whiteboard: React.ReactNode;
21
+ constructor(params: LayoutStoreParams);
22
+ get localUser(): import("agora-edu-core/lib/type").FcrUserInfo;
23
+ get cameraId(): string;
24
+ get cameraEnabled(): boolean;
25
+ startPlayLocalVideo(view: HTMLElement, isMirror?: boolean): void;
26
+ stopPlayLocalVideo(view: HTMLElement): void;
27
+ setCameraEnabled(enable: boolean): void;
28
+ updateSlots(slots: Partial<FcrLayoutSlots>): void;
29
+ release(): void;
30
+ }
@@ -0,0 +1,189 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.symbol.description.js");
5
+ require("core-js/modules/es.symbol.to-primitive.js");
6
+ require("core-js/modules/es.error.cause.js");
7
+ require("core-js/modules/es.error.to-string.js");
8
+ require("core-js/modules/es.array.is-array.js");
9
+ require("core-js/modules/es.array.push.js");
10
+ require("core-js/modules/es.date.to-primitive.js");
11
+ require("core-js/modules/es.function.bind.js");
12
+ require("core-js/modules/es.function.name.js");
13
+ require("core-js/modules/es.map.js");
14
+ require("core-js/modules/es.number.constructor.js");
15
+ require("core-js/modules/es.object.create.js");
16
+ require("core-js/modules/es.object.define-property.js");
17
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
18
+ require("core-js/modules/esnext.function.metadata.js");
19
+ require("core-js/modules/esnext.map.delete-all.js");
20
+ require("core-js/modules/esnext.map.emplace.js");
21
+ require("core-js/modules/esnext.map.every.js");
22
+ require("core-js/modules/esnext.map.filter.js");
23
+ require("core-js/modules/esnext.map.find.js");
24
+ require("core-js/modules/esnext.map.find-key.js");
25
+ require("core-js/modules/esnext.map.includes.js");
26
+ require("core-js/modules/esnext.map.key-of.js");
27
+ require("core-js/modules/esnext.map.map-keys.js");
28
+ require("core-js/modules/esnext.map.map-values.js");
29
+ require("core-js/modules/esnext.map.merge.js");
30
+ require("core-js/modules/esnext.map.reduce.js");
31
+ require("core-js/modules/esnext.map.some.js");
32
+ require("core-js/modules/esnext.map.update.js");
33
+ require("core-js/modules/esnext.symbol.metadata.js");
34
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
35
+ var _typeof = require("@babel/runtime/helpers/typeof");
36
+ Object.defineProperty(exports, "__esModule", {
37
+ value: true
38
+ });
39
+ exports["default"] = void 0;
40
+ require("core-js/modules/es.array.iterator.js");
41
+ require("core-js/modules/es.object.to-string.js");
42
+ require("core-js/modules/es.string.iterator.js");
43
+ require("core-js/modules/es.weak-map.js");
44
+ require("core-js/modules/esnext.weak-map.delete-all.js");
45
+ require("core-js/modules/esnext.weak-map.emplace.js");
46
+ require("core-js/modules/web.dom-collections.iterator.js");
47
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
48
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
49
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
50
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
51
+ var _mobx = require("mobx");
52
+ var _LayoutStore;
53
+ var _initProto, _participantDecs, _init_participant, _chatDecs, _init_chat, _stateBarDecs, _init_stateBar, _actionBarDecs, _init_actionBar, _layersDecs, _init_layers, _whiteboardDecs, _init_whiteboard, _startPlayLocalVideoDecs, _stopPlayLocalVideoDecs, _setCameraEnabledDecs, _updateSlotsDecs, _ref;
54
+ function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
55
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
56
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
57
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
58
+ function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
59
+ function _applyDecs(e, t, r, n, o, a) { function i(e, t, r) { return function (n, o) { return r && r(n), e[t].call(n, o); }; } function c(e, t) { for (var r = 0; r < e.length; r++) e[r].call(t); return t; } function s(e, t, r, n) { if ("function" != typeof e && (n || void 0 !== e)) throw new TypeError(t + " must " + (r || "be") + " a function" + (n ? "" : " or undefined")); return e; } function applyDec(e, t, r, n, o, a, c, u, l, f, p, d, h) { function m(e) { if (!h(e)) throw new TypeError("Attempted to access private element on non-instance"); } var y, v = t[0], g = t[3], b = !u; if (!b) { r || Array.isArray(v) || (v = [v]); var w = {}, S = [], A = 3 === o ? "get" : 4 === o || d ? "set" : "value"; f ? (p || d ? w = { get: _setFunctionName(function () { return g(this); }, n, "get"), set: function set(e) { t[4](this, e); } } : w[A] = g, p || _setFunctionName(w[A], n, 2 === o ? "" : A)) : p || (w = Object.getOwnPropertyDescriptor(e, n)); } for (var P = e, j = v.length - 1; j >= 0; j -= r ? 2 : 1) { var D = v[j], E = r ? v[j - 1] : void 0, I = {}, O = { kind: ["field", "accessor", "method", "getter", "setter", "class"][o], name: n, metadata: a, addInitializer: function (e, t) { if (e.v) throw Error("attempted to call addInitializer after decoration was finished"); s(t, "An initializer", "be", !0), c.push(t); }.bind(null, I) }; try { if (b) (y = s(D.call(E, P, O), "class decorators", "return")) && (P = y);else { var k, F; O["static"] = l, O["private"] = f, f ? 2 === o ? k = function k(e) { return m(e), w.value; } : (o < 4 && (k = i(w, "get", m)), 3 !== o && (F = i(w, "set", m))) : (k = function k(e) { return e[n]; }, (o < 2 || 4 === o) && (F = function F(e, t) { e[n] = t; })); var N = O.access = { has: f ? h.bind() : function (e) { return n in e; } }; if (k && (N.get = k), F && (N.set = F), P = D.call(E, d ? { get: w.get, set: w.set } : w[A], O), d) { if ("object" == _typeof(P) && P) (y = s(P.get, "accessor.get")) && (w.get = y), (y = s(P.set, "accessor.set")) && (w.set = y), (y = s(P.init, "accessor.init")) && S.push(y);else if (void 0 !== P) throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0"); } else s(P, (p ? "field" : "method") + " decorators", "return") && (p ? S.push(P) : w[A] = P); } } finally { I.v = !0; } } return (p || d) && u.push(function (e, t) { for (var r = S.length - 1; r >= 0; r--) t = S[r].call(e, t); return t; }), p || b || (f ? d ? u.push(i(w, "get"), i(w, "set")) : u.push(2 === o ? w[A] : i.call.bind(w[A])) : Object.defineProperty(e, n, w)), P; } function u(e, t) { return Object.defineProperty(e, Symbol.metadata || Symbol["for"]("Symbol.metadata"), { configurable: !0, enumerable: !0, value: t }); } if (arguments.length >= 6) var l = a[Symbol.metadata || Symbol["for"]("Symbol.metadata")]; var f = Object.create(null == l ? null : l), p = function (e, t, r, n) { var o, a, i = [], s = function s(t) { return _checkInRHS(t) === e; }, u = new Map(); function l(e) { e && i.push(c.bind(null, e)); } for (var f = 0; f < t.length; f++) { var p = t[f]; if (Array.isArray(p)) { var d = p[1], h = p[2], m = p.length > 3, y = 16 & d, v = !!(8 & d), g = 0 == (d &= 7), b = h + "/" + v; if (!g && !m) { var w = u.get(b); if (!0 === w || 3 === w && 4 !== d || 4 === w && 3 !== d) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h); u.set(b, !(d > 2) || d); } applyDec(v ? e : e.prototype, p, y, m ? "#" + h : _toPropertyKey(h), d, n, v ? a = a || [] : o = o || [], i, v, m, g, 1 === d, v && m ? s : r); } } return l(o), l(a), i; }(e, t, o, f); return r.length || u(e, f), { e: p, get c() { var t = []; return r.length && [u(applyDec(e, [r], n, e.name, 5, f, t), f), c.bind(null, t, e)]; } }; }
60
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
61
+ 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); }
62
+ 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; }
63
+ 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; }
64
+ var _A = /*#__PURE__*/new WeakMap();
65
+ var _B = /*#__PURE__*/new WeakMap();
66
+ var _C = /*#__PURE__*/new WeakMap();
67
+ var _D = /*#__PURE__*/new WeakMap();
68
+ var _E = /*#__PURE__*/new WeakMap();
69
+ var _F = /*#__PURE__*/new WeakMap();
70
+ _ref = (_participantDecs = [_mobx.observable, _mobx.observable.ref], _chatDecs = [_mobx.observable, _mobx.observable.ref], _stateBarDecs = [_mobx.observable, _mobx.observable.ref], _actionBarDecs = [_mobx.observable, _mobx.observable.ref], _layersDecs = [_mobx.observable, _mobx.observable.ref], _whiteboardDecs = [_mobx.observable, _mobx.observable.ref], _startPlayLocalVideoDecs = [_mobx.action, _mobx.action.bound], _stopPlayLocalVideoDecs = [_mobx.action, _mobx.action.bound], _setCameraEnabledDecs = [_mobx.action, _mobx.action.bound], _updateSlotsDecs = [_mobx.action, _mobx.action.bound], "_deviceStore");
71
+ var LayoutStore = exports["default"] = /*#__PURE__*/function () {
72
+ function LayoutStore(params) {
73
+ (0, _classCallCheck2["default"])(this, LayoutStore);
74
+ (0, _defineProperty2["default"])(this, _ref, void _initProto(this));
75
+ // Slots
76
+ _classPrivateFieldInitSpec(this, _A, _init_participant(this, null));
77
+ _classPrivateFieldInitSpec(this, _B, _init_chat(this, null));
78
+ _classPrivateFieldInitSpec(this, _C, _init_stateBar(this, null));
79
+ _classPrivateFieldInitSpec(this, _D, _init_actionBar(this, null));
80
+ _classPrivateFieldInitSpec(this, _E, _init_layers(this, null));
81
+ _classPrivateFieldInitSpec(this, _F, _init_whiteboard(this, null));
82
+ this._deviceStore = params.deviceStore;
83
+ this._userControl = params.userControl;
84
+ }
85
+ return (0, _createClass2["default"])(LayoutStore, [{
86
+ key: "participant",
87
+ get: function get() {
88
+ return _classPrivateFieldGet(_A, this);
89
+ },
90
+ set: function set(v) {
91
+ _classPrivateFieldSet(_A, this, v);
92
+ }
93
+ }, {
94
+ key: "chat",
95
+ get: function get() {
96
+ return _classPrivateFieldGet(_B, this);
97
+ },
98
+ set: function set(v) {
99
+ _classPrivateFieldSet(_B, this, v);
100
+ }
101
+ }, {
102
+ key: "stateBar",
103
+ get: function get() {
104
+ return _classPrivateFieldGet(_C, this);
105
+ },
106
+ set: function set(v) {
107
+ _classPrivateFieldSet(_C, this, v);
108
+ }
109
+ }, {
110
+ key: "actionBar",
111
+ get: function get() {
112
+ return _classPrivateFieldGet(_D, this);
113
+ },
114
+ set: function set(v) {
115
+ _classPrivateFieldSet(_D, this, v);
116
+ }
117
+ }, {
118
+ key: "layers",
119
+ get: function get() {
120
+ return _classPrivateFieldGet(_E, this);
121
+ },
122
+ set: function set(v) {
123
+ _classPrivateFieldSet(_E, this, v);
124
+ }
125
+ }, {
126
+ key: "whiteboard",
127
+ get: function get() {
128
+ return _classPrivateFieldGet(_F, this);
129
+ },
130
+ set: function set(v) {
131
+ _classPrivateFieldSet(_F, this, v);
132
+ }
133
+ }, {
134
+ key: "localUser",
135
+ get: function get() {
136
+ return this._userControl.getLocalUser();
137
+ }
138
+ }, {
139
+ key: "cameraId",
140
+ get: function get() {
141
+ return this._deviceStore.cameraId;
142
+ }
143
+ }, {
144
+ key: "cameraEnabled",
145
+ get: function get() {
146
+ return this._deviceStore.cameraEnabled;
147
+ }
148
+ }, {
149
+ key: "startPlayLocalVideo",
150
+ value: function startPlayLocalVideo(view, isMirror) {
151
+ return this._deviceStore.startPlayLocalVideo(view, isMirror);
152
+ }
153
+ }, {
154
+ key: "stopPlayLocalVideo",
155
+ value: function stopPlayLocalVideo(view) {
156
+ return this._deviceStore.stopPlayLocalVideo(view);
157
+ }
158
+ }, {
159
+ key: "setCameraEnabled",
160
+ value: function setCameraEnabled(enable) {
161
+ this._deviceStore.handleRealCameraEnabledChanged(enable);
162
+ this._deviceStore.cameraEnabled = enable;
163
+ }
164
+ }, {
165
+ key: "updateSlots",
166
+ value: function updateSlots(slots) {
167
+ for (var key in slots) {
168
+ var slot = slots[key];
169
+ if (key in this && slot !== undefined) {
170
+ this[key] = slot;
171
+ }
172
+ }
173
+ }
174
+ }, {
175
+ key: "release",
176
+ value: function release() {
177
+ // this._chatRoomControl.removeObserver(this._chatRoomObserver);
178
+ }
179
+ }]);
180
+ }();
181
+ _LayoutStore = LayoutStore;
182
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_LayoutStore, [[_participantDecs, 17, "participant"], [_chatDecs, 17, "chat"], [_stateBarDecs, 17, "stateBar"], [_actionBarDecs, 17, "actionBar"], [_layersDecs, 17, "layers"], [_whiteboardDecs, 17, "whiteboard"], [_startPlayLocalVideoDecs, 18, "startPlayLocalVideo"], [_stopPlayLocalVideoDecs, 18, "stopPlayLocalVideo"], [_setCameraEnabledDecs, 18, "setCameraEnabled"], [_updateSlotsDecs, 18, "updateSlots"]], []).e, 7);
183
+ _init_participant = _applyDecs$e[0];
184
+ _init_chat = _applyDecs$e[1];
185
+ _init_stateBar = _applyDecs$e[2];
186
+ _init_actionBar = _applyDecs$e[3];
187
+ _init_layers = _applyDecs$e[4];
188
+ _init_whiteboard = _applyDecs$e[5];
189
+ _initProto = _applyDecs$e[6];