fcr-ui-scene 3.6.1 → 3.6.2
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.
- package/dist/132.js +2 -0
- package/dist/132.js.LICENSE.txt +311 -0
- package/dist/317.js +2 -0
- package/dist/317.js.LICENSE.txt +20 -0
- package/dist/651.js +2 -0
- package/dist/651.js.LICENSE.txt +1 -0
- package/dist/689343b64b60bfb7ffff.png +0 -0
- package/dist/73.js +1 -0
- package/dist/885f9369ea05a8ac0e56.png +0 -0
- package/dist/90f383876a6e93e7c7ca.png +0 -0
- package/dist/9b37584780995fc5df8c.gif +0 -0
- package/dist/annotation.e5cbd3a70b6d42361872.css +1274 -0
- package/dist/annotation.html +1 -0
- package/dist/annotation.js +2 -0
- package/dist/annotation.js.LICENSE.txt +252 -0
- package/dist/assets/browser/images/default1.jpg +0 -0
- package/dist/assets/browser/images/default2.jpg +0 -0
- package/dist/assets/browser/images/default3.jpg +0 -0
- package/dist/assets/browser/images/default4.jpg +0 -0
- package/dist/assets/browser/images/default5.jpg +0 -0
- package/dist/assets/browser/images/default6.jpg +0 -0
- package/dist/assets/browser/images/default7.jpg +0 -0
- package/dist/assets/browser/sound_effects/pretest.mp3 +0 -0
- package/dist/assets/browser/sound_effects/recording_started.mp3 +0 -0
- package/dist/assets/browser/sound_effects/remote_user_joined.mp3 +0 -0
- package/dist/assets/browser/sound_effects/speaker_test.mp3 +0 -0
- package/dist/assets/browser/videos/default8.mp4 +0 -0
- package/dist/assets/browser/videos/default9.mp4 +0 -0
- package/dist/assets/cursors/fcr_whiteboard_input.ico +0 -0
- package/dist/assets/cursors/fcr_whiteboard_pen.ico +0 -0
- package/dist/assets/cursors/fcr_whiteboard_shape_-straightline.ico +0 -0
- package/dist/assets/cursors/fcr_whiteboard_shape_arrow.ico +0 -0
- package/dist/assets/cursors/fcr_whiteboard_shape_circle.ico +0 -0
- package/dist/assets/cursors/fcr_whiteboard_shape_rectangle.ico +0 -0
- package/dist/assets/cursors/fcr_whiteboard_shape_triangle.ico +0 -0
- package/dist/assets/electron/images/default1.jpg +0 -0
- package/dist/assets/electron/images/default2.jpg +0 -0
- package/dist/assets/electron/sound_effects/pretest.mp3 +0 -0
- package/dist/assets/electron/videos/default8.mp4 +0 -0
- package/dist/assets/fcr_chat_reddot.svg +5 -0
- package/dist/assets/fcr_defaultpage.png +0 -0
- package/dist/assets/fcr_grid_big.svg +3 -0
- package/dist/assets/fcr_leave2.svg +58 -0
- package/dist/assets/fcr_listontop_big.svg +3 -0
- package/dist/assets/full-screen-error-boundary-img.png +0 -0
- package/dist/assets/leave-meeting.png +0 -0
- package/dist/assets/loading.gif +0 -0
- package/dist/assets/login_confirm.png +0 -0
- package/dist/assets/pretest.mp3 +0 -0
- package/dist/assets/state-bar-logo.png +0 -0
- package/dist/assets/step-gradient.svg +10 -0
- package/dist/b74b002687a3a3346bec.png +0 -0
- package/dist/b94869094481702f949b.png +0 -0
- package/dist/ebeace75fd46b90d890e.png +0 -0
- package/dist/electron/app.js +194 -0
- package/dist/electron/bootstrap-dev.js +46 -0
- package/dist/electron/bootstrap-sdk.js +211 -0
- package/dist/electron/default-options.js +25 -0
- package/dist/electron/env.js +13 -0
- package/dist/electron/index.js +20 -0
- package/dist/electron/injections.js +903 -0
- package/dist/electron/ipc/ipc.js +141 -0
- package/dist/electron/ipc/type.js +19 -0
- package/dist/electron/logger.js +65 -0
- package/dist/electron/main.js +94 -0
- package/dist/electron/plugins/devtool-shortcut.js +33 -0
- package/dist/electron/plugins/meeting-state.js +39 -0
- package/dist/electron/plugins/screenshot.js +54 -0
- package/dist/electron/preload.js +108 -0
- package/dist/electron/tools.js +66 -0
- package/dist/electron/window.js +123 -0
- package/dist/extensions/agora-extension-virtual-background/agora-wasm.wasm +0 -0
- package/dist/extensions/ai-denoiser/denoiser-wasm-simd.wasm +0 -0
- package/dist/extensions/ai-denoiser/denoiser-wasm.js +1 -0
- package/dist/extensions/ai-denoiser/denoiser-wasm.wasm +0 -0
- package/dist/fad688b9135b15d6c405.png +0 -0
- package/dist/index.html +224 -0
- package/dist/main.393a2a91ab7fc05ffce6.css +15403 -0
- package/dist/main.js +2 -0
- package/dist/main.js.LICENSE.txt +272 -0
- package/dist/worker-entry.worker.js.LICENSE.txt +13 -0
- package/lib/creator.d.ts +5 -0
- package/lib/creator.js +106 -17
- package/lib/electron/bootstrap-sdk.js +4 -0
- package/lib/electron/injections.d.ts +4 -0
- package/lib/electron/injections.js +37 -8
- package/lib/electron/ipc/ipc.d.ts +1 -0
- package/lib/electron/ipc/ipc.js +4 -0
- package/lib/electron/main.js +6 -2
- package/lib/electron/plugins/screenshot.js +4 -2
- package/lib/electron/preload.js +7 -2
- package/lib/electron/window.js +4 -3
- package/lib/fragments/annotation/index.d.ts +10 -0
- package/lib/fragments/annotation/index.js +106 -0
- package/lib/fragments/annotation/libs.d.ts +55 -0
- package/lib/fragments/annotation/libs.js +93 -0
- package/lib/fragments/annotation/store.d.ts +25 -0
- package/lib/fragments/annotation/store.js +485 -0
- package/lib/fragments/annotation/view.d.ts +2 -0
- package/lib/fragments/annotation/view.js +23 -0
- package/lib/fragments/base.d.ts +10 -0
- package/lib/fragments/base.js +44 -0
- package/lib/modules/action-bar/components/screen-share/submenu.js +7 -6
- package/lib/modules/action-bar/index.css +7 -0
- package/lib/modules/action-bar/index.d.ts +2 -0
- package/lib/modules/action-bar/index.js +1 -0
- package/lib/modules/action-bar/store.d.ts +6 -2
- package/lib/modules/action-bar/store.js +15 -9
- package/lib/modules/annotation/components/control-bar/index.css +48 -0
- package/lib/modules/annotation/components/control-bar/index.d.ts +3 -0
- package/lib/modules/annotation/components/control-bar/index.js +101 -0
- package/lib/modules/annotation/components/toolbar/components/color-tool/color-panel/index.d.ts +3 -0
- package/lib/modules/annotation/components/toolbar/components/color-tool/color-panel/index.js +46 -0
- package/lib/modules/annotation/components/toolbar/components/color-tool/index.d.ts +1 -0
- package/lib/modules/annotation/components/toolbar/components/color-tool/index.js +52 -0
- package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/index.d.ts +3 -0
- package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/index.js +59 -0
- package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +11 -0
- package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.js +59 -0
- package/lib/modules/annotation/components/toolbar/components/graphic-tool/index.d.ts +1 -0
- package/lib/modules/annotation/components/toolbar/components/graphic-tool/index.js +68 -0
- package/lib/modules/annotation/components/toolbar/components/item/item.d.ts +17 -0
- package/lib/modules/annotation/components/toolbar/components/item/item.js +115 -0
- package/lib/modules/annotation/components/toolbar/components/item/style.css +43 -0
- package/lib/modules/annotation/components/toolbar/components/panel/index.d.ts +5 -0
- package/lib/modules/annotation/components/toolbar/components/panel/index.js +22 -0
- package/lib/modules/annotation/components/toolbar/components/panel/style.css +24 -0
- package/lib/modules/annotation/components/toolbar/components/pen-tool/index.d.ts +1 -0
- package/lib/modules/annotation/components/toolbar/components/pen-tool/index.js +58 -0
- package/lib/modules/annotation/components/toolbar/components/pen-tool/pen-panel/index.d.ts +3 -0
- package/lib/modules/annotation/components/toolbar/components/pen-tool/pen-panel/index.js +34 -0
- package/lib/modules/annotation/components/toolbar/components/tips/index.d.ts +2 -0
- package/lib/modules/annotation/components/toolbar/components/tips/index.js +25 -0
- package/lib/modules/annotation/components/toolbar/components/tips/style.css +19 -0
- package/lib/modules/annotation/components/toolbar/index.d.ts +0 -0
- package/lib/modules/annotation/components/toolbar/index.js +1 -0
- package/lib/modules/annotation/components/toolbar/store.d.ts +40 -0
- package/lib/modules/annotation/components/toolbar/store.js +279 -0
- package/lib/modules/annotation/components/toolbar/style.css +55 -0
- package/lib/modules/annotation/components/toolbar/view.d.ts +2 -0
- package/lib/modules/annotation/components/toolbar/view.js +120 -0
- package/lib/modules/annotation/index.d.ts +36 -0
- package/lib/modules/annotation/index.js +168 -0
- package/lib/modules/annotation/store.d.ts +85 -0
- package/lib/modules/annotation/store.js +648 -0
- package/lib/modules/annotation/style.css +26 -0
- package/lib/modules/annotation/view.d.ts +2 -0
- package/lib/modules/annotation/view.js +32 -0
- package/lib/modules/chat/view.js +112 -100
- package/lib/modules/components/annotation-menu/index.d.ts +7 -0
- package/lib/modules/components/annotation-menu/index.js +119 -0
- package/lib/modules/components/leave-meeting/components/assign-host.js +26 -23
- package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.d.ts +2 -0
- package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +6 -2
- package/lib/modules/components/member-window/components/video-player/components/remote-video-player.d.ts +2 -1
- package/lib/modules/components/member-window/components/video-player/components/remote-video-player.js +6 -1
- package/lib/modules/components/member-window/components/video-player/index.d.ts +1 -0
- package/lib/modules/components/member-window/index.d.ts +1 -1
- package/lib/modules/components/member-window/index.js +8 -5
- package/lib/modules/components/member-window/types.d.ts +2 -0
- package/lib/modules/components/security-menu/index.js +7 -6
- package/lib/modules/control-bar/components/annotation-button/index.d.ts +1 -0
- package/lib/modules/control-bar/components/annotation-button/index.js +59 -0
- package/lib/modules/control-bar/index.d.ts +6 -2
- package/lib/modules/control-bar/index.js +5 -2
- package/lib/modules/control-bar/store.d.ts +23 -7
- package/lib/modules/control-bar/store.js +112 -77
- package/lib/modules/control-bar/view.js +7 -3
- package/lib/modules/dialog/components/annotation-tool/index.d.ts +4 -0
- package/lib/modules/dialog/components/annotation-tool/index.js +53 -0
- package/lib/modules/dialog/components/chat/index.js +1 -1
- package/lib/modules/dialog/components/host-area-container/index.d.ts +12 -0
- package/lib/modules/dialog/components/host-area-container/index.js +214 -0
- package/lib/modules/dialog/components/participant/index.js +1 -1
- package/lib/modules/dialog/components/system-preference/index.js +1 -1
- package/lib/modules/dialog/components/video-window/index.js +1 -0
- package/lib/modules/dialog/hooks/use-popover-watcher.d.ts +14 -0
- package/lib/modules/dialog/hooks/use-popover-watcher.js +112 -0
- package/lib/modules/dialog/hooks/useElectron.d.ts +1 -0
- package/lib/modules/dialog/hooks/useElectron.js +11 -2
- package/lib/modules/dialog/index.d.ts +2 -0
- package/lib/modules/dialog/index.js +2 -1
- package/lib/modules/dialog/store.d.ts +9 -2
- package/lib/modules/dialog/store.js +46 -6
- package/lib/modules/event-confirm/components/window/index.d.ts +7 -0
- package/lib/modules/event-confirm/components/window/index.js +188 -0
- package/lib/modules/event-confirm/index.d.ts +4 -4
- package/lib/modules/event-confirm/index.js +6 -4
- package/lib/modules/event-confirm/store.d.ts +4 -5
- package/lib/modules/event-confirm/store.js +35 -26
- package/lib/modules/event-confirm/view.js +23 -171
- package/lib/modules/event-sound/index.js +1 -1
- package/lib/modules/layout/components/CommonVideoRenderer.js +30 -16
- package/lib/modules/layout/index.d.ts +4 -0
- package/lib/modules/layout/index.js +2 -0
- package/lib/modules/layout/store.d.ts +14 -2
- package/lib/modules/layout/store.js +77 -45
- package/lib/modules/participant/index.d.ts +2 -0
- package/lib/modules/participant/index.js +2 -1
- package/lib/modules/participant/store.d.ts +5 -2
- package/lib/modules/participant/store.js +45 -28
- package/lib/modules/setting/audio-settings/audio-settings.js +3 -14
- package/lib/modules/share-screen/components/selection/index.js +18 -42
- package/lib/modules/share-screen/index.d.ts +6 -2
- package/lib/modules/share-screen/index.js +4 -2
- package/lib/modules/share-screen/store.d.ts +38 -46
- package/lib/modules/share-screen/store.js +263 -693
- package/lib/modules/share-screen/view.js +2 -2
- package/lib/modules/state-bar/assets/fcr_grid_big.svg +1 -1
- package/lib/modules/state-bar/assets/fcr_listontop_big.svg +1 -1
- package/lib/modules/state-bar/index.d.ts +2 -0
- package/lib/modules/state-bar/index.js +1 -0
- package/lib/modules/state-bar/store.d.ts +5 -1
- package/lib/modules/state-bar/store.js +9 -1
- package/lib/modules/state-bar/view.js +3 -2
- package/lib/modules/video-window/components/members/index.js +2 -1
- package/lib/modules/waiting-room-layout/store.js +1 -1
- package/lib/modules/whiteboard/components/control-bar/store.d.ts +5 -1
- package/lib/modules/whiteboard/components/control-bar/store.js +8 -1
- package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/picker.js +16 -5
- package/lib/modules/whiteboard/components/toolbar/components/eraser-picker.js +67 -12
- package/lib/modules/whiteboard/components/toolbar/components/expansion/index.js +22 -2
- package/lib/modules/whiteboard/components/toolbar/components/history.js +46 -14
- package/lib/modules/whiteboard/components/toolbar/components/item/index.js +3 -2
- package/lib/modules/whiteboard/components/toolbar/components/move-handle.js +1 -1
- package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +58 -16
- package/lib/modules/whiteboard/components/toolbar/components/screen-capture-picker.js +15 -4
- package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +45 -2
- package/lib/modules/whiteboard/components/toolbar/hooks/index.d.ts +14 -0
- package/lib/modules/whiteboard/components/toolbar/hooks/index.js +235 -7
- package/lib/modules/whiteboard/components/toolbar/index.d.ts +1 -1
- package/lib/modules/whiteboard/components/toolbar/index.js +1 -1
- package/lib/modules/whiteboard/components/toolbar/store.d.ts +9 -2
- package/lib/modules/whiteboard/components/toolbar/store.js +30 -6
- package/lib/modules/whiteboard/components/toolbar/{ style.css → style.css} +1 -0
- package/lib/modules/whiteboard/index.d.ts +2 -0
- package/lib/modules/whiteboard/index.js +20 -20
- package/lib/plugins/browser-runtime-plugin.js +10 -1
- package/lib/providers/annotation-provider.d.ts +77 -0
- package/lib/providers/annotation-provider.js +411 -0
- package/lib/providers/interpreter-provider.d.ts +1 -0
- package/lib/providers/interpreter-provider.js +182 -154
- package/lib/providers/privilege-provider.d.ts +35 -6
- package/lib/providers/privilege-provider.js +105 -49
- package/lib/providers/renderer-provider.js +3 -7
- package/lib/providers/room-provider.d.ts +13 -1
- package/lib/providers/room-provider.js +21 -7
- package/lib/providers/screen-share-provider.d.ts +131 -34
- package/lib/providers/screen-share-provider.js +561 -173
- package/lib/providers/sharing-provider.d.ts +33 -0
- package/lib/{shared-data-source/screen-share-data-source.js → providers/sharing-provider.js} +87 -39
- package/lib/runtime.d.ts +6 -1
- package/lib/scenes/main-scene.d.ts +7 -2
- package/lib/scenes/main-scene.js +54 -25
- package/lib/scenes/waiting-scene.d.ts +6 -0
- package/lib/scenes/waiting-scene.js +15 -5
- package/lib/shared-data-source/member-data.d.ts +21 -5
- package/lib/shared-data-source/member-data.js +69 -17
- package/lib/shared-data-source/screen-share-data.d.ts +270 -0
- package/lib/shared-data-source/screen-share-data.js +389 -0
- package/lib/shared-data-source/security-data.d.ts +4 -1
- package/lib/shared-data-source/security-data.js +5 -2
- package/lib/shared-data-source/setting.js +6 -4
- package/lib/type.d.ts +53 -0
- package/lib/ui-manager.d.ts +3 -2
- package/lib/ui-manager.js +6 -4
- package/lib/ui-scene.js +59 -44
- package/lib/utilities/constant.d.ts +8 -1
- package/lib/utilities/constant.js +7 -0
- package/lib/utilities/logger.d.ts +4 -0
- package/lib/utilities/logger.js +8 -1
- package/lib/utilities/renderer-event.d.ts +3 -0
- package/lib/utilities/renderer-event.js +14 -1
- package/lib/utilities/screen.js +2 -1
- package/lib/utilities/tools.d.ts +18 -1
- package/lib/utilities/tools.js +48 -2
- package/package.json +6 -6
- package/public/assets/cursors/fcr_whiteboard_input.ico +0 -0
- package/public/assets/cursors/fcr_whiteboard_pen.ico +0 -0
- package/public/assets/cursors/fcr_whiteboard_shape_-straightline.ico +0 -0
- package/public/assets/cursors/fcr_whiteboard_shape_arrow.ico +0 -0
- package/public/assets/cursors/fcr_whiteboard_shape_circle.ico +0 -0
- package/public/assets/cursors/fcr_whiteboard_shape_rectangle.ico +0 -0
- package/public/assets/cursors/fcr_whiteboard_shape_triangle.ico +0 -0
- package/public/assets/fcr_chat_reddot.svg +3 -3
- package/public/assets/fcr_grid_big.svg +1 -1
- package/public/assets/fcr_leave2.svg +14 -14
- package/public/assets/fcr_listontop_big.svg +1 -1
- package/public/assets/step-gradient.svg +1 -1
- package/public/fragment.html +10 -0
- package/public/index.html +3 -1
- package/lib/shared-data-source/screen-share-data-source.d.ts +0 -37
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.IPCClient = void 0;
|
|
9
|
+
require("core-js/modules/es.error.to-string.js");
|
|
10
|
+
require("core-js/modules/es.array.concat.js");
|
|
11
|
+
require("core-js/modules/es.array.for-each.js");
|
|
12
|
+
require("core-js/modules/es.array.slice.js");
|
|
13
|
+
require("core-js/modules/es.date.to-json.js");
|
|
14
|
+
require("core-js/modules/es.date.to-string.js");
|
|
15
|
+
require("core-js/modules/es.json.stringify.js");
|
|
16
|
+
require("core-js/modules/es.object.keys.js");
|
|
17
|
+
require("core-js/modules/es.object.to-string.js");
|
|
18
|
+
require("core-js/modules/es.regexp.to-string.js");
|
|
19
|
+
require("core-js/modules/esnext.async-iterator.for-each.js");
|
|
20
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
21
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
22
|
+
require("core-js/modules/esnext.json.parse.js");
|
|
23
|
+
require("core-js/modules/web.dom-collections.for-each.js");
|
|
24
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
25
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
26
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
27
|
+
var _net = require("net");
|
|
28
|
+
var _events = _interopRequireDefault(require("events"));
|
|
29
|
+
var _logger = require("../logger");
|
|
30
|
+
var IPCClient = exports.IPCClient = /*#__PURE__*/function () {
|
|
31
|
+
function IPCClient(_ref) {
|
|
32
|
+
var _this = this;
|
|
33
|
+
var port = _ref.port;
|
|
34
|
+
(0, _classCallCheck2["default"])(this, IPCClient);
|
|
35
|
+
(0, _defineProperty2["default"])(this, "_logger", (0, _logger.getLogger)());
|
|
36
|
+
(0, _defineProperty2["default"])(this, "_observable", new _events["default"]());
|
|
37
|
+
(0, _defineProperty2["default"])(this, "_buffer", Buffer.alloc(0));
|
|
38
|
+
(0, _defineProperty2["default"])(this, "_handleMessage", function (message) {
|
|
39
|
+
_this._logger.log('Received message:', message);
|
|
40
|
+
try {
|
|
41
|
+
var parsedMessage = JSON.parse(message);
|
|
42
|
+
_this._observable.emit('onMessageReceived', parsedMessage);
|
|
43
|
+
} catch (error) {
|
|
44
|
+
_this._logger.error('Error parsing message:', error);
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
(0, _defineProperty2["default"])(this, "_handleError", function (error) {
|
|
48
|
+
_this._logger.error('Error:', error);
|
|
49
|
+
_this._observable.emit('onError', error);
|
|
50
|
+
});
|
|
51
|
+
this._logger.info('initialize tcp connection');
|
|
52
|
+
this._socket = (0, _net.createConnection)({
|
|
53
|
+
port: port,
|
|
54
|
+
timeout: 5000
|
|
55
|
+
}, function () {
|
|
56
|
+
_this._logger.info('connected to server!');
|
|
57
|
+
});
|
|
58
|
+
this._socket.on('end', function () {
|
|
59
|
+
_this._logger.info('disconnected from server');
|
|
60
|
+
});
|
|
61
|
+
this._socket.on('close', function () {
|
|
62
|
+
_this._logger.info('disconnected from server');
|
|
63
|
+
_this._observable.emit('onDisconnected');
|
|
64
|
+
});
|
|
65
|
+
this._socket.on('data', function (data) {
|
|
66
|
+
// 将新数据追加到现有缓冲区
|
|
67
|
+
_this._buffer = Buffer.concat([_this._buffer, data]);
|
|
68
|
+
// 处理可能的多条消息
|
|
69
|
+
_this._processBuffer();
|
|
70
|
+
});
|
|
71
|
+
this._socket.on('error', function (error) {
|
|
72
|
+
_this._logger.error('Socket error:', error);
|
|
73
|
+
_this._handleError(error);
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
return (0, _createClass2["default"])(IPCClient, [{
|
|
77
|
+
key: "_processBuffer",
|
|
78
|
+
value: function _processBuffer() {
|
|
79
|
+
// 循环处理缓冲区中的所有完整消息
|
|
80
|
+
while (this._buffer.length >= 4) {
|
|
81
|
+
// 读取消息长度
|
|
82
|
+
var messageLength = this._buffer.readUInt32BE(0);
|
|
83
|
+
|
|
84
|
+
// 检查是否有完整的消息
|
|
85
|
+
if (this._buffer.length >= messageLength + 4) {
|
|
86
|
+
// 提取消息内容(跳过4字节长度前缀)
|
|
87
|
+
var messageContent = this._buffer.slice(4, messageLength + 4);
|
|
88
|
+
// 更新缓冲区,移除已处理的消息
|
|
89
|
+
this._buffer = this._buffer.slice(messageLength + 4);
|
|
90
|
+
|
|
91
|
+
// 处理消息
|
|
92
|
+
var message = messageContent.toString();
|
|
93
|
+
this._handleMessage(message);
|
|
94
|
+
} else {
|
|
95
|
+
// 消息不完整,等待更多数据
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}, {
|
|
101
|
+
key: "sendMessage",
|
|
102
|
+
value: function sendMessage(message) {
|
|
103
|
+
var _this2 = this;
|
|
104
|
+
var messageString = JSON.stringify(message);
|
|
105
|
+
// 1. 创建包含消息长度的buffer(4字节)
|
|
106
|
+
var lengthBuffer = Buffer.alloc(4);
|
|
107
|
+
// 2. 以大端序(网络字节序)写入消息长度
|
|
108
|
+
var messageBuffer = Buffer.from(messageString);
|
|
109
|
+
lengthBuffer.writeUInt32BE(messageBuffer.length, 0);
|
|
110
|
+
// 3. 先发送长度,再发送消息内容
|
|
111
|
+
|
|
112
|
+
this._socket.write(Buffer.concat([lengthBuffer, Buffer.from(messageString)]), function (error) {
|
|
113
|
+
if (error) {
|
|
114
|
+
_this2._logger.error('Error sending message:', error);
|
|
115
|
+
} else {
|
|
116
|
+
_this2._logger.log('Message sent:', messageString);
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
}, {
|
|
121
|
+
key: "addObserver",
|
|
122
|
+
value: function addObserver(observer) {
|
|
123
|
+
var _this3 = this;
|
|
124
|
+
Object.keys(observer).forEach(function (eventKey) {
|
|
125
|
+
if (typeof observer[eventKey] === 'function') {
|
|
126
|
+
_this3._observable.on(eventKey, observer[eventKey]);
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}, {
|
|
131
|
+
key: "removeObserver",
|
|
132
|
+
value: function removeObserver(observer) {
|
|
133
|
+
var _this4 = this;
|
|
134
|
+
Object.keys(observer).forEach(function (eventKey) {
|
|
135
|
+
if (typeof observer[eventKey] === 'function') {
|
|
136
|
+
_this4._observable.off(eventKey, observer[eventKey]);
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
}]);
|
|
141
|
+
}();
|
|
@@ -0,0 +1,19 @@
|
|
|
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.IPCMessageCMD = void 0;
|
|
8
|
+
var IPCMessageCMD = exports.IPCMessageCMD = /*#__PURE__*/function (IPCMessageCMD) {
|
|
9
|
+
IPCMessageCMD["ElectronMainWindowLoaded"] = "electron-main-window-loaded";
|
|
10
|
+
IPCMessageCMD["InitCreator"] = "init-creator";
|
|
11
|
+
IPCMessageCMD["LaunchMeeting"] = "launch-meeting";
|
|
12
|
+
IPCMessageCMD["OpenSetting"] = "open-setting";
|
|
13
|
+
IPCMessageCMD["CloseSetting"] = "close-setting";
|
|
14
|
+
IPCMessageCMD["LaunchSuccess"] = "launch-meeting-success";
|
|
15
|
+
IPCMessageCMD["LaunchFailure"] = "launch-meeting-failure";
|
|
16
|
+
IPCMessageCMD["SetParameters"] = "set-parameters";
|
|
17
|
+
IPCMessageCMD["ExitedMeeting"] = "exited-meeting";
|
|
18
|
+
return IPCMessageCMD;
|
|
19
|
+
}({});
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.getLogger = void 0;
|
|
9
|
+
require("core-js/modules/es.array.concat.js");
|
|
10
|
+
require("core-js/modules/es.array.push.js");
|
|
11
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
12
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
+
var _electron = require("electron");
|
|
14
|
+
var _winston = _interopRequireDefault(require("winston"));
|
|
15
|
+
var _path = _interopRequireDefault(require("path"));
|
|
16
|
+
var _winston$format = _winston["default"].format,
|
|
17
|
+
combine = _winston$format.combine,
|
|
18
|
+
timestamp = _winston$format.timestamp,
|
|
19
|
+
printf = _winston$format.printf;
|
|
20
|
+
var LoggerManager = /*#__PURE__*/function () {
|
|
21
|
+
function LoggerManager() {
|
|
22
|
+
(0, _classCallCheck2["default"])(this, LoggerManager);
|
|
23
|
+
this.initialize({
|
|
24
|
+
logFilePath: _path["default"].resolve(_electron.app.getPath('logs'), 'logs', 'apaas-main.log'),
|
|
25
|
+
console: true
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
return (0, _createClass2["default"])(LoggerManager, [{
|
|
29
|
+
key: "initialize",
|
|
30
|
+
value: function initialize(options) {
|
|
31
|
+
var logFilePath = options.logFilePath,
|
|
32
|
+
enableConsole = options.console;
|
|
33
|
+
var transports = [];
|
|
34
|
+
if (logFilePath) {
|
|
35
|
+
transports.push(new _winston["default"].transports.File({
|
|
36
|
+
filename: logFilePath,
|
|
37
|
+
maxFiles: 5,
|
|
38
|
+
maxsize: 1048576 //1MB
|
|
39
|
+
}));
|
|
40
|
+
}
|
|
41
|
+
if (enableConsole) {
|
|
42
|
+
transports.push(new _winston["default"].transports.Console());
|
|
43
|
+
}
|
|
44
|
+
this._logger = _winston["default"].createLogger({
|
|
45
|
+
level: 'info',
|
|
46
|
+
format: combine(timestamp(), printf(function (_ref) {
|
|
47
|
+
var level = _ref.level,
|
|
48
|
+
message = _ref.message,
|
|
49
|
+
timestamp = _ref.timestamp;
|
|
50
|
+
return "".concat(timestamp, " [").concat(level, "]: ").concat(message);
|
|
51
|
+
})),
|
|
52
|
+
transports: transports
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
}, {
|
|
56
|
+
key: "getLogger",
|
|
57
|
+
value: function getLogger() {
|
|
58
|
+
return this._logger;
|
|
59
|
+
}
|
|
60
|
+
}]);
|
|
61
|
+
}();
|
|
62
|
+
var loggerManager = new LoggerManager();
|
|
63
|
+
var getLogger = exports.getLogger = function getLogger() {
|
|
64
|
+
return loggerManager.getLogger();
|
|
65
|
+
};
|
|
@@ -0,0 +1,94 @@
|
|
|
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.hookWindow = void 0;
|
|
8
|
+
require("core-js/modules/es.array.concat.js");
|
|
9
|
+
require("core-js/modules/es.array.includes.js");
|
|
10
|
+
require("core-js/modules/es.string.starts-with.js");
|
|
11
|
+
require("core-js/modules/web.timers.js");
|
|
12
|
+
var _window = require("./window");
|
|
13
|
+
var _screenshot = require("./plugins/screenshot");
|
|
14
|
+
var _logger = require("./logger");
|
|
15
|
+
var _meetingState = require("./plugins/meeting-state");
|
|
16
|
+
var logger = (0, _logger.getLogger)();
|
|
17
|
+
var hookWindow = exports.hookWindow = function hookWindow(mainWindow) {
|
|
18
|
+
mainWindow.webContents.addListener('did-create-window', function (window, details) {
|
|
19
|
+
logger.info("browser window is opened, frameName: ".concat(details.frameName));
|
|
20
|
+
var builtinFrameNames = ['device-settings', 'chat', 'live-streaming', 'participant', 'share-screen-selection', 'invite', 'video-window', 'confirm', 'connection-gateway', 'whiteboard', 'progress-dialog', 'operation-waiting-room', 'operation-waiting-room', 'interpreter-setting', 'waiting-room-single-remove', 'waiting-room-all-remove', 'waiting-room-all-admit', 'control-bar', 'show-toast', 'system-preference', 'rename', 'annotation-tool', 'leave-meeting'];
|
|
21
|
+
if (!builtinFrameNames.includes(details.frameName) && !details.frameName.startsWith('widget')) {
|
|
22
|
+
logger.info("frameName [".concat(details.frameName, "] is not in builtinFrameNames, ignore it"));
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
(0, _window.putRendererWindow)(details.frameName, window);
|
|
26
|
+
window.webContents.addListener('destroyed', function () {
|
|
27
|
+
logger.info("browser window is destroyed, frameName: ".concat(details.frameName));
|
|
28
|
+
(0, _window.deleteRendererWindow)(details.frameName);
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
// prevent the close event to keep the window alive and renderer process will take charge of when to close the window
|
|
32
|
+
// renderer process will receive the will-close event, do some clean up and then call window.close() to close the window
|
|
33
|
+
window.addListener('close', function (event) {
|
|
34
|
+
event.preventDefault();
|
|
35
|
+
logger.info("Window [".concat(window.title, ":").concat(window.id, "] is closed by shortcut CMD + W, send 'will-close' event to that window"));
|
|
36
|
+
window.emit('will-close');
|
|
37
|
+
});
|
|
38
|
+
window.addListener('will-resize', function (event, newBounds, details) {
|
|
39
|
+
logger.info("Window [".concat(window.title, ":").concat(window.id, "] is resized, send 'custom-resize' event to that window"));
|
|
40
|
+
window.emit('custom-resize', event, newBounds, details);
|
|
41
|
+
});
|
|
42
|
+
window.addListener('move', function () {
|
|
43
|
+
logger.info("Window [".concat(window.title, ":").concat(window.id, "] is move, send 'custom-move' event to that window"));
|
|
44
|
+
window.emit('custom-move');
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
// screen?.addListener('display-metrics-changed', (event, display, changedMetrics) => {
|
|
48
|
+
// logger.info(
|
|
49
|
+
// `Screen metrics [${window.title}:${window.id}] is changed, send 'display-metrics-changed' event to that window`,
|
|
50
|
+
// );
|
|
51
|
+
// window.emit('display-metrics-changed', event, display, changedMetrics);
|
|
52
|
+
// });
|
|
53
|
+
|
|
54
|
+
attachEventOnMethod(window, 'hide', 'CALL_HIDE');
|
|
55
|
+
attachEventOnMethod(window, 'show', 'CALL_SHOW');
|
|
56
|
+
});
|
|
57
|
+
mainWindow.webContents.addListener('render-process-gone', function (event, details) {
|
|
58
|
+
logger.info("main window render-process-gone, details: ".concat(details));
|
|
59
|
+
(0, _window.closeAllWindows)();
|
|
60
|
+
(0, _window.clearAllRendererWindows)();
|
|
61
|
+
setTimeout(function () {
|
|
62
|
+
logger.info('start reloading main window...');
|
|
63
|
+
mainWindow.reload();
|
|
64
|
+
}, 1000);
|
|
65
|
+
});
|
|
66
|
+
mainWindow.on('enter-full-screen', function () {
|
|
67
|
+
mainWindow.webContents.send('custom-event', {
|
|
68
|
+
action: 'ENTER_FULL_SCREEN'
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
mainWindow.on('leave-full-screen', function () {
|
|
72
|
+
mainWindow.webContents.send('custom-event', {
|
|
73
|
+
action: 'LEAVE_FULL_SCREEN'
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
(0, _screenshot.listenScreenshot)(mainWindow);
|
|
77
|
+
(0, _meetingState.listenMeetingState)(mainWindow);
|
|
78
|
+
};
|
|
79
|
+
var attachEventOnMethod = function attachEventOnMethod(browserWindow, method, action) {
|
|
80
|
+
var func = browserWindow[method];
|
|
81
|
+
if (typeof func === 'function') {
|
|
82
|
+
// @ts-ignore
|
|
83
|
+
browserWindow[method] = function () {
|
|
84
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
85
|
+
args[_key] = arguments[_key];
|
|
86
|
+
}
|
|
87
|
+
// @ts-ignore
|
|
88
|
+
func.apply(this, args);
|
|
89
|
+
this.webContents.send('custom-event', {
|
|
90
|
+
action: action
|
|
91
|
+
});
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
};
|
|
@@ -0,0 +1,33 @@
|
|
|
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.listenDevToolShortcut = void 0;
|
|
8
|
+
var _electron = require("electron");
|
|
9
|
+
var _logger = require("../logger");
|
|
10
|
+
var logger = (0, _logger.getLogger)();
|
|
11
|
+
var listenDevToolShortcut = exports.listenDevToolShortcut = function listenDevToolShortcut(window) {
|
|
12
|
+
_electron.globalShortcut.register('CommandOrControl+Shift+X', function () {
|
|
13
|
+
if (window.isFocused()) {
|
|
14
|
+
logger.info('CommandOrControl+Shift+X is pressed');
|
|
15
|
+
window.webContents.openDevTools({
|
|
16
|
+
mode: 'detach'
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
_electron.globalShortcut.register('CommandOrControl+Shift+R', function () {
|
|
21
|
+
if (window.isFocused()) {
|
|
22
|
+
logger.info('CommandOrControl+Shift+R is pressed');
|
|
23
|
+
window.webContents.reloadIgnoringCache();
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
logger.info("CommandOrControl+Shift+X is ".concat(_electron.globalShortcut.isRegistered('CommandOrControl+Shift+X') ? 'registered' : 'not registered', " "));
|
|
27
|
+
logger.info("CommandOrControl+Shift+R is ".concat(_electron.globalShortcut.isRegistered('CommandOrControl+Shift+R') ? 'registered' : 'not registered', " "));
|
|
28
|
+
var unregister = function unregister() {
|
|
29
|
+
_electron.globalShortcut.unregister('CommandOrControl+Shift+X');
|
|
30
|
+
_electron.globalShortcut.unregister('CommandOrControl+Shift+R');
|
|
31
|
+
};
|
|
32
|
+
window.addListener('closed', unregister);
|
|
33
|
+
};
|
|
@@ -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 = exports.isInMeeting = void 0;
|
|
8
|
+
require("core-js/modules/es.array.concat.js");
|
|
9
|
+
var _electron = require("electron");
|
|
10
|
+
var _logger = require("../logger");
|
|
11
|
+
var logger = (0, _logger.getLogger)();
|
|
12
|
+
var isInMeeting = exports.isInMeeting = 0;
|
|
13
|
+
var listenMeetingState = exports.listenMeetingState = function listenMeetingState(window) {
|
|
14
|
+
var saveBlockerId = 0;
|
|
15
|
+
_electron.ipcMain.addListener('set-in-meeting-state', function (_, state) {
|
|
16
|
+
exports.isInMeeting = 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
|
+
};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.listenScreenshot = void 0;
|
|
9
|
+
require("core-js/modules/web.timers.js");
|
|
10
|
+
var _electron = require("electron");
|
|
11
|
+
var _electronScreenshots = _interopRequireDefault(require("electron-screenshots"));
|
|
12
|
+
var listenScreenshot = exports.listenScreenshot = function listenScreenshot(window) {
|
|
13
|
+
var shortcutCapture = new _electronScreenshots["default"]();
|
|
14
|
+
var isCapturing = false,
|
|
15
|
+
module = '',
|
|
16
|
+
alwaysHide = false;
|
|
17
|
+
var timer = null;
|
|
18
|
+
var stopScreen = function stopScreen() {
|
|
19
|
+
!alwaysHide && window.setOpacity(1);
|
|
20
|
+
isCapturing = false;
|
|
21
|
+
timer && clearTimeout(timer);
|
|
22
|
+
};
|
|
23
|
+
shortcutCapture.on('ok', function () {
|
|
24
|
+
stopScreen();
|
|
25
|
+
});
|
|
26
|
+
shortcutCapture.on('finish', function () {
|
|
27
|
+
stopScreen();
|
|
28
|
+
});
|
|
29
|
+
shortcutCapture.on('cancel', function () {
|
|
30
|
+
stopScreen();
|
|
31
|
+
});
|
|
32
|
+
shortcutCapture.on('save', function () {
|
|
33
|
+
stopScreen();
|
|
34
|
+
});
|
|
35
|
+
var showScreenShot = function showScreenShot() {
|
|
36
|
+
if (shortcutCapture) {
|
|
37
|
+
shortcutCapture.startCapture();
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
_electron.ipcMain.addListener('short-cut-capture', function (_, event, payload) {
|
|
41
|
+
if (!isCapturing) {
|
|
42
|
+
isCapturing = true;
|
|
43
|
+
var hideWindow = false;
|
|
44
|
+
hideWindow = payload.hideWindow;
|
|
45
|
+
module = payload.module;
|
|
46
|
+
alwaysHide = !!(payload !== null && payload !== void 0 && payload.alwaysHide);
|
|
47
|
+
hideWindow && window.setOpacity(0);
|
|
48
|
+
if (!shortcutCapture) {
|
|
49
|
+
shortcutCapture = new _electronScreenshots["default"]();
|
|
50
|
+
}
|
|
51
|
+
timer = setTimeout(showScreenShot, 500);
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
};
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.keys.js");
|
|
4
|
+
require("core-js/modules/esnext.json.parse.js");
|
|
5
|
+
var _renderer = require("electron/renderer");
|
|
6
|
+
var _injections = require("./injections");
|
|
7
|
+
var _type = require("./ipc/type");
|
|
8
|
+
window.runtime = {
|
|
9
|
+
open: _injections.open,
|
|
10
|
+
close: _injections.close,
|
|
11
|
+
openRendererWindow: _injections.openRendererWindow,
|
|
12
|
+
closeRendererWindow: _injections.closeRendererWindow,
|
|
13
|
+
sendEvent: _injections.sendEvent,
|
|
14
|
+
addEventListener: _injections.addEventListener,
|
|
15
|
+
removeEventListener: _injections.removeEventListener,
|
|
16
|
+
getBrowserWindowById: _injections.getBrowserWindowById,
|
|
17
|
+
captureScreen: _injections.captureScreen,
|
|
18
|
+
browserWindow: _injections.browserWindow,
|
|
19
|
+
setFragmentOptions: _injections.setFragmentOptions,
|
|
20
|
+
openLinkInDefaultBrowser: _injections.openLinkInDefaultBrowser,
|
|
21
|
+
openDirectory: _injections.openDirectory,
|
|
22
|
+
showItemInFolder: _injections.showItemInFolder,
|
|
23
|
+
screen: _injections.screen,
|
|
24
|
+
launch: _injections.launch,
|
|
25
|
+
quitApp: _injections.quitApp,
|
|
26
|
+
getLaunchOptions: _injections.getLaunchOptions,
|
|
27
|
+
getSystemMemorySize: _injections.getSystemMemorySize,
|
|
28
|
+
getSystemCpuInfo: _injections.getSystemCpuInfo,
|
|
29
|
+
getNetworkType: _injections.getNetworkType,
|
|
30
|
+
setFragmentBaseUrl: _injections.setFragmentBaseUrl,
|
|
31
|
+
getResourceByFileType: _injections.getResourceByFileType,
|
|
32
|
+
fileToBlob: _injections.fileToBlob,
|
|
33
|
+
registerListenerReady: _injections.registerListenerReady,
|
|
34
|
+
releaseSubAllWindowRefs: _injections.releaseSubAllWindowRefs,
|
|
35
|
+
getMediaSourceIdList: _injections.getMediaSourceIdList,
|
|
36
|
+
setInMeetingState: _injections.setInMeetingState,
|
|
37
|
+
restartApp: _injections.restartApp,
|
|
38
|
+
getBundleType: _injections.getBundleType,
|
|
39
|
+
checkMediaPermission: _injections.checkMediaPermission,
|
|
40
|
+
openSystemPreferences: _injections.openSystemPreferences,
|
|
41
|
+
getUserSettingData: _injections.getUserSettingData,
|
|
42
|
+
setUserSettingData: _injections.setUserSettingData,
|
|
43
|
+
getActiveWindow: _injections.getActiveWindow,
|
|
44
|
+
getWindows: _injections.getWindows,
|
|
45
|
+
initSDK: _injections.initSDK,
|
|
46
|
+
getIsSDKReady: _injections.getIsSDKReady,
|
|
47
|
+
openSetting: _injections.openSetting,
|
|
48
|
+
loadBuiltinResources: _injections.loadBuiltinResources,
|
|
49
|
+
launchSuccess: _injections.launchSuccess,
|
|
50
|
+
launchFailure: _injections.launchFailure,
|
|
51
|
+
setParameters: _injections.setParameters,
|
|
52
|
+
exitedMeeting: _injections.exitedMeeting,
|
|
53
|
+
getIsMeetingLaunched: _injections.getIsMeetingLaunched
|
|
54
|
+
};
|
|
55
|
+
_renderer.ipcRenderer.on(_type.IPCMessageCMD.InitCreator, function (_event, value) {
|
|
56
|
+
if (window.runtime.onCreatorInit) {
|
|
57
|
+
var data = value;
|
|
58
|
+
try {
|
|
59
|
+
if (typeof value == 'string') {
|
|
60
|
+
data = JSON.parse(value);
|
|
61
|
+
}
|
|
62
|
+
} catch (e) {
|
|
63
|
+
console.error('Failed to parse init options:', e);
|
|
64
|
+
}
|
|
65
|
+
window.runtime.onCreatorInit(data);
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
_renderer.ipcRenderer.on(_type.IPCMessageCMD.OpenSetting, function (_event, value) {
|
|
69
|
+
if (window.runtime.onSettingOpen) {
|
|
70
|
+
window.runtime.onSettingOpen();
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
_renderer.ipcRenderer.on(_type.IPCMessageCMD.CloseSetting, function (_event, value) {
|
|
74
|
+
if (window.runtime.onSettingClose) {
|
|
75
|
+
window.runtime.onSettingClose();
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
_renderer.ipcRenderer.on(_type.IPCMessageCMD.SetParameters, function (_event, value) {
|
|
79
|
+
if (window.runtime.onSetParameters) {
|
|
80
|
+
window.runtime.onSetParameters(value);
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
_renderer.ipcRenderer.on(_type.IPCMessageCMD.LaunchMeeting, function (_event, value) {
|
|
84
|
+
if (window.runtime.onLaunchMeeting) {
|
|
85
|
+
var data = value;
|
|
86
|
+
try {
|
|
87
|
+
data = JSON.parse(value);
|
|
88
|
+
} catch (e) {
|
|
89
|
+
console.error('Failed to parse launch options:', e);
|
|
90
|
+
}
|
|
91
|
+
window.runtime.onLaunchMeeting(data);
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
_renderer.ipcRenderer.on('sdk-ready', function () {
|
|
95
|
+
if (window.runtime.onSDKReady) {
|
|
96
|
+
window.runtime.onSDKReady();
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
_renderer.ipcRenderer.on('close-window-before-launch-success', function () {
|
|
100
|
+
if (window.runtime.onCloseWindowBeforeLaunchSuccess) {
|
|
101
|
+
window.runtime.onCloseWindowBeforeLaunchSuccess();
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
_renderer.ipcRenderer.on('exited-meeting', function (_event, roomId, reason) {
|
|
105
|
+
if (window.runtime.exitedMeeting) {
|
|
106
|
+
window.runtime.exitedMeeting(roomId, reason);
|
|
107
|
+
}
|
|
108
|
+
});
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.getCpuUsage = getCpuUsage;
|
|
9
|
+
exports.getProcessIds = getProcessIds;
|
|
10
|
+
require("core-js/modules/es.array.concat.js");
|
|
11
|
+
require("core-js/modules/es.array.filter.js");
|
|
12
|
+
require("core-js/modules/es.array.for-each.js");
|
|
13
|
+
require("core-js/modules/es.array.includes.js");
|
|
14
|
+
require("core-js/modules/es.array.map.js");
|
|
15
|
+
require("core-js/modules/es.array.reduce.js");
|
|
16
|
+
require("core-js/modules/es.function.name.js");
|
|
17
|
+
require("core-js/modules/es.number.to-fixed.js");
|
|
18
|
+
require("core-js/modules/es.object.to-string.js");
|
|
19
|
+
require("core-js/modules/es.promise.js");
|
|
20
|
+
require("core-js/modules/es.string.includes.js");
|
|
21
|
+
require("core-js/modules/esnext.async-iterator.filter.js");
|
|
22
|
+
require("core-js/modules/esnext.async-iterator.for-each.js");
|
|
23
|
+
require("core-js/modules/esnext.async-iterator.map.js");
|
|
24
|
+
require("core-js/modules/esnext.async-iterator.reduce.js");
|
|
25
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
26
|
+
require("core-js/modules/esnext.iterator.filter.js");
|
|
27
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
28
|
+
require("core-js/modules/esnext.iterator.map.js");
|
|
29
|
+
require("core-js/modules/esnext.iterator.reduce.js");
|
|
30
|
+
require("core-js/modules/web.dom-collections.for-each.js");
|
|
31
|
+
var _systeminformation = _interopRequireDefault(require("systeminformation"));
|
|
32
|
+
function getProcessIds(processName) {
|
|
33
|
+
return new Promise(function (resolve, reject) {
|
|
34
|
+
_systeminformation["default"].processes().then(function (processes) {
|
|
35
|
+
var appProcess = processes.list.filter(function (process) {
|
|
36
|
+
return process.name.includes(processName);
|
|
37
|
+
});
|
|
38
|
+
var processIds = appProcess.map(function (item) {
|
|
39
|
+
return String(item.pid);
|
|
40
|
+
});
|
|
41
|
+
console.log("Process IDs for ".concat(processName, ":"), processIds);
|
|
42
|
+
resolve(processIds);
|
|
43
|
+
})["catch"](function (err) {
|
|
44
|
+
return reject(err);
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
function getCpuUsage() {
|
|
49
|
+
return new Promise(function (resolve, reject) {
|
|
50
|
+
_systeminformation["default"].currentLoad().then(function (data) {
|
|
51
|
+
var total = data.cpus.reduce(function (prev, curr) {
|
|
52
|
+
return prev + curr.load;
|
|
53
|
+
}, 0);
|
|
54
|
+
console.log("Total CPU Usage: ".concat(data.currentLoad.toFixed(2), "%, total: ").concat(total, ", average: ").concat(total / data.cpus.length));
|
|
55
|
+
data.cpus.forEach(function (cpu, index) {
|
|
56
|
+
console.log("Core ".concat(index, " - CPU Usage: ").concat(cpu.load.toFixed(2), "%"));
|
|
57
|
+
});
|
|
58
|
+
resolve({
|
|
59
|
+
coreCount: data.cpus.length,
|
|
60
|
+
totalUsage: total
|
|
61
|
+
});
|
|
62
|
+
})["catch"](function (err) {
|
|
63
|
+
return reject(err);
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
}
|