fcr-ui-scene 3.7.3 → 3.7.4-rc.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/lib/creator.d.ts +2 -0
- package/lib/creator.js +14 -0
- package/lib/fragments/annotation/libs.d.ts +7 -6
- package/lib/fragments/annotation/libs.js +9 -8
- package/lib/fragments/whiteboard/store.js +13 -8
- package/lib/global.css +6 -0
- package/lib/modules/action-bar/components/screen-share/submenu.js +2 -2
- package/lib/modules/action-bar/index.d.ts +2 -0
- package/lib/modules/action-bar/index.js +2 -1
- package/lib/modules/action-bar/store.d.ts +6 -2
- package/lib/modules/action-bar/store.js +56 -93
- package/lib/modules/annotation/annotation-toolbar-store.js +2 -2
- package/lib/modules/annotation/store.js +12 -14
- package/lib/modules/audio-stream/index.js +1 -2
- package/lib/modules/chat/components/chat-select/index.js +3 -0
- package/lib/modules/components/device-control/store.js +2 -2
- package/lib/modules/components/leave-meeting/index.js +4 -1
- package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.d.ts +6 -4
- package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.js +77 -41
- package/lib/modules/components/member-window/components/video-player/components/remote-video-player-with-zoom.d.ts +3 -3
- package/lib/modules/components/member-window/components/video-player/index.d.ts +3 -3
- package/lib/modules/components/member-window/types.d.ts +3 -3
- package/lib/modules/control-bar/store.d.ts +10 -8
- package/lib/modules/control-bar/store.js +47 -15
- package/lib/modules/control-bar/view.js +27 -13
- package/lib/modules/device-pretest/store.js +4 -2
- package/lib/modules/dialog/components/dialog-container/component/body.js +3 -24
- package/lib/modules/dialog/components/dialog-container/index.d.ts +4 -0
- package/lib/modules/dialog/components/dialog-container/index.js +67 -44
- package/lib/modules/dialog/components/normal-window/index.js +4 -0
- package/lib/modules/dialog/dialogs/control-bar/index.js +9 -32
- package/lib/modules/dialog/dialogs/sub-window/index.js +4 -0
- package/lib/modules/dialog/dialogs/video-window/index.js +28 -23
- package/lib/modules/dialog/hooks/useElectron.js +4 -1
- package/lib/modules/dialog/level-config.js +1 -1
- package/lib/modules/dialog/store.d.ts +4 -3
- package/lib/modules/dialog/store.js +14 -10
- package/lib/modules/event-confirm/components/window/index.d.ts +5 -2
- package/lib/modules/event-confirm/components/window/index.js +38 -14
- package/lib/modules/event-confirm/index.css +0 -2
- package/lib/modules/event-confirm/store.d.ts +10 -5
- package/lib/modules/event-confirm/store.js +62 -13
- package/lib/modules/event-confirm/view.js +9 -7
- package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +1 -2
- package/lib/modules/interpreter/store.js +11 -13
- package/lib/modules/layout/components/CommonVideoRenderer.js +5 -5
- package/lib/modules/layout/store.js +8 -22
- package/lib/modules/participant/member-list-data-source.js +3 -5
- package/lib/modules/participant/store.js +43 -43
- package/lib/modules/secondary-window/index.d.ts +2 -1
- package/lib/modules/secondary-window/index.js +5 -0
- package/lib/modules/secondary-window/type.d.ts +13 -9
- package/lib/modules/secondary-window/view.js +12 -12
- package/lib/modules/setting/audio-settings/audio-settings.js +4 -2
- package/lib/modules/setting/config.d.ts +4 -0
- package/lib/modules/setting/config.js +6 -3
- package/lib/modules/setting/store.d.ts +8 -3
- package/lib/modules/setting/store.js +104 -74
- package/lib/modules/setting/view.js +3 -2
- package/lib/modules/share-screen/components/selection/index.js +6 -8
- package/lib/modules/share-screen/store.d.ts +9 -10
- package/lib/modules/share-screen/store.js +65 -90
- package/lib/modules/share-screen/types.d.ts +7 -8
- package/lib/modules/video-window/components/members/index.js +3 -3
- package/lib/modules/video-window/store.js +3 -3
- package/lib/modules/whiteboard/components/control-bar/store.d.ts +3 -0
- package/lib/modules/whiteboard/components/control-bar/store.js +20 -11
- package/lib/modules/whiteboard/components/toolbar/store.js +2 -2
- package/lib/modules/whiteboard/index.d.ts +10 -4
- package/lib/modules/whiteboard/index.js +158 -124
- package/lib/plugins/module-dev-plugin.js +4 -0
- package/lib/providers/annotation-provider.js +3 -3
- package/lib/providers/device-privilege-provider.js +13 -12
- package/lib/providers/device-provider.d.ts +37 -31
- package/lib/providers/device-provider.js +692 -746
- package/lib/providers/device-stream-provider.js +4 -4
- package/lib/providers/interpreter-provider.js +7 -9
- package/lib/providers/multi-display-provider.d.ts +8 -3
- package/lib/providers/multi-display-provider.js +18 -6
- package/lib/providers/privilege-provider.d.ts +3 -11
- package/lib/providers/privilege-provider.js +2 -5
- package/lib/providers/renderer-provider.d.ts +3 -3
- package/lib/providers/renderer-provider.js +20 -32
- package/lib/providers/room-provider.js +14 -15
- package/lib/providers/screen-share-provider.d.ts +12 -10
- package/lib/providers/screen-share-provider.js +79 -59
- package/lib/providers/sharing-provider.js +7 -0
- package/lib/providers/whiteboard-provider.js +1 -0
- package/lib/scenes/main-scene.js +15 -9
- package/lib/schema.d.ts +3 -3
- package/lib/schema.js +1 -1
- package/lib/shared-data-source/confirm-data.d.ts +19 -0
- package/lib/shared-data-source/confirm-data.js +119 -15
- package/lib/shared-data-source/screen-share-data.d.ts +29 -28
- package/lib/shared-data-source/screen-share-data.js +14 -8
- package/lib/shared-data-source/setting.js +2 -2
- package/lib/shared-data-source/whiteboard-data.d.ts +7 -5
- package/lib/shared-data-source/whiteboard-data.js +9 -8
- package/lib/ui-scene.d.ts +2 -0
- package/lib/ui-scene.js +77 -21
- package/lib/utilities/constant.d.ts +5 -0
- package/lib/utilities/constant.js +7 -2
- package/lib/utilities/default-config.d.ts +4 -0
- package/lib/utilities/default-config.js +8 -4
- package/lib/utilities/dialog-utils.d.ts +3 -2
- package/lib/utilities/dialog-utils.js +33 -14
- package/lib/utilities/package-info.d.ts +3 -0
- package/lib/utilities/package-info.js +15 -0
- package/lib/waiting-room-control-manager.js +6 -6
- package/package.json +6 -6
- package/public/index.html +5 -0
package/lib/ui-scene.js
CHANGED
|
@@ -3,8 +3,6 @@
|
|
|
3
3
|
require("core-js/modules/es.symbol.js");
|
|
4
4
|
require("core-js/modules/es.symbol.description.js");
|
|
5
5
|
require("core-js/modules/es.symbol.to-primitive.js");
|
|
6
|
-
require("core-js/modules/es.error.cause.js");
|
|
7
|
-
require("core-js/modules/es.error.to-string.js");
|
|
8
6
|
require("core-js/modules/es.array.is-array.js");
|
|
9
7
|
require("core-js/modules/es.array.iterator.js");
|
|
10
8
|
require("core-js/modules/es.array.push.js");
|
|
@@ -40,6 +38,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
40
38
|
});
|
|
41
39
|
exports.FcrUIDefaultScene = void 0;
|
|
42
40
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
41
|
+
require("core-js/modules/es.error.cause.js");
|
|
42
|
+
require("core-js/modules/es.error.to-string.js");
|
|
43
43
|
require("core-js/modules/es.date.to-string.js");
|
|
44
44
|
require("core-js/modules/es.number.constructor.js");
|
|
45
45
|
require("core-js/modules/es.object.to-string.js");
|
|
@@ -110,7 +110,14 @@ var FcrUIDefaultScene = exports.FcrUIDefaultScene = /*#__PURE__*/function () {
|
|
|
110
110
|
(0, _defineProperty2["default"])(this, "_observable", new _observable.AgoraObservable());
|
|
111
111
|
// @internal
|
|
112
112
|
(0, _defineProperty2["default"])(this, "_isLaunched", false);
|
|
113
|
+
// @internal
|
|
114
|
+
(0, _defineProperty2["default"])(this, "_dialogObserver", {
|
|
115
|
+
onOpenSettingDialog: function onOpenSettingDialog() {
|
|
116
|
+
_this._observable.notifyObservers('onOpenSettingDialog');
|
|
117
|
+
}
|
|
118
|
+
});
|
|
113
119
|
(0, _defineProperty2["default"])(this, "_joinSuccess", false);
|
|
120
|
+
(0, _defineProperty2["default"])(this, "_joinAbortController", null);
|
|
114
121
|
(0, _defineProperty2["default"])(this, "_handleBeforeUnload", function () {
|
|
115
122
|
(0, _renderer.setInMeetingState)(0);
|
|
116
123
|
(0, _renderer.releaseSubAllWindowRefs)();
|
|
@@ -148,6 +155,10 @@ var FcrUIDefaultScene = exports.FcrUIDefaultScene = /*#__PURE__*/function () {
|
|
|
148
155
|
return (0, _createClass2["default"])(FcrUIDefaultScene, [{
|
|
149
156
|
key: "exit",
|
|
150
157
|
value: function exit() {
|
|
158
|
+
if (this._joinAbortController) {
|
|
159
|
+
this._joinAbortController.abort();
|
|
160
|
+
this._joinAbortController = null;
|
|
161
|
+
}
|
|
151
162
|
this._observable.notifyObservers('onExited', this._config.roomId, _type.FcrUIExitReason.LEAVE_ROOM);
|
|
152
163
|
this._release();
|
|
153
164
|
}
|
|
@@ -355,33 +366,81 @@ var FcrUIDefaultScene = exports.FcrUIDefaultScene = /*#__PURE__*/function () {
|
|
|
355
366
|
// joinRoomCallback: () => void,
|
|
356
367
|
) {
|
|
357
368
|
var _this4 = this;
|
|
358
|
-
var p;
|
|
369
|
+
var abortController, p;
|
|
359
370
|
return _regenerator["default"].wrap(function (_context2) {
|
|
360
371
|
while (1) switch (_context2.prev = _context2.next) {
|
|
361
372
|
case 0:
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
var _ref2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(
|
|
373
|
+
abortController = new AbortController();
|
|
374
|
+
this._joinAbortController = abortController;
|
|
375
|
+
p = new Promise(/*#__PURE__*/function () {
|
|
376
|
+
var _ref2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(resolve, reject) {
|
|
377
|
+
var onAbort, response, _t;
|
|
366
378
|
return _regenerator["default"].wrap(function (_context) {
|
|
367
379
|
while (1) switch (_context.prev = _context.next) {
|
|
368
380
|
case 0:
|
|
369
|
-
|
|
381
|
+
onAbort = function onAbort() {
|
|
382
|
+
return reject(new Error('join aborted'));
|
|
383
|
+
};
|
|
384
|
+
abortController.signal.addEventListener('abort', onAbort, {
|
|
385
|
+
once: true
|
|
386
|
+
});
|
|
387
|
+
_context.prev = 1;
|
|
388
|
+
_context.next = 2;
|
|
389
|
+
return engine.login();
|
|
390
|
+
case 2:
|
|
391
|
+
if (!abortController.signal.aborted) {
|
|
392
|
+
_context.next = 3;
|
|
393
|
+
break;
|
|
394
|
+
}
|
|
395
|
+
throw new Error('join aborted');
|
|
396
|
+
case 3:
|
|
397
|
+
_context.next = 4;
|
|
398
|
+
return roomControl.handleJoinRoom();
|
|
399
|
+
case 4:
|
|
400
|
+
response = _context.sent;
|
|
401
|
+
if (!abortController.signal.aborted) {
|
|
402
|
+
_context.next = 5;
|
|
403
|
+
break;
|
|
404
|
+
}
|
|
405
|
+
throw new Error('join aborted');
|
|
406
|
+
case 5:
|
|
407
|
+
if (_this4._isLaunched) {
|
|
408
|
+
_context.next = 6;
|
|
409
|
+
break;
|
|
410
|
+
}
|
|
411
|
+
return _context.abrupt("return", reject());
|
|
412
|
+
case 6:
|
|
370
413
|
_this4._joinSuccess = true;
|
|
371
|
-
|
|
372
|
-
|
|
414
|
+
// joinRoomCallback();
|
|
415
|
+
return _context.abrupt("return", resolve());
|
|
416
|
+
case 7:
|
|
417
|
+
_context.prev = 7;
|
|
418
|
+
_t = _context["catch"](1);
|
|
419
|
+
return _context.abrupt("return", reject(_t));
|
|
420
|
+
case 8:
|
|
421
|
+
_context.prev = 8;
|
|
422
|
+
abortController.signal.removeEventListener('abort', onAbort);
|
|
423
|
+
_this4._joinAbortController = null;
|
|
424
|
+
return _context.finish(8);
|
|
425
|
+
case 9:
|
|
373
426
|
case "end":
|
|
374
427
|
return _context.stop();
|
|
375
428
|
}
|
|
376
|
-
}, _callee);
|
|
429
|
+
}, _callee, null, [[1, 7, 8, 9]]);
|
|
377
430
|
}));
|
|
378
|
-
return function (_x3) {
|
|
431
|
+
return function (_x3, _x4) {
|
|
379
432
|
return _ref2.apply(this, arguments);
|
|
380
433
|
};
|
|
381
434
|
}());
|
|
382
435
|
p.then(function () {
|
|
436
|
+
if (!_this4._isLaunched) return;
|
|
383
437
|
_this4._observable.notifyObservers('onLaunchSuccess', _this4._config.roomId);
|
|
384
438
|
})["catch"](function (e) {
|
|
439
|
+
if (!_this4._isLaunched) return;
|
|
440
|
+
if ((e === null || e === void 0 ? void 0 : e.message) === 'join aborted') {
|
|
441
|
+
_this4.logger.info('join aborted');
|
|
442
|
+
return;
|
|
443
|
+
}
|
|
385
444
|
_this4._observable.notifyObservers('onLaunchFailure', _this4._config.roomId, e);
|
|
386
445
|
});
|
|
387
446
|
return _context2.abrupt("return", p);
|
|
@@ -389,7 +448,7 @@ var FcrUIDefaultScene = exports.FcrUIDefaultScene = /*#__PURE__*/function () {
|
|
|
389
448
|
case "end":
|
|
390
449
|
return _context2.stop();
|
|
391
450
|
}
|
|
392
|
-
}, _callee2);
|
|
451
|
+
}, _callee2, this);
|
|
393
452
|
}));
|
|
394
453
|
function _joinRoom(_x, _x2) {
|
|
395
454
|
return _joinRoom2.apply(this, arguments);
|
|
@@ -444,7 +503,7 @@ var FcrUIDefaultScene = exports.FcrUIDefaultScene = /*#__PURE__*/function () {
|
|
|
444
503
|
}
|
|
445
504
|
}, _callee3, this);
|
|
446
505
|
}));
|
|
447
|
-
function _renderSceneUI(
|
|
506
|
+
function _renderSceneUI(_x5, _x6, _x7, _x8, _x9, _x0, _x1, _x10, _x11, _x12, _x13, _x14, _x15, _x16, _x17, _x18, _x19, _x20) {
|
|
448
507
|
return _renderSceneUI2.apply(this, arguments);
|
|
449
508
|
}
|
|
450
509
|
return _renderSceneUI;
|
|
@@ -522,8 +581,6 @@ var FcrUIDefaultScene = exports.FcrUIDefaultScene = /*#__PURE__*/function () {
|
|
|
522
581
|
}, {
|
|
523
582
|
key: "_initSettingStore",
|
|
524
583
|
value: function _initSettingStore(_ref3) {
|
|
525
|
-
var _this$_dialogProvider,
|
|
526
|
-
_this5 = this;
|
|
527
584
|
var roomProvider = _ref3.roomProvider,
|
|
528
585
|
eventProvider = _ref3.eventProvider,
|
|
529
586
|
deviceProvider = _ref3.deviceProvider,
|
|
@@ -534,6 +591,7 @@ var FcrUIDefaultScene = exports.FcrUIDefaultScene = /*#__PURE__*/function () {
|
|
|
534
591
|
dialogProvider = _ref3.dialogProvider,
|
|
535
592
|
monitorProvider = _ref3.monitorProvider,
|
|
536
593
|
sharedInterpreterDataSource = _ref3.sharedInterpreterDataSource;
|
|
594
|
+
this.logger.debug('init SettingStore');
|
|
537
595
|
var settingStore = new _store["default"]({
|
|
538
596
|
eventProvider: eventProvider,
|
|
539
597
|
monitorProvider: monitorProvider,
|
|
@@ -546,11 +604,9 @@ var FcrUIDefaultScene = exports.FcrUIDefaultScene = /*#__PURE__*/function () {
|
|
|
546
604
|
dialogProvider: dialogProvider,
|
|
547
605
|
sharedInterpreterDataSource: sharedInterpreterDataSource
|
|
548
606
|
});
|
|
549
|
-
(
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
}
|
|
553
|
-
});
|
|
607
|
+
settingStore.startMeeting();
|
|
608
|
+
this._dialogProvider.removeObserver(this._dialogObserver);
|
|
609
|
+
this._dialogProvider.addObserver(this._dialogObserver);
|
|
554
610
|
this._observable.notifyObservers('onSettingStore', settingStore);
|
|
555
611
|
}
|
|
556
612
|
}, {
|
|
@@ -174,3 +174,8 @@ export declare enum FcrUIHighlightElement {
|
|
|
174
174
|
TRANSLATE_TARGET = "fcr_TRANSLATE_TARGET_highlighter",
|
|
175
175
|
TRANSLATE_INTERPRETER = "fcr_TRANSLATE_INTERPRETER_highlighter"
|
|
176
176
|
}
|
|
177
|
+
export declare const ErrorCode: {
|
|
178
|
+
FAILED_TO_MOVE_USER_TO_WAITING_ROOM: number;
|
|
179
|
+
FAILED_TO_UPDATE_USER_ROLE_DUE_TO_PRIVILEGE: number;
|
|
180
|
+
FAILED_TO_UPDATE_USER_ROLE_DUE_TO_LIMIT_REACHED: number;
|
|
181
|
+
};
|
|
@@ -4,7 +4,7 @@ require("core-js/modules/es.object.define-property.js");
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.FcrUIVideoWindowPinType = exports.FcrUIRoomControlType = exports.FcrUIRendererEventAction = exports.FcrUIParticipantType = exports.FcrUIHighlightElement = exports.FcrUIDialogKey = exports.FcrUIAction = void 0;
|
|
7
|
+
exports.FcrUIVideoWindowPinType = exports.FcrUIRoomControlType = exports.FcrUIRendererEventAction = exports.FcrUIParticipantType = exports.FcrUIHighlightElement = exports.FcrUIDialogKey = exports.FcrUIAction = exports.ErrorCode = void 0;
|
|
8
8
|
var FcrUIRendererEventAction = exports.FcrUIRendererEventAction = /*#__PURE__*/function (FcrUIRendererEventAction) {
|
|
9
9
|
/**
|
|
10
10
|
* Indicates that the fragment has been loaded.
|
|
@@ -188,4 +188,9 @@ var FcrUIHighlightElement = exports.FcrUIHighlightElement = /*#__PURE__*/functio
|
|
|
188
188
|
FcrUIHighlightElement["TRANSLATE_TARGET"] = "fcr_TRANSLATE_TARGET_highlighter";
|
|
189
189
|
FcrUIHighlightElement["TRANSLATE_INTERPRETER"] = "fcr_TRANSLATE_INTERPRETER_highlighter";
|
|
190
190
|
return FcrUIHighlightElement;
|
|
191
|
-
}({});
|
|
191
|
+
}({});
|
|
192
|
+
var ErrorCode = exports.ErrorCode = {
|
|
193
|
+
FAILED_TO_MOVE_USER_TO_WAITING_ROOM: 732403470,
|
|
194
|
+
FAILED_TO_UPDATE_USER_ROLE_DUE_TO_PRIVILEGE: 700000403,
|
|
195
|
+
FAILED_TO_UPDATE_USER_ROLE_DUE_TO_LIMIT_REACHED: 720403001
|
|
196
|
+
};
|
|
@@ -6,6 +6,7 @@ export declare const cameraVideoHighStreamEncoderConfig: {
|
|
|
6
6
|
};
|
|
7
7
|
frameRate: number;
|
|
8
8
|
bitrate: number;
|
|
9
|
+
isMirror: boolean;
|
|
9
10
|
};
|
|
10
11
|
export declare const cameraVideoLowStreamEncoderConfig: {
|
|
11
12
|
dimensions: {
|
|
@@ -14,6 +15,7 @@ export declare const cameraVideoLowStreamEncoderConfig: {
|
|
|
14
15
|
};
|
|
15
16
|
frameRate: number;
|
|
16
17
|
bitrate: number;
|
|
18
|
+
isMirror: boolean;
|
|
17
19
|
};
|
|
18
20
|
export declare const screenCaptureHighStreamEncoderConfig: {
|
|
19
21
|
dimensions: {
|
|
@@ -22,6 +24,7 @@ export declare const screenCaptureHighStreamEncoderConfig: {
|
|
|
22
24
|
};
|
|
23
25
|
frameRate: number;
|
|
24
26
|
bitrate: number;
|
|
27
|
+
isMirror: boolean;
|
|
25
28
|
};
|
|
26
29
|
export declare const screenCaptureLowStreamEncoderConfig: {
|
|
27
30
|
dimensions: {
|
|
@@ -30,6 +33,7 @@ export declare const screenCaptureLowStreamEncoderConfig: {
|
|
|
30
33
|
};
|
|
31
34
|
frameRate: number;
|
|
32
35
|
bitrate: number;
|
|
36
|
+
isMirror: boolean;
|
|
33
37
|
};
|
|
34
38
|
export declare let enableCameraDualStreamMode: boolean;
|
|
35
39
|
export declare let enableScreenDualStreamMode: boolean;
|
|
@@ -14,7 +14,8 @@ var cameraVideoHighStreamEncoderConfig = exports.cameraVideoHighStreamEncoderCon
|
|
|
14
14
|
height: 720
|
|
15
15
|
},
|
|
16
16
|
frameRate: 30,
|
|
17
|
-
bitrate: 1500
|
|
17
|
+
bitrate: 1500,
|
|
18
|
+
isMirror: false
|
|
18
19
|
};
|
|
19
20
|
var cameraVideoLowStreamEncoderConfig = exports.cameraVideoLowStreamEncoderConfig = {
|
|
20
21
|
dimensions: {
|
|
@@ -22,7 +23,8 @@ var cameraVideoLowStreamEncoderConfig = exports.cameraVideoLowStreamEncoderConfi
|
|
|
22
23
|
height: 270
|
|
23
24
|
},
|
|
24
25
|
frameRate: 15,
|
|
25
|
-
bitrate: 350
|
|
26
|
+
bitrate: 350,
|
|
27
|
+
isMirror: false
|
|
26
28
|
};
|
|
27
29
|
var screenCaptureHighStreamEncoderConfig = exports.screenCaptureHighStreamEncoderConfig = {
|
|
28
30
|
dimensions: {
|
|
@@ -30,7 +32,8 @@ var screenCaptureHighStreamEncoderConfig = exports.screenCaptureHighStreamEncode
|
|
|
30
32
|
height: 1080
|
|
31
33
|
},
|
|
32
34
|
frameRate: 15,
|
|
33
|
-
bitrate: 1500
|
|
35
|
+
bitrate: 1500,
|
|
36
|
+
isMirror: false
|
|
34
37
|
};
|
|
35
38
|
var screenCaptureLowStreamEncoderConfig = exports.screenCaptureLowStreamEncoderConfig = {
|
|
36
39
|
dimensions: {
|
|
@@ -38,7 +41,8 @@ var screenCaptureLowStreamEncoderConfig = exports.screenCaptureLowStreamEncoderC
|
|
|
38
41
|
height: 240
|
|
39
42
|
},
|
|
40
43
|
frameRate: 15,
|
|
41
|
-
bitrate: 400
|
|
44
|
+
bitrate: 400,
|
|
45
|
+
isMirror: false
|
|
42
46
|
};
|
|
43
47
|
var enableCameraDualStreamMode = exports.enableCameraDualStreamMode = true;
|
|
44
48
|
var enableScreenDualStreamMode = exports.enableScreenDualStreamMode = false;
|
|
@@ -50,11 +50,12 @@ export declare function followCorrectDisplay({ browserWindow, dialogKey, extraRe
|
|
|
50
50
|
*/
|
|
51
51
|
extraRefControlbarCondition?: boolean;
|
|
52
52
|
/**
|
|
53
|
-
* 根据屏幕或者应用主窗口居中显示,默认是 screen,如果需要跟随主窗口,则设置为 main-window
|
|
53
|
+
* 根据屏幕或者应用主窗口居中显示,默认是 screen,如果需要跟随主窗口,则设置为 main-window
|
|
54
|
+
* 如果设置为 false,则不跟随任何窗口,只返回数据, 此设置主要针对 controlbar 弹窗,controlbar 有自己的逻辑
|
|
54
55
|
* 在屏幕共享时,普通 dialog 窗口会以 controlbar 所在的屏幕为基准水平居中对齐
|
|
55
56
|
* 在非屏幕共享状态下,则会以主窗口为基准水平居中对齐
|
|
56
57
|
*/
|
|
57
|
-
follow?: 'screen' | 'main-window';
|
|
58
|
+
follow?: 'screen' | 'main-window' | false;
|
|
58
59
|
/**
|
|
59
60
|
* 是否是全屏幕覆盖的透明窗口, 此设置主要针对 toast 和 confirm 弹窗
|
|
60
61
|
*/
|
|
@@ -22,15 +22,18 @@ var _env = require("agora-foundation/lib/utilities/env");
|
|
|
22
22
|
var _constant = require("./constant");
|
|
23
23
|
var _store = require("../modules/dialog/store");
|
|
24
24
|
var _renderer = require("./renderer");
|
|
25
|
+
var _logger = require("./logger");
|
|
25
26
|
// 修复 windows 无法响应 hover 的问题
|
|
26
27
|
function handleCheckMouseOver(params) {
|
|
27
28
|
if (!(0, _env.isElectron)()) return;
|
|
29
|
+
var logger = (0, _logger.getLogger)();
|
|
28
30
|
var elem = params.elem,
|
|
29
31
|
browserWindow = params.browserWindow,
|
|
30
32
|
screenBounds = params.screenBounds,
|
|
31
33
|
callback = params.callback,
|
|
32
34
|
newRendererWindow = params.newRendererWindow,
|
|
33
35
|
dialog = params.dialog;
|
|
36
|
+
var enterHotZoneState = false;
|
|
34
37
|
browserWindow.focus();
|
|
35
38
|
browserWindow.setIgnoreMouseEvents(true);
|
|
36
39
|
var MAX_HEIGHT = 430; // 内容最多的 popover 高度
|
|
@@ -92,13 +95,21 @@ function handleCheckMouseOver(params) {
|
|
|
92
95
|
var barControlBoundary = mouse_x > inside_x1 && mouse_x < inside_x2 && mouse_y > inside_y1 && mouse_y < inside_y2;
|
|
93
96
|
var barWrapWithInsideBoundary = mouse_x > bar_x1 && mouse_x < bar_x2 && mouse_y > bar_y1 && mouse_y < bar_y2 - inside_h || barControlBoundary;
|
|
94
97
|
if (dialog === _constant.FcrUIDialogKey.CONTROL_BAR ? barWrapWithInsideBoundary : barWrapBoundary) {
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
98
|
+
if (!enterHotZoneState) {
|
|
99
|
+
enterHotZoneState = true;
|
|
100
|
+
browserWindow.setIgnoreMouseEvents(false);
|
|
101
|
+
logger.info('[controlbar] Mouse entered hot zone');
|
|
102
|
+
// 因为当用户点击其他窗口时,鼠标返回热区窗口会自动聚焦返回到上层,经测试这个注释不会影响现有功能,先注释看有没有其它影响
|
|
103
|
+
// if (!browserWindow.isFocused()) {
|
|
104
|
+
// browserWindow.focus();
|
|
105
|
+
// }
|
|
106
|
+
}
|
|
100
107
|
} else {
|
|
101
|
-
|
|
108
|
+
if (enterHotZoneState) {
|
|
109
|
+
enterHotZoneState = false;
|
|
110
|
+
browserWindow.setIgnoreMouseEvents(true);
|
|
111
|
+
logger.info('[controlbar] Mouse left hot zone');
|
|
112
|
+
}
|
|
102
113
|
}
|
|
103
114
|
}, 50);
|
|
104
115
|
callback === null || callback === void 0 || callback(timerId);
|
|
@@ -109,7 +120,7 @@ function getCurrentSharingWorkArea(params) {
|
|
|
109
120
|
var _window$screen = window.screen,
|
|
110
121
|
availWidth = _window$screen.availWidth,
|
|
111
122
|
availHeight = _window$screen.availHeight;
|
|
112
|
-
var nearDisplay = (0, _env.isElectron)() ? window.runtime.screen.
|
|
123
|
+
var nearDisplay = (0, _env.isElectron)() ? window.runtime.screen.getDisplayMatching(currentShareBounds) : null;
|
|
113
124
|
var dataStruct = {
|
|
114
125
|
bounds: {
|
|
115
126
|
x: 0,
|
|
@@ -159,19 +170,25 @@ function followCorrectDisplay(_ref4) {
|
|
|
159
170
|
}) : _store.dialogWindows.get(dialogKey) : browserWindow;
|
|
160
171
|
var controlbar = _store.dialogWindows.get(_constant.FcrUIDialogKey.CONTROL_BAR);
|
|
161
172
|
var mainAppWindowBounds = window.runtime.browserWindow.getBounds();
|
|
173
|
+
|
|
162
174
|
// 按当前的窗口管理方式,在关闭 controlbar 的时候,controlbar 实际上是隐藏了自己,所以,依然能够通过 controlbar 访问到,所以需要判断是否是 visible 状态
|
|
163
175
|
var followControlbar = !!(controlbar && (extraRefControlbarCondition || controlbar.isVisible()));
|
|
176
|
+
|
|
164
177
|
// 屏幕抢占时,需要判断是否是抢占屏幕,决定是取 controlbar 所在屏幕计算热区,还是以主窗口所在屏幕计算热区,此类条件通过 extraRefControlbarCondition 传入
|
|
165
178
|
var nearestPoint = followControlbar ? controlbar === null || controlbar === void 0 ? void 0 : controlbar.getBounds() : mainAppWindowBounds;
|
|
166
179
|
var nearDisplay = window.runtime.screen.getDisplayMatching(nearestPoint);
|
|
167
180
|
var nearBounds = nearDisplay.bounds;
|
|
181
|
+
|
|
182
|
+
// alwaysFollowScreen 为 true 时取屏幕的宽高,否则取 workArea 的宽高
|
|
183
|
+
var width = alwaysFollowScreen ? Math.floor(nearBounds.width) : Math.floor(nearDisplay.workArea.width);
|
|
184
|
+
var height = alwaysFollowScreen ? Math.floor(nearBounds.height) : Math.floor(nearDisplay.workArea.height);
|
|
168
185
|
var nearDisplayBounds = {
|
|
169
186
|
x: Math.floor(nearBounds.x),
|
|
170
187
|
y: Math.floor(nearBounds.y),
|
|
171
|
-
width:
|
|
172
|
-
height:
|
|
188
|
+
width: width,
|
|
189
|
+
height: height
|
|
173
190
|
};
|
|
174
|
-
var
|
|
191
|
+
var followWithAlignToCenter = function followWithAlignToCenter(theWindowBounds) {
|
|
175
192
|
var targetBounds = follow === 'screen' || extraRefControlbarCondition ? nearBounds : mainAppWindowBounds;
|
|
176
193
|
return {
|
|
177
194
|
x: Math.floor(targetBounds.x + (targetBounds.width - theWindowBounds.width) / 2),
|
|
@@ -196,12 +213,14 @@ function followCorrectDisplay(_ref4) {
|
|
|
196
213
|
dialog === null || dialog === void 0 || dialog.maximize();
|
|
197
214
|
}
|
|
198
215
|
} else {
|
|
199
|
-
dialog === null || dialog === void 0 || dialog.setBounds(
|
|
216
|
+
dialog === null || dialog === void 0 || dialog.setBounds(followWithAlignToCenter(dialog.getBounds()));
|
|
200
217
|
}
|
|
201
218
|
};
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
219
|
+
if (follow !== false) {
|
|
220
|
+
Array.isArray(objectDialog) ? objectDialog.forEach(function (dialog) {
|
|
221
|
+
return setBoundsMethod(dialog);
|
|
222
|
+
}) : setBoundsMethod(objectDialog);
|
|
223
|
+
}
|
|
205
224
|
return {
|
|
206
225
|
nearDisplayBounds: nearDisplayBounds,
|
|
207
226
|
nearDisplay: nearDisplay,
|
|
@@ -0,0 +1,15 @@
|
|
|
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.getVersion = exports.getDependenciesInfo = void 0;
|
|
9
|
+
var _package = _interopRequireDefault(require("../../package.json"));
|
|
10
|
+
var getVersion = exports.getVersion = function getVersion() {
|
|
11
|
+
return _package["default"].version;
|
|
12
|
+
};
|
|
13
|
+
var getDependenciesInfo = exports.getDependenciesInfo = function getDependenciesInfo(packageName) {
|
|
14
|
+
return _package["default"].dependencies[packageName];
|
|
15
|
+
};
|
|
@@ -29,7 +29,7 @@ var _fcrCore = require("fcr-core");
|
|
|
29
29
|
var _type = require("fcr-core/lib/room-control/user-control/type");
|
|
30
30
|
var _type2 = require("fcr-core/lib/room-control/privilege-control/type");
|
|
31
31
|
var _imports = require("fcr-core/lib/imports");
|
|
32
|
-
var _type3 = require("
|
|
32
|
+
var _type3 = require("fcr-core/lib/type");
|
|
33
33
|
var _logger = require("./utilities/logger");
|
|
34
34
|
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; }
|
|
35
35
|
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; }
|
|
@@ -178,11 +178,11 @@ var FcrUIWaitingRoomControlManager = exports["default"] = /*#__PURE__*/function
|
|
|
178
178
|
var config = this._sceneConfig;
|
|
179
179
|
var streams = [{
|
|
180
180
|
streamName: 'default',
|
|
181
|
-
streamType:
|
|
182
|
-
videoSourceType:
|
|
183
|
-
audioSourceType:
|
|
184
|
-
videoSourceState: _type3.
|
|
185
|
-
audioSourceState: _type3.
|
|
181
|
+
streamType: _type3.FcrStreamType.BOTH,
|
|
182
|
+
videoSourceType: _type3.FcrVideoSourceType.CAMERA,
|
|
183
|
+
audioSourceType: _fcrCore.FcrAudioSourceType.MICROPHONE,
|
|
184
|
+
videoSourceState: _type3.FcrMediaSourceState.CLOSE,
|
|
185
|
+
audioSourceState: _type3.FcrMediaSourceState.CLOSE
|
|
186
186
|
}];
|
|
187
187
|
if (config.userRole === _type.FcrUserRole.ROBOT) {
|
|
188
188
|
streams = [];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "fcr-ui-scene",
|
|
3
|
-
"version": "3.7.
|
|
3
|
+
"version": "3.7.4-rc.1",
|
|
4
4
|
"main": "lib/index.js",
|
|
5
5
|
"repository": "ssh://git@git.agoralab.co/aduc/fcr-ui-scene-desktop.git",
|
|
6
6
|
"author": "agora.io",
|
|
@@ -21,14 +21,14 @@
|
|
|
21
21
|
"@electron/remote": "2.0.1",
|
|
22
22
|
"@react-spring/web": "^9.7.3",
|
|
23
23
|
"@use-gesture/react": "^10.3.1",
|
|
24
|
-
"agora-electron-sdk": "4.3.2-build.
|
|
25
|
-
"agora-foundation": "~3.7.
|
|
26
|
-
"agora-ui-foundation": "~3.7.
|
|
24
|
+
"agora-electron-sdk": "4.3.2-build.17-rc.1",
|
|
25
|
+
"agora-foundation": "~3.7.4-rc.1",
|
|
26
|
+
"agora-ui-foundation": "~3.7.4-rc.1",
|
|
27
27
|
"classnames": "^2.5.1",
|
|
28
28
|
"core-js": "^3.33.3",
|
|
29
29
|
"dayjs": "^1.10.4",
|
|
30
30
|
"electron-screenshots": "^0.5.26",
|
|
31
|
-
"fcr-core": "~3.7.
|
|
31
|
+
"fcr-core": "~3.7.4-rc.1",
|
|
32
32
|
"js-md5": "^0.8.3",
|
|
33
33
|
"jszip": "^3.10.1",
|
|
34
34
|
"lodash": "^4.17.21",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"@types/react-dom": "^17.0.11",
|
|
60
60
|
"@types/react-virtualized": "^9.21.30",
|
|
61
61
|
"@types/tinycolor2": "^1.4.6",
|
|
62
|
-
"agora-toolchain": "~3.7.
|
|
62
|
+
"agora-toolchain": "~3.7.4-rc.1",
|
|
63
63
|
"core-js": "^3.33.3",
|
|
64
64
|
"electron": "22.3.27",
|
|
65
65
|
"husky": "^9.0.11",
|
package/public/index.html
CHANGED