fcr-ui-scene 3.3.0 → 3.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/electron/app.js +148 -0
- package/dist/electron/bootstrap-dev.js +51 -0
- package/dist/electron/bootstrap-sdk.js +56 -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 +702 -0
- package/dist/electron/logger.js +66 -0
- package/dist/electron/main.js +67 -0
- package/dist/electron/plugins/meeting-state.js +39 -0
- package/dist/electron/plugins/screenshot.js +49 -0
- package/dist/electron/preload.js +36 -0
- package/dist/electron/tools.js +66 -0
- package/dist/electron/window.js +124 -0
- package/lib/common/room-store.d.ts +55 -0
- package/lib/common/room-store.js +395 -0
- package/lib/creator.js +2 -0
- package/lib/electron/app.js +8 -0
- package/lib/electron/bootstrap-sdk.js +1 -0
- package/lib/electron/injections.d.ts +1 -0
- package/lib/electron/injections.js +4 -1
- package/lib/electron/preload.js +2 -1
- package/lib/modules/Interpreter/add-button/index.css +4 -0
- package/lib/modules/Interpreter/add-button/index.d.ts +11 -0
- package/lib/modules/Interpreter/add-button/index.js +41 -0
- package/lib/modules/Interpreter/config.d.ts +16 -0
- package/lib/modules/Interpreter/config.js +17 -0
- package/lib/modules/Interpreter/constant.d.ts +44 -0
- package/lib/modules/Interpreter/constant.js +60 -0
- package/lib/modules/Interpreter/context.d.ts +2 -0
- package/lib/modules/Interpreter/context.js +9 -0
- package/lib/modules/Interpreter/dialog-content/index.css +33 -0
- package/lib/modules/Interpreter/dialog-content/index.d.ts +8 -0
- package/lib/modules/Interpreter/dialog-content/index.js +34 -0
- package/lib/modules/Interpreter/footer/components/interpreter-btn/index.d.ts +5 -0
- package/lib/modules/Interpreter/footer/components/interpreter-btn/index.js +56 -0
- package/lib/modules/Interpreter/footer/components/set-btn/index.d.ts +5 -0
- package/lib/modules/Interpreter/footer/components/set-btn/index.js +46 -0
- package/lib/modules/Interpreter/footer/components/tooltip-wrapper/index.d.ts +6 -0
- package/lib/modules/Interpreter/footer/components/tooltip-wrapper/index.js +28 -0
- package/lib/modules/Interpreter/footer/index.css +10 -0
- package/lib/modules/Interpreter/footer/index.d.ts +3 -0
- package/lib/modules/Interpreter/footer/index.js +35 -0
- package/lib/modules/Interpreter/index.css +8 -0
- package/lib/modules/Interpreter/index.d.ts +21 -0
- package/lib/modules/Interpreter/index.js +110 -0
- package/lib/modules/Interpreter/interpreter-list/index.css +21 -0
- package/lib/modules/Interpreter/interpreter-list/index.d.ts +3 -0
- package/lib/modules/Interpreter/interpreter-list/index.js +65 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.css +31 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.d.ts +11 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.js +141 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ar.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_cn.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_de.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_en.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_es.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_fr.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_hi.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_id.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_it.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_jp.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ko.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ms.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_pt.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_ru.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_th.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_tr.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/images/fcr_vi.png +0 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/index.d.ts +11 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/index.js +119 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.css +41 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.d.ts +12 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +118 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.css +34 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.d.ts +8 -0
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.js +65 -0
- package/lib/modules/Interpreter/loading-wrapper/index.css +53 -0
- package/lib/modules/Interpreter/loading-wrapper/index.d.ts +6 -0
- package/lib/modules/Interpreter/loading-wrapper/index.js +28 -0
- package/lib/modules/Interpreter/store.d.ts +82 -0
- package/lib/modules/Interpreter/store.js +1382 -0
- package/lib/modules/Interpreter/view.d.ts +3 -0
- package/lib/modules/Interpreter/view.js +32 -0
- package/lib/modules/action-bar/Interpreter/index.d.ts +6 -0
- package/lib/modules/action-bar/Interpreter/index.js +44 -0
- package/lib/modules/action-bar/apps/appitems.d.ts +2 -0
- package/lib/modules/action-bar/apps/appitems.js +40 -0
- package/lib/modules/action-bar/apps/index.css +6 -0
- package/lib/modules/action-bar/apps/index.d.ts +4 -0
- package/lib/modules/action-bar/apps/index.js +58 -0
- package/lib/modules/action-bar/switch-input-language-room/fcr_translateswitch.png +0 -0
- package/lib/modules/action-bar/switch-input-language-room/index.css +86 -0
- package/lib/modules/action-bar/switch-input-language-room/index.d.ts +17 -0
- package/lib/modules/action-bar/switch-input-language-room/index.js +145 -0
- package/lib/modules/action-bar/switch-output-language-room/drop-menu.d.ts +1 -0
- package/lib/modules/action-bar/switch-output-language-room/drop-menu.js +197 -0
- package/lib/modules/action-bar/switch-output-language-room/guide-tooltip/index.css +18 -0
- package/lib/modules/action-bar/switch-output-language-room/guide-tooltip/index.d.ts +8 -0
- package/lib/modules/action-bar/switch-output-language-room/guide-tooltip/index.js +59 -0
- package/lib/modules/action-bar/switch-output-language-room/index.d.ts +12 -0
- package/lib/modules/action-bar/switch-output-language-room/index.js +238 -0
- package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/interpreter/index.css +54 -0
- package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/interpreter/index.d.ts +8 -0
- package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/interpreter/index.js +94 -0
- package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/virtual-image/index.css +8 -0
- package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/virtual-image/index.d.ts +4 -0
- package/lib/modules/action-bar/switch-output-language-room/notification-bar/components/virtual-image/index.js +31 -0
- package/lib/modules/action-bar/switch-output-language-room/notification-bar/dome.png +0 -0
- package/lib/modules/action-bar/switch-output-language-room/notification-bar/fcr_translateswitch.png +0 -0
- package/lib/modules/action-bar/switch-output-language-room/notification-bar/index.css +71 -0
- package/lib/modules/action-bar/switch-output-language-room/notification-bar/index.d.ts +2 -0
- package/lib/modules/action-bar/switch-output-language-room/notification-bar/index.js +82 -0
- package/lib/modules/dialog/components/Interpreter/electron.d.ts +2 -0
- package/lib/modules/dialog/components/Interpreter/electron.js +72 -0
- package/lib/modules/dialog/components/Interpreter/index.css +30 -0
- package/lib/modules/dialog/components/Interpreter/index.d.ts +4 -0
- package/lib/modules/dialog/components/Interpreter/index.js +61 -0
- package/lib/modules/dialog/components/Interpreter/user-queue/index.css +36 -0
- package/lib/modules/dialog/components/Interpreter/user-queue/index.d.ts +3 -0
- package/lib/modules/dialog/components/Interpreter/user-queue/index.js +47 -0
- package/lib/modules/dialog/components/switch-language-channels/electron.d.ts +2 -0
- package/lib/modules/dialog/components/switch-language-channels/electron.js +72 -0
- package/lib/modules/dialog/components/switch-language-channels/index.css +30 -0
- package/lib/modules/dialog/components/switch-language-channels/index.d.ts +4 -0
- package/lib/modules/dialog/components/switch-language-channels/index.js +63 -0
- package/lib/modules/dialog/components/switch-language-channels/user-queue/index.css +36 -0
- package/lib/modules/dialog/components/switch-language-channels/user-queue/index.d.ts +3 -0
- package/lib/modules/dialog/components/switch-language-channels/user-queue/index.js +47 -0
- package/lib/modules/notification/context.d.ts +2 -0
- package/lib/modules/notification/context.js +9 -0
- package/lib/modules/notification/index.css +58 -0
- package/lib/modules/notification/index.d.ts +15 -0
- package/lib/modules/notification/index.js +51 -0
- package/lib/modules/notification/interpreter-status/index.css +72 -0
- package/lib/modules/notification/interpreter-status/index.d.ts +3 -0
- package/lib/modules/notification/interpreter-status/index.js +59 -0
- package/lib/modules/notification/store.d.ts +16 -0
- package/lib/modules/notification/store.js +127 -0
- package/lib/modules/notification/view.d.ts +10 -0
- package/lib/modules/notification/view.js +116 -0
- package/lib/modules/state-bar/meeting-details.js +4 -3
- package/lib/modules/state-bar/store.d.ts +1 -0
- package/lib/modules/state-bar/store.js +15 -3
- package/lib/modules/state-bar/view.js +6 -4
- package/lib/plugins/browser-runtime-plugin.js +4 -1
- package/lib/runtime.d.ts +1 -0
- package/package.json +5 -5
- package/public/index.html +7 -2
|
@@ -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.initializeLogger = 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', 'app.log'),
|
|
25
|
+
console: false
|
|
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
|
+
}));
|
|
38
|
+
}
|
|
39
|
+
if (enableConsole) {
|
|
40
|
+
transports.push(new _winston["default"].transports.Console());
|
|
41
|
+
}
|
|
42
|
+
this._logger = _winston["default"].createLogger({
|
|
43
|
+
level: 'info',
|
|
44
|
+
format: combine(timestamp(), printf(function (_ref) {
|
|
45
|
+
var level = _ref.level,
|
|
46
|
+
message = _ref.message,
|
|
47
|
+
timestamp = _ref.timestamp;
|
|
48
|
+
return "".concat(timestamp, " [").concat(level, "]: ").concat(message);
|
|
49
|
+
})),
|
|
50
|
+
transports: transports
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
}, {
|
|
54
|
+
key: "getLogger",
|
|
55
|
+
value: function getLogger() {
|
|
56
|
+
return this._logger;
|
|
57
|
+
}
|
|
58
|
+
}]);
|
|
59
|
+
}();
|
|
60
|
+
var loggerManager = new LoggerManager();
|
|
61
|
+
var initializeLogger = exports.initializeLogger = function initializeLogger(options) {
|
|
62
|
+
loggerManager.initialize(options);
|
|
63
|
+
};
|
|
64
|
+
var getLogger = exports.getLogger = function getLogger() {
|
|
65
|
+
return loggerManager.getLogger();
|
|
66
|
+
};
|
|
@@ -0,0 +1,67 @@
|
|
|
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/web.timers.js");
|
|
11
|
+
var _window = require("./window");
|
|
12
|
+
var _screenshot = require("./plugins/screenshot");
|
|
13
|
+
var _logger = require("./logger");
|
|
14
|
+
var _meetingState = require("./plugins/meeting-state");
|
|
15
|
+
var hookWindow = exports.hookWindow = function hookWindow(mainWindow) {
|
|
16
|
+
var logger = (0, _logger.getLogger)();
|
|
17
|
+
mainWindow.webContents.addListener('did-create-window', function (window, details) {
|
|
18
|
+
logger.info("browser window is opened, frameName: ".concat(details.frameName));
|
|
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'];
|
|
20
|
+
if (!builtinFrameNames.includes(details.frameName)) {
|
|
21
|
+
logger.info("frameName [".concat(details.frameName, "] is not in builtinFrameNames, ignore it"));
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
(0, _window.putRendererWindow)(details.frameName, window);
|
|
25
|
+
window.webContents.addListener('destroyed', function () {
|
|
26
|
+
logger.info("browser window is destroyed, frameName: ".concat(details.frameName));
|
|
27
|
+
(0, _window.deleteRendererWindow)(details.frameName);
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
// prevent the close event to keep the window alive and renderer process will take charge of when to close the window
|
|
31
|
+
// renderer process will receive the will-close event, do some clean up and then call window.close() to close the window
|
|
32
|
+
window.addListener('close', function (event) {
|
|
33
|
+
event.preventDefault();
|
|
34
|
+
logger.info("Window [".concat(window.title, ":").concat(window.id, "] is closed by shortcut CMD + W, send 'will-close' event to that window"));
|
|
35
|
+
window.emit('will-close');
|
|
36
|
+
});
|
|
37
|
+
attachEventOnMethod(window, 'hide', 'CALL_HIDE');
|
|
38
|
+
attachEventOnMethod(window, 'show', 'CALL_SHOW');
|
|
39
|
+
});
|
|
40
|
+
mainWindow.webContents.addListener('render-process-gone', function (event, details) {
|
|
41
|
+
logger.info("main window render-process-gone, details: ".concat(details));
|
|
42
|
+
(0, _window.closeAllWindows)();
|
|
43
|
+
(0, _window.clearAllRendererWindows)();
|
|
44
|
+
setTimeout(function () {
|
|
45
|
+
logger.info('start reloading main window...');
|
|
46
|
+
mainWindow.reload();
|
|
47
|
+
}, 1000);
|
|
48
|
+
});
|
|
49
|
+
(0, _screenshot.listenScreenshot)(mainWindow);
|
|
50
|
+
(0, _meetingState.listenMeetingState)(mainWindow);
|
|
51
|
+
};
|
|
52
|
+
var attachEventOnMethod = function attachEventOnMethod(browserWindow, method, action) {
|
|
53
|
+
var func = browserWindow[method];
|
|
54
|
+
if (typeof func === 'function') {
|
|
55
|
+
// @ts-ignore
|
|
56
|
+
browserWindow[method] = function () {
|
|
57
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
58
|
+
args[_key] = arguments[_key];
|
|
59
|
+
}
|
|
60
|
+
// @ts-ignore
|
|
61
|
+
func.apply(this, args);
|
|
62
|
+
this.webContents.send('custom-event', {
|
|
63
|
+
action: action
|
|
64
|
+
});
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
};
|
|
@@ -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
|
+
};
|
|
@@ -0,0 +1,49 @@
|
|
|
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
|
+
var _electron = require("electron");
|
|
10
|
+
var _electronScreenshots = _interopRequireDefault(require("electron-screenshots"));
|
|
11
|
+
var listenScreenshot = exports.listenScreenshot = function listenScreenshot(window) {
|
|
12
|
+
var shortcutCapture = new _electronScreenshots["default"]();
|
|
13
|
+
var isCapturing = false,
|
|
14
|
+
module = '';
|
|
15
|
+
var stopScreen = function stopScreen() {
|
|
16
|
+
window.show();
|
|
17
|
+
isCapturing = false;
|
|
18
|
+
};
|
|
19
|
+
shortcutCapture.on('ok', function () {
|
|
20
|
+
stopScreen();
|
|
21
|
+
});
|
|
22
|
+
shortcutCapture.on('finish', function () {
|
|
23
|
+
stopScreen();
|
|
24
|
+
});
|
|
25
|
+
shortcutCapture.on('cancel', function () {
|
|
26
|
+
stopScreen();
|
|
27
|
+
});
|
|
28
|
+
shortcutCapture.on('save', function () {
|
|
29
|
+
stopScreen();
|
|
30
|
+
});
|
|
31
|
+
var showScreenShot = function showScreenShot() {
|
|
32
|
+
if (shortcutCapture) {
|
|
33
|
+
shortcutCapture.startCapture();
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
_electron.ipcMain.addListener('short-cut-capture', function (_, event, payload) {
|
|
37
|
+
if (!isCapturing) {
|
|
38
|
+
isCapturing = true;
|
|
39
|
+
var hideWindow = false;
|
|
40
|
+
hideWindow = payload.hideWindow;
|
|
41
|
+
module = payload.module;
|
|
42
|
+
hideWindow && window.hide();
|
|
43
|
+
if (!shortcutCapture) {
|
|
44
|
+
shortcutCapture = new _electronScreenshots["default"]();
|
|
45
|
+
}
|
|
46
|
+
showScreenShot();
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _injections = require("./injections");
|
|
4
|
+
window.runtime = {
|
|
5
|
+
open: _injections.open,
|
|
6
|
+
close: _injections.close,
|
|
7
|
+
openRendererWindow: _injections.openRendererWindow,
|
|
8
|
+
closeRendererWindow: _injections.closeRendererWindow,
|
|
9
|
+
sendEvent: _injections.sendEvent,
|
|
10
|
+
addEventListener: _injections.addEventListener,
|
|
11
|
+
removeEventListener: _injections.removeEventListener,
|
|
12
|
+
getBrowserWindowById: _injections.getBrowserWindowById,
|
|
13
|
+
captureScreen: _injections.captureScreen,
|
|
14
|
+
browserWindow: _injections.browserWindow,
|
|
15
|
+
setFragmentOptions: _injections.setFragmentOptions,
|
|
16
|
+
openLinkInDefaultBrowser: _injections.openLinkInDefaultBrowser,
|
|
17
|
+
openDirectory: _injections.openDirectory,
|
|
18
|
+
showItemInFolder: _injections.showItemInFolder,
|
|
19
|
+
screen: _injections.screen,
|
|
20
|
+
launch: _injections.launch,
|
|
21
|
+
setAlwaysOnTop: _injections.setAlwaysOnTop,
|
|
22
|
+
quitApp: _injections.quitApp,
|
|
23
|
+
getLaunchOptions: _injections.getLaunchOptions,
|
|
24
|
+
getSystemMemorySize: _injections.getSystemMemorySize,
|
|
25
|
+
getSystemCpuInfo: _injections.getSystemCpuInfo,
|
|
26
|
+
getNetworkType: _injections.getNetworkType,
|
|
27
|
+
getAssetUrl: _injections.getAssetUrl,
|
|
28
|
+
getRendererProcessUsage: _injections.getRendererProcessUsage,
|
|
29
|
+
setFragmentBaseUrl: _injections.setFragmentBaseUrl,
|
|
30
|
+
getVirtualBgResource: _injections.getVirtualBgResource,
|
|
31
|
+
fileToBase64: _injections.fileToBase64,
|
|
32
|
+
registerListenerReady: _injections.registerListenerReady,
|
|
33
|
+
releaseSubAllWindowRefs: _injections.releaseSubAllWindowRefs,
|
|
34
|
+
getMediaSourceIdList: _injections.getMediaSourceIdList,
|
|
35
|
+
setInMeetingState: _injections.setInMeetingState
|
|
36
|
+
};
|
|
@@ -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
|
+
}
|
|
@@ -0,0 +1,124 @@
|
|
|
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.iterator.js");
|
|
7
|
+
require("core-js/modules/es.array.push.js");
|
|
8
|
+
require("core-js/modules/es.object.define-properties.js");
|
|
9
|
+
require("core-js/modules/es.object.define-property.js");
|
|
10
|
+
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
11
|
+
require("core-js/modules/es.object.get-own-property-descriptors.js");
|
|
12
|
+
require("core-js/modules/es.object.to-string.js");
|
|
13
|
+
require("core-js/modules/es.string.iterator.js");
|
|
14
|
+
require("core-js/modules/es.weak-map.js");
|
|
15
|
+
require("core-js/modules/esnext.async-iterator.filter.js");
|
|
16
|
+
require("core-js/modules/esnext.async-iterator.for-each.js");
|
|
17
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
18
|
+
require("core-js/modules/esnext.iterator.filter.js");
|
|
19
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
20
|
+
require("core-js/modules/esnext.weak-map.delete-all.js");
|
|
21
|
+
require("core-js/modules/esnext.weak-map.emplace.js");
|
|
22
|
+
require("core-js/modules/web.dom-collections.for-each.js");
|
|
23
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
24
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
25
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
26
|
+
Object.defineProperty(exports, "__esModule", {
|
|
27
|
+
value: true
|
|
28
|
+
});
|
|
29
|
+
exports.windowOptionsMap = exports.webPreferencesMap = exports.setFragmentBaseUrl = exports.putRendererWindow = exports.open = exports.getWindowKeyById = exports.getRendererWindow = exports.deleteRendererWindow = exports.closeAllWindows = exports.close = exports.clearAllRendererWindows = void 0;
|
|
30
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
31
|
+
require("core-js/modules/es.array.concat.js");
|
|
32
|
+
require("core-js/modules/es.object.keys.js");
|
|
33
|
+
var _electron = require("electron");
|
|
34
|
+
var _defaultOptions = require("./default-options");
|
|
35
|
+
var env = _interopRequireWildcard(require("./env"));
|
|
36
|
+
var _logger = require("./logger");
|
|
37
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
38
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
39
|
+
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; }
|
|
40
|
+
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; }
|
|
41
|
+
var windowOptionsMap = exports.windowOptionsMap = {};
|
|
42
|
+
var webPreferencesMap = exports.webPreferencesMap = {};
|
|
43
|
+
var windows = {};
|
|
44
|
+
var rendererWindows = {};
|
|
45
|
+
var windowKeyById = {};
|
|
46
|
+
var isDev = env.isDev;
|
|
47
|
+
var baseUrl = env.devPageUrl;
|
|
48
|
+
var logger = (0, _logger.getLogger)();
|
|
49
|
+
var loadFragment = function loadFragment(browserWindow, path) {
|
|
50
|
+
var url = isDev ? "".concat(baseUrl, "/").concat(path, ".html") : "dist/".concat(path, ".html");
|
|
51
|
+
if (isDev) {
|
|
52
|
+
return browserWindow.loadURL(url);
|
|
53
|
+
} else {
|
|
54
|
+
return browserWindow.loadFile(url);
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
var open = exports.open = function open(entryPath, dialogId) {
|
|
58
|
+
var _windowOptionsMap$ent;
|
|
59
|
+
var key = entryPath + (dialogId ? dialogId : '');
|
|
60
|
+
var browserWindow = windows[key];
|
|
61
|
+
if (!browserWindow) {
|
|
62
|
+
browserWindow = new _electron.BrowserWindow(_objectSpread(_objectSpread(_objectSpread({}, _defaultOptions.defaultWindowOptions), windowOptionsMap[entryPath]), {}, {
|
|
63
|
+
webPreferences: _objectSpread(_objectSpread({}, _defaultOptions.defaultWebPreferences), webPreferencesMap[entryPath])
|
|
64
|
+
}));
|
|
65
|
+
var windowId = browserWindow.id;
|
|
66
|
+
browserWindow.addListener('closed', function () {
|
|
67
|
+
delete windows[key];
|
|
68
|
+
delete windowKeyById[windowId];
|
|
69
|
+
});
|
|
70
|
+
browserWindow.webContents.addListener('render-process-gone', function (event, arg) {
|
|
71
|
+
logger.info("BrowserWindow [".concat(entryPath, "] render-process-gone: ").concat(arg));
|
|
72
|
+
});
|
|
73
|
+
loadFragment(browserWindow, entryPath);
|
|
74
|
+
windows[key] = browserWindow;
|
|
75
|
+
windowKeyById[windowId] = entryPath;
|
|
76
|
+
}
|
|
77
|
+
if ((_windowOptionsMap$ent = windowOptionsMap[entryPath].show) !== null && _windowOptionsMap$ent !== void 0 ? _windowOptionsMap$ent : true) {
|
|
78
|
+
browserWindow.show();
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
var close = exports.close = function close(entryPath, dialogId) {
|
|
82
|
+
var key = entryPath + (dialogId ? dialogId : '');
|
|
83
|
+
if (key in windows) {
|
|
84
|
+
var browserWindow = windows[key];
|
|
85
|
+
if (browserWindow) {
|
|
86
|
+
browserWindow.close();
|
|
87
|
+
delete windows[key];
|
|
88
|
+
delete windowKeyById[browserWindow.id];
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
var getWindowKeyById = exports.getWindowKeyById = function getWindowKeyById(windowId) {
|
|
93
|
+
return windowKeyById[windowId];
|
|
94
|
+
};
|
|
95
|
+
var closeAllWindows = exports.closeAllWindows = function closeAllWindows() {
|
|
96
|
+
for (var key in windows) {
|
|
97
|
+
windows[key].destroy();
|
|
98
|
+
}
|
|
99
|
+
windows = {};
|
|
100
|
+
windowKeyById = {};
|
|
101
|
+
};
|
|
102
|
+
var putRendererWindow = exports.putRendererWindow = function putRendererWindow(entryPath, browserWindow) {
|
|
103
|
+
logger.info('[RendererWindow] putRendererWindow', entryPath);
|
|
104
|
+
rendererWindows[entryPath] = browserWindow;
|
|
105
|
+
};
|
|
106
|
+
var deleteRendererWindow = exports.deleteRendererWindow = function deleteRendererWindow(entryPath) {
|
|
107
|
+
logger.info('[RendererWindow] deleteRendererWindow', entryPath);
|
|
108
|
+
delete rendererWindows[entryPath];
|
|
109
|
+
};
|
|
110
|
+
var getRendererWindow = exports.getRendererWindow = function getRendererWindow(entryPath) {
|
|
111
|
+
logger.info('[RendererWindow] getRendererWindow', entryPath, Object.keys(rendererWindows));
|
|
112
|
+
return rendererWindows[entryPath];
|
|
113
|
+
};
|
|
114
|
+
var clearAllRendererWindows = exports.clearAllRendererWindows = function clearAllRendererWindows() {
|
|
115
|
+
for (var key in rendererWindows) {
|
|
116
|
+
rendererWindows[key].emit('will-close');
|
|
117
|
+
rendererWindows[key].destroy();
|
|
118
|
+
}
|
|
119
|
+
rendererWindows = {};
|
|
120
|
+
};
|
|
121
|
+
var setFragmentBaseUrl = exports.setFragmentBaseUrl = function setFragmentBaseUrl(_isDev, _baseUrl) {
|
|
122
|
+
isDev = _isDev;
|
|
123
|
+
baseUrl = _baseUrl;
|
|
124
|
+
};
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { FcrCoreEngine, FcrError } from 'fcr-core';
|
|
2
|
+
import { FcrUIEventStore } from './event-store';
|
|
3
|
+
import { FcrMainRoomControl, FcrRoomJoinOptions, FcrRoomType, FcrWaitingRoomControl } from 'fcr-core/lib/room-control/type';
|
|
4
|
+
import { FcrDeviceStore } from './device-store';
|
|
5
|
+
import { FcrUISceneConfig } from '../type';
|
|
6
|
+
import { FcrInterpreterRoomControl, FcrLanguage } from 'fcr-core/lib/room-control/interpreter-control/types';
|
|
7
|
+
type RoomObserver = {
|
|
8
|
+
onJoinMainRoom?: (ticket: string) => void;
|
|
9
|
+
onLeaveMainRoom?: () => void;
|
|
10
|
+
onJoinMainRoomFailed?: (error: FcrError) => void;
|
|
11
|
+
onJoinWaitingRoom?: (roomControl: FcrWaitingRoomControl, isWaitingRoomManager?: boolean) => void;
|
|
12
|
+
onLeaveWaitingRoom?: () => void;
|
|
13
|
+
onJoinWaitingRoomFailed?: (error: FcrError) => void;
|
|
14
|
+
onWaitingRoomLocalUserKickedOut?: (roomId: string) => void;
|
|
15
|
+
onMainRoomLocalUserKickedOut?: (roomId: string) => void;
|
|
16
|
+
onJoinInterpretingRoom?: (roomControl: FcrInterpreterRoomControl, language: FcrLanguage) => void;
|
|
17
|
+
onJoinInterpretingRoomSuccess?: (roomControl: FcrInterpreterRoomControl, language: FcrLanguage) => void;
|
|
18
|
+
onJoinInterpretingRoomFailed?: (roomControl: FcrInterpreterRoomControl, language: FcrLanguage) => void;
|
|
19
|
+
onLeaveInterpretingRoom?: (roomControl: FcrInterpreterRoomControl, language?: FcrLanguage) => void;
|
|
20
|
+
onLeaveInterpretingRoomFailed?: (roomControl: FcrInterpreterRoomControl, language?: FcrLanguage) => void;
|
|
21
|
+
onLeaveInterpretingRoomSuccess?: (roomControl: FcrInterpreterRoomControl, language?: FcrLanguage) => void;
|
|
22
|
+
};
|
|
23
|
+
export declare class FcrRoomStore {
|
|
24
|
+
private _uiEventStore;
|
|
25
|
+
private _deviceStore;
|
|
26
|
+
private _sceneConfig;
|
|
27
|
+
private _engine;
|
|
28
|
+
protected logger: import("agora-foundation/lib/logger").Logger;
|
|
29
|
+
private _observable;
|
|
30
|
+
private _mainRoomControl?;
|
|
31
|
+
private _waitingRoomControl?;
|
|
32
|
+
private _mainRoomObserver;
|
|
33
|
+
private _mainRoomUserObserver;
|
|
34
|
+
private _waitingRoomUserObserver;
|
|
35
|
+
private _waitingRoomObserver;
|
|
36
|
+
constructor(_uiEventStore: FcrUIEventStore, _deviceStore: FcrDeviceStore, _sceneConfig: FcrUISceneConfig, _engine: FcrCoreEngine);
|
|
37
|
+
release(): void;
|
|
38
|
+
addObserver(observer: RoomObserver): void;
|
|
39
|
+
removeObserver(observer: RoomObserver): void;
|
|
40
|
+
handleJoinRoom(roomId: string): Promise<readonly [FcrRoomType.Mainroom, FcrMainRoomControl] | readonly [FcrRoomType.Waitingroom, FcrWaitingRoomControl]>;
|
|
41
|
+
handleJoinMainRoom(roomId: string, ticket: string): Promise<FcrMainRoomControl>;
|
|
42
|
+
private _judgeWaitingRoomPremissionAndCreateRoomControl;
|
|
43
|
+
private _destroyWaitingRoom;
|
|
44
|
+
private _getJoinRoomOption;
|
|
45
|
+
joinInterpreterRoom({ control, roomJoinOptions, language, }: {
|
|
46
|
+
control: FcrInterpreterRoomControl;
|
|
47
|
+
roomJoinOptions: FcrRoomJoinOptions;
|
|
48
|
+
language: FcrLanguage;
|
|
49
|
+
}): Promise<void>;
|
|
50
|
+
leaveInterpreterRoom({ control, language, }: {
|
|
51
|
+
control: FcrInterpreterRoomControl;
|
|
52
|
+
language?: FcrLanguage;
|
|
53
|
+
}): Promise<void>;
|
|
54
|
+
}
|
|
55
|
+
export {};
|