fcr-ui-scene 3.7.6 → 3.7.7
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/installer/icons/icon.png +0 -0
- package/installer/mac/entitlements.mac.plist +1 -5
- package/lib/creator/index.js +12 -6
- package/lib/creator/provider-initializer.browser.js +0 -3
- package/lib/creator/provider-initializer.electron.js +0 -4
- package/lib/creator.d.ts +36 -0
- package/lib/creator.js +465 -0
- package/lib/electron/bootstrap-sdk.js +70 -20
- package/lib/electron/struct.d.ts +7 -1
- package/lib/electron/struct.js +8 -1
- package/lib/electron/until.d.ts +3 -1
- package/lib/electron/until.js +7 -2
- package/lib/modules/action-bar/components/item/index.js +1 -0
- package/lib/modules/action-bar/components/screen-share/submenu.js +1 -1
- package/lib/modules/action-bar/index.d.ts +58 -0
- package/lib/modules/action-bar/index.dev.d.ts +0 -0
- package/lib/modules/action-bar/index.dev.js +94 -0
- package/lib/modules/action-bar/index.js +109 -0
- package/lib/modules/action-bar/store.d.ts +259 -0
- package/lib/modules/action-bar/store.js +1529 -0
- package/lib/modules/action-bar/types.d.ts +90 -0
- package/lib/modules/action-bar/types.js +6 -0
- package/lib/modules/action-bar/view.d.ts +5 -0
- package/lib/modules/action-bar/view.js +112 -0
- package/lib/modules/annotation/annotation-index.d.ts +2 -0
- package/lib/modules/annotation/annotation-index.js +80 -0
- package/lib/modules/annotation/annotation-toolbar-store.d.ts +75 -0
- package/lib/modules/annotation/annotation-toolbar-store.js +459 -0
- package/lib/modules/annotation/board-cursor.css +77 -0
- package/lib/modules/annotation/components/color-picker/components/color.d.ts +5 -0
- package/lib/modules/annotation/components/color-picker/components/color.js +38 -0
- package/lib/modules/annotation/components/color-picker/components/panel.d.ts +1 -0
- package/lib/modules/annotation/components/color-picker/components/panel.js +109 -0
- package/lib/modules/annotation/components/color-picker/components/picker.d.ts +1 -0
- package/lib/modules/annotation/components/color-picker/components/picker.js +75 -0
- package/lib/modules/annotation/components/color-picker/index.d.ts +2 -0
- package/lib/modules/annotation/components/color-picker/index.js +47 -0
- package/lib/modules/annotation/components/eraser-picker.d.ts +4 -0
- package/lib/modules/annotation/components/eraser-picker.js +144 -0
- package/lib/modules/annotation/components/expansion/index.d.ts +1 -0
- package/lib/modules/annotation/components/expansion/index.js +100 -0
- package/lib/modules/annotation/components/extra-tool-picker.d.ts +1 -0
- package/lib/modules/annotation/components/extra-tool-picker.js +62 -0
- package/lib/modules/annotation/components/history.d.ts +2 -0
- package/lib/modules/annotation/components/history.js +78 -0
- package/lib/modules/annotation/components/icons/fold-icon.d.ts +2 -0
- package/lib/modules/annotation/components/icons/fold-icon.js +41 -0
- package/lib/modules/annotation/components/icons/move-icon.d.ts +1 -0
- package/lib/modules/annotation/components/icons/move-icon.js +66 -0
- package/lib/modules/annotation/components/item/index.d.ts +1 -0
- package/lib/modules/annotation/components/item/index.js +43 -0
- package/lib/modules/annotation/components/move-handle.d.ts +5 -0
- package/lib/modules/annotation/components/move-handle.js +134 -0
- package/lib/modules/annotation/components/pen-picker.d.ts +4 -0
- package/lib/modules/annotation/components/pen-picker.js +155 -0
- package/lib/modules/annotation/components/screen-capture-picker.d.ts +4 -0
- package/lib/modules/annotation/components/screen-capture-picker.js +85 -0
- package/lib/modules/annotation/components/shape-picker.d.ts +4 -0
- package/lib/modules/annotation/components/shape-picker.js +210 -0
- package/lib/modules/annotation/hooks/index.d.ts +14 -0
- package/lib/modules/annotation/hooks/index.js +292 -0
- package/lib/modules/annotation/index.d.ts +45 -0
- package/lib/modules/annotation/index.js +168 -0
- package/lib/modules/annotation/store.d.ts +98 -0
- package/lib/modules/annotation/store.js +620 -0
- package/lib/modules/annotation/style.css +36 -0
- package/lib/modules/annotation/view.d.ts +3 -0
- package/lib/modules/annotation/view.js +44 -0
- package/lib/modules/chat/index.css +5 -1
- package/lib/modules/chat/view.js +6 -1
- package/lib/modules/components/control-bar/components/switch-theme/index.css +2 -0
- package/lib/modules/components/control-bar/components/switch-theme/index.js +5 -7
- package/lib/modules/components/control-bar/index.js +26 -7
- package/lib/modules/components/device-control/store.d.ts +42 -0
- package/lib/modules/components/device-control/store.js +241 -0
- package/lib/modules/components/leave-meeting/store.d.ts +39 -0
- package/lib/modules/components/leave-meeting/store.js +270 -0
- package/lib/modules/components/toolbar/components/capture-tool/index.d.ts +0 -1
- package/lib/modules/components/toolbar/components/capture-tool/index.js +1 -2
- package/lib/modules/components/toolbar/components/vertical-frame/index.js +2 -2
- package/lib/modules/components/toolbar/hooks/use-resize-visible.js +43 -42
- package/lib/modules/components/toolbar/index.js +6 -24
- package/lib/modules/control-bar/components/annotation-button/index.d.ts +1 -0
- package/lib/modules/control-bar/components/annotation-button/index.js +72 -0
- package/lib/modules/control-bar/components/cloud-recording-buttons.d.ts +3 -0
- package/lib/modules/control-bar/components/cloud-recording-buttons.js +65 -3
- package/lib/modules/control-bar/store.js +11 -6
- package/lib/modules/control-bar/types.d.ts +20 -0
- package/lib/modules/control-bar/types.js +6 -0
- package/lib/modules/dialog/components/dialog-container/component/body.d.ts +1 -0
- package/lib/modules/dialog/components/dialog-container/component/body.js +3 -2
- package/lib/modules/dialog/components/dialog-container/index.css +1 -1
- package/lib/modules/dialog/components/dialog-container/index.d.ts +1 -0
- package/lib/modules/dialog/components/dialog-container/index.js +4 -1
- package/lib/modules/dialog/components/normal-window/index.d.ts +1 -0
- package/lib/modules/dialog/components/normal-window/index.js +3 -1
- package/lib/modules/dialog/dialogs/chat/index.js +2 -1
- package/lib/modules/dialog/dialogs/control-bar-leave-meeting/index.js +0 -1
- package/lib/modules/dialog/dialogs/end-meeting/index.d.ts +1 -0
- package/lib/modules/dialog/dialogs/end-meeting/index.js +2 -1
- package/lib/modules/dialog/dialogs/participant/index.js +2 -1
- package/lib/modules/dialog/dialogs/pre-setting/index.css +26 -0
- package/lib/modules/dialog/dialogs/pre-setting/index.d.ts +6 -0
- package/lib/modules/dialog/dialogs/pre-setting/index.js +62 -0
- package/lib/modules/dialog/dialogs/widget/electron.d.ts +6 -0
- package/lib/modules/dialog/dialogs/widget/electron.js +38 -0
- package/lib/modules/dialog/hooks/use-popover-watcher.d.ts +14 -0
- package/lib/modules/dialog/hooks/use-popover-watcher.js +110 -0
- package/lib/modules/dialog/hooks/useElectron.d.ts +28 -0
- package/lib/modules/dialog/hooks/useElectron.js +277 -0
- package/lib/modules/dialog/store.d.ts +135 -0
- package/lib/modules/dialog/store.js +616 -0
- package/lib/modules/event-confirm/components/window/index.d.ts +7 -0
- package/lib/modules/event-confirm/components/window/index.js +221 -0
- package/lib/modules/event-confirm/index.css +24 -0
- package/lib/modules/event-confirm/index.d.ts +27 -0
- package/lib/modules/event-confirm/index.js +76 -0
- package/lib/modules/event-confirm/store.d.ts +50 -0
- package/lib/modules/event-confirm/store.js +394 -0
- package/lib/modules/event-confirm/view.d.ts +2 -0
- package/lib/modules/event-confirm/view.js +55 -0
- package/lib/modules/event-toast/store.d.ts +27 -0
- package/lib/modules/event-toast/store.js +205 -0
- package/lib/modules/layout/store.d.ts +176 -0
- package/lib/modules/layout/store.electron.js +1 -1
- package/lib/modules/layout/store.js +1452 -0
- package/lib/modules/participant/store.d.ts +222 -0
- package/lib/modules/participant/store.js +1929 -0
- package/lib/modules/pc-audio-connect/index.d.ts +22 -0
- package/lib/modules/pc-audio-connect/index.js +67 -0
- package/lib/modules/pc-audio-connect/store.d.ts +46 -0
- package/lib/modules/pc-audio-connect/store.js +304 -0
- package/lib/modules/secondary-window/store.d.ts +0 -1
- package/lib/modules/secondary-window/store.js +9 -22
- package/lib/modules/secondary-window/view.js +6 -5
- package/lib/modules/setting/common/advance-link.d.ts +3 -0
- package/lib/modules/setting/common/advance-link.js +27 -0
- package/lib/modules/setting/common/index.css +26 -0
- package/lib/modules/setting/common/useNamespace.d.ts +15 -0
- package/lib/modules/setting/common/useNamespace.js +66 -0
- package/lib/modules/setting/dialog-wrapper.d.ts +2 -0
- package/lib/modules/setting/dialog-wrapper.js +110 -0
- package/lib/modules/setting/index.css +0 -1
- package/lib/modules/setting/store.base.js +6 -0
- package/lib/modules/setting/store.d.ts +261 -0
- package/lib/modules/setting/store.js +1321 -0
- package/lib/modules/setting/view.js +0 -3
- package/lib/modules/share-screen/store.d.ts +148 -0
- package/lib/modules/share-screen/store.electron.js +1 -1
- package/lib/modules/share-screen/store.js +960 -0
- package/lib/modules/share-screen/types.d.ts +26 -0
- package/lib/modules/share-screen/types.js +6 -0
- package/lib/modules/state-bar/layout-config.js +6 -0
- package/lib/modules/state-bar/main-scene/store.base.d.ts +2 -0
- package/lib/modules/state-bar/main-scene/store.base.js +6 -0
- package/lib/modules/state-bar/store.d.ts +124 -0
- package/lib/modules/state-bar/store.js +664 -0
- package/lib/modules/video-window/index.css +6 -0
- package/lib/modules/video-window/popover-watcher.d.ts +4 -1
- package/lib/modules/video-window/popover-watcher.js +15 -2
- package/lib/modules/video-window/store.d.ts +18 -1
- package/lib/modules/video-window/store.js +55 -7
- package/lib/modules/whiteboard/components/progress/electron.d.ts +1 -0
- package/lib/modules/whiteboard/components/progress/electron.js +33 -0
- package/lib/modules/whiteboard/store.js +20 -2
- package/lib/modules/widget/store.d.ts +14 -0
- package/lib/modules/widget/store.js +28 -0
- package/lib/object-manager.d.ts +0 -1
- package/lib/object-manager.js +0 -1
- package/lib/providers/annotation-provider.d.ts +124 -0
- package/lib/providers/annotation-provider.js +369 -0
- package/lib/providers/board-share/bar-control/base.d.ts +1 -1
- package/lib/providers/board-share/bar-control/base.js +37 -28
- package/lib/providers/board-share/bar-control/electron.d.ts +1 -1
- package/lib/providers/board-share/bar-control/electron.js +19 -16
- package/lib/providers/board-share/provider.browser.d.ts +3 -0
- package/lib/providers/board-share/provider.browser.js +21 -3
- package/lib/providers/device-provider.js +5 -1
- package/lib/providers/dialog/provider.electron.js +6 -0
- package/lib/providers/dialog-provider.d.ts +137 -0
- package/lib/providers/dialog-provider.js +194 -0
- package/lib/providers/message-provider.d.ts +69 -0
- package/lib/providers/message-provider.js +140 -0
- package/lib/providers/mouse-detect/provider.d.ts +5 -0
- package/lib/providers/mouse-detect/provider.js +74 -49
- package/lib/providers/multi-display-provider.d.ts +3 -5
- package/lib/providers/multi-display-provider.js +0 -9
- package/lib/providers/room-provider/room-provider.d.ts +3 -14
- package/lib/providers/room-provider/room-provider.js +5 -26
- package/lib/providers/room-provider.d.ts +194 -0
- package/lib/providers/room-provider.js +916 -0
- package/lib/providers/screen-share/stream-state-sync.js +19 -12
- package/lib/providers/screen-share-provider.d.ts +245 -0
- package/lib/providers/screen-share-provider.js +850 -0
- package/lib/providers/sharing-provider.d.ts +42 -0
- package/lib/providers/sharing-provider.js +228 -0
- package/lib/providers/user-setting-storage-provider.d.ts +21 -0
- package/lib/providers/user-setting-storage-provider.js +65 -0
- package/lib/providers/whiteboard-provider.d.ts +24 -0
- package/lib/providers/whiteboard-provider.js +128 -0
- package/lib/providers/window/main-window.d.ts +0 -5
- package/lib/providers/window/main-window.js +0 -44
- package/lib/providers/window/renderer-window.d.ts +1 -0
- package/lib/providers/window/renderer-window.js +9 -1
- package/lib/scenes/main-scene.js +0 -2
- package/lib/shared-data-source/annotation-data.d.ts +17 -0
- package/lib/shared-data-source/annotation-data.js +110 -0
- package/lib/shared-data-source/app-list-data.d.ts +34 -0
- package/lib/shared-data-source/app-list-data.js +133 -0
- package/lib/shared-data-source/chat-data.d.ts +25 -0
- package/lib/shared-data-source/chat-data.js +139 -0
- package/lib/shared-data-source/config.d.ts +35 -0
- package/lib/shared-data-source/config.js +40 -0
- package/lib/shared-data-source/confirm-data.d.ts +44 -0
- package/lib/shared-data-source/confirm-data.js +201 -0
- package/lib/shared-data-source/device-privilege-data.d.ts +8 -0
- package/lib/shared-data-source/device-privilege-data.js +25 -0
- package/lib/shared-data-source/interpreter.d.ts +77 -0
- package/lib/shared-data-source/interpreter.js +247 -0
- package/lib/shared-data-source/layout-data.d.ts +31 -0
- package/lib/shared-data-source/layout-data.js +189 -0
- package/lib/shared-data-source/meeting-time.d.ts +90 -0
- package/lib/shared-data-source/meeting-time.js +416 -0
- package/lib/shared-data-source/member-data.d.ts +139 -0
- package/lib/shared-data-source/member-data.js +517 -0
- package/lib/shared-data-source/pin-data.d.ts +13 -0
- package/lib/shared-data-source/pin-data.js +111 -0
- package/lib/shared-data-source/screen-share-data.d.ts +357 -0
- package/lib/shared-data-source/screen-share-data.js +513 -0
- package/lib/shared-data-source/security-data.d.ts +39 -0
- package/lib/shared-data-source/security-data.js +156 -0
- package/lib/shared-data-source/setting.d.ts +67 -0
- package/lib/shared-data-source/setting.js +220 -0
- package/lib/shared-data-source/speaker-spotlight.d.ts +5 -0
- package/lib/shared-data-source/speaker-spotlight.js +15 -0
- package/lib/shared-data-source/video-window.d.ts +165 -0
- package/lib/shared-data-source/video-window.js +1266 -0
- package/lib/shared-data-source/waiting-room.d.ts +46 -0
- package/lib/shared-data-source/waiting-room.js +222 -0
- package/lib/shared-data-source/whiteboard-data.d.ts +70 -0
- package/lib/{providers/board-share/bar-control.js → shared-data-source/whiteboard-data.js} +62 -104
- package/lib/ui-scene.js +4 -2
- package/lib/utilities/board-context.d.ts +4 -0
- package/lib/utilities/board-context.js +12 -0
- package/lib/utilities/copyText.d.ts +2 -0
- package/lib/utilities/copyText.js +48 -0
- package/lib/utilities/renderer-event.d.ts +10 -0
- package/lib/utilities/renderer-event.js +95 -0
- package/lib/utilities/screen-capture-permission.d.ts +2 -0
- package/lib/utilities/screen-capture-permission.js +24 -0
- package/lib/utilities/screen.d.ts +3 -0
- package/lib/utilities/screen.js +53 -0
- package/lib/utilities/video-track-render-context.d.ts +6 -0
- package/lib/utilities/video-track-render-context.js +9 -0
- package/lib/waiting-room-control-manager.d.ts +28 -0
- package/lib/waiting-room-control-manager.js +230 -0
- package/package.json +5 -5
- package/public/index.html +22 -1
- package/lib/providers/board-share/bar-control.d.ts +0 -51
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
|
-
exports.CloudRecordingButtons = void 0;
|
|
8
|
+
exports.StopCloudRecording = exports.CloudRecordingButtons = void 0;
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
8
10
|
var _mobxReact = require("mobx-react");
|
|
9
11
|
var _react = require("react");
|
|
10
12
|
var _type = require("fcr-core/lib/type");
|
|
@@ -12,8 +14,10 @@ var _icon = require("agora-ui-foundation/lib/components/icon");
|
|
|
12
14
|
var _type2 = require("agora-ui-foundation/lib/components/icon/type");
|
|
13
15
|
var _tooltip = require("agora-ui-foundation/lib/components/tooltip");
|
|
14
16
|
var _store = require("../store");
|
|
15
|
-
var _stopRecordDialog = require("../../action-bar/components/record/stop-record-dialog");
|
|
16
17
|
var _i18n = require("agora-ui-foundation/lib/i18n");
|
|
18
|
+
var _boundaryDetector = require("./boundary-detector");
|
|
19
|
+
var _popover = require("agora-ui-foundation/lib/components/popover");
|
|
20
|
+
var _context = require("../context");
|
|
17
21
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
18
22
|
var CloudRecordingButtons = exports.CloudRecordingButtons = (0, _mobxReact.observer)(function () {
|
|
19
23
|
var _useContext = (0, _react.useContext)(_store.StoreContext),
|
|
@@ -50,7 +54,7 @@ var CloudRecordingButtons = exports.CloudRecordingButtons = (0, _mobxReact.obser
|
|
|
50
54
|
}
|
|
51
55
|
})
|
|
52
56
|
})
|
|
53
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
57
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(StopCloudRecording, {
|
|
54
58
|
stopCloudRecording: stopCloudRecording,
|
|
55
59
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
|
|
56
60
|
mouseEnterDelay: 0,
|
|
@@ -67,4 +71,62 @@ var CloudRecordingButtons = exports.CloudRecordingButtons = (0, _mobxReact.obser
|
|
|
67
71
|
})
|
|
68
72
|
})]
|
|
69
73
|
});
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
// TODO: 删除重复的 StopCloudRecording 组件
|
|
77
|
+
var StopCloudRecording = exports.StopCloudRecording = (0, _mobxReact.observer)(function (_ref) {
|
|
78
|
+
var stopCloudRecording = _ref.stopCloudRecording,
|
|
79
|
+
children = _ref.children;
|
|
80
|
+
var _useContext2 = (0, _react.useContext)(_store.StoreContext),
|
|
81
|
+
setPopoverArea = _useContext2.setPopoverArea;
|
|
82
|
+
var _useState = (0, _react.useState)(false),
|
|
83
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
84
|
+
visible = _useState2[0],
|
|
85
|
+
setVisible = _useState2[1];
|
|
86
|
+
var transI18n = (0, _i18n.useI18n)();
|
|
87
|
+
var handleBoundariesChanged = (0, _react.useCallback)(function (boundaries) {
|
|
88
|
+
setPopoverArea(boundaries);
|
|
89
|
+
}, []);
|
|
90
|
+
var _useContext3 = (0, _react.useContext)(_context.ControlBarCalculationContext),
|
|
91
|
+
isShareActionNavHidden = _useContext3.isShareActionNavHidden;
|
|
92
|
+
(0, _react.useEffect)(function () {
|
|
93
|
+
if (isShareActionNavHidden) {
|
|
94
|
+
setVisible(false);
|
|
95
|
+
setPopoverArea({
|
|
96
|
+
x: 0,
|
|
97
|
+
y: 0,
|
|
98
|
+
width: 0,
|
|
99
|
+
height: 0
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
}, [isShareActionNavHidden]);
|
|
103
|
+
var content = /*#__PURE__*/(0, _jsxRuntime.jsx)(_boundaryDetector.BoundaryDetector, {
|
|
104
|
+
onBoundariesChanged: handleBoundariesChanged,
|
|
105
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
106
|
+
className: "leave-container",
|
|
107
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
108
|
+
className: "leave-title",
|
|
109
|
+
children: transI18n('fmt_actionbar_record_tips_stoprecord')
|
|
110
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
111
|
+
className: "leave-confirm",
|
|
112
|
+
onClick: stopCloudRecording,
|
|
113
|
+
children: transI18n('fmt_actionbar_record_option_stoprecord')
|
|
114
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
115
|
+
className: "leave-cancel",
|
|
116
|
+
onClick: function onClick() {
|
|
117
|
+
return setVisible(false);
|
|
118
|
+
},
|
|
119
|
+
children: transI18n('fmt_security_buttons_cancel')
|
|
120
|
+
})]
|
|
121
|
+
})
|
|
122
|
+
});
|
|
123
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_popover.FcrPopover, {
|
|
124
|
+
showArrow: false,
|
|
125
|
+
overlayClassName: "fcr-stop-cloud-recording-popover",
|
|
126
|
+
visible: visible,
|
|
127
|
+
onVisibleChange: setVisible,
|
|
128
|
+
trigger: "click",
|
|
129
|
+
content: content,
|
|
130
|
+
children: children
|
|
131
|
+
});
|
|
70
132
|
});
|
|
@@ -149,13 +149,17 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
|
|
|
149
149
|
}
|
|
150
150
|
});
|
|
151
151
|
(0, _defineProperty2["default"])(this, "_mouseDetectObserver", {
|
|
152
|
-
onMouseEnterDetectArea: function onMouseEnterDetectArea() {
|
|
153
|
-
|
|
152
|
+
onMouseEnterDetectArea: function onMouseEnterDetectArea(areaId) {
|
|
153
|
+
if (areaId === _struct.FcrUIDetectAreaID.ControlBar) {
|
|
154
|
+
_this._controlBarWindow.setIgnoreMouseEvents(false);
|
|
155
|
+
}
|
|
154
156
|
},
|
|
155
|
-
onMouseLeaveDetectArea: function onMouseLeaveDetectArea() {
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
157
|
+
onMouseLeaveDetectArea: function onMouseLeaveDetectArea(areaId) {
|
|
158
|
+
if (areaId === _struct.FcrUIDetectAreaID.ControlBar) {
|
|
159
|
+
_this._controlBarWindow.setIgnoreMouseEvents(true, {
|
|
160
|
+
forward: true
|
|
161
|
+
});
|
|
162
|
+
}
|
|
159
163
|
}
|
|
160
164
|
});
|
|
161
165
|
(0, _defineProperty2["default"])(this, "_stateNavArea", {
|
|
@@ -622,6 +626,7 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
|
|
|
622
626
|
this._mainRoomControl.removeObserver(this._roomObserver);
|
|
623
627
|
this._screenShareProvider.removeObserver(this._screenShareObserver);
|
|
624
628
|
this._mouseDetectProvider.removeObserver(this._mouseDetectObserver);
|
|
629
|
+
this._mouseDetectProvider.deleteDetectArea(_struct.FcrUIDetectAreaID.ControlBar);
|
|
625
630
|
}
|
|
626
631
|
}, {
|
|
627
632
|
key: "setStateNavArea",
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { TransferPosition } from './enums';
|
|
2
|
+
export interface MorePopoverContentProps {
|
|
3
|
+
hasChatPermission: boolean;
|
|
4
|
+
closePopover?: () => void;
|
|
5
|
+
}
|
|
6
|
+
export interface IShareStateNav {
|
|
7
|
+
onShareStateNavTransferPosition: (targetPosition: TransferPosition) => void;
|
|
8
|
+
onStopShare: () => void;
|
|
9
|
+
currentPosition: TransferPosition;
|
|
10
|
+
}
|
|
11
|
+
export interface ITransferPositionIconProps {
|
|
12
|
+
currentPosition: TransferPosition;
|
|
13
|
+
onTransferPositionButtonClick: (targetPosition: TransferPosition) => void;
|
|
14
|
+
}
|
|
15
|
+
export type CurrentShareBounds = {
|
|
16
|
+
x: number;
|
|
17
|
+
y: number;
|
|
18
|
+
width: number;
|
|
19
|
+
height: number;
|
|
20
|
+
};
|
|
@@ -14,7 +14,8 @@ var DialogContainerBody = exports.DialogContainerBody = function DialogContainer
|
|
|
14
14
|
children = _ref.children,
|
|
15
15
|
onClose = _ref.onClose,
|
|
16
16
|
autoHeight = _ref.autoHeight,
|
|
17
|
-
closable = _ref.closable
|
|
17
|
+
closable = _ref.closable,
|
|
18
|
+
hasSystemShadow = _ref.hasSystemShadow;
|
|
18
19
|
// const { bind } = useContext(DialogContainerStore);
|
|
19
20
|
|
|
20
21
|
// const { resizable } = isElectron() ? useContext(DialogInstanceContext) : { resizable: false };
|
|
@@ -38,7 +39,7 @@ var DialogContainerBody = exports.DialogContainerBody = function DialogContainer
|
|
|
38
39
|
} : {};
|
|
39
40
|
var hasClose = closable;
|
|
40
41
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
41
|
-
className: "fcr-dialog-container ".concat(!
|
|
42
|
+
className: "fcr-dialog-container ".concat(!hasSystemShadow && 'fcr-dialog-container_shadow'),
|
|
42
43
|
onClick: function onClick(e) {
|
|
43
44
|
return e.stopPropagation();
|
|
44
45
|
},
|
|
@@ -52,13 +52,15 @@ var DialogContainer = exports.DialogContainer = (0, _mobxReact.observer)(functio
|
|
|
52
52
|
maxWidth = _ref.maxWidth,
|
|
53
53
|
maxHeight = _ref.maxHeight,
|
|
54
54
|
minWidth = _ref.minWidth,
|
|
55
|
-
minHeight = _ref.minHeight
|
|
55
|
+
minHeight = _ref.minHeight,
|
|
56
|
+
hasSystemShadow = _ref.hasSystemShadow;
|
|
56
57
|
var dialogBody = /*#__PURE__*/(0, _jsxRuntime.jsx)(_body.DialogContainerBody, {
|
|
57
58
|
title: title,
|
|
58
59
|
actions: actions,
|
|
59
60
|
autoHeight: autoHeight !== null && autoHeight !== void 0 ? autoHeight : true,
|
|
60
61
|
closable: closable !== null && closable !== void 0 ? closable : true,
|
|
61
62
|
onClose: _onClose,
|
|
63
|
+
hasSystemShadow: hasSystemShadow,
|
|
62
64
|
children: children
|
|
63
65
|
});
|
|
64
66
|
if ((0, _env.isElectron)()) return dialogBody;
|
|
@@ -107,6 +109,7 @@ var DialogContainer = exports.DialogContainer = (0, _mobxReact.observer)(functio
|
|
|
107
109
|
};
|
|
108
110
|
};
|
|
109
111
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactRnd.Rnd, {
|
|
112
|
+
dragHandleClassName: 'fcr-dialog-container-header',
|
|
110
113
|
style: _objectSpread({
|
|
111
114
|
position: 'absolute',
|
|
112
115
|
touchAction: 'none',
|
|
@@ -26,7 +26,8 @@ var NormalWindow = exports.NormalWindow = (0, _mobxReact.observer)(function (_re
|
|
|
26
26
|
minWidth = _ref.minWidth,
|
|
27
27
|
minHeight = _ref.minHeight,
|
|
28
28
|
maxWidth = _ref.maxWidth,
|
|
29
|
-
maxHeight = _ref.maxHeight
|
|
29
|
+
maxHeight = _ref.maxHeight,
|
|
30
|
+
hasSystemShadow = _ref.hasSystemShadow;
|
|
30
31
|
var _useContext = (0, _react.useContext)(_store.StoreContext),
|
|
31
32
|
getDialogRootNode = _useContext.getDialogRootNode,
|
|
32
33
|
handleDialogClose = _useContext.handleDialogClose;
|
|
@@ -46,6 +47,7 @@ var NormalWindow = exports.NormalWindow = (0, _mobxReact.observer)(function (_re
|
|
|
46
47
|
maxWidth: maxWidth,
|
|
47
48
|
maxHeight: maxHeight,
|
|
48
49
|
autoHeight: autoHeight,
|
|
50
|
+
hasSystemShadow: hasSystemShadow,
|
|
49
51
|
children: body
|
|
50
52
|
});
|
|
51
53
|
if ((0, _env.isElectron)()) {
|
|
@@ -17,7 +17,6 @@ var ControlBarLeaveMeetingDialog = exports.ControlBarLeaveMeetingDialog = functi
|
|
|
17
17
|
height: 172
|
|
18
18
|
};
|
|
19
19
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_normalWindow.NormalWindow, {
|
|
20
|
-
closable: false,
|
|
21
20
|
dialogId: dialogId,
|
|
22
21
|
dialogKey: dialogKey,
|
|
23
22
|
width: config.width,
|
|
@@ -54,6 +54,7 @@ var ParticipantDialog = exports.ParticipantDialog = function ParticipantDialog(_
|
|
|
54
54
|
minWidth: windowConfig.minWidth,
|
|
55
55
|
minHeight: windowConfig.minHeight,
|
|
56
56
|
maxWidth: windowConfig.maxWidth,
|
|
57
|
-
maxHeight: windowConfig.maxHeight
|
|
57
|
+
maxHeight: windowConfig.maxHeight,
|
|
58
|
+
hasSystemShadow: true
|
|
58
59
|
});
|
|
59
60
|
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
.fcr-device-setting-dialog-wrapper {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: column;
|
|
4
|
+
height: 100%;
|
|
5
|
+
background: var(--fcr_mobile_ui_scene_color_popup_fill2);
|
|
6
|
+
border-radius: 16px;
|
|
7
|
+
box-shadow: var(--fcr_web_light_dropup);
|
|
8
|
+
border: 1px solid var(--fcr_ui_scene_line1);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.fcr-device-setting-dialog-wrapper .frc-window-header {
|
|
12
|
+
cursor: move;
|
|
13
|
+
height: 46px;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.fcr-device-setting-dialog-wrapper .fcr-device-settings {
|
|
17
|
+
height: calc(100% - 46px);
|
|
18
|
+
}
|
|
19
|
+
.fcr-device-setting-dialog-wrapper .fcr-device-settings-audio {
|
|
20
|
+
padding: 0;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.fcr-device-setting-dialog-wrapper .frc-window-header .frc-window-header__title {
|
|
24
|
+
height: 46px;
|
|
25
|
+
line-height: 46px;
|
|
26
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
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["default"] = void 0;
|
|
9
|
+
require("core-js/modules/web.timers.js");
|
|
10
|
+
var _env = require("agora-foundation/lib/utilities/env");
|
|
11
|
+
var _i18n = require("agora-ui-foundation/lib/i18n");
|
|
12
|
+
var _constant = require("../../../../utilities/constant");
|
|
13
|
+
var _normalWindow = _interopRequireDefault(require("../../components/normal-window"));
|
|
14
|
+
require("./index.css");
|
|
15
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
|
+
var ELECTRON_HEIGHT = 556;
|
|
17
|
+
var WEB_HEIGHT = 600;
|
|
18
|
+
var DeviceSettingDialog = function DeviceSettingDialog(_ref) {
|
|
19
|
+
var children = _ref.children,
|
|
20
|
+
onClose = _ref.onClose;
|
|
21
|
+
var t = (0, _i18n.useI18n)();
|
|
22
|
+
var height = (0, _env.isElectron)() ? ELECTRON_HEIGHT : WEB_HEIGHT;
|
|
23
|
+
var config = {
|
|
24
|
+
fullscreen: false,
|
|
25
|
+
maximizable: false,
|
|
26
|
+
trafficLightPosition: {
|
|
27
|
+
x: 10,
|
|
28
|
+
y: 60
|
|
29
|
+
},
|
|
30
|
+
width: 580,
|
|
31
|
+
height: 600,
|
|
32
|
+
minWidth: 580,
|
|
33
|
+
minHeight: 600,
|
|
34
|
+
maxWidth: 670,
|
|
35
|
+
maxHeight: 800,
|
|
36
|
+
title: t('fmt_settings_option_setting'),
|
|
37
|
+
resizable: false
|
|
38
|
+
};
|
|
39
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_normalWindow["default"], {
|
|
40
|
+
height: height,
|
|
41
|
+
dialogKey: _constant.FcrUIDialogKey.DEVICE_SETTINGS,
|
|
42
|
+
config: config,
|
|
43
|
+
style: {
|
|
44
|
+
zIndex: 10
|
|
45
|
+
},
|
|
46
|
+
onClose: onClose,
|
|
47
|
+
onOpened: function onOpened(_ref2) {
|
|
48
|
+
var browserWindow = _ref2.browserWindow;
|
|
49
|
+
if (browserWindow) {
|
|
50
|
+
browserWindow.setAlwaysOnTop(true);
|
|
51
|
+
setTimeout(function () {
|
|
52
|
+
browserWindow.show();
|
|
53
|
+
browserWindow.setAlwaysOnTop(false);
|
|
54
|
+
browserWindow.moveTop();
|
|
55
|
+
browserWindow.focus();
|
|
56
|
+
}, 600);
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
children: children
|
|
60
|
+
});
|
|
61
|
+
};
|
|
62
|
+
var _default = exports["default"] = DeviceSettingDialog;
|
|
@@ -0,0 +1,38 @@
|
|
|
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.WidgetElectronDialog = void 0;
|
|
8
|
+
require("core-js/modules/es.function.name.js");
|
|
9
|
+
var _constant = require("../../../../utilities/constant");
|
|
10
|
+
var _useElectron = require("../../hooks/useElectron");
|
|
11
|
+
var WidgetElectronDialog = exports.WidgetElectronDialog = function WidgetElectronDialog(_ref) {
|
|
12
|
+
var _params$popupSize, _params$popupSize2;
|
|
13
|
+
var children = _ref.children,
|
|
14
|
+
params = _ref.params,
|
|
15
|
+
dialogId = _ref.dialogId;
|
|
16
|
+
var width = (_params$popupSize = params.popupSize) !== null && _params$popupSize !== void 0 && _params$popupSize.width ? params.popupSize.width + 2 : undefined;
|
|
17
|
+
var height = (_params$popupSize2 = params.popupSize) !== null && _params$popupSize2 !== void 0 && _params$popupSize2.height ? params.popupSize.height + 76 : undefined;
|
|
18
|
+
var config = {
|
|
19
|
+
fullscreen: false,
|
|
20
|
+
maximizable: false,
|
|
21
|
+
trafficLightPosition: {
|
|
22
|
+
x: 10,
|
|
23
|
+
y: 60
|
|
24
|
+
},
|
|
25
|
+
width: width,
|
|
26
|
+
height: height,
|
|
27
|
+
title: params.name,
|
|
28
|
+
resizable: false
|
|
29
|
+
};
|
|
30
|
+
(0, _useElectron.useElectronDialog)({
|
|
31
|
+
config: config,
|
|
32
|
+
dialogKey: _constant.FcrUIDialogKey.WIDGET,
|
|
33
|
+
dialogId: dialogId,
|
|
34
|
+
children: children,
|
|
35
|
+
hasCustomShadow: false
|
|
36
|
+
});
|
|
37
|
+
return null;
|
|
38
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare function usePopoverWatcher({ wrapperClass, offset, onAdded, onRemoved, }: {
|
|
2
|
+
wrapperClass: string;
|
|
3
|
+
onAdded?: () => void;
|
|
4
|
+
onRemoved?: () => void;
|
|
5
|
+
offset?: {
|
|
6
|
+
vertical: number;
|
|
7
|
+
horizontal: number;
|
|
8
|
+
};
|
|
9
|
+
}): {
|
|
10
|
+
watcher: ({ browserWindow, newRendererWindow, }: {
|
|
11
|
+
browserWindow?: Electron.BrowserWindow;
|
|
12
|
+
newRendererWindow?: Window;
|
|
13
|
+
}) => void;
|
|
14
|
+
};
|
|
@@ -0,0 +1,110 @@
|
|
|
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.usePopoverWatcher = usePopoverWatcher;
|
|
8
|
+
require("core-js/modules/es.array.for-each.js");
|
|
9
|
+
require("core-js/modules/es.object.to-string.js");
|
|
10
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
11
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
12
|
+
require("core-js/modules/web.dom-collections.for-each.js");
|
|
13
|
+
var _lodash = require("lodash");
|
|
14
|
+
var _react = require("react");
|
|
15
|
+
function usePopoverWatcher(_ref) {
|
|
16
|
+
var wrapperClass = _ref.wrapperClass,
|
|
17
|
+
_ref$offset = _ref.offset,
|
|
18
|
+
offset = _ref$offset === void 0 ? {
|
|
19
|
+
vertical: 0,
|
|
20
|
+
horizontal: 0
|
|
21
|
+
} : _ref$offset,
|
|
22
|
+
onAdded = _ref.onAdded,
|
|
23
|
+
onRemoved = _ref.onRemoved;
|
|
24
|
+
var observerRef = (0, _react.useRef)();
|
|
25
|
+
var wrapperDomRef = (0, _react.useRef)();
|
|
26
|
+
function watcher(_ref2) {
|
|
27
|
+
var browserWindow = _ref2.browserWindow,
|
|
28
|
+
newRendererWindow = _ref2.newRendererWindow;
|
|
29
|
+
if (!newRendererWindow || !browserWindow) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
if (observerRef.current) observerRef.current.disconnect();
|
|
33
|
+
var body = newRendererWindow.document.body;
|
|
34
|
+
var browserWindowBounds = browserWindow.getBounds();
|
|
35
|
+
var threshold = calculateThreshold(browserWindow, body);
|
|
36
|
+
browserWindow.addListener(
|
|
37
|
+
// @ts-ignore
|
|
38
|
+
'custom-move', (0, _lodash.debounce)(function () {
|
|
39
|
+
threshold = calculateThreshold(browserWindow, body);
|
|
40
|
+
}, 200));
|
|
41
|
+
observerRef.current = new MutationObserver(function (mutationsList) {
|
|
42
|
+
var popover = body.querySelector('.fcr-popover');
|
|
43
|
+
wrapperDomRef.current = body.querySelector(wrapperClass);
|
|
44
|
+
var wrapper = wrapperDomRef.current;
|
|
45
|
+
mutationsList.forEach(function (mutation) {
|
|
46
|
+
if (mutation.type === 'childList') {
|
|
47
|
+
mutation.addedNodes.forEach(function (node) {
|
|
48
|
+
if (node.nodeType === Node.ELEMENT_NODE && node.contains(popover)) {
|
|
49
|
+
if (popover) {
|
|
50
|
+
var wrapperHeight = wrapper.offsetHeight,
|
|
51
|
+
wrapperWidth = wrapper.offsetWidth;
|
|
52
|
+
var offsetHeight = popover.offsetHeight,
|
|
53
|
+
popoverWidth = popover.offsetWidth,
|
|
54
|
+
offsetTop = popover.offsetTop,
|
|
55
|
+
offsetLeft = popover.offsetLeft;
|
|
56
|
+
// 如果 popover 展开,根据 popover 的尺寸调整窗口的尺寸可以正好容纳 popover
|
|
57
|
+
browserWindow.setBounds({
|
|
58
|
+
height: wrapperHeight + offsetHeight + offset.vertical,
|
|
59
|
+
width: wrapperWidth + offset.horizontal,
|
|
60
|
+
y: threshold.placement === 'top' ? threshold.y - offsetHeight : threshold.y
|
|
61
|
+
});
|
|
62
|
+
// if (wrapper) {
|
|
63
|
+
// const rect = wrapper.getBoundingClientRect();
|
|
64
|
+
// wrapper.setAttribute('style', `height: ${rect.height}px;width: ${rect.width}px`);
|
|
65
|
+
// // popover.setAttribute('style', `left: ${offsetLeft}px;top: ${offsetTop}px`);
|
|
66
|
+
// }
|
|
67
|
+
onAdded === null || onAdded === void 0 || onAdded();
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
mutation.removedNodes.forEach(function (node) {
|
|
72
|
+
var _classList;
|
|
73
|
+
if ((_classList = node.classList) !== null && _classList !== void 0 && _classList.contains('fcr-popover')) {
|
|
74
|
+
onRemoved === null || onRemoved === void 0 || onRemoved();
|
|
75
|
+
var width = browserWindowBounds.width,
|
|
76
|
+
height = browserWindowBounds.height;
|
|
77
|
+
browserWindow.setBounds({
|
|
78
|
+
width: width,
|
|
79
|
+
height: height,
|
|
80
|
+
y: threshold.y
|
|
81
|
+
});
|
|
82
|
+
browserWindow.setResizable(true);
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
});
|
|
88
|
+
observerRef.current.observe(newRendererWindow.document.body, {
|
|
89
|
+
childList: true,
|
|
90
|
+
subtree: true
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
return {
|
|
94
|
+
watcher: watcher
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
function calculateThreshold(browserWindow, body) {
|
|
98
|
+
var _body$querySelector;
|
|
99
|
+
var bounds = browserWindow.getBounds();
|
|
100
|
+
var nearDisplay = window.runtime.screen.getDisplayNearestPoint(bounds);
|
|
101
|
+
var nearDisplayBounds = nearDisplay.bounds;
|
|
102
|
+
var middleThreshold = nearDisplayBounds.height / 2;
|
|
103
|
+
var placement = bounds.y > middleThreshold ? 'top' : 'bottom';
|
|
104
|
+
(_body$querySelector = body.querySelector('#root')) === null || _body$querySelector === void 0 || _body$querySelector.setAttribute('style', "display: flex;align-items: ".concat(placement === 'top' ? 'flex-end' : 'flex-start'));
|
|
105
|
+
return {
|
|
106
|
+
placement: placement,
|
|
107
|
+
x: bounds.x,
|
|
108
|
+
y: bounds.y
|
|
109
|
+
};
|
|
110
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { FcrUIDialogHooksProps } from '../type';
|
|
2
|
+
export declare const DialogInstanceContext: import("react").Context<{
|
|
3
|
+
browserWindow: Electron.BrowserWindow;
|
|
4
|
+
newRendererWindow: Window;
|
|
5
|
+
resizable: boolean;
|
|
6
|
+
baseUrl: string;
|
|
7
|
+
closeDialog: () => void;
|
|
8
|
+
/**
|
|
9
|
+
* @param continueClose - 继续关闭窗口的回调函数
|
|
10
|
+
*/
|
|
11
|
+
continueClose: () => void;
|
|
12
|
+
/**
|
|
13
|
+
* 窗口关闭时是否已被拦截,此值只反应状态,不会影响继续关闭的逻辑
|
|
14
|
+
*/
|
|
15
|
+
interceptedClose: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* 重置被拦截状态
|
|
18
|
+
*/
|
|
19
|
+
setInterceptedClose: (interceptedClose: boolean) => void;
|
|
20
|
+
}>;
|
|
21
|
+
export declare const shadowOffset: number;
|
|
22
|
+
export declare const enterFullScreenHandler: () => void;
|
|
23
|
+
export declare const leaveFullScreenHandler: () => void;
|
|
24
|
+
export declare function useElectronDialog(props: FcrUIDialogHooksProps): {
|
|
25
|
+
store: import("../store").default;
|
|
26
|
+
browserWindow: Electron.BrowserWindow | undefined;
|
|
27
|
+
newRendererWindow: Window | undefined;
|
|
28
|
+
};
|