fcr-ui-scene 3.7.2 → 3.7.4
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 +37 -44
- package/lib/electron/app.js +7 -0
- package/lib/electron/injections.d.ts +1 -1
- package/lib/electron/injections.js +5 -3
- package/lib/electron/main.js +3 -1
- package/lib/fragments/annotation/index.d.ts +1 -0
- package/lib/fragments/annotation/index.js +13 -7
- package/lib/fragments/annotation/libs.d.ts +7 -6
- package/lib/fragments/annotation/libs.js +9 -8
- package/lib/fragments/annotation/store.d.ts +8 -4
- package/lib/fragments/annotation/store.js +351 -267
- package/lib/fragments/annotation/toolbar/components/color-tool/index.js +4 -0
- package/lib/fragments/annotation/toolbar/components/graphic-tool/index.js +4 -0
- package/lib/fragments/annotation/toolbar/components/item/item.d.ts +2 -0
- package/lib/fragments/annotation/toolbar/components/item/item.js +2 -4
- package/lib/fragments/annotation/toolbar/components/item/style.css +4 -2
- package/lib/fragments/annotation/toolbar/components/pen-tool/index.js +4 -0
- package/lib/fragments/annotation/utils.d.ts +1 -0
- package/lib/fragments/annotation/utils.js +27 -0
- package/lib/fragments/annotation/view.js +1 -6
- package/lib/fragments/base.js +5 -3
- package/lib/fragments/whiteboard/cursor.css +77 -0
- package/lib/fragments/whiteboard/index.d.ts +11 -0
- package/lib/fragments/whiteboard/index.js +91 -0
- package/lib/fragments/whiteboard/store.d.ts +31 -0
- package/lib/fragments/whiteboard/store.js +480 -0
- package/lib/fragments/whiteboard/style.css +4 -0
- package/lib/fragments/whiteboard/view.d.ts +4 -0
- package/lib/fragments/whiteboard/view.js +31 -0
- package/lib/global.css +6 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/modules/action-bar/components/apps/index.js +15 -5
- package/lib/modules/action-bar/components/leave/index.js +4 -11
- 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/action-bar/view.d.ts +1 -0
- package/lib/modules/action-bar/view.js +3 -2
- package/lib/modules/annotation/annotation-toolbar-store.d.ts +4 -11
- package/lib/modules/annotation/annotation-toolbar-store.js +48 -90
- package/lib/modules/annotation/index.d.ts +2 -0
- package/lib/modules/annotation/index.js +2 -2
- package/lib/modules/annotation/store.d.ts +11 -49
- package/lib/modules/annotation/store.js +144 -429
- package/lib/modules/annotation/view.js +3 -6
- package/lib/modules/audio-stream/index.js +1 -2
- package/lib/modules/chat/components/chat-select/index.js +3 -0
- package/lib/modules/components/control-bar/components/loading/index.css +76 -0
- package/lib/modules/components/control-bar/components/loading/index.d.ts +8 -0
- package/lib/modules/components/control-bar/components/loading/index.js +64 -0
- package/lib/modules/components/control-bar/components/loading/loading.png +0 -0
- package/lib/modules/components/control-bar/components/progress/index.d.ts +5 -0
- package/lib/modules/components/control-bar/components/progress/index.js +43 -0
- package/lib/modules/components/control-bar/components/progress/style.css +51 -0
- package/lib/modules/components/control-bar/components/switch-theme/index.css +99 -0
- package/lib/modules/components/control-bar/components/switch-theme/index.d.ts +9 -0
- package/lib/modules/components/control-bar/components/switch-theme/index.js +94 -0
- package/lib/modules/components/control-bar/components/switch-theme/item.d.ts +9 -0
- package/lib/modules/components/control-bar/components/switch-theme/item.js +54 -0
- package/lib/modules/components/control-bar/components/switch-theme/libs.d.ts +4 -0
- package/lib/modules/components/control-bar/components/switch-theme/libs.js +31 -0
- package/lib/modules/components/control-bar/index.css +87 -0
- package/lib/modules/components/control-bar/index.d.ts +20 -0
- package/lib/modules/components/control-bar/index.js +276 -0
- package/lib/modules/components/device-control/store.js +2 -2
- package/lib/modules/components/leave-meeting/components/index.css +0 -9
- package/lib/modules/components/leave-meeting/index.d.ts +2 -1
- package/lib/modules/components/leave-meeting/index.js +19 -8
- package/lib/modules/components/leave-meeting/portal.d.ts +6 -0
- package/lib/modules/components/leave-meeting/portal.js +29 -0
- package/lib/modules/components/leave-meeting/style.css +9 -0
- package/lib/modules/components/member-window/components/member-actions/components/more-actions.d.ts +5 -2
- package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +19 -9
- package/lib/modules/components/member-window/components/member-actions/components/share-status.js +4 -4
- package/lib/modules/components/member-window/components/member-actions/index.js +13 -6
- package/lib/modules/components/member-window/components/member-actions/provider.d.ts +1 -0
- package/lib/modules/components/member-window/components/member-actions/provider.js +4 -3
- package/lib/modules/components/member-window/components/member-actions/store.d.ts +2 -1
- package/lib/modules/components/member-window/components/member-actions/store.js +5 -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/index.css +4 -0
- package/lib/modules/components/member-window/types.d.ts +9 -5
- package/lib/modules/components/toolbar/components/capture-tool/index.d.ts +9 -0
- package/lib/modules/components/toolbar/components/capture-tool/index.js +68 -0
- package/lib/modules/components/toolbar/components/clean-tool/index.d.ts +11 -0
- package/lib/modules/components/toolbar/components/clean-tool/index.js +71 -0
- package/lib/modules/components/toolbar/components/color-tool/color-panel/index.d.ts +11 -0
- package/lib/modules/components/toolbar/components/color-tool/color-panel/index.js +77 -0
- package/lib/modules/components/toolbar/components/color-tool/index.d.ts +14 -0
- package/lib/modules/components/toolbar/components/color-tool/index.js +66 -0
- package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/index.d.ts +11 -0
- package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/index.js +64 -0
- package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +12 -0
- package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/libs.js +65 -0
- package/lib/modules/components/toolbar/components/graphic-tool/index.d.ts +15 -0
- package/lib/modules/components/toolbar/components/graphic-tool/index.js +82 -0
- package/lib/modules/components/toolbar/components/group-tool/index.d.ts +5 -0
- package/lib/modules/components/toolbar/components/group-tool/index.js +43 -0
- package/lib/modules/components/toolbar/components/icons/fold-icon.d.ts +2 -0
- package/lib/modules/components/toolbar/components/icons/fold-icon.js +41 -0
- package/lib/modules/components/toolbar/components/icons/move-icon.d.ts +1 -0
- package/lib/modules/components/toolbar/components/icons/move-icon.js +66 -0
- package/lib/modules/components/toolbar/components/item/index.d.ts +25 -0
- package/lib/modules/components/toolbar/components/item/index.js +165 -0
- package/lib/modules/components/toolbar/components/item/style.css +94 -0
- package/lib/modules/components/toolbar/components/multiple-color-tool/index.d.ts +12 -0
- package/lib/modules/components/toolbar/components/multiple-color-tool/index.js +75 -0
- package/lib/modules/components/toolbar/components/panel/index.d.ts +9 -0
- package/lib/modules/components/toolbar/components/panel/index.js +28 -0
- package/lib/modules/components/toolbar/components/panel/style.css +86 -0
- package/lib/modules/components/toolbar/components/pen-tool/index.d.ts +13 -0
- package/lib/modules/components/toolbar/components/pen-tool/index.js +62 -0
- package/lib/modules/components/toolbar/components/pen-tool/pen-panel/index.d.ts +8 -0
- package/lib/modules/components/toolbar/components/pen-tool/pen-panel/index.js +39 -0
- package/lib/modules/components/toolbar/components/save-draft/index.d.ts +7 -0
- package/lib/modules/components/toolbar/components/save-draft/index.js +59 -0
- package/lib/modules/components/toolbar/components/vertical-frame/index.d.ts +8 -0
- package/lib/modules/components/toolbar/components/vertical-frame/index.js +179 -0
- package/lib/modules/components/toolbar/hooks/use-resize-visible.d.ts +4 -0
- package/lib/modules/components/toolbar/hooks/use-resize-visible.js +59 -0
- package/lib/modules/components/toolbar/index.d.ts +29 -0
- package/lib/modules/components/toolbar/index.js +258 -0
- package/lib/modules/components/toolbar/style.css +85 -0
- package/lib/modules/components/toolbar/types.d.ts +13 -0
- package/lib/modules/components/toolbar/types.js +6 -0
- package/lib/modules/control-bar/components/more-actions/index.js +0 -6
- package/lib/modules/control-bar/components/share-state-nav/index.js +3 -2
- package/lib/modules/control-bar/index.js +2 -1
- package/lib/modules/control-bar/store.d.ts +15 -12
- package/lib/modules/control-bar/store.js +68 -29
- package/lib/modules/control-bar/view.js +33 -67
- 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.d.ts +1 -0
- package/lib/modules/dialog/dialogs/control-bar/index.js +26 -35
- package/lib/modules/dialog/dialogs/participant/components/title.js +1 -1
- package/lib/modules/dialog/dialogs/sub-window/index.d.ts +2 -0
- package/lib/modules/dialog/dialogs/sub-window/index.js +102 -0
- package/lib/modules/dialog/dialogs/video-window/index.d.ts +1 -0
- package/lib/modules/dialog/dialogs/video-window/index.js +31 -25
- package/lib/modules/dialog/dialogs/whiteboard/index.js +0 -1
- package/lib/modules/dialog/hooks/use-popover-watcher.js +1 -2
- package/lib/modules/dialog/hooks/useElectron.d.ts +13 -0
- package/lib/modules/dialog/hooks/useElectron.js +66 -13
- package/lib/modules/dialog/index.d.ts +6 -3
- package/lib/modules/dialog/index.js +5 -3
- package/lib/modules/dialog/level-config.js +1 -1
- package/lib/modules/dialog/store.d.ts +23 -9
- package/lib/modules/dialog/store.js +84 -12
- package/lib/modules/dialog/type.d.ts +8 -0
- 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 +3 -2
- package/lib/modules/event-confirm/store.d.ts +10 -5
- package/lib/modules/event-confirm/store.js +68 -20
- package/lib/modules/event-confirm/view.js +10 -8
- package/lib/modules/event-sound/index.d.ts +1 -0
- package/lib/modules/event-sound/index.js +11 -24
- 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/invite/components/pstn-invite.js +0 -1
- package/lib/modules/layout/components/CommonVideoRenderer.js +26 -26
- package/lib/modules/layout/components/who-is-speaking.js +3 -6
- package/lib/modules/layout/index.d.ts +3 -1
- package/lib/modules/layout/index.js +2 -1
- package/lib/modules/layout/store.d.ts +7 -59
- package/lib/modules/layout/store.js +133 -45
- package/lib/modules/layout/type.d.ts +55 -0
- package/lib/modules/participant/components/can-moveable/index.js +0 -1
- package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +4 -2
- package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.js +14 -2
- package/lib/modules/participant/components/participants/components/participants/components/user-row/index.d.ts +1 -1
- package/lib/modules/participant/components/participants/components/participants/components/user-row/index.js +3 -2
- package/lib/modules/participant/components/participants/components/participants/index.js +3 -2
- package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.d.ts +1 -0
- package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.js +3 -1
- package/lib/modules/participant/components/participants/components/render-user/components/user-action/index.js +4 -2
- package/lib/modules/participant/components/participants/components/render-user/index.d.ts +4 -2
- package/lib/modules/participant/components/participants/components/render-user/index.js +5 -3
- package/lib/modules/participant/components/participants/index.js +5 -2
- package/lib/modules/participant/components/participants/types.d.ts +3 -0
- package/lib/modules/participant/index.d.ts +2 -0
- package/lib/modules/participant/index.js +2 -1
- package/lib/modules/participant/member-list-data-source.js +3 -5
- package/lib/modules/participant/store.d.ts +5 -1
- package/lib/modules/participant/store.js +51 -44
- package/lib/modules/secondary-window/index.d.ts +50 -0
- package/lib/modules/secondary-window/index.js +113 -0
- package/lib/modules/secondary-window/store.d.ts +76 -0
- package/lib/modules/secondary-window/store.js +407 -0
- package/lib/modules/secondary-window/type.d.ts +110 -0
- package/lib/modules/secondary-window/type.js +35 -0
- package/lib/modules/secondary-window/view.d.ts +6 -0
- package/lib/modules/secondary-window/view.js +257 -0
- 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/general-settings/general-settings.js +9 -0
- package/lib/modules/setting/state/index.js +0 -10
- package/lib/modules/setting/store.d.ts +9 -3
- package/lib/modules/setting/store.js +110 -77
- package/lib/modules/setting/view.js +3 -2
- package/lib/modules/share-screen/components/control-bar/index.d.ts +14 -1
- package/lib/modules/share-screen/components/control-bar/index.js +17 -12
- package/lib/modules/share-screen/components/selection/index.js +16 -23
- package/lib/modules/share-screen/index.d.ts +4 -1
- package/lib/modules/share-screen/index.js +6 -3
- package/lib/modules/share-screen/store.d.ts +18 -19
- package/lib/modules/share-screen/store.js +101 -151
- package/lib/modules/share-screen/types.d.ts +7 -8
- package/lib/modules/state-bar/index.d.ts +2 -0
- package/lib/modules/state-bar/index.js +2 -1
- package/lib/modules/state-bar/live-streaming-state.js +0 -1
- package/lib/modules/state-bar/store.d.ts +5 -2
- package/lib/modules/state-bar/store.js +14 -7
- package/lib/modules/state-bar/view.js +3 -3
- package/lib/modules/video-window/components/members/index.js +10 -15
- package/lib/modules/video-window/store.d.ts +1 -0
- package/lib/modules/video-window/store.js +8 -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.d.ts +2 -2
- package/lib/modules/whiteboard/components/toolbar/store.js +2 -2
- package/lib/modules/whiteboard/index.d.ts +20 -17
- package/lib/modules/whiteboard/index.js +167 -132
- package/lib/plugins/module-dev-plugin.js +4 -0
- package/lib/providers/ability-provider.js +2 -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 +40 -31
- package/lib/providers/device-provider.js +657 -713
- 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 +90 -0
- package/lib/providers/multi-display-provider.js +593 -0
- package/lib/providers/privilege-provider.d.ts +3 -11
- package/lib/providers/privilege-provider.js +3 -12
- package/lib/providers/renderer-provider.d.ts +3 -3
- package/lib/providers/renderer-provider.js +20 -32
- package/lib/providers/room-provider.js +21 -16
- package/lib/providers/screen-share-provider.d.ts +15 -11
- package/lib/providers/screen-share-provider.js +118 -99
- package/lib/providers/sharing-provider.d.ts +7 -1
- package/lib/providers/sharing-provider.js +39 -3
- package/lib/providers/whiteboard-provider.d.ts +24 -0
- package/lib/providers/whiteboard-provider.js +128 -0
- package/lib/runtime.d.ts +1 -0
- package/lib/scenes/main-scene.d.ts +6 -0
- package/lib/scenes/main-scene.js +44 -2
- package/lib/scenes/waiting-scene.d.ts +0 -2
- package/lib/scenes/waiting-scene.js +0 -6
- 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/member-data.d.ts +2 -2
- package/lib/shared-data-source/screen-share-data.d.ts +35 -28
- package/lib/shared-data-source/screen-share-data.js +19 -8
- package/lib/shared-data-source/setting.js +4 -3
- package/lib/shared-data-source/video-window.js +1 -2
- package/lib/shared-data-source/whiteboard-data.d.ts +70 -0
- package/lib/shared-data-source/whiteboard-data.js +348 -0
- package/lib/translations/enUS.d.ts +1 -0
- package/lib/translations/enUS.js +2 -1
- package/lib/translations/zhCN.d.ts +1 -0
- package/lib/translations/zhCN.js +2 -1
- package/lib/ui-scene.d.ts +1 -0
- package/lib/ui-scene.js +77 -24
- package/lib/utilities/constant.d.ts +9 -2
- package/lib/utilities/constant.js +10 -3
- package/lib/utilities/debug.d.ts +4 -0
- package/lib/utilities/debug.js +40 -0
- 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 +56 -15
- package/lib/utilities/meeting-detail.js +4 -1
- package/lib/utilities/package-info.d.ts +3 -0
- package/lib/utilities/package-info.js +15 -0
- package/lib/utilities/renderer-event.d.ts +4 -6
- package/lib/utilities/renderer-event.js +23 -43
- package/lib/utilities/renderer.d.ts +1 -1
- package/lib/utilities/renderer.js +44 -10
- package/lib/utilities/shared-storage.d.ts +18 -0
- package/lib/utilities/shared-storage.js +63 -0
- package/lib/utilities/tools.js +2 -1
- package/lib/waiting-room-control-manager.js +6 -6
- package/package.json +6 -7
- package/public/index.html +5 -0
- package/lib/electron/tools.d.ts +0 -5
- package/lib/electron/tools.js +0 -62
|
@@ -15,6 +15,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
15
15
|
});
|
|
16
16
|
exports.shadowOffset = exports.leaveFullScreenHandler = exports.enterFullScreenHandler = exports.DialogInstanceContext = void 0;
|
|
17
17
|
exports.useElectronDialog = useElectronDialog;
|
|
18
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
19
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
18
20
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
19
21
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
20
22
|
require("core-js/modules/es.array.concat.js");
|
|
@@ -23,9 +25,11 @@ require("core-js/modules/es.array.includes.js");
|
|
|
23
25
|
require("core-js/modules/es.date.to-json.js");
|
|
24
26
|
require("core-js/modules/es.json.stringify.js");
|
|
25
27
|
require("core-js/modules/es.object.to-string.js");
|
|
28
|
+
require("core-js/modules/es.promise.js");
|
|
26
29
|
require("core-js/modules/es.string.includes.js");
|
|
27
30
|
require("core-js/modules/esnext.iterator.constructor.js");
|
|
28
31
|
require("core-js/modules/esnext.iterator.for-each.js");
|
|
32
|
+
require("core-js/modules/esnext.promise.with-resolvers.js");
|
|
29
33
|
require("core-js/modules/web.dom-collections.for-each.js");
|
|
30
34
|
var _react = require("react");
|
|
31
35
|
var _store = require("../store");
|
|
@@ -34,6 +38,7 @@ var _reactDom = require("react-dom");
|
|
|
34
38
|
var _levelConfig = require("../level-config");
|
|
35
39
|
var _dialogUtils = require("../../../utilities/dialog-utils");
|
|
36
40
|
var _constant = require("../../../utilities/constant");
|
|
41
|
+
var _mobx = require("mobx");
|
|
37
42
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
38
43
|
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; }
|
|
39
44
|
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; }
|
|
@@ -68,7 +73,8 @@ function useElectronDialog(props) {
|
|
|
68
73
|
_props$hasCustomShado = props.hasCustomShadow,
|
|
69
74
|
hasCustomShadow = _props$hasCustomShado === void 0 ? true : _props$hasCustomShado,
|
|
70
75
|
_props$disableShortcu = props.disableShortcutClose,
|
|
71
|
-
disableShortcutClose = _props$disableShortcu === void 0 ? false : _props$disableShortcu
|
|
76
|
+
disableShortcutClose = _props$disableShortcu === void 0 ? false : _props$disableShortcu,
|
|
77
|
+
beforeClose = props.beforeClose;
|
|
72
78
|
var dialogIdOrKey = dialogId || dialogKey;
|
|
73
79
|
var windowRef = (0, _react.useRef)();
|
|
74
80
|
var newRendernerWindowRef = (0, _react.useRef)();
|
|
@@ -89,7 +95,7 @@ function useElectronDialog(props) {
|
|
|
89
95
|
});
|
|
90
96
|
(0, _react.useEffect)(function () {
|
|
91
97
|
var node;
|
|
92
|
-
window.runtime.openRendererWindow(dialogIdOrKey, function (dom, browserWindow, newRendererWindow) {
|
|
98
|
+
window.runtime.openRendererWindow(dialogIdOrKey, function (dom, browserWindow, newRendererWindow, baseUrl) {
|
|
93
99
|
node = dom;
|
|
94
100
|
windowRef.current = browserWindow;
|
|
95
101
|
newRendernerWindowRef.current = newRendererWindow;
|
|
@@ -100,9 +106,12 @@ function useElectronDialog(props) {
|
|
|
100
106
|
store === null || store === void 0 || store.log("[dialog]: open dialog can I find dialog with dialogKey: ".concat(dialogKey, ": ").concat(_store.dialogWindows.has(dialogKey)));
|
|
101
107
|
_store.dialogWindows.set(dialogKey, browserWindow);
|
|
102
108
|
}
|
|
109
|
+
var isControlbar = dialogKey === _constant.FcrUIDialogKey.CONTROL_BAR;
|
|
110
|
+
var follow = isControlbar ? false : 'screen';
|
|
103
111
|
var _ref = (0, _dialogUtils.followCorrectDisplay)({
|
|
104
112
|
browserWindow: browserWindow,
|
|
105
|
-
alwaysFollowScreen: fullScreen
|
|
113
|
+
alwaysFollowScreen: fullScreen,
|
|
114
|
+
follow: follow
|
|
106
115
|
}),
|
|
107
116
|
nearDisplayBounds = _ref.nearDisplayBounds,
|
|
108
117
|
followControlbar = _ref.followControlbar;
|
|
@@ -170,7 +179,11 @@ function useElectronDialog(props) {
|
|
|
170
179
|
}
|
|
171
180
|
focus && browserWindow.focus();
|
|
172
181
|
store === null || store === void 0 || store.log("[useElectronDialog][dialog]: dialog ".concat(dialogIdOrKey, " focused"));
|
|
173
|
-
|
|
182
|
+
var _Promise$withResolver = Promise.withResolvers(),
|
|
183
|
+
promise = _Promise$withResolver.promise,
|
|
184
|
+
resolve = _Promise$withResolver.resolve;
|
|
185
|
+
function continueClose() {
|
|
186
|
+
store === null || store === void 0 || store.log("[useElectronDialog][dialog]: continueClose");
|
|
174
187
|
(0, _reactDom.unmountComponentAtNode)(node);
|
|
175
188
|
if (dialogId) {
|
|
176
189
|
store.closeDilaogByDialogId(dialogId);
|
|
@@ -180,20 +193,60 @@ function useElectronDialog(props) {
|
|
|
180
193
|
}
|
|
181
194
|
onClose === null || onClose === void 0 || onClose({
|
|
182
195
|
store: store,
|
|
183
|
-
browserWindow: browserWindow
|
|
196
|
+
browserWindow: browserWindow,
|
|
197
|
+
newRendererWindow: newRendererWindow
|
|
184
198
|
});
|
|
199
|
+
return true;
|
|
200
|
+
}
|
|
201
|
+
var dialogInstanceValue = (0, _mobx.observable)({
|
|
202
|
+
browserWindow: browserWindow,
|
|
203
|
+
newRendererWindow: newRendererWindow,
|
|
204
|
+
resizable: !!customConfigs.resizable,
|
|
205
|
+
baseUrl: baseUrl,
|
|
206
|
+
closeDialog: function closeDialog() {
|
|
207
|
+
dialogId ? store.closeDilaogByDialogId(dialogId) : store.closeDialogByKey(dialogKey);
|
|
208
|
+
},
|
|
209
|
+
continueClose: function continueClose() {
|
|
210
|
+
return resolve(false);
|
|
211
|
+
},
|
|
212
|
+
interceptedClose: false,
|
|
213
|
+
setInterceptedClose: function setInterceptedClose(interceptedClose) {
|
|
214
|
+
dialogInstanceValue.interceptedClose = interceptedClose;
|
|
215
|
+
}
|
|
185
216
|
});
|
|
217
|
+
(0, _renderer.handleWillClose)(browserWindow, /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
218
|
+
var interception;
|
|
219
|
+
return _regenerator["default"].wrap(function (_context) {
|
|
220
|
+
while (1) switch (_context.prev = _context.next) {
|
|
221
|
+
case 0:
|
|
222
|
+
interception = (beforeClose === null || beforeClose === void 0 ? void 0 : beforeClose({
|
|
223
|
+
store: store,
|
|
224
|
+
browserWindow: browserWindow,
|
|
225
|
+
newRendererWindow: newRendererWindow,
|
|
226
|
+
continueClose: function continueClose() {
|
|
227
|
+
return resolve(false);
|
|
228
|
+
}
|
|
229
|
+
})) || false;
|
|
230
|
+
dialogInstanceValue.setInterceptedClose(interception);
|
|
231
|
+
if (!interception) {
|
|
232
|
+
_context.next = 1;
|
|
233
|
+
break;
|
|
234
|
+
}
|
|
235
|
+
_context.next = 1;
|
|
236
|
+
return promise;
|
|
237
|
+
case 1:
|
|
238
|
+
continueClose();
|
|
239
|
+
return _context.abrupt("return", false);
|
|
240
|
+
case 2:
|
|
241
|
+
case "end":
|
|
242
|
+
return _context.stop();
|
|
243
|
+
}
|
|
244
|
+
}, _callee);
|
|
245
|
+
})));
|
|
186
246
|
(0, _reactDom.render)(/*#__PURE__*/(0, _jsxRuntime.jsx)(_store.StoreContext.Provider, {
|
|
187
247
|
value: store,
|
|
188
248
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(DialogInstanceContext.Provider, {
|
|
189
|
-
value:
|
|
190
|
-
browserWindow: browserWindow,
|
|
191
|
-
newRendererWindow: newRendererWindow,
|
|
192
|
-
resizable: !!customConfigs.resizable,
|
|
193
|
-
closeDialog: function closeDialog() {
|
|
194
|
-
return dialogId ? store.closeDilaogByDialogId(dialogId) : store.closeDialogByKey(dialogKey);
|
|
195
|
-
}
|
|
196
|
-
},
|
|
249
|
+
value: dialogInstanceValue,
|
|
197
250
|
children: typeof children === 'function' ? children(browserWindow) : children
|
|
198
251
|
})
|
|
199
252
|
}), dom);
|
|
@@ -3,7 +3,7 @@ import { FcrUIDeviceProvider } from '../../providers/device-provider';
|
|
|
3
3
|
import { FcrStreamControl, FcrUserControl } from 'fcr-core';
|
|
4
4
|
import { FcrChatRoomControl } from 'fcr-core/lib/room-control/chatroom-control/type';
|
|
5
5
|
import { FcrUIEventProvider } from '../../providers/event-provider';
|
|
6
|
-
import { FcrUICurrentRoomControlProvider, FcrUIMainRoomControlProvider, FcrUIWaitingRoomControlProvider } from '../../providers/room-provider';
|
|
6
|
+
import { FcrUICurrentRoomControlProvider, FcrUIMainRoomControlProvider, FcrUIRoomProvider, FcrUIWaitingRoomControlProvider } from '../../providers/room-provider';
|
|
7
7
|
import { FcrUISharedLayoutDataSource } from '../../shared-data-source/layout-data';
|
|
8
8
|
import { FcrUILocalVideoRenderProvider, FcrUIRemoteVideoRenderProvider } from '../../providers/renderer-provider';
|
|
9
9
|
import { FcrUIPrivilegeProvider } from '../../providers/privilege-provider';
|
|
@@ -13,10 +13,11 @@ import { FcrUIAbilityProviderImpl } from '../../providers/ability-provider';
|
|
|
13
13
|
import { FcrUIDialogInfo } from './type';
|
|
14
14
|
import { FcrUIWidgetProvider } from '../../providers/widget-provider';
|
|
15
15
|
import { FcrUIChatProvider } from '../../providers/chat-provider';
|
|
16
|
-
import { FcrUIScreenShareProvider } from '../../providers/screen-share-provider';
|
|
17
16
|
import { FcrUIScreenShareSharedDataSource } from '../../shared-data-source/screen-share-data';
|
|
18
17
|
import { FcrUISharedConfirmDataSource } from '../../shared-data-source/confirm-data';
|
|
19
18
|
import { FcrUIAnnotationProvider } from '../../providers/annotation-provider';
|
|
19
|
+
import { FcrUIMultiDisplayProvider } from '../../providers/multi-display-provider';
|
|
20
|
+
import { FcrUISharedSettingDataSource } from '../../shared-data-source/setting';
|
|
20
21
|
export declare class DialogUIModule extends UIModule {
|
|
21
22
|
private _dialogsByKey;
|
|
22
23
|
private _store?;
|
|
@@ -35,12 +36,14 @@ export declare class DialogUIModule extends UIModule {
|
|
|
35
36
|
mainRoomControlProvider?: FcrUIMainRoomControlProvider;
|
|
36
37
|
waitingRoomControlProvider?: FcrUIWaitingRoomControlProvider;
|
|
37
38
|
widgetProvider?: FcrUIWidgetProvider;
|
|
38
|
-
screenShareProvider: FcrUIScreenShareProvider;
|
|
39
39
|
sharedScreenShareSharedDataSource: FcrUIScreenShareSharedDataSource;
|
|
40
40
|
sharedConfirmDataSource: FcrUISharedConfirmDataSource;
|
|
41
41
|
chatProvider?: FcrUIChatProvider;
|
|
42
42
|
abilityProvider?: FcrUIAbilityProviderImpl;
|
|
43
43
|
annotationProvider?: FcrUIAnnotationProvider;
|
|
44
|
+
multiDisplayProvider?: FcrUIMultiDisplayProvider;
|
|
45
|
+
roomProvider?: FcrUIRoomProvider;
|
|
46
|
+
sharedSettingDataSource?: FcrUISharedSettingDataSource;
|
|
44
47
|
onNodeWillActive(): void;
|
|
45
48
|
onNodeWillInactive(): void;
|
|
46
49
|
getComponent(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -68,7 +68,7 @@ var DialogUIModule = exports.DialogUIModule = /*#__PURE__*/function (_UIModule)
|
|
|
68
68
|
var _this$currentRoomCont, _this$currentRoomCont2;
|
|
69
69
|
this.streamControl = (_this$currentRoomCont = this.currentRoomControlProvider) === null || _this$currentRoomCont === void 0 ? void 0 : _this$currentRoomCont.currentRoomControl.getStreamControl();
|
|
70
70
|
this.userControl = (_this$currentRoomCont2 = this.currentRoomControlProvider) === null || _this$currentRoomCont2 === void 0 ? void 0 : _this$currentRoomCont2.currentRoomControl.getUserControl();
|
|
71
|
-
if (this.userControl && this.deviceProvider && this.streamControl && this.remoteVideoRenderProvider && this.eventProvider && this.localVideoRenderProvider && this.sharedLayoutDataSource && this.dialogProvider && this.phoneAudioConnectorProvider && this.widgetProvider && this.chatProvider && this.abilityProvider && this.sharedConfirmDataSource && this.annotationProvider) {
|
|
71
|
+
if (this.userControl && this.deviceProvider && this.streamControl && this.remoteVideoRenderProvider && this.eventProvider && this.localVideoRenderProvider && this.sharedLayoutDataSource && this.dialogProvider && this.phoneAudioConnectorProvider && this.widgetProvider && this.chatProvider && this.abilityProvider && this.sharedConfirmDataSource && this.annotationProvider && this.roomProvider && this.sharedSettingDataSource) {
|
|
72
72
|
var _this$currentRoomCont3, _this$mainRoomControl, _this$waitingRoomCont;
|
|
73
73
|
this._store = new _store["default"]({
|
|
74
74
|
userControl: this.userControl,
|
|
@@ -85,10 +85,12 @@ var DialogUIModule = exports.DialogUIModule = /*#__PURE__*/function (_UIModule)
|
|
|
85
85
|
widgetProvider: this.widgetProvider,
|
|
86
86
|
chatProvider: this.chatProvider,
|
|
87
87
|
abilityProvider: this.abilityProvider,
|
|
88
|
-
screenShareProvider: this.screenShareProvider,
|
|
89
88
|
sharedScreenShareSharedDataSource: this.sharedScreenShareSharedDataSource,
|
|
90
89
|
sharedConfirmDataSource: this.sharedConfirmDataSource,
|
|
91
|
-
annotationProvider: this.annotationProvider
|
|
90
|
+
annotationProvider: this.annotationProvider,
|
|
91
|
+
multiDisplayProvider: this.multiDisplayProvider,
|
|
92
|
+
roomProvider: this.roomProvider,
|
|
93
|
+
sharedSettingDataSource: this.sharedSettingDataSource
|
|
92
94
|
});
|
|
93
95
|
}
|
|
94
96
|
}
|
|
@@ -18,4 +18,4 @@ var diffPlatformTopLevelLayer = exports.diffPlatformTopLevelLayer = (0, _platfor
|
|
|
18
18
|
* 其他窗口层级为 normal,在打开窗口时,聚焦窗口
|
|
19
19
|
*/
|
|
20
20
|
var HIGH_LEVEL_DIALOG_LAYER = exports.HIGH_LEVEL_DIALOG_LAYER = [_constant.FcrUIDialogKey.CHAT, _constant.FcrUIDialogKey.PARTICIPANT, _constant.FcrUIDialogKey.SHARE_SCREEN];
|
|
21
|
-
var TOP_LEVEL_DIALOG_LAYER = exports.TOP_LEVEL_DIALOG_LAYER = [_constant.FcrUIDialogKey.SHOW_TOAST, _constant.FcrUIDialogKey.CONFIRM, _constant.FcrUIDialogKey.CONTROL_BAR, _constant.FcrUIDialogKey.VIDEO_WINDOW, _constant.FcrUIDialogKey.ANNOTATION, _constant.FcrUIDialogKey.SYSTEM_PREFERENCE];
|
|
21
|
+
var TOP_LEVEL_DIALOG_LAYER = exports.TOP_LEVEL_DIALOG_LAYER = [_constant.FcrUIDialogKey.SHOW_TOAST, _constant.FcrUIDialogKey.CONFIRM, _constant.FcrUIDialogKey.CONTROL_BAR, _constant.FcrUIDialogKey.VIDEO_WINDOW, _constant.FcrUIDialogKey.ANNOTATION, _constant.FcrUIDialogKey.SYSTEM_PREFERENCE, _constant.FcrUIDialogKey.RENAME];
|
|
@@ -7,17 +7,19 @@ import { FcrUIEventProvider } from '../../providers/event-provider';
|
|
|
7
7
|
import { FcrUISharedLayoutDataSource } from '../../shared-data-source/layout-data';
|
|
8
8
|
import { FcrUIDialogProvider } from '../../providers/dialog-provider';
|
|
9
9
|
import { FcrUIPhoneAudioConnectorProvider } from '../../providers/phone-audio-provider';
|
|
10
|
-
import {
|
|
10
|
+
import { FcrWindowInfo } from 'fcr-core/lib/type';
|
|
11
11
|
import { CurrentShareBounds } from '../control-bar/types';
|
|
12
12
|
import { FcrUIDialogComponent } from './type';
|
|
13
13
|
import { FcrUIWidgetProvider } from '../../providers/widget-provider';
|
|
14
14
|
import { FcrUIChatProvider } from '../../providers/chat-provider';
|
|
15
15
|
import { FcrUIAbilityProviderImpl } from 'fcr-ui-scene/src/providers/ability-provider';
|
|
16
|
-
import { FcrUIScreenShareProvider } from '../../providers/screen-share-provider';
|
|
17
16
|
import { FcrUIScreenShareSharedDataSource } from '../../shared-data-source/screen-share-data';
|
|
18
17
|
import { FcrUISharedConfirmDataSource } from '../../shared-data-source/confirm-data';
|
|
19
18
|
import { CurrentShareScreenWorkArea } from '../../utilities/dialog-utils';
|
|
20
19
|
import { FcrUIAnnotationProvider } from '../../providers/annotation-provider';
|
|
20
|
+
import { FcrUIMultiDisplayProvider } from '../../providers/multi-display-provider';
|
|
21
|
+
import { FcrUIRoomProvider } from '../../providers/room-provider';
|
|
22
|
+
import { FcrUISharedSettingDataSource } from '../../shared-data-source/setting';
|
|
21
23
|
export declare let dialogWindows: Map<FcrUIDialogKey, Electron.BrowserWindow>;
|
|
22
24
|
export declare let dialogIdWindows: Map<string, Electron.BrowserWindow>;
|
|
23
25
|
export default class DialogStore {
|
|
@@ -32,17 +34,22 @@ export default class DialogStore {
|
|
|
32
34
|
private _remoteVideoRenderManager;
|
|
33
35
|
private _dialogProvider;
|
|
34
36
|
private _widgetProvider;
|
|
35
|
-
private
|
|
37
|
+
private _sharedSettingDataSource;
|
|
38
|
+
private _roomProvider;
|
|
36
39
|
private _sharedLayoutDataSource;
|
|
37
40
|
private _phoneAudioConnectorProvider;
|
|
38
41
|
private _sharedScreenShareSharedDataSource;
|
|
39
42
|
private _sharedConfirmDataSource;
|
|
40
43
|
private _dialogComponentMapByKey;
|
|
41
44
|
private _chatProvider;
|
|
42
|
-
private
|
|
43
|
-
private _userObserver;
|
|
45
|
+
private _multiDisplayProvider?;
|
|
44
46
|
private _electronDialogs;
|
|
45
47
|
private _annotationProvider;
|
|
48
|
+
private _disposers;
|
|
49
|
+
private _handleDialogEventObserver;
|
|
50
|
+
private _userObserver;
|
|
51
|
+
private _roomObserver;
|
|
52
|
+
private _handleSecondaryWindowEventObserver;
|
|
46
53
|
accessor openedDialogs: {
|
|
47
54
|
dialogKey: FcrUIDialogKey;
|
|
48
55
|
dialogId: string;
|
|
@@ -54,9 +61,10 @@ export default class DialogStore {
|
|
|
54
61
|
accessor currentDialogBounds: Map<FcrUIDialogKey, number>;
|
|
55
62
|
accessor videoWindowBounds: any;
|
|
56
63
|
accessor recordShareBounds: Map<CurrentShareBounds, CurrentShareScreenWorkArea>;
|
|
57
|
-
accessor allApplicationWindows:
|
|
64
|
+
accessor allApplicationWindows: FcrWindowInfo[];
|
|
65
|
+
accessor interceptClose: boolean;
|
|
58
66
|
get currentShareId(): string;
|
|
59
|
-
get currentShareType():
|
|
67
|
+
get currentShareType(): import("fcr-core/lib/type").FcrScreenCaptureType;
|
|
60
68
|
get currentShareBounds(): CurrentShareBounds;
|
|
61
69
|
get dialogComponentMapByKey(): Map<FcrUIDialogKey, FcrUIDialogComponent>;
|
|
62
70
|
get participantCount(): number;
|
|
@@ -71,13 +79,14 @@ export default class DialogStore {
|
|
|
71
79
|
get remoteVideoRenderManager(): FcrUIRemoteVideoRenderProvider;
|
|
72
80
|
get localVideoRenderProvider(): FcrUILocalVideoRenderProvider;
|
|
73
81
|
get waitingRoomState(): boolean;
|
|
82
|
+
get isMultiDisplayActive(): boolean;
|
|
74
83
|
get connectType(): import("../../type").FcrUIConnectType;
|
|
75
84
|
get hasOwnPstnStream(): boolean;
|
|
76
85
|
get widgetDialogIds(): Map<string, string>;
|
|
77
86
|
get chatRoomState(): import("fcr-core/lib/type").FcrChatRoomConnectionState;
|
|
78
87
|
get isSharingScreen(): boolean;
|
|
79
88
|
get isSharingScreenOwner(): boolean;
|
|
80
|
-
constructor({ eventProvider, userControl, deviceStore, streamControl, localVideoRenderProvider, remoteVideoRenderManager, securityStore, sharedLayoutDataSource, dialogProvider, phoneAudioConnectorProvider, dialogsByKey, widgetProvider,
|
|
89
|
+
constructor({ eventProvider, userControl, deviceStore, streamControl, localVideoRenderProvider, remoteVideoRenderManager, securityStore, sharedLayoutDataSource, dialogProvider, phoneAudioConnectorProvider, dialogsByKey, widgetProvider, chatProvider, sharedScreenShareSharedDataSource, sharedConfirmDataSource, annotationProvider, multiDisplayProvider, roomProvider, sharedSettingDataSource, }: {
|
|
81
90
|
streamControl: FcrStreamControl;
|
|
82
91
|
userControl: FcrUserControl;
|
|
83
92
|
eventProvider: FcrUIEventProvider;
|
|
@@ -91,11 +100,13 @@ export default class DialogStore {
|
|
|
91
100
|
dialogsByKey: Map<FcrUIDialogKey, FcrUIDialogComponent>;
|
|
92
101
|
widgetProvider: FcrUIWidgetProvider;
|
|
93
102
|
chatProvider: FcrUIChatProvider;
|
|
94
|
-
screenShareProvider: FcrUIScreenShareProvider;
|
|
95
103
|
abilityProvider: FcrUIAbilityProviderImpl;
|
|
96
104
|
sharedScreenShareSharedDataSource: FcrUIScreenShareSharedDataSource;
|
|
97
105
|
sharedConfirmDataSource: FcrUISharedConfirmDataSource;
|
|
98
106
|
annotationProvider: FcrUIAnnotationProvider;
|
|
107
|
+
multiDisplayProvider?: FcrUIMultiDisplayProvider;
|
|
108
|
+
roomProvider: FcrUIRoomProvider;
|
|
109
|
+
sharedSettingDataSource: FcrUISharedSettingDataSource;
|
|
99
110
|
});
|
|
100
111
|
setConfirmPosition(position: {
|
|
101
112
|
x: number;
|
|
@@ -114,8 +125,11 @@ export default class DialogStore {
|
|
|
114
125
|
release(): void;
|
|
115
126
|
resizeVideoWindow(width: number, height: number): void;
|
|
116
127
|
recordCurrentSharingScreenBounds(): CurrentShareScreenWorkArea;
|
|
128
|
+
moveMainWindowToIndexLeastDisplay(): void;
|
|
117
129
|
log(info: string): void;
|
|
118
130
|
private _handleDialogEvent;
|
|
119
131
|
private _hanleAllUserCountUpdated;
|
|
132
|
+
private _handleSecondaryWindowEvent;
|
|
133
|
+
private _setInterceptClose;
|
|
120
134
|
}
|
|
121
135
|
export declare const StoreContext: import("react").Context<DialogStore>;
|
|
@@ -5,7 +5,6 @@ require("core-js/modules/es.symbol.description.js");
|
|
|
5
5
|
require("core-js/modules/es.symbol.to-primitive.js");
|
|
6
6
|
require("core-js/modules/es.error.cause.js");
|
|
7
7
|
require("core-js/modules/es.error.to-string.js");
|
|
8
|
-
require("core-js/modules/es.array.for-each.js");
|
|
9
8
|
require("core-js/modules/es.array.is-array.js");
|
|
10
9
|
require("core-js/modules/es.date.to-primitive.js");
|
|
11
10
|
require("core-js/modules/es.function.bind.js");
|
|
@@ -18,9 +17,7 @@ require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
|
18
17
|
require("core-js/modules/es.object.get-own-property-descriptors.js");
|
|
19
18
|
require("core-js/modules/es.object.keys.js");
|
|
20
19
|
require("core-js/modules/esnext.function.metadata.js");
|
|
21
|
-
require("core-js/modules/esnext.iterator.for-each.js");
|
|
22
20
|
require("core-js/modules/esnext.symbol.metadata.js");
|
|
23
|
-
require("core-js/modules/web.dom-collections.for-each.js");
|
|
24
21
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
25
22
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
26
23
|
Object.defineProperty(exports, "__esModule", {
|
|
@@ -35,6 +32,7 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
|
|
|
35
32
|
require("core-js/modules/es.array.concat.js");
|
|
36
33
|
require("core-js/modules/es.array.filter.js");
|
|
37
34
|
require("core-js/modules/es.array.find.js");
|
|
35
|
+
require("core-js/modules/es.array.for-each.js");
|
|
38
36
|
require("core-js/modules/es.array.includes.js");
|
|
39
37
|
require("core-js/modules/es.array.iterator.js");
|
|
40
38
|
require("core-js/modules/es.array.push.js");
|
|
@@ -46,6 +44,7 @@ require("core-js/modules/es.weak-map.js");
|
|
|
46
44
|
require("core-js/modules/esnext.iterator.constructor.js");
|
|
47
45
|
require("core-js/modules/esnext.iterator.filter.js");
|
|
48
46
|
require("core-js/modules/esnext.iterator.find.js");
|
|
47
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
49
48
|
require("core-js/modules/esnext.iterator.some.js");
|
|
50
49
|
require("core-js/modules/esnext.map.delete-all.js");
|
|
51
50
|
require("core-js/modules/esnext.map.emplace.js");
|
|
@@ -63,6 +62,7 @@ require("core-js/modules/esnext.map.some.js");
|
|
|
63
62
|
require("core-js/modules/esnext.map.update.js");
|
|
64
63
|
require("core-js/modules/esnext.weak-map.delete-all.js");
|
|
65
64
|
require("core-js/modules/esnext.weak-map.emplace.js");
|
|
65
|
+
require("core-js/modules/web.dom-collections.for-each.js");
|
|
66
66
|
require("core-js/modules/web.dom-collections.iterator.js");
|
|
67
67
|
var _type = require("fcr-core/lib/type");
|
|
68
68
|
var _decorator = require("agora-foundation/lib/decorator");
|
|
@@ -73,9 +73,10 @@ var _constant = require("../../utilities/constant");
|
|
|
73
73
|
var _dialogProvider = require("../../providers/dialog-provider");
|
|
74
74
|
var _logger = require("../../utilities/logger");
|
|
75
75
|
var _dialogUtils = require("../../utilities/dialog-utils");
|
|
76
|
+
var _type2 = require("../secondary-window/type");
|
|
76
77
|
var _excluded = ["x", "y"];
|
|
77
78
|
var _DialogStore;
|
|
78
|
-
var _initProto, _init_openedDialogs, _init_confirmDialogs, _init_userCount, _init_participantElectronDialogContainer, _init_currentDialogBounds, _init_videoWindowBounds, _init_recordShareBounds, _init_allApplicationWindows, _setConfirmPositionDecs, _setVideoWindowBoundsDecs, _recordCurrentSharingScreenBoundsDecs, _handleDialogEventDecs, _hanleAllUserCountUpdatedDecs, _ref;
|
|
79
|
+
var _initProto, _init_openedDialogs, _init_confirmDialogs, _init_userCount, _init_participantElectronDialogContainer, _init_currentDialogBounds, _init_videoWindowBounds, _init_recordShareBounds, _init_allApplicationWindows, _init_interceptClose, _setConfirmPositionDecs, _setVideoWindowBoundsDecs, _recordCurrentSharingScreenBoundsDecs, _handleDialogEventDecs, _hanleAllUserCountUpdatedDecs, _handleSecondaryWindowEventDecs, _setInterceptCloseDecs, _ref;
|
|
79
80
|
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; }
|
|
80
81
|
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; }
|
|
81
82
|
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
|
@@ -98,7 +99,8 @@ var _E = /*#__PURE__*/new WeakMap();
|
|
|
98
99
|
var _F = /*#__PURE__*/new WeakMap();
|
|
99
100
|
var _G = /*#__PURE__*/new WeakMap();
|
|
100
101
|
var _H = /*#__PURE__*/new WeakMap();
|
|
101
|
-
|
|
102
|
+
var _I = /*#__PURE__*/new WeakMap();
|
|
103
|
+
_ref = (_setConfirmPositionDecs = [_mobx.action, _mobx.action.bound], _setVideoWindowBoundsDecs = [_mobx.action, _mobx.action.bound], _recordCurrentSharingScreenBoundsDecs = [_mobx.action, _mobx.action.bound], _handleDialogEventDecs = [_mobx.action, _mobx.action.bound], _hanleAllUserCountUpdatedDecs = [_mobx.action, _mobx.action.bound], _handleSecondaryWindowEventDecs = [_mobx.action, _mobx.action.bound], _setInterceptCloseDecs = [_mobx.action, _mobx.action.bound], "logger");
|
|
102
104
|
var DialogStore = exports["default"] = /*#__PURE__*/function () {
|
|
103
105
|
function DialogStore(_ref2) {
|
|
104
106
|
var _this = this;
|
|
@@ -114,22 +116,35 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
|
|
|
114
116
|
phoneAudioConnectorProvider = _ref2.phoneAudioConnectorProvider,
|
|
115
117
|
dialogsByKey = _ref2.dialogsByKey,
|
|
116
118
|
widgetProvider = _ref2.widgetProvider,
|
|
117
|
-
screenShareProvider = _ref2.screenShareProvider,
|
|
118
119
|
chatProvider = _ref2.chatProvider,
|
|
119
120
|
sharedScreenShareSharedDataSource = _ref2.sharedScreenShareSharedDataSource,
|
|
120
121
|
sharedConfirmDataSource = _ref2.sharedConfirmDataSource,
|
|
121
|
-
annotationProvider = _ref2.annotationProvider
|
|
122
|
+
annotationProvider = _ref2.annotationProvider,
|
|
123
|
+
multiDisplayProvider = _ref2.multiDisplayProvider,
|
|
124
|
+
roomProvider = _ref2.roomProvider,
|
|
125
|
+
sharedSettingDataSource = _ref2.sharedSettingDataSource;
|
|
122
126
|
(0, _classCallCheck2["default"])(this, DialogStore);
|
|
123
127
|
(0, _defineProperty2["default"])(this, _ref, (_initProto(this), (0, _logger.createLogger)({
|
|
124
128
|
prefix: 'DialogStore'
|
|
125
129
|
})));
|
|
130
|
+
(0, _defineProperty2["default"])(this, "_electronDialogs", new Map());
|
|
131
|
+
(0, _defineProperty2["default"])(this, "_disposers", []);
|
|
126
132
|
(0, _defineProperty2["default"])(this, "_handleDialogEventObserver", {
|
|
127
133
|
onEvent: this._handleDialogEvent
|
|
128
134
|
});
|
|
129
135
|
(0, _defineProperty2["default"])(this, "_userObserver", {
|
|
130
136
|
onAllUserCountUpdated: this._hanleAllUserCountUpdated
|
|
131
137
|
});
|
|
132
|
-
(0, _defineProperty2["default"])(this, "
|
|
138
|
+
(0, _defineProperty2["default"])(this, "_roomObserver", {
|
|
139
|
+
onExitRoom: this._setInterceptClose,
|
|
140
|
+
onRoutingChanged: this._setInterceptClose,
|
|
141
|
+
onRoomClosed: this._setInterceptClose,
|
|
142
|
+
onLeaveMainRoom: this._setInterceptClose,
|
|
143
|
+
onLocalUserKickedOut: this._setInterceptClose
|
|
144
|
+
});
|
|
145
|
+
(0, _defineProperty2["default"])(this, "_handleSecondaryWindowEventObserver", {
|
|
146
|
+
onContentDistributionUpdated: this._handleSecondaryWindowEvent
|
|
147
|
+
});
|
|
133
148
|
_classPrivateFieldInitSpec(this, _A, _init_openedDialogs(this, []));
|
|
134
149
|
_classPrivateFieldInitSpec(this, _B, _init_confirmDialogs(this, new Map()));
|
|
135
150
|
_classPrivateFieldInitSpec(this, _C, _init_userCount(this, 0));
|
|
@@ -138,6 +153,8 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
|
|
|
138
153
|
_classPrivateFieldInitSpec(this, _F, _init_videoWindowBounds(this, {}));
|
|
139
154
|
_classPrivateFieldInitSpec(this, _G, _init_recordShareBounds(this, new Map()));
|
|
140
155
|
_classPrivateFieldInitSpec(this, _H, _init_allApplicationWindows(this, []));
|
|
156
|
+
// 是否拦截窗口关闭的行为,只在退出房间时修改此值,不可作为它用,如需拦截都通过这个值进行全局控制,否则在退出房间的时候无法关闭窗口
|
|
157
|
+
_classPrivateFieldInitSpec(this, _I, _init_interceptClose(this, true));
|
|
141
158
|
this._sharedScreenShareSharedDataSource = sharedScreenShareSharedDataSource;
|
|
142
159
|
this._eventProvider = eventProvider;
|
|
143
160
|
this._streamControl = streamControl;
|
|
@@ -153,16 +170,28 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
|
|
|
153
170
|
this._dialogComponentMapByKey = dialogsByKey;
|
|
154
171
|
this._widgetProvider = widgetProvider;
|
|
155
172
|
this._chatProvider = chatProvider;
|
|
156
|
-
this._screenShareProvider = screenShareProvider;
|
|
157
173
|
this._annotationProvider = annotationProvider;
|
|
174
|
+
this._multiDisplayProvider = multiDisplayProvider;
|
|
175
|
+
this._roomProvider = roomProvider;
|
|
176
|
+
this._sharedSettingDataSource = sharedSettingDataSource;
|
|
158
177
|
this._userControl.addObserver(this._userObserver);
|
|
159
178
|
this._eventProvider.addObserver(this._handleDialogEventObserver);
|
|
160
179
|
this._dialogProvider.addObserver(this._handleDialogEventObserver);
|
|
180
|
+
this._roomProvider.addObserver(this._roomObserver);
|
|
181
|
+
if (this._multiDisplayProvider) {
|
|
182
|
+
this._multiDisplayProvider.addObserver(this._handleSecondaryWindowEventObserver);
|
|
183
|
+
}
|
|
161
184
|
this._userInfo = userControl.getLocalUser();
|
|
162
185
|
(0, _mobx.runInAction)(function () {
|
|
163
186
|
_this.userCount = _this._userControl.getAllUserCount();
|
|
164
|
-
|
|
187
|
+
// this._annotationProvider.initAnnotationWindow();
|
|
165
188
|
});
|
|
189
|
+
this._disposers.push((0, _mobx.reaction)(function () {
|
|
190
|
+
return _this._sharedSettingDataSource.settingConfig.setting.isDualDisplayMode;
|
|
191
|
+
}, function (isDualDisplayMode) {
|
|
192
|
+
console.log('isDualDisplayMode =>', isDualDisplayMode);
|
|
193
|
+
_this.interceptClose = isDualDisplayMode;
|
|
194
|
+
}));
|
|
166
195
|
}
|
|
167
196
|
return (0, _createClass2["default"])(DialogStore, [{
|
|
168
197
|
key: "openedDialogs",
|
|
@@ -228,6 +257,14 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
|
|
|
228
257
|
set: function set(v) {
|
|
229
258
|
_classPrivateFieldSet(_H, this, v);
|
|
230
259
|
}
|
|
260
|
+
}, {
|
|
261
|
+
key: "interceptClose",
|
|
262
|
+
get: function get() {
|
|
263
|
+
return _classPrivateFieldGet(_I, this);
|
|
264
|
+
},
|
|
265
|
+
set: function set(v) {
|
|
266
|
+
_classPrivateFieldSet(_I, this, v);
|
|
267
|
+
}
|
|
231
268
|
}, {
|
|
232
269
|
key: "currentShareId",
|
|
233
270
|
get: function get() {
|
|
@@ -293,6 +330,14 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
|
|
|
293
330
|
get: function get() {
|
|
294
331
|
return this._securityStore.isWaitingRoomEnabled();
|
|
295
332
|
}
|
|
333
|
+
}, {
|
|
334
|
+
key: "isMultiDisplayActive",
|
|
335
|
+
get: function get() {
|
|
336
|
+
if (this._multiDisplayProvider) {
|
|
337
|
+
return this._multiDisplayProvider.isActive;
|
|
338
|
+
}
|
|
339
|
+
return false;
|
|
340
|
+
}
|
|
296
341
|
}, {
|
|
297
342
|
key: "connectType",
|
|
298
343
|
get: function get() {
|
|
@@ -407,6 +452,13 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
|
|
|
407
452
|
this._userControl.removeObserver(this._userObserver);
|
|
408
453
|
this._dialogProvider.removeObserver(this._handleDialogEventObserver);
|
|
409
454
|
this._eventProvider.removeObserver(this._handleDialogEventObserver);
|
|
455
|
+
this._roomProvider.removeObserver(this._roomObserver);
|
|
456
|
+
if (this._multiDisplayProvider) {
|
|
457
|
+
this._multiDisplayProvider.removeObserver(this._handleSecondaryWindowEventObserver);
|
|
458
|
+
}
|
|
459
|
+
this._disposers.forEach(function (disposer) {
|
|
460
|
+
return disposer();
|
|
461
|
+
});
|
|
410
462
|
dialogWindows.clear();
|
|
411
463
|
}
|
|
412
464
|
}, {
|
|
@@ -452,6 +504,13 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
|
|
|
452
504
|
}
|
|
453
505
|
return screenBounds;
|
|
454
506
|
}
|
|
507
|
+
}, {
|
|
508
|
+
key: "moveMainWindowToIndexLeastDisplay",
|
|
509
|
+
value: function moveMainWindowToIndexLeastDisplay() {
|
|
510
|
+
if (this._multiDisplayProvider) {
|
|
511
|
+
this._multiDisplayProvider.moveMainWindowToIndexLeastDisplay();
|
|
512
|
+
}
|
|
513
|
+
}
|
|
455
514
|
}, {
|
|
456
515
|
key: "log",
|
|
457
516
|
value: function log(info) {
|
|
@@ -528,10 +587,22 @@ var DialogStore = exports["default"] = /*#__PURE__*/function () {
|
|
|
528
587
|
value: function _hanleAllUserCountUpdated(_roomId, count) {
|
|
529
588
|
this.userCount = count;
|
|
530
589
|
}
|
|
590
|
+
}, {
|
|
591
|
+
key: "_handleSecondaryWindowEvent",
|
|
592
|
+
value: function _handleSecondaryWindowEvent(distribution) {
|
|
593
|
+
if (distribution.secondaryWindow.type === _type2.FcrUIDisplayDistributionContentType.HIDDEN) {
|
|
594
|
+
this.interceptClose = false;
|
|
595
|
+
}
|
|
596
|
+
}
|
|
597
|
+
}, {
|
|
598
|
+
key: "_setInterceptClose",
|
|
599
|
+
value: function _setInterceptClose() {
|
|
600
|
+
this.interceptClose = false;
|
|
601
|
+
}
|
|
531
602
|
}]);
|
|
532
603
|
}();
|
|
533
604
|
_DialogStore = DialogStore;
|
|
534
|
-
var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_DialogStore, [[_mobx.observable, 1, "openedDialogs"], [_mobx.observable, 1, "confirmDialogs"], [_mobx.observable, 1, "userCount"], [_mobx.observable, 1, "participantElectronDialogContainer"], [_mobx.observable, 1, "currentDialogBounds"], [_mobx.observable, 1, "videoWindowBounds"], [_mobx.observable, 1, "recordShareBounds"], [_mobx.observable, 1, "allApplicationWindows"], [_mobx.computed, 3, "connectType"], [_mobx.computed, 3, "hasOwnPstnStream"], [_mobx.computed, 3, "chatRoomState"], [_mobx.computed, 3, "isSharingScreen"], [_setConfirmPositionDecs, 18, "setConfirmPosition"], [_mobx.action, 2, "setParticipantElectronDialogContainer"], [_setVideoWindowBoundsDecs, 18, "setVideoWindowBounds"], [_decorator.bound, 2, "closeDialogByKey"], [_decorator.bound, 2, "closeDilaogByDialogId"], [_decorator.bound, 2, "closeSystemPreferenceDialog"], [_decorator.bound, 2, "closeChatFromDialog"], [_decorator.bound, 2, "moveChatFromDialogToAside"], [_decorator.bound, 2, "closeConnectionDialog"], [_decorator.bound, 2, "closeParticipantDialog"], [_decorator.bound, 2, "moveParticipantFromDialogToAside"], [_decorator.bound, 2, "resizeVideoWindow"], [_recordCurrentSharingScreenBoundsDecs, 18, "recordCurrentSharingScreenBounds"], [_decorator.bound, 2, "log"], [_handleDialogEventDecs, 18, "_handleDialogEvent"], [_hanleAllUserCountUpdatedDecs, 18, "_hanleAllUserCountUpdated"]], []).e,
|
|
605
|
+
var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_DialogStore, [[_mobx.observable, 1, "openedDialogs"], [_mobx.observable, 1, "confirmDialogs"], [_mobx.observable, 1, "userCount"], [_mobx.observable, 1, "participantElectronDialogContainer"], [_mobx.observable, 1, "currentDialogBounds"], [_mobx.observable, 1, "videoWindowBounds"], [_mobx.observable, 1, "recordShareBounds"], [_mobx.observable, 1, "allApplicationWindows"], [_mobx.observable, 1, "interceptClose"], [_mobx.computed, 3, "connectType"], [_mobx.computed, 3, "hasOwnPstnStream"], [_mobx.computed, 3, "chatRoomState"], [_mobx.computed, 3, "isSharingScreen"], [_setConfirmPositionDecs, 18, "setConfirmPosition"], [_mobx.action, 2, "setParticipantElectronDialogContainer"], [_setVideoWindowBoundsDecs, 18, "setVideoWindowBounds"], [_decorator.bound, 2, "closeDialogByKey"], [_decorator.bound, 2, "closeDilaogByDialogId"], [_decorator.bound, 2, "closeSystemPreferenceDialog"], [_decorator.bound, 2, "closeChatFromDialog"], [_decorator.bound, 2, "moveChatFromDialogToAside"], [_decorator.bound, 2, "closeConnectionDialog"], [_decorator.bound, 2, "closeParticipantDialog"], [_decorator.bound, 2, "moveParticipantFromDialogToAside"], [_decorator.bound, 2, "resizeVideoWindow"], [_recordCurrentSharingScreenBoundsDecs, 18, "recordCurrentSharingScreenBounds"], [_decorator.bound, 2, "moveMainWindowToIndexLeastDisplay"], [_decorator.bound, 2, "log"], [_handleDialogEventDecs, 18, "_handleDialogEvent"], [_hanleAllUserCountUpdatedDecs, 18, "_hanleAllUserCountUpdated"], [_handleSecondaryWindowEventDecs, 18, "_handleSecondaryWindowEvent"], [_setInterceptCloseDecs, 18, "_setInterceptClose"]], []).e, 10);
|
|
535
606
|
_init_openedDialogs = _applyDecs$e[0];
|
|
536
607
|
_init_confirmDialogs = _applyDecs$e[1];
|
|
537
608
|
_init_userCount = _applyDecs$e[2];
|
|
@@ -540,5 +611,6 @@ _init_currentDialogBounds = _applyDecs$e[4];
|
|
|
540
611
|
_init_videoWindowBounds = _applyDecs$e[5];
|
|
541
612
|
_init_recordShareBounds = _applyDecs$e[6];
|
|
542
613
|
_init_allApplicationWindows = _applyDecs$e[7];
|
|
543
|
-
|
|
614
|
+
_init_interceptClose = _applyDecs$e[8];
|
|
615
|
+
_initProto = _applyDecs$e[9];
|
|
544
616
|
var StoreContext = exports.StoreContext = /*#__PURE__*/(0, _react.createContext)(null);
|
|
@@ -11,6 +11,7 @@ export type FcrUIDialogOnOpenedProps = {
|
|
|
11
11
|
export type FcrUIDialogOnCloseProps = {
|
|
12
12
|
store: DialogStore;
|
|
13
13
|
browserWindow: Electron.BrowserWindow;
|
|
14
|
+
newRendererWindow: Window;
|
|
14
15
|
};
|
|
15
16
|
export type FcrUIDialogHooksProps = {
|
|
16
17
|
/**
|
|
@@ -75,6 +76,13 @@ export type FcrUIDialogHooksProps = {
|
|
|
75
76
|
* @param disableShortcutClose - 是否可以用快捷键关闭窗口,默认为 false
|
|
76
77
|
*/
|
|
77
78
|
disableShortcutClose?: boolean;
|
|
79
|
+
/**
|
|
80
|
+
* @param beforeClose - 当 dialog 关闭前的回调函数,函数签名为 dialog 的 store
|
|
81
|
+
* @returns interception 是否允许关闭,如果返回 true,则 dialog 不会关闭
|
|
82
|
+
*/
|
|
83
|
+
beforeClose?: (props: Pick<FcrUIDialogOnOpenedProps, 'store' | 'browserWindow' | 'newRendererWindow'> & {
|
|
84
|
+
continueClose: () => void;
|
|
85
|
+
}) => boolean;
|
|
78
86
|
};
|
|
79
87
|
export type FcrUIDialogComponent = React.FC<FcrDialogProps>;
|
|
80
88
|
export type FcrDialogProps = {
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { ConfirmContentProps } from 'agora-ui-foundation/lib/components/confirm-content';
|
|
2
|
-
|
|
2
|
+
type ConfirmWindowProps = {
|
|
3
|
+
id: string;
|
|
3
4
|
confirm: ConfirmContentProps;
|
|
4
|
-
}
|
|
5
|
+
};
|
|
6
|
+
export declare const ConfirmWindow: ({ id, confirm }: ConfirmWindowProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export {};
|