fcr-ui-scene 3.8.0-alpha → 3.8.0
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/fragments/whiteboard/store.js +1 -1
- package/lib/modules/caption/draggable-container/index.js +34 -12
- package/lib/modules/caption/store.d.ts +1 -4
- package/lib/modules/caption/store.js +10 -18
- package/lib/modules/caption/view.js +16 -27
- package/lib/modules/chat/store.d.ts +1 -0
- package/lib/modules/chat/store.js +2 -2
- package/lib/modules/components/caption-menu/index.d.ts +2 -0
- package/lib/modules/components/caption-menu/index.js +13 -10
- package/lib/modules/components/caption-menu/participants-privilege-control-options.js +5 -19
- package/lib/modules/components/caption-menu/translation-setting-options.js +31 -24
- package/lib/modules/control-bar/components/carmera/index.js +7 -39
- package/lib/modules/control-bar/components/cloud-recording-buttons.js +18 -33
- package/lib/modules/control-bar/components/microphone/index.js +3 -43
- package/lib/modules/control-bar/components/share-audio/index.d.ts +2 -0
- package/lib/modules/control-bar/components/share-audio/index.js +4 -10
- package/lib/modules/control-bar/hooks.d.ts +1 -0
- package/lib/modules/control-bar/hooks.js +140 -1
- package/lib/modules/control-bar/store.d.ts +3 -4
- package/lib/modules/control-bar/store.js +37 -30
- package/lib/modules/control-bar/type.d.ts +3 -0
- package/lib/modules/control-bar/view.js +40 -57
- package/lib/modules/dialog/components/confirm/index.js +0 -1
- package/lib/modules/dialog/components/dialog-container/index.js +1 -0
- package/lib/modules/event-toast/index.js +7 -1
- package/lib/modules/layout/store.base.d.ts +1 -1
- package/lib/modules/layout/store.electron.d.ts +0 -1
- package/lib/modules/layout/store.electron.js +37 -133
- package/lib/modules/participant/store.base.js +8 -10
- package/lib/modules/secondary-window/store.js +1 -3
- package/lib/modules/setting/audio-whiteList/audio-device-adaptation.d.ts +28 -0
- package/lib/modules/setting/audio-whiteList/audio-device-adaptation.js +41 -5
- package/lib/modules/setting/audio-whiteList/audio-whiteList-manager.d.ts +3 -14
- package/lib/modules/setting/audio-whiteList/audio-whiteList-manager.js +45 -24
- package/lib/modules/setting/index.js +4 -2
- package/lib/modules/setting/store.base.d.ts +5 -3
- package/lib/modules/setting/store.base.js +64 -43
- package/lib/modules/setting/store.electron.d.ts +1 -1
- package/lib/modules/setting/store.electron.js +3 -7
- package/lib/modules/setting/view.js +3 -2
- package/lib/modules/share-screen/store.electron.js +51 -23
- package/lib/modules/subtitles-history/components/list-item.js +4 -7
- package/lib/modules/subtitles-history/store.base.d.ts +3 -1
- package/lib/modules/subtitles-history/store.base.js +11 -1
- package/lib/providers/screen-share/provider.base.d.ts +2 -13
- package/lib/providers/screen-share/provider.base.js +5 -12
- package/lib/providers/screen-share/provider.electron.d.ts +0 -5
- package/lib/providers/screen-share/provider.electron.js +31 -18
- package/lib/providers/screen-share/type.d.ts +0 -16
- package/lib/providers/stt-provider/stt-provider.d.ts +3 -4
- package/lib/providers/stt-provider/stt-provider.js +145 -146
- package/lib/providers/stt-provider/type.d.ts +2 -10
- package/lib/providers/stt-provider/type.js +3 -3
- package/package.json +8 -8
|
@@ -15,7 +15,6 @@ var _type2 = require("agora-ui-foundation/lib/components/icon/type");
|
|
|
15
15
|
var _tooltip = require("agora-ui-foundation/lib/components/tooltip");
|
|
16
16
|
var _store = require("../store");
|
|
17
17
|
var _i18n = require("agora-ui-foundation/lib/i18n");
|
|
18
|
-
var _boundaryDetector = require("./boundary-detector");
|
|
19
18
|
var _popover = require("agora-ui-foundation/lib/components/popover");
|
|
20
19
|
var _context = require("../context");
|
|
21
20
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -77,48 +76,34 @@ var CloudRecordingButtons = exports.CloudRecordingButtons = (0, _mobxReact.obser
|
|
|
77
76
|
var StopCloudRecording = exports.StopCloudRecording = (0, _mobxReact.observer)(function (_ref) {
|
|
78
77
|
var stopCloudRecording = _ref.stopCloudRecording,
|
|
79
78
|
children = _ref.children;
|
|
80
|
-
var _useContext2 = (0, _react.useContext)(_store.StoreContext),
|
|
81
|
-
setPopoverArea = _useContext2.setPopoverArea;
|
|
82
79
|
var _useState = (0, _react.useState)(false),
|
|
83
80
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
84
81
|
visible = _useState2[0],
|
|
85
82
|
setVisible = _useState2[1];
|
|
86
83
|
var transI18n = (0, _i18n.useI18n)();
|
|
87
|
-
var
|
|
88
|
-
|
|
89
|
-
}, []);
|
|
90
|
-
var _useContext3 = (0, _react.useContext)(_context.ControlBarCalculationContext),
|
|
91
|
-
isShareActionNavHidden = _useContext3.isShareActionNavHidden;
|
|
84
|
+
var _useContext2 = (0, _react.useContext)(_context.ControlBarCalculationContext),
|
|
85
|
+
isShareActionNavHidden = _useContext2.isShareActionNavHidden;
|
|
92
86
|
(0, _react.useEffect)(function () {
|
|
93
87
|
if (isShareActionNavHidden) {
|
|
94
88
|
setVisible(false);
|
|
95
|
-
setPopoverArea({
|
|
96
|
-
x: 0,
|
|
97
|
-
y: 0,
|
|
98
|
-
width: 0,
|
|
99
|
-
height: 0
|
|
100
|
-
});
|
|
101
89
|
}
|
|
102
90
|
}, [isShareActionNavHidden]);
|
|
103
|
-
var content = /*#__PURE__*/(0, _jsxRuntime.
|
|
104
|
-
|
|
105
|
-
children: /*#__PURE__*/(0, _jsxRuntime.
|
|
106
|
-
className: "leave-
|
|
107
|
-
children:
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
children: transI18n('fmt_security_buttons_cancel')
|
|
120
|
-
})]
|
|
121
|
-
})
|
|
91
|
+
var content = /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
92
|
+
className: "leave-container",
|
|
93
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
94
|
+
className: "leave-title",
|
|
95
|
+
children: transI18n('fmt_actionbar_record_tips_stoprecord')
|
|
96
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
97
|
+
className: "leave-confirm",
|
|
98
|
+
onClick: stopCloudRecording,
|
|
99
|
+
children: transI18n('fmt_actionbar_record_option_stoprecord')
|
|
100
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
101
|
+
className: "leave-cancel",
|
|
102
|
+
onClick: function onClick() {
|
|
103
|
+
return setVisible(false);
|
|
104
|
+
},
|
|
105
|
+
children: transI18n('fmt_security_buttons_cancel')
|
|
106
|
+
})]
|
|
122
107
|
});
|
|
123
108
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_popover.FcrPopover, {
|
|
124
109
|
showArrow: false,
|
|
@@ -21,8 +21,6 @@ var _noneMenu = _interopRequireDefault(require("../../../components/device-contr
|
|
|
21
21
|
var _phoneMenu = _interopRequireDefault(require("../../../components/device-control/components/phone-menu"));
|
|
22
22
|
var _hooks = _interopRequireDefault(require("../../../components/device-control/hooks"));
|
|
23
23
|
var _store = require("../../../components/device-control/store.base");
|
|
24
|
-
var _boundaryDetector = require("../boundary-detector");
|
|
25
|
-
var _store2 = require("../../store");
|
|
26
24
|
var _context = require("../../context");
|
|
27
25
|
var _tooltip = require("agora-ui-foundation/lib/components/tooltip");
|
|
28
26
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -66,10 +64,8 @@ var MicrophoneControl = exports.MicrophoneControl = (0, _mobxReact.observer)(fun
|
|
|
66
64
|
checkMediaPermission = _useContext2.checkMediaPermission,
|
|
67
65
|
connectType = _useContext2.connectType,
|
|
68
66
|
microphoneState = _useContext2.microphoneState;
|
|
69
|
-
var _useContext3 = (0, _react.useContext)(
|
|
70
|
-
|
|
71
|
-
var _useContext4 = (0, _react.useContext)(_context.ControlBarCalculationContext),
|
|
72
|
-
isShareActionNavHidden = _useContext4.isShareActionNavHidden;
|
|
67
|
+
var _useContext3 = (0, _react.useContext)(_context.ControlBarCalculationContext),
|
|
68
|
+
isShareActionNavHidden = _useContext3.isShareActionNavHidden;
|
|
73
69
|
var _useDeviceTooltipVisi = (0, _hooks["default"])(),
|
|
74
70
|
popoverOpened = _useDeviceTooltipVisi.popoverOpened,
|
|
75
71
|
_setPopoverOpened = _useDeviceTooltipVisi.setPopoverOpened,
|
|
@@ -90,18 +86,9 @@ var MicrophoneControl = exports.MicrophoneControl = (0, _mobxReact.observer)(fun
|
|
|
90
86
|
iconPrimary: "var(--fcr_web_ui_scene_mainicon1)",
|
|
91
87
|
iconSecondary: 'var(--fcr_ui_scene_ramp_red6)'
|
|
92
88
|
};
|
|
93
|
-
var handleBoundariesChanged = (0, _react.useCallback)(function (boundaries) {
|
|
94
|
-
setPopoverArea(boundaries);
|
|
95
|
-
}, []);
|
|
96
89
|
(0, _react.useEffect)(function () {
|
|
97
90
|
if (isShareActionNavHidden) {
|
|
98
91
|
_setPopoverOpened(false);
|
|
99
|
-
setPopoverArea({
|
|
100
|
-
x: 0,
|
|
101
|
-
y: 0,
|
|
102
|
-
width: 0,
|
|
103
|
-
height: 0
|
|
104
|
-
});
|
|
105
92
|
}
|
|
106
93
|
}, [isShareActionNavHidden]);
|
|
107
94
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
@@ -169,48 +156,21 @@ var MicrophoneControl = exports.MicrophoneControl = (0, _mobxReact.observer)(fun
|
|
|
169
156
|
visible: popoverOpened,
|
|
170
157
|
onVisibleChange: handlePopoverVisibleChanged,
|
|
171
158
|
trigger: "click",
|
|
172
|
-
content: /*#__PURE__*/(0, _jsxRuntime.jsxs)(
|
|
173
|
-
onBoundariesChanged: handleBoundariesChanged,
|
|
159
|
+
content: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
174
160
|
children: [connectType === _type2.FcrUIConnectType.NONE && /*#__PURE__*/(0, _jsxRuntime.jsx)(_noneMenu["default"], {
|
|
175
161
|
onItemClick: function onItemClick() {
|
|
176
162
|
handlePopoverVisibleChanged(false);
|
|
177
|
-
setPopoverArea({
|
|
178
|
-
x: 0,
|
|
179
|
-
y: 0,
|
|
180
|
-
width: 0,
|
|
181
|
-
height: 0
|
|
182
|
-
});
|
|
183
163
|
}
|
|
184
164
|
}), connectType === _type2.FcrUIConnectType.COMPUTER && /*#__PURE__*/(0, _jsxRuntime.jsx)(_audioMenu["default"], {
|
|
185
165
|
setPopoverOpened: function setPopoverOpened(opened) {
|
|
186
166
|
_setPopoverOpened(opened);
|
|
187
|
-
if (!opened) {
|
|
188
|
-
setPopoverArea({
|
|
189
|
-
x: 0,
|
|
190
|
-
y: 0,
|
|
191
|
-
width: 0,
|
|
192
|
-
height: 0
|
|
193
|
-
});
|
|
194
|
-
}
|
|
195
167
|
},
|
|
196
168
|
onConnectClick: function onConnectClick() {
|
|
197
169
|
handlePopoverVisibleChanged(false);
|
|
198
|
-
setPopoverArea({
|
|
199
|
-
x: 0,
|
|
200
|
-
y: 0,
|
|
201
|
-
width: 0,
|
|
202
|
-
height: 0
|
|
203
|
-
});
|
|
204
170
|
}
|
|
205
171
|
}), connectType === _type2.FcrUIConnectType.PHONE && /*#__PURE__*/(0, _jsxRuntime.jsx)(_phoneMenu["default"], {
|
|
206
172
|
onItemClick: function onItemClick() {
|
|
207
173
|
handlePopoverVisibleChanged(false);
|
|
208
|
-
setPopoverArea({
|
|
209
|
-
x: 0,
|
|
210
|
-
y: 0,
|
|
211
|
-
width: 0,
|
|
212
|
-
height: 0
|
|
213
|
-
});
|
|
214
174
|
}
|
|
215
175
|
})]
|
|
216
176
|
}),
|
|
@@ -8,6 +8,8 @@ export interface ShareAudioProps {
|
|
|
8
8
|
currentAudioChannel?: AudioProcessingChannel;
|
|
9
9
|
onSwitchAudioChannel?: (target: AudioProcessingChannel) => void;
|
|
10
10
|
toggleShareWithAudio?: (target: boolean) => void;
|
|
11
|
+
popoverVisible: boolean;
|
|
12
|
+
setPopoverVisible: (visible: boolean) => void;
|
|
11
13
|
showInfoTip?: boolean;
|
|
12
14
|
}
|
|
13
15
|
export declare const ShareAudio: (props: ShareAudioProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -20,7 +20,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
20
20
|
});
|
|
21
21
|
exports.ShareAudio = exports.AudioProcessingChannel = void 0;
|
|
22
22
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
23
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
24
23
|
var _react = require("react");
|
|
25
24
|
require("./index.css");
|
|
26
25
|
var _i18n = require("agora-ui-foundation/lib/i18n");
|
|
@@ -45,14 +44,9 @@ var ShareAudio = exports.ShareAudio = function ShareAudio(props) {
|
|
|
45
44
|
currentAudioChannel = _props$currentAudioCh === void 0 ? AudioProcessingChannel.MONO : _props$currentAudioCh,
|
|
46
45
|
toggleShareWithAudio = props.toggleShareWithAudio,
|
|
47
46
|
_props$showInfoTip = props.showInfoTip,
|
|
48
|
-
showInfoTip = _props$showInfoTip === void 0 ? false : _props$showInfoTip
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
popoverVisible = _useState2[0],
|
|
52
|
-
setVisible = _useState2[1];
|
|
53
|
-
var handlerVisibleChange = function handlerVisibleChange(visible) {
|
|
54
|
-
setVisible(visible);
|
|
55
|
-
};
|
|
47
|
+
showInfoTip = _props$showInfoTip === void 0 ? false : _props$showInfoTip,
|
|
48
|
+
popoverVisible = props.popoverVisible,
|
|
49
|
+
setPopoverVisible = props.setPopoverVisible;
|
|
56
50
|
var shareAudioTips = (0, _react.useMemo)(function () {
|
|
57
51
|
if (!shareWithAudio) {
|
|
58
52
|
return t('fmt_screenshare_window_checkbox_shareAudio');
|
|
@@ -89,7 +83,7 @@ var ShareAudio = exports.ShareAudio = function ShareAudio(props) {
|
|
|
89
83
|
content: /*#__PURE__*/(0, _jsxRuntime.jsx)(ShareAudioOptions, _objectSpread({}, props)),
|
|
90
84
|
trigger: "click",
|
|
91
85
|
visible: popoverVisible,
|
|
92
|
-
onVisibleChange:
|
|
86
|
+
onVisibleChange: setPopoverVisible,
|
|
93
87
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
94
88
|
className: "share-audio-action-button share-selectrion",
|
|
95
89
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export declare const useBoundaryDetect: (ref: React.RefObject<HTMLDivElement>, callbacks: {
|
|
2
2
|
onBoundariesChanged: (rect: FcrUI.FcrUIRectangle) => void;
|
|
3
3
|
}) => void;
|
|
4
|
+
export declare const usePopoverWatcher: (containerRef: React.RefObject<HTMLDivElement>, setArea: (id: string, area: FcrUI.FcrUIRectangle) => void, removeArea: (id: string) => void) => void;
|
|
@@ -4,8 +4,36 @@ require("core-js/modules/es.object.define-property.js");
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.useBoundaryDetect = void 0;
|
|
7
|
+
exports.usePopoverWatcher = exports.useBoundaryDetect = void 0;
|
|
8
|
+
require("core-js/modules/es.array.concat.js");
|
|
9
|
+
require("core-js/modules/es.array.for-each.js");
|
|
10
|
+
require("core-js/modules/es.array.iterator.js");
|
|
11
|
+
require("core-js/modules/es.array.some.js");
|
|
12
|
+
require("core-js/modules/es.date.now.js");
|
|
13
|
+
require("core-js/modules/es.map.js");
|
|
14
|
+
require("core-js/modules/es.object.to-string.js");
|
|
15
|
+
require("core-js/modules/es.string.iterator.js");
|
|
16
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
17
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
18
|
+
require("core-js/modules/esnext.iterator.some.js");
|
|
19
|
+
require("core-js/modules/esnext.map.delete-all.js");
|
|
20
|
+
require("core-js/modules/esnext.map.emplace.js");
|
|
21
|
+
require("core-js/modules/esnext.map.every.js");
|
|
22
|
+
require("core-js/modules/esnext.map.filter.js");
|
|
23
|
+
require("core-js/modules/esnext.map.find.js");
|
|
24
|
+
require("core-js/modules/esnext.map.find-key.js");
|
|
25
|
+
require("core-js/modules/esnext.map.includes.js");
|
|
26
|
+
require("core-js/modules/esnext.map.key-of.js");
|
|
27
|
+
require("core-js/modules/esnext.map.map-keys.js");
|
|
28
|
+
require("core-js/modules/esnext.map.map-values.js");
|
|
29
|
+
require("core-js/modules/esnext.map.merge.js");
|
|
30
|
+
require("core-js/modules/esnext.map.reduce.js");
|
|
31
|
+
require("core-js/modules/esnext.map.some.js");
|
|
32
|
+
require("core-js/modules/esnext.map.update.js");
|
|
33
|
+
require("core-js/modules/web.dom-collections.for-each.js");
|
|
34
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
8
35
|
var _schedule = require("agora-foundation/lib/schedule");
|
|
36
|
+
var _lodash = require("lodash");
|
|
9
37
|
var _react = require("react");
|
|
10
38
|
var useBoundaryDetect = exports.useBoundaryDetect = function useBoundaryDetect(ref, callbacks) {
|
|
11
39
|
(0, _react.useEffect)(function () {
|
|
@@ -33,4 +61,115 @@ var useBoundaryDetect = exports.useBoundaryDetect = function useBoundaryDetect(r
|
|
|
33
61
|
}
|
|
34
62
|
};
|
|
35
63
|
}, [callbacks]);
|
|
64
|
+
};
|
|
65
|
+
var handlePositionChange = function handlePositionChange(popover, _onChange) {
|
|
66
|
+
var lastRect = null;
|
|
67
|
+
var onChange = (0, _lodash.debounce)(_onChange, 300);
|
|
68
|
+
var readRect = function readRect() {
|
|
69
|
+
var domRect = popover.getBoundingClientRect();
|
|
70
|
+
return {
|
|
71
|
+
x: domRect.left,
|
|
72
|
+
y: domRect.top,
|
|
73
|
+
width: domRect.width,
|
|
74
|
+
height: domRect.height
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
var notifyIfChanged = function notifyIfChanged() {
|
|
78
|
+
var nextRect = readRect();
|
|
79
|
+
if (!lastRect || lastRect.x !== nextRect.x || lastRect.y !== nextRect.y || lastRect.width !== nextRect.width || lastRect.height !== nextRect.height) {
|
|
80
|
+
lastRect = nextRect;
|
|
81
|
+
onChange(nextRect);
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
notifyIfChanged();
|
|
85
|
+
var observer = new MutationObserver(function (mutationsList) {
|
|
86
|
+
var shouldUpdate = mutationsList.some(function (mutation) {
|
|
87
|
+
return mutation.type === 'attributes' && mutation.attributeName === 'style';
|
|
88
|
+
});
|
|
89
|
+
if (shouldUpdate) {
|
|
90
|
+
notifyIfChanged();
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
observer.observe(popover, {
|
|
94
|
+
attributes: true,
|
|
95
|
+
attributeFilter: ['style']
|
|
96
|
+
});
|
|
97
|
+
return function () {
|
|
98
|
+
onChange.cancel();
|
|
99
|
+
observer.disconnect();
|
|
100
|
+
};
|
|
101
|
+
};
|
|
102
|
+
var usePopoverWatcher = exports.usePopoverWatcher = function usePopoverWatcher(containerRef, setArea, removeArea) {
|
|
103
|
+
(0, _react.useEffect)(function () {
|
|
104
|
+
if (containerRef.current === null) return;
|
|
105
|
+
var countNum = 0;
|
|
106
|
+
var body = containerRef.current.ownerDocument.body;
|
|
107
|
+
var popoverClassName = 'fcr-popover';
|
|
108
|
+
var popoverObservers = new Map();
|
|
109
|
+
var getPopoverElement = function getPopoverElement(node) {
|
|
110
|
+
if (node.classList.contains(popoverClassName)) {
|
|
111
|
+
return node;
|
|
112
|
+
} else {
|
|
113
|
+
return node.querySelector(".".concat(popoverClassName));
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
var observer = new MutationObserver(function (mutationsList) {
|
|
117
|
+
mutationsList.forEach(function (mutation) {
|
|
118
|
+
if (mutation.type !== 'childList') {
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
mutation.addedNodes.forEach(function (node) {
|
|
122
|
+
if (node.nodeType !== Node.ELEMENT_NODE) {
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
var popover = getPopoverElement(node);
|
|
126
|
+
if (!popover) {
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
var popoverElementId = popover.getAttribute('data-popover-id');
|
|
130
|
+
if (popoverElementId) {
|
|
131
|
+
if (popoverObservers.has(popoverElementId)) {
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
} else {
|
|
135
|
+
popoverElementId = "".concat(popoverClassName, "-").concat(Date.now(), "-").concat(countNum++, "}");
|
|
136
|
+
popover.setAttribute('data-popover-id', popoverElementId);
|
|
137
|
+
}
|
|
138
|
+
popoverObservers.set(popoverElementId, handlePositionChange(popover, function (rect) {
|
|
139
|
+
setArea(popoverElementId, rect);
|
|
140
|
+
}));
|
|
141
|
+
});
|
|
142
|
+
mutation.removedNodes.forEach(function (node) {
|
|
143
|
+
if (node.nodeType !== Node.ELEMENT_NODE) {
|
|
144
|
+
return;
|
|
145
|
+
}
|
|
146
|
+
var popover = getPopoverElement(node);
|
|
147
|
+
if (!popover) {
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
var popoverElementId = popover.getAttribute('data-popover-id');
|
|
151
|
+
if (popoverElementId) {
|
|
152
|
+
var disconnect = popoverObservers.get(popoverElementId);
|
|
153
|
+
if (disconnect) {
|
|
154
|
+
disconnect();
|
|
155
|
+
popoverObservers["delete"](popoverElementId);
|
|
156
|
+
}
|
|
157
|
+
removeArea(popoverElementId);
|
|
158
|
+
}
|
|
159
|
+
});
|
|
160
|
+
});
|
|
161
|
+
});
|
|
162
|
+
observer.observe(body, {
|
|
163
|
+
childList: true,
|
|
164
|
+
subtree: true
|
|
165
|
+
});
|
|
166
|
+
return function () {
|
|
167
|
+
observer.disconnect();
|
|
168
|
+
popoverObservers.forEach(function (disconnect, key) {
|
|
169
|
+
disconnect();
|
|
170
|
+
removeArea(key);
|
|
171
|
+
});
|
|
172
|
+
popoverObservers.clear();
|
|
173
|
+
};
|
|
174
|
+
}, [containerRef.current]);
|
|
36
175
|
};
|
|
@@ -29,9 +29,6 @@ export default class ControlBarStore implements FcrUIManagedObject {
|
|
|
29
29
|
private _controlBarWindow;
|
|
30
30
|
private _screenShareObserver;
|
|
31
31
|
private _mouseDetectObserver;
|
|
32
|
-
private _stateNavArea;
|
|
33
|
-
private _contentArea;
|
|
34
|
-
private _popoverArea;
|
|
35
32
|
accessor roomDuration: number;
|
|
36
33
|
accessor startTime: number;
|
|
37
34
|
accessor cloudRecordingState: FcrRecordingState;
|
|
@@ -50,6 +47,7 @@ export default class ControlBarStore implements FcrUIManagedObject {
|
|
|
50
47
|
accessor meetingId: string;
|
|
51
48
|
accessor localUserName: string;
|
|
52
49
|
accessor titleHeight: number;
|
|
50
|
+
private _detectAreas;
|
|
53
51
|
get isSharingWithAudio(): boolean;
|
|
54
52
|
get isInSmoothMode(): boolean;
|
|
55
53
|
get hasSecurityPermission(): boolean;
|
|
@@ -100,9 +98,10 @@ export default class ControlBarStore implements FcrUIManagedObject {
|
|
|
100
98
|
setEnableWaitingRoom(enable: boolean): void;
|
|
101
99
|
getLocalMeetingTime(): string | null;
|
|
102
100
|
release(): void;
|
|
101
|
+
setArea(id: string, area: FcrUI.FcrUIRectangle): void;
|
|
102
|
+
removeArea(id: string): void;
|
|
103
103
|
setStateNavArea(area: FcrUI.FcrUIRectangle): void;
|
|
104
104
|
setControlBarContentArea(area: FcrUI.FcrUIRectangle): void;
|
|
105
|
-
setPopoverArea(area: FcrUI.FcrUIRectangle): void;
|
|
106
105
|
handleLeaveRoom(): void;
|
|
107
106
|
closeLeaveMeetingDialog(): void;
|
|
108
107
|
handleMoreClick(actionKey: MoreAction): void;
|
|
@@ -6,15 +6,17 @@ 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
8
|
require("core-js/modules/es.array.is-array.js");
|
|
9
|
-
require("core-js/modules/es.array.push.js");
|
|
10
9
|
require("core-js/modules/es.date.to-primitive.js");
|
|
11
10
|
require("core-js/modules/es.function.bind.js");
|
|
12
11
|
require("core-js/modules/es.function.name.js");
|
|
13
12
|
require("core-js/modules/es.map.js");
|
|
14
13
|
require("core-js/modules/es.number.constructor.js");
|
|
15
14
|
require("core-js/modules/es.object.create.js");
|
|
15
|
+
require("core-js/modules/es.object.define-properties.js");
|
|
16
16
|
require("core-js/modules/es.object.define-property.js");
|
|
17
17
|
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
18
|
+
require("core-js/modules/es.object.get-own-property-descriptors.js");
|
|
19
|
+
require("core-js/modules/es.object.keys.js");
|
|
18
20
|
require("core-js/modules/esnext.function.metadata.js");
|
|
19
21
|
require("core-js/modules/esnext.map.delete-all.js");
|
|
20
22
|
require("core-js/modules/esnext.map.emplace.js");
|
|
@@ -37,14 +39,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
37
39
|
value: true
|
|
38
40
|
});
|
|
39
41
|
exports["default"] = exports.StoreContext = void 0;
|
|
42
|
+
require("core-js/modules/es.array.filter.js");
|
|
40
43
|
require("core-js/modules/es.array.for-each.js");
|
|
41
44
|
require("core-js/modules/es.array.includes.js");
|
|
42
45
|
require("core-js/modules/es.array.iterator.js");
|
|
46
|
+
require("core-js/modules/es.array.push.js");
|
|
43
47
|
require("core-js/modules/es.date.to-string.js");
|
|
44
48
|
require("core-js/modules/es.object.to-string.js");
|
|
45
49
|
require("core-js/modules/es.string.iterator.js");
|
|
46
50
|
require("core-js/modules/es.weak-map.js");
|
|
47
51
|
require("core-js/modules/esnext.iterator.constructor.js");
|
|
52
|
+
require("core-js/modules/esnext.iterator.filter.js");
|
|
48
53
|
require("core-js/modules/esnext.iterator.for-each.js");
|
|
49
54
|
require("core-js/modules/esnext.weak-map.delete-all.js");
|
|
50
55
|
require("core-js/modules/esnext.weak-map.emplace.js");
|
|
@@ -73,6 +78,8 @@ var _platform = require("../../utilities/platform");
|
|
|
73
78
|
var _struct = require("../../providers/mouse-detect/struct");
|
|
74
79
|
var _ControlBarStore;
|
|
75
80
|
var _initProto, _init_roomDuration, _init_startTime, _init_cloudRecordingState, _init_playUrl, _init_liveStreamingState, _init_allApplicationWindows, _init_boardOwnerUser, _init_currentShareDisplayId, _init_position, _init_appActionbarPopoverVisible, _setCheckedStateMapDecs, _showLockedRoomToastDecs, _handleNewShareDecs, _handlerStopShareDecs, _pauseCloudRecordingDecs, _resumeCloudRecordingDecs, _stopCloudRecordingDecs, _showToastDecs, _handleLeaveRoomDecs, _closeLeaveMeetingDialogDecs, _handleMoreClickDecs, _setAppActionbarPopoverVisibleDecs, _ref;
|
|
81
|
+
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; }
|
|
82
|
+
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; }
|
|
76
83
|
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
|
77
84
|
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
|
|
78
85
|
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
|
|
@@ -178,24 +185,6 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
|
|
|
178
185
|
}
|
|
179
186
|
}
|
|
180
187
|
});
|
|
181
|
-
(0, _defineProperty2["default"])(this, "_stateNavArea", {
|
|
182
|
-
x: 0,
|
|
183
|
-
y: 0,
|
|
184
|
-
width: 0,
|
|
185
|
-
height: 0
|
|
186
|
-
});
|
|
187
|
-
(0, _defineProperty2["default"])(this, "_contentArea", {
|
|
188
|
-
x: 0,
|
|
189
|
-
y: 0,
|
|
190
|
-
width: 0,
|
|
191
|
-
height: 0
|
|
192
|
-
});
|
|
193
|
-
(0, _defineProperty2["default"])(this, "_popoverArea", {
|
|
194
|
-
x: 0,
|
|
195
|
-
y: 0,
|
|
196
|
-
width: 0,
|
|
197
|
-
height: 0
|
|
198
|
-
});
|
|
199
188
|
_classPrivateFieldInitSpec(this, _F, _init_roomDuration(this));
|
|
200
189
|
_classPrivateFieldInitSpec(this, _G, _init_startTime(this));
|
|
201
190
|
_classPrivateFieldInitSpec(this, _H, _init_cloudRecordingState(this, _type.FcrRecordingState.Stopped));
|
|
@@ -388,6 +377,11 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
|
|
|
388
377
|
set: function set(v) {
|
|
389
378
|
_classPrivateFieldSet(_E, this, v);
|
|
390
379
|
}
|
|
380
|
+
}, {
|
|
381
|
+
key: "_detectAreas",
|
|
382
|
+
value: function _detectAreas() {
|
|
383
|
+
return this._mouseDetectProvider.getDetectAreas(_struct.FcrUIDetectAreaID.ControlBar);
|
|
384
|
+
}
|
|
391
385
|
}, {
|
|
392
386
|
key: "isSharingWithAudio",
|
|
393
387
|
get: function get() {
|
|
@@ -664,23 +658,36 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
|
|
|
664
658
|
this._mouseDetectProvider.removeObserver(this._mouseDetectObserver);
|
|
665
659
|
this._mouseDetectProvider.deleteDetectArea(_struct.FcrUIDetectAreaID.ControlBar);
|
|
666
660
|
}
|
|
661
|
+
}, {
|
|
662
|
+
key: "setArea",
|
|
663
|
+
value: function setArea(id, area) {
|
|
664
|
+
var currentOtherAreas = this._detectAreas().filter(function (item) {
|
|
665
|
+
return item.id !== id;
|
|
666
|
+
});
|
|
667
|
+
currentOtherAreas.push(_objectSpread({
|
|
668
|
+
id: id
|
|
669
|
+
}, area));
|
|
670
|
+
this._mouseDetectProvider.setDetectArea(_struct.FcrUIDetectAreaID.ControlBar, currentOtherAreas);
|
|
671
|
+
}
|
|
672
|
+
}, {
|
|
673
|
+
key: "removeArea",
|
|
674
|
+
value: function removeArea(id) {
|
|
675
|
+
var currentOtherAreas = this._detectAreas().filter(function (item) {
|
|
676
|
+
return item.id !== id;
|
|
677
|
+
});
|
|
678
|
+
this._mouseDetectProvider.setDetectArea(_struct.FcrUIDetectAreaID.ControlBar, currentOtherAreas);
|
|
679
|
+
}
|
|
667
680
|
}, {
|
|
668
681
|
key: "setStateNavArea",
|
|
669
682
|
value: function setStateNavArea(area) {
|
|
670
|
-
|
|
671
|
-
this.
|
|
683
|
+
var id = 'state-nav-area';
|
|
684
|
+
this.setArea(id, area);
|
|
672
685
|
}
|
|
673
686
|
}, {
|
|
674
687
|
key: "setControlBarContentArea",
|
|
675
688
|
value: function setControlBarContentArea(area) {
|
|
676
|
-
|
|
677
|
-
this.
|
|
678
|
-
}
|
|
679
|
-
}, {
|
|
680
|
-
key: "setPopoverArea",
|
|
681
|
-
value: function setPopoverArea(area) {
|
|
682
|
-
this._popoverArea = area;
|
|
683
|
-
this._mouseDetectProvider.setDetectArea(_struct.FcrUIDetectAreaID.ControlBar, [this._stateNavArea, this._contentArea, this._popoverArea]);
|
|
689
|
+
var id = 'control-bar-content-area';
|
|
690
|
+
this.setArea(id, area);
|
|
684
691
|
}
|
|
685
692
|
}, {
|
|
686
693
|
key: "handleLeaveRoom",
|
|
@@ -764,7 +771,7 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
|
|
|
764
771
|
}]);
|
|
765
772
|
}();
|
|
766
773
|
_ControlBarStore = ControlBarStore;
|
|
767
|
-
var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_ControlBarStore, [[_mobx.observable, 1, "roomDuration"], [_mobx.observable, 1, "startTime"], [_mobx.observable, 1, "cloudRecordingState"], [_mobx.observable, 1, "playUrl"], [_mobx.observable, 1, "liveStreamingState"], [_mobx.observable, 1, "allApplicationWindows"], [_mobx.observable, 1, "boardOwnerUser"], [_mobx.observable, 1, "currentShareDisplayId"], [_mobx.observable, 1, "position"], [_mobx.observable, 1, "appActionbarPopoverVisible"], [_mobx.computed, 3, "hasEndRoomPermission"], [_mobx.computed, 3, "hasGetLiveStreamingUrlPermission"], [_mobx.computed, 3, "hasStartCloudRecordingPermission"], [_mobx.computed, 3, "hasStartLiveStreamingPermission"], [_mobx.computed, 3, "hasChatPermission"], [_mobx.computed, 3, "liveStreamingButtonVisible"], [_mobx.computed, 3, "recordingButtonVisible"], [_mobx.computed, 3, "isConnecting"], [_setCheckedStateMapDecs, 18, "setCheckedStateMap"], [_decorator.bound, 2, "setShareWithAudioState"], [_decorator.bound, 2, "setShareInSmoothMode"], [_showLockedRoomToastDecs, 18, "showLockedRoomToast"], [_handleNewShareDecs, 18, "handleNewShare"], [_handlerStopShareDecs, 18, "handlerStopShare"], [_decorator.bound, 2, "handleMouseEnter"], [_decorator.bound, 2, "handleMouseLeave"], [_decorator.bound, 2, "openLiveStreamingDialog"], [_decorator.bound, 2, "setShareAudioMode"], [_pauseCloudRecordingDecs, 2, "pauseCloudRecording"], [_resumeCloudRecordingDecs, 2, "resumeCloudRecording"], [_stopCloudRecordingDecs, 2, "stopCloudRecording"], [_decorator.bound, 2, "startCloudRecording"], [_decorator.bound, 2, "startLiveStreaming"], [_decorator.bound, 2, "stopLiveStreaming"], [_showToastDecs, 18, "showToast"], [_decorator.bound, 2, "handleOpenParticipant"], [_decorator.bound, 2, "handleOpenLiveStreaming"], [_decorator.bound, 2, "setEnableWaitingRoom"], [_decorator.bound, 2, "getLocalMeetingTime"], [[_decorator.bound, _decorator.trace], 2, "
|
|
774
|
+
var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_ControlBarStore, [[_mobx.observable, 1, "roomDuration"], [_mobx.observable, 1, "startTime"], [_mobx.observable, 1, "cloudRecordingState"], [_mobx.observable, 1, "playUrl"], [_mobx.observable, 1, "liveStreamingState"], [_mobx.observable, 1, "allApplicationWindows"], [_mobx.observable, 1, "boardOwnerUser"], [_mobx.observable, 1, "currentShareDisplayId"], [_mobx.observable, 1, "position"], [_mobx.observable, 1, "appActionbarPopoverVisible"], [_mobx.computed, 3, "hasEndRoomPermission"], [_mobx.computed, 3, "hasGetLiveStreamingUrlPermission"], [_mobx.computed, 3, "hasStartCloudRecordingPermission"], [_mobx.computed, 3, "hasStartLiveStreamingPermission"], [_mobx.computed, 3, "hasChatPermission"], [_mobx.computed, 3, "liveStreamingButtonVisible"], [_mobx.computed, 3, "recordingButtonVisible"], [_mobx.computed, 3, "isConnecting"], [_setCheckedStateMapDecs, 18, "setCheckedStateMap"], [_decorator.bound, 2, "setShareWithAudioState"], [_decorator.bound, 2, "setShareInSmoothMode"], [_showLockedRoomToastDecs, 18, "showLockedRoomToast"], [_handleNewShareDecs, 18, "handleNewShare"], [_handlerStopShareDecs, 18, "handlerStopShare"], [_decorator.bound, 2, "handleMouseEnter"], [_decorator.bound, 2, "handleMouseLeave"], [_decorator.bound, 2, "openLiveStreamingDialog"], [_decorator.bound, 2, "setShareAudioMode"], [_pauseCloudRecordingDecs, 2, "pauseCloudRecording"], [_resumeCloudRecordingDecs, 2, "resumeCloudRecording"], [_stopCloudRecordingDecs, 2, "stopCloudRecording"], [_decorator.bound, 2, "startCloudRecording"], [_decorator.bound, 2, "startLiveStreaming"], [_decorator.bound, 2, "stopLiveStreaming"], [_showToastDecs, 18, "showToast"], [_decorator.bound, 2, "handleOpenParticipant"], [_decorator.bound, 2, "handleOpenLiveStreaming"], [_decorator.bound, 2, "setEnableWaitingRoom"], [_decorator.bound, 2, "getLocalMeetingTime"], [[_decorator.bound, _decorator.trace], 2, "setArea"], [[_decorator.bound, _decorator.trace], 2, "removeArea"], [_decorator.bound, 2, "setStateNavArea"], [_decorator.bound, 2, "setControlBarContentArea"], [_handleLeaveRoomDecs, 18, "handleLeaveRoom"], [_closeLeaveMeetingDialogDecs, 18, "closeLeaveMeetingDialog"], [_handleMoreClickDecs, 18, "handleMoreClick"], [[_decorator.trace, _decorator.bound], 2, "updateWindowBounds"], [_setAppActionbarPopoverVisibleDecs, 18, "setAppActionbarPopoverVisible"]], []).e, 11);
|
|
768
775
|
_init_roomDuration = _applyDecs$e[0];
|
|
769
776
|
_init_startTime = _applyDecs$e[1];
|
|
770
777
|
_init_cloudRecordingState = _applyDecs$e[2];
|