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
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.array.push.js");
7
+ require("core-js/modules/es.object.define-properties.js");
8
+ require("core-js/modules/es.object.define-property.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
11
+ require("core-js/modules/es.object.keys.js");
12
+ require("core-js/modules/es.object.to-string.js");
13
+ require("core-js/modules/esnext.async-iterator.filter.js");
14
+ require("core-js/modules/esnext.async-iterator.for-each.js");
15
+ require("core-js/modules/esnext.iterator.constructor.js");
16
+ require("core-js/modules/esnext.iterator.filter.js");
17
+ require("core-js/modules/esnext.iterator.for-each.js");
18
+ require("core-js/modules/web.dom-collections.for-each.js");
19
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
20
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
+ require("core-js/modules/es.array.join.js");
22
+ var _electron = require("electron");
23
+ var _main = require("@electron/remote/main");
24
+ var _path = _interopRequireDefault(require("path"));
25
+ var _logger = require("./logger");
26
+ var _app = require("./app");
27
+ var _defaultOptions = require("./default-options");
28
+ var _env = require("./env");
29
+ var _main2 = require("./main");
30
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
31
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
32
+ (0, _main.initialize)();
33
+ (0, _logger.initializeLogger)({
34
+ logFilePath: _path["default"].join(_electron.app.getPath('logs'), 'logs', 'app.log'),
35
+ console: _env.isDev
36
+ });
37
+ (0, _app.hookApp)(_electron.app);
38
+ _electron.app.addListener('ready', function () {
39
+ var mainWindow = new _electron.BrowserWindow(_objectSpread(_objectSpread({}, _defaultOptions.defaultWindowOptions), {}, {
40
+ webPreferences: _objectSpread({}, _defaultOptions.defaultWebPreferences)
41
+ }));
42
+ (0, _main2.hookWindow)(mainWindow);
43
+ mainWindow.addListener('closed', function () {
44
+ _electron.app.exit(0);
45
+ });
46
+ mainWindow.webContents.openDevTools({
47
+ mode: 'detach'
48
+ });
49
+ mainWindow.loadURL(_env.devPageUrl);
50
+ (0, _main.enable)(mainWindow.webContents);
51
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.array.push.js");
7
+ require("core-js/modules/es.object.define-properties.js");
8
+ require("core-js/modules/es.object.define-property.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
11
+ require("core-js/modules/es.object.keys.js");
12
+ require("core-js/modules/es.object.to-string.js");
13
+ require("core-js/modules/esnext.async-iterator.filter.js");
14
+ require("core-js/modules/esnext.async-iterator.for-each.js");
15
+ require("core-js/modules/esnext.iterator.constructor.js");
16
+ require("core-js/modules/esnext.iterator.filter.js");
17
+ require("core-js/modules/esnext.iterator.for-each.js");
18
+ require("core-js/modules/web.dom-collections.for-each.js");
19
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
20
+ require("core-js/modules/es.array.join.js");
21
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
22
+ var _electron = require("electron");
23
+ var _main = require("@electron/remote/main");
24
+ var _2 = require(".");
25
+ var _defaultOptions = require("./default-options");
26
+ var _env = require("./env");
27
+ var _path = _interopRequireDefault(require("path"));
28
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
29
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
30
+ (0, _main.initialize)();
31
+ (0, _2.hookApp)(_electron.app);
32
+ _electron.app.addListener('ready', function () {
33
+ var mainWindow = new _electron.BrowserWindow(_objectSpread(_objectSpread({}, _defaultOptions.defaultWindowOptions), {}, {
34
+ webPreferences: _objectSpread({}, _defaultOptions.defaultWebPreferences),
35
+ show: false
36
+ }));
37
+ (0, _2.hookWindow)(mainWindow);
38
+ mainWindow.addListener('closed', function () {
39
+ _electron.app.exit(0);
40
+ });
41
+ mainWindow.addListener('ready-to-show', function () {
42
+ mainWindow.show();
43
+ });
44
+ if (_env.isDev) {
45
+ mainWindow.webContents.openDevTools({
46
+ mode: 'detach'
47
+ });
48
+ mainWindow.loadURL(_env.devPageUrl);
49
+ } else {
50
+ mainWindow.loadFile(_path["default"].join(_env.distPathPrefix, _env.distIndexFileName));
51
+ }
52
+ return mainWindow;
53
+ });
54
+ _electron.app.addListener('browser-window-created', function (_, window) {
55
+ (0, _main.enable)(window.webContents);
56
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.array.push.js");
7
+ require("core-js/modules/es.object.define-properties.js");
8
+ require("core-js/modules/es.object.define-property.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
11
+ require("core-js/modules/es.object.keys.js");
12
+ require("core-js/modules/es.object.to-string.js");
13
+ require("core-js/modules/esnext.async-iterator.filter.js");
14
+ require("core-js/modules/esnext.async-iterator.for-each.js");
15
+ require("core-js/modules/esnext.iterator.constructor.js");
16
+ require("core-js/modules/esnext.iterator.filter.js");
17
+ require("core-js/modules/esnext.iterator.for-each.js");
18
+ require("core-js/modules/web.dom-collections.for-each.js");
19
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
20
+ require("core-js/modules/es.array.join.js");
21
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
22
+ var _electron = require("electron");
23
+ var _main = require("@electron/remote/main");
24
+ var _2 = require(".");
25
+ var _defaultOptions = require("./default-options");
26
+ var _env = require("./env");
27
+ var _path = _interopRequireDefault(require("path"));
28
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
29
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
30
+ (0, _main.initialize)();
31
+ (0, _2.hookApp)(_electron.app);
32
+ _electron.app.addListener('ready', function () {
33
+ var mainWindow = new _electron.BrowserWindow(_objectSpread(_objectSpread({}, _defaultOptions.defaultWindowOptions), {}, {
34
+ webPreferences: _objectSpread({}, _defaultOptions.defaultWebPreferences),
35
+ show: false
36
+ }));
37
+ (0, _2.hookWindow)(mainWindow);
38
+ mainWindow.addListener('closed', function () {
39
+ _electron.app.exit(0);
40
+ });
41
+ mainWindow.addListener('ready-to-show', function () {
42
+ mainWindow.show();
43
+ });
44
+ if (_env.isDev) {
45
+ mainWindow.webContents.openDevTools({
46
+ mode: 'detach'
47
+ });
48
+ mainWindow.loadURL(_env.devPageUrl);
49
+ } else {
50
+ mainWindow.loadFile(_path["default"].join(_env.distPathPrefix, _env.distIndexFileName));
51
+ }
52
+ return mainWindow;
53
+ });
54
+ _electron.app.addListener('browser-window-created', function (_, window) {
55
+ (0, _main.enable)(window.webContents);
56
+ });
@@ -9,7 +9,7 @@ exports.defaultWindowOptions = exports.defaultWebPreferences = void 0;
9
9
  var _path = _interopRequireDefault(require("path"));
10
10
  var defaultWindowOptions = exports.defaultWindowOptions = {
11
11
  height: 850,
12
- width: 1340,
12
+ width: 1360,
13
13
  minWidth: 825,
14
14
  // 这个值会影响主窗口的最小宽度,如需改变,记得同步 /fcr-ui-scene-desktop/src/modules/state-bar/store.ts 中的 GALLERY_MIN_SIZE
15
15
  minHeight: 600
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.array.push.js");
7
+ require("core-js/modules/es.object.define-properties.js");
8
+ require("core-js/modules/es.object.define-property.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
11
+ require("core-js/modules/es.object.keys.js");
12
+ require("core-js/modules/es.object.to-string.js");
13
+ require("core-js/modules/esnext.async-iterator.filter.js");
14
+ require("core-js/modules/esnext.async-iterator.for-each.js");
15
+ require("core-js/modules/esnext.iterator.constructor.js");
16
+ require("core-js/modules/esnext.iterator.filter.js");
17
+ require("core-js/modules/esnext.iterator.for-each.js");
18
+ require("core-js/modules/web.dom-collections.for-each.js");
19
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
20
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
+ require("core-js/modules/es.array.join.js");
22
+ var _electron = require("electron");
23
+ var _main = require("@electron/remote/main");
24
+ var _path = _interopRequireDefault(require("path"));
25
+ var _logger = require("./logger");
26
+ var _app = require("./app");
27
+ var _defaultOptions = require("./default-options");
28
+ var _env = require("./env");
29
+ var _main2 = require("./main");
30
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
31
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
32
+ (0, _main.initialize)();
33
+ (0, _logger.initializeLogger)({
34
+ logFilePath: _path["default"].join(_electron.app.getPath('logs'), 'logs', 'app.log'),
35
+ console: _env.isDev
36
+ });
37
+ (0, _app.hookApp)(_electron.app);
38
+ _electron.app.addListener('ready', function () {
39
+ var mainWindow = new _electron.BrowserWindow(_objectSpread(_objectSpread({}, _defaultOptions.defaultWindowOptions), {}, {
40
+ webPreferences: _objectSpread({}, _defaultOptions.defaultWebPreferences)
41
+ }));
42
+ (0, _main2.hookWindow)(mainWindow);
43
+ mainWindow.addListener('closed', function () {
44
+ _electron.app.exit(0);
45
+ });
46
+ mainWindow.webContents.openDevTools({
47
+ mode: 'detach'
48
+ });
49
+ mainWindow.loadURL(_env.devPageUrl);
50
+ (0, _main.enable)(mainWindow.webContents);
51
+ });
@@ -41,4 +41,4 @@ export declare const getMediaSourceIdList: () => {
41
41
  title: string;
42
42
  mediaSourceId: string;
43
43
  }[];
44
- export declare const releaseAllWindows: () => void;
44
+ export declare const setInMeetingState: (state: 0 | 1) => void;
@@ -6,7 +6,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
6
6
  Object.defineProperty(exports, "__esModule", {
7
7
  value: true
8
8
  });
9
- exports.showItemInFolder = exports.setFragmentOptions = exports.setFragmentBaseUrl = exports.setAlwaysOnTop = exports.sendEvent = exports.screen = exports.removeEventListener = exports.releaseSubAllWindowRefs = exports.releaseAllWindows = exports.registerListenerReady = exports.quitApp = exports.openRendererWindow = exports.openLinkInDefaultBrowser = exports.openDirectory = exports.open = exports.launch = exports.getVirtualBgResource = exports.getSystemMemorySize = exports.getSystemCpuInfo = exports.getRendererProcessUsage = exports.getNetworkType = exports.getMediaSourceIdList = exports.getLaunchOptions = exports.getBrowserWindowById = exports.getAssetUrl = exports.fileToBase64 = exports.closeRendererWindow = exports.close = exports.captureScreen = exports.browserWindow = exports.addEventListener = void 0;
9
+ exports.showItemInFolder = exports.setInMeetingState = exports.setFragmentOptions = exports.setFragmentBaseUrl = exports.setAlwaysOnTop = exports.sendEvent = exports.screen = exports.removeEventListener = exports.releaseSubAllWindowRefs = exports.registerListenerReady = exports.quitApp = exports.openRendererWindow = exports.openLinkInDefaultBrowser = exports.openDirectory = exports.open = exports.launch = exports.getVirtualBgResource = exports.getSystemMemorySize = exports.getSystemCpuInfo = exports.getRendererProcessUsage = exports.getNetworkType = exports.getMediaSourceIdList = exports.getLaunchOptions = exports.getBrowserWindowById = exports.getAssetUrl = exports.fileToBase64 = exports.closeRendererWindow = exports.close = exports.captureScreen = exports.browserWindow = exports.addEventListener = void 0;
10
10
  require("core-js/modules/es.error.cause.js");
11
11
  require("core-js/modules/es.error.to-string.js");
12
12
  require("core-js/modules/es.array.concat.js");
@@ -54,9 +54,6 @@ var _child_process = require("child_process");
54
54
  var _path2 = _interopRequireDefault(require("path"));
55
55
  var _fs2 = _interopRequireDefault(require("fs"));
56
56
  var _jszip = _interopRequireDefault(require("jszip"));
57
- // import pidusage from 'pidusage';
58
- // import { getCpuUsage, getProcessIds } from './tools';
59
-
60
57
  var openDirectory = exports.openDirectory = /*#__PURE__*/function () {
61
58
  var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
62
59
  var _yield$dialog$showOpe, filePaths;
@@ -700,6 +697,6 @@ var getMediaSourceIdList = exports.getMediaSourceIdList = function getMediaSourc
700
697
  };
701
698
  });
702
699
  };
703
- var releaseAllWindows = exports.releaseAllWindows = function releaseAllWindows() {
704
- _electron.ipcRenderer.invoke('release-all-windows');
700
+ var setInMeetingState = exports.setInMeetingState = function setInMeetingState(state) {
701
+ _electron.ipcRenderer.send('set-in-meeting-state', state);
705
702
  };
@@ -8,30 +8,17 @@ exports.hookWindow = void 0;
8
8
  require("core-js/modules/es.array.concat.js");
9
9
  require("core-js/modules/es.array.includes.js");
10
10
  require("core-js/modules/web.timers.js");
11
- var _electron = require("electron");
12
11
  var _window = require("./window");
13
12
  var _screenshot = require("./plugins/screenshot");
14
13
  var _logger = require("./logger");
14
+ var _meetingState = require("./plugins/meeting-state");
15
15
  var hookWindow = exports.hookWindow = function hookWindow(mainWindow) {
16
16
  var logger = (0, _logger.getLogger)();
17
- // mainWindow.webContents.addListener('did-start-loading', () => {
18
- // console.log('main window is gone, close all windows');
19
-
20
- // closeAllWindows();
21
-
22
- // clearAllRendererWindows();
23
- // });
24
-
25
- _electron.ipcMain.handle('release-all-windows', function () {
26
- logger.info('main window is gone, close all windows');
27
- (0, _window.closeAllWindows)();
28
- (0, _window.clearAllRendererWindows)();
29
- });
30
17
  mainWindow.webContents.addListener('did-create-window', function (window, details) {
31
18
  logger.info("browser window is opened, frameName: ".concat(details.frameName));
32
- var builtinFrameNames = ['device-setting', 'chat', 'live-streaming', 'participant', 'screen-selection', 'invite', 'video-window', 'confirm-dialog', 'connection-gateway', 'whiteboard', 'progress-dialog'];
19
+ var builtinFrameNames = ['device-setting', 'chat', 'live-streaming', 'participant', 'screen-selection', 'invite', 'video-window', 'confirm-dialog', 'connection-gateway', 'whiteboard', 'progress-dialog', 'operation-waiting-room', 'operation-waiting-room-remove', 'operation-waiting-room-removeAll', 'operation-waiting-room-admitAll'];
33
20
  if (!builtinFrameNames.includes(details.frameName)) {
34
- logger.info('frameName is not in builtinFrameNames, ignore it');
21
+ logger.info("frameName [".concat(details.frameName, "] is not in builtinFrameNames, ignore it"));
35
22
  return;
36
23
  }
37
24
  (0, _window.putRendererWindow)(details.frameName, window);
@@ -60,6 +47,7 @@ var hookWindow = exports.hookWindow = function hookWindow(mainWindow) {
60
47
  }, 1000);
61
48
  });
62
49
  (0, _screenshot.listenScreenshot)(mainWindow);
50
+ (0, _meetingState.listenMeetingState)(mainWindow);
63
51
  };
64
52
  var attachEventOnMethod = function attachEventOnMethod(browserWindow, method, action) {
65
53
  var func = browserWindow[method];
@@ -0,0 +1,2 @@
1
+ import { BrowserWindow } from 'electron';
2
+ export declare const listenMeetingState: (window: BrowserWindow) => void;
@@ -0,0 +1,39 @@
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.listenMeetingState = void 0;
8
+ require("core-js/modules/es.array.concat.js");
9
+ var _electron = require("electron");
10
+ var _logger = require("../logger");
11
+ var listenMeetingState = exports.listenMeetingState = function listenMeetingState(window) {
12
+ var logger = (0, _logger.getLogger)();
13
+ var isInMeeting = 0;
14
+ var saveBlockerId = 0;
15
+ _electron.ipcMain.addListener('set-in-meeting-state', function (_, state) {
16
+ isInMeeting = state;
17
+ logger.info('in-meeting state changed', state);
18
+ if (state === 1) {
19
+ if (!_electron.powerSaveBlocker.isStarted(saveBlockerId)) {
20
+ saveBlockerId = _electron.powerSaveBlocker.start('prevent-display-sleep');
21
+ logger.info("power save blocker is started, blocker id: ".concat(saveBlockerId));
22
+ }
23
+ } else {
24
+ if (_electron.powerSaveBlocker.isStarted(saveBlockerId)) {
25
+ var isStopped = _electron.powerSaveBlocker.stop(saveBlockerId);
26
+ logger.info("power save blocker is stopped, blocker id: ".concat(saveBlockerId, ", isStopped: ").concat(isStopped));
27
+ }
28
+ }
29
+ });
30
+ window.addListener('close', function (event) {
31
+ if (isInMeeting === 1) {
32
+ event.preventDefault();
33
+ window.webContents.send('custom-event', {
34
+ action: 'CALL_CLOSE_MAIN_WINDOW',
35
+ payload: window.id
36
+ });
37
+ }
38
+ });
39
+ };
@@ -32,5 +32,5 @@ window.runtime = {
32
32
  registerListenerReady: _injections.registerListenerReady,
33
33
  releaseSubAllWindowRefs: _injections.releaseSubAllWindowRefs,
34
34
  getMediaSourceIdList: _injections.getMediaSourceIdList,
35
- releaseAllWindows: _injections.releaseAllWindows
35
+ setInMeetingState: _injections.setInMeetingState
36
36
  };
@@ -1,7 +1,7 @@
1
1
  import { RendererEventAction } from '../../utilities/constant';
2
2
  import { AgoraRtcScreenCaptureType, AgoraRtcWindowInfo } from 'agora-rte-sdk/lib/core/rtc/type';
3
3
  import { AudioProcessingChannel } from 'agora-ui-foundation/lib/components/room-screen-share-state-bar/share-audio';
4
- import { FcrRecordingState, FcrUserRole, FcrLiveStreamingState } from 'agora-edu-core/lib/type';
4
+ import { FcrRecordingState, FcrUserRole, FcrLiveStreamingState, FcrRoomInfo, FcrUserInfo } from 'agora-edu-core/lib/type';
5
5
  import { ConnectType } from '../../modules/action-bar/type';
6
6
  export default class ControlBarStore {
7
7
  protected logger: import("agora-foundation/lib/logger").Logger;
@@ -26,6 +26,7 @@ export default class ControlBarStore {
26
26
  accessor allowChat: boolean;
27
27
  accessor allowJoinWithMuteAudio: boolean;
28
28
  accessor allowShareScreen: boolean;
29
+ accessor allowBoardWrite: boolean;
29
30
  accessor allowUnmuteSelfVideo: boolean;
30
31
  accessor allowUnmuteSelfAudio: boolean;
31
32
  accessor isLockRoomEnabled: boolean;
@@ -38,6 +39,7 @@ export default class ControlBarStore {
38
39
  accessor hasEnableChangeNamePermission: boolean;
39
40
  accessor hasEnableStartVideoPermission: boolean;
40
41
  accessor hasLockRoomPermission: boolean;
42
+ accessor hasAllowWriteBoardPermission: boolean;
41
43
  accessor roomDuration: number;
42
44
  accessor startTime: number;
43
45
  accessor videoSteamingUrl: string;
@@ -49,9 +51,23 @@ export default class ControlBarStore {
49
51
  accessor hasGetLiveStreamingUrlPermission: boolean;
50
52
  accessor hasStopLiveStreamingPermission: boolean;
51
53
  accessor hasStartLiveStreamingPermission: boolean;
54
+ accessor hasWaitingRoomPermission: boolean;
52
55
  accessor allApplicationWindows: AgoraRtcWindowInfo[];
53
56
  accessor phoneMicEnabled: boolean;
57
+ accessor roomInfo: FcrRoomInfo;
58
+ accessor userName: string;
59
+ accessor inviteLink: string;
60
+ accessor isShowMeetingDetailPortal: boolean;
61
+ accessor meetingDetailPortalLeft: number;
62
+ accessor meetingDetailPortalTop: number;
63
+ accessor remoteUsers: FcrUserInfo[];
64
+ accessor hasAssignHostBeforeLeavingPermission: boolean;
65
+ accessor isPstnUser: boolean;
66
+ accessor hasEndRoomPermission: boolean;
67
+ accessor isLocked: boolean;
68
+ accessor hiddenShareActionNav: boolean;
54
69
  constructor();
70
+ setHiddenShareActionNav(hiddenShareActionNav: boolean): void;
55
71
  initControlBar(payload: any): void;
56
72
  private _setControlBarWindowBounds;
57
73
  get hasSecurityPermission(): boolean;
@@ -74,6 +90,7 @@ export default class ControlBarStore {
74
90
  }): void;
75
91
  setLiveStreamingState(liveStreamingState: FcrLiveStreamingState): void;
76
92
  setStartTime(startTime: any): void;
93
+ setRoomInfo(roomInfo: FcrRoomInfo): void;
77
94
  setRoomDuration(duration: number): void;
78
95
  setStartScreenSharePermission(hasPermission: boolean): void;
79
96
  setPermissionToControlAllowSendAll(hasPermission: boolean): void;
@@ -127,6 +144,9 @@ export default class ControlBarStore {
127
144
  updateAllowJoinWithMuteAudio(allow: boolean): void;
128
145
  setAllowShareScreen(allow: boolean): void;
129
146
  updateAllowShareScreen(allow: boolean): void;
147
+ setBoardWriteEnabled(allow: boolean): void;
148
+ updateBoardWriteEnabled(): void;
149
+ setHasAllowWriteBoardPermission(allow: boolean): void;
130
150
  setAllowUnmuteSelfVideo(allow: boolean): void;
131
151
  updateAllowUnmuteSelfVideo(allow: boolean): void;
132
152
  setAllowUnmuteSelfAudio(allow: boolean): void;
@@ -135,6 +155,7 @@ export default class ControlBarStore {
135
155
  updateLockRoomEnabled(lock: boolean): void;
136
156
  setWaitingRoomEnabled(allow: boolean): void;
137
157
  setHasStartCloudRecordingPermission(allow: boolean): void;
158
+ setHasWaitingRoomPermission(allow: boolean): void;
138
159
  setHasGetLiveStreamingUrlPermission(hasGetLiveStreamingUrlPermission: boolean): void;
139
160
  setHasStopLiveStreamingPermission(hasStopLiveStreamingPermission: boolean): void;
140
161
  setHasStartLiveStreamingPermission(hasStartLiveStreamingPermission: boolean): void;
@@ -148,5 +169,17 @@ export default class ControlBarStore {
148
169
  x: number;
149
170
  y: number;
150
171
  };
172
+ fetchLeavingRoomPropsAfterInit(): void;
173
+ setShowMeetingDetailPortal(show: boolean): void;
174
+ setMeetingDetailPortalPosition(left: number, top: number): void;
175
+ setRemoteUsers(remoteUsers: FcrUserInfo[]): void;
176
+ setHasAssignHostBeforeLeavingPermission(hasAssignHostBeforeLeavingPermission: boolean): void;
177
+ setIsPstnUser(isPstnUser: boolean): void;
178
+ setHasEndRoomPermission(hasEndRoomPermission: boolean): void;
179
+ setIsLocked(isLocked: boolean): void;
180
+ sendLeave(): void;
181
+ keepPhoneAudioConnection(): void;
182
+ sendEnd(): void;
183
+ sendAssign(user: FcrUserInfo): void;
151
184
  showToast(params: any): void;
152
185
  }