fcr-ui-scene 3.9.0 → 3.9.1-alpha
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/provider-initializer.browser.js +2 -1
- package/lib/creator/provider-initializer.electron.js +11 -4
- package/lib/electron/injections.d.ts +1 -0
- package/lib/electron/injections.js +4 -1
- package/lib/electron/preload.js +1 -0
- package/lib/modules/action-bar/main-scene/store.base.d.ts +1 -0
- package/lib/modules/action-bar/main-scene/store.base.js +5 -0
- package/lib/modules/audio-stream/index.d.ts +2 -0
- package/lib/modules/audio-stream/index.js +33 -1
- package/lib/modules/chat/index.js +1 -1
- package/lib/modules/chat/store.d.ts +1 -1
- package/lib/modules/chat/store.js +4 -2
- package/lib/modules/components/device-control/store.base.d.ts +1 -0
- package/lib/modules/components/device-control/store.base.js +22 -3
- package/lib/modules/components/leave-meeting/index.js +3 -2
- package/lib/modules/components/leave-meeting/main-scene/store.d.ts +1 -0
- package/lib/modules/components/leave-meeting/main-scene/store.js +6 -1
- package/lib/modules/components/leave-meeting/store.base.d.ts +1 -0
- package/lib/modules/components/leave-meeting/store.base.js +1 -1
- package/lib/modules/components/leave-meeting/waiting-scene/store.d.ts +1 -0
- package/lib/modules/components/leave-meeting/waiting-scene/store.js +6 -1
- package/lib/modules/components/member-window/components/member-actions/components/icon-status.js +7 -10
- package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +2 -2
- package/lib/modules/components/member-window/components/member-actions/index.js +0 -7
- package/lib/modules/components/member-window/components/member-actions/store.js +1 -1
- package/lib/modules/components/member-window/index.js +1 -1
- package/lib/modules/components/tab-frame/index.css +12 -1
- package/lib/modules/components/tab-frame/index.js +4 -1
- package/lib/modules/control-bar/components/share-state-nav/index.js +1 -3
- package/lib/modules/control-bar/mouse-event-bridge.d.ts +23 -0
- package/lib/modules/control-bar/mouse-event-bridge.js +87 -0
- package/lib/modules/control-bar/store.d.ts +1 -1
- package/lib/modules/control-bar/store.js +10 -27
- package/lib/modules/control-bar/type.d.ts +0 -1
- package/lib/modules/control-bar/view.js +9 -16
- package/lib/modules/dialog/dialogs/connection-gateway/tabs.js +3 -2
- package/lib/modules/dialog/dialogs/invite/index.js +6 -24
- package/lib/modules/invite/components/copy-info.css +72 -0
- package/lib/modules/invite/components/copy-info.d.ts +3 -0
- package/lib/modules/invite/components/copy-info.js +144 -0
- package/lib/modules/invite/components/pstn-invite.js +3 -15
- package/lib/modules/invite/components/voip-invite.js +10 -1
- package/lib/modules/invite/enums.d.ts +3 -1
- package/lib/modules/invite/enums.js +2 -0
- package/lib/modules/invite/store.d.ts +4 -1
- package/lib/modules/invite/store.js +37 -13
- package/lib/modules/invite/view.js +41 -20
- package/lib/modules/layout/store.base.d.ts +2 -1
- package/lib/modules/layout/store.base.js +20 -23
- package/lib/modules/participant/components/confirm-input/index.css +67 -1
- package/lib/modules/participant/components/confirm-input/index.js +16 -13
- package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.css +4 -0
- package/lib/modules/participant/store.base.d.ts +1 -0
- package/lib/modules/participant/store.base.js +34 -7
- package/lib/modules/pc-audio-connect/main-scene/store.d.ts +2 -0
- package/lib/modules/pc-audio-connect/main-scene/store.js +12 -2
- package/lib/modules/pc-audio-connect/view.js +4 -2
- package/lib/modules/phone-audio-connect/store.d.ts +6 -4
- package/lib/modules/phone-audio-connect/store.js +12 -1
- package/lib/modules/phone-audio-connect/view.js +6 -4
- package/lib/modules/secondary-window/index.js +2 -2
- package/lib/modules/secondary-window/store.d.ts +3 -0
- package/lib/modules/secondary-window/store.js +16 -1
- package/lib/modules/secondary-window/view.js +96 -72
- package/lib/modules/toast-manager/type.d.ts +2 -1
- package/lib/modules/toast-manager/type.js +4 -1
- package/lib/plugins/module-dev-plugin.js +4 -4
- package/lib/providers/ability-provider.d.ts +15 -0
- package/lib/providers/ability-provider.js +13 -1
- package/lib/providers/mouse-detect/provider.d.ts +2 -0
- package/lib/providers/mouse-detect/provider.empty.d.ts +14 -0
- package/lib/providers/mouse-detect/provider.empty.js +47 -0
- package/lib/providers/mouse-detect/provider.js +13 -4
- package/lib/providers/mouse-detect/type.d.ts +2 -0
- package/lib/providers/phone-audio-provider.d.ts +31 -5
- package/lib/providers/phone-audio-provider.js +83 -22
- package/lib/runtime.d.ts +1 -0
- package/lib/scenes/main-scene.js +2 -1
- package/lib/shared-data/chat-data.d.ts +19 -0
- package/lib/shared-data/chat-data.js +54 -7
- package/lib/shared-data/member-data.d.ts +9 -1
- package/lib/shared-data/member-data.js +46 -17
- package/lib/shared-data/video-window.js +8 -4
- package/lib/translations/enUS.d.ts +245 -1
- package/lib/translations/enUS.js +247 -3
- package/lib/translations/zhCN.d.ts +245 -1
- package/lib/translations/zhCN.js +246 -2
- package/lib/utilities/os.d.ts +1 -0
- package/lib/utilities/os.js +15 -0
- package/lib/utilities/renderer.d.ts +1 -0
- package/lib/utilities/renderer.js +7 -1
- package/lib-es/creator/provider-initializer.browser.js +2 -1
- package/lib-es/creator/provider-initializer.electron.js +9 -2
- package/lib-es/electron/injections.js +3 -0
- package/lib-es/electron/preload.js +2 -1
- package/lib-es/modules/action-bar/main-scene/store.base.js +5 -0
- package/lib-es/modules/audio-stream/index.js +33 -1
- package/lib-es/modules/chat/index.js +1 -1
- package/lib-es/modules/chat/store.js +4 -2
- package/lib-es/modules/components/device-control/store.base.js +22 -3
- package/lib-es/modules/components/leave-meeting/index.js +3 -2
- package/lib-es/modules/components/leave-meeting/main-scene/store.js +6 -1
- package/lib-es/modules/components/leave-meeting/store.base.js +1 -1
- package/lib-es/modules/components/leave-meeting/waiting-scene/store.js +6 -1
- package/lib-es/modules/components/member-window/components/member-actions/components/icon-status.js +7 -10
- package/lib-es/modules/components/member-window/components/member-actions/components/more-actions.js +2 -2
- package/lib-es/modules/components/member-window/components/member-actions/index.js +0 -7
- package/lib-es/modules/components/member-window/components/member-actions/store.js +1 -1
- package/lib-es/modules/components/member-window/index.js +1 -1
- package/lib-es/modules/components/tab-frame/index.css +12 -1
- package/lib-es/modules/components/tab-frame/index.js +4 -1
- package/lib-es/modules/control-bar/components/share-state-nav/index.js +1 -3
- package/lib-es/modules/control-bar/mouse-event-bridge.js +79 -0
- package/lib-es/modules/control-bar/store.js +11 -28
- package/lib-es/modules/control-bar/view.js +9 -16
- package/lib-es/modules/dialog/dialogs/connection-gateway/tabs.js +3 -2
- package/lib-es/modules/dialog/dialogs/invite/index.js +6 -24
- package/lib-es/modules/invite/components/copy-info.css +72 -0
- package/lib-es/modules/invite/components/copy-info.js +137 -0
- package/lib-es/modules/invite/components/pstn-invite.js +3 -15
- package/lib-es/modules/invite/components/voip-invite.js +10 -1
- package/lib-es/modules/invite/enums.js +2 -0
- package/lib-es/modules/invite/store.js +38 -14
- package/lib-es/modules/invite/view.js +43 -22
- package/lib-es/modules/layout/store.base.js +20 -23
- package/lib-es/modules/participant/components/confirm-input/index.css +67 -1
- package/lib-es/modules/participant/components/confirm-input/index.js +16 -13
- package/lib-es/modules/participant/components/participants/components/render-user/components/attendee/index.css +4 -0
- package/lib-es/modules/participant/store.base.js +34 -7
- package/lib-es/modules/pc-audio-connect/main-scene/store.js +12 -2
- package/lib-es/modules/pc-audio-connect/view.js +4 -2
- package/lib-es/modules/phone-audio-connect/store.js +12 -1
- package/lib-es/modules/phone-audio-connect/view.js +6 -4
- package/lib-es/modules/secondary-window/index.js +2 -2
- package/lib-es/modules/secondary-window/store.js +16 -1
- package/lib-es/modules/secondary-window/view.js +97 -73
- package/lib-es/modules/toast-manager/type.js +4 -1
- package/lib-es/plugins/module-dev-plugin.js +4 -4
- package/lib-es/providers/ability-provider.js +13 -1
- package/lib-es/providers/mouse-detect/provider.empty.js +39 -0
- package/lib-es/providers/mouse-detect/provider.js +13 -4
- package/lib-es/providers/phone-audio-provider.js +109 -48
- package/lib-es/scenes/main-scene.js +3 -2
- package/lib-es/shared-data/chat-data.js +55 -8
- package/lib-es/shared-data/member-data.js +46 -17
- package/lib-es/shared-data/video-window.js +8 -4
- package/lib-es/translations/enUS.js +247 -3
- package/lib-es/translations/zhCN.js +246 -2
- package/lib-es/utilities/os.js +8 -0
- package/lib-es/utilities/renderer.js +7 -1
- package/lib-es/utilities/shared-storage.js +2 -2
- package/package.json +6 -6
- package/lib/modules/connection-gateway/components/computer/index.css +0 -12
- package/lib/modules/connection-gateway/components/computer/index.d.ts +0 -3
- package/lib/modules/connection-gateway/components/computer/index.js +0 -66
- package/lib/modules/connection-gateway/components/phone/components/callinfo/index.css +0 -36
- package/lib/modules/connection-gateway/components/phone/components/callinfo/index.d.ts +0 -10
- package/lib/modules/connection-gateway/components/phone/components/callinfo/index.js +0 -78
- package/lib/modules/connection-gateway/components/phone/components/calling/index.css +0 -72
- package/lib/modules/connection-gateway/components/phone/components/calling/index.d.ts +0 -7
- package/lib/modules/connection-gateway/components/phone/components/calling/index.js +0 -58
- package/lib/modules/connection-gateway/components/phone/components/remeber/index.css +0 -10
- package/lib/modules/connection-gateway/components/phone/components/remeber/index.d.ts +0 -5
- package/lib/modules/connection-gateway/components/phone/components/remeber/index.js +0 -24
- package/lib/modules/connection-gateway/components/phone/components/useing/index.css +0 -46
- package/lib/modules/connection-gateway/components/phone/components/useing/index.d.ts +0 -3
- package/lib/modules/connection-gateway/components/phone/components/useing/index.js +0 -36
- package/lib/modules/connection-gateway/components/phone/index.css +0 -49
- package/lib/modules/connection-gateway/components/phone/index.d.ts +0 -3
- package/lib/modules/connection-gateway/components/phone/index.js +0 -185
- package/lib/modules/connection-gateway/enums.d.ts +0 -4
- package/lib/modules/connection-gateway/enums.js +0 -12
- package/lib/modules/connection-gateway/index.css +0 -6
- package/lib/modules/connection-gateway/index.d.ts +0 -10
- package/lib/modules/connection-gateway/index.js +0 -78
- package/lib/modules/connection-gateway/store.d.ts +0 -68
- package/lib/modules/connection-gateway/store.js +0 -713
- package/lib/modules/connection-gateway/types.d.ts +0 -8
- package/lib/modules/connection-gateway/types.js +0 -6
- package/lib/modules/connection-gateway/view.d.ts +0 -1
- package/lib/modules/connection-gateway/view.js +0 -39
- package/lib-es/modules/connection-gateway/components/computer/index.css +0 -12
- package/lib-es/modules/connection-gateway/components/computer/index.js +0 -59
- package/lib-es/modules/connection-gateway/components/phone/components/callinfo/index.css +0 -36
- package/lib-es/modules/connection-gateway/components/phone/components/callinfo/index.js +0 -71
- package/lib-es/modules/connection-gateway/components/phone/components/calling/index.css +0 -72
- package/lib-es/modules/connection-gateway/components/phone/components/calling/index.js +0 -51
- package/lib-es/modules/connection-gateway/components/phone/components/remeber/index.css +0 -10
- package/lib-es/modules/connection-gateway/components/phone/components/remeber/index.js +0 -17
- package/lib-es/modules/connection-gateway/components/phone/components/useing/index.css +0 -46
- package/lib-es/modules/connection-gateway/components/phone/components/useing/index.js +0 -29
- package/lib-es/modules/connection-gateway/components/phone/index.css +0 -49
- package/lib-es/modules/connection-gateway/components/phone/index.js +0 -177
- package/lib-es/modules/connection-gateway/enums.js +0 -5
- package/lib-es/modules/connection-gateway/index.css +0 -6
- package/lib-es/modules/connection-gateway/index.js +0 -60
- package/lib-es/modules/connection-gateway/store.js +0 -707
- package/lib-es/modules/connection-gateway/types.js +0 -1
- package/lib-es/modules/connection-gateway/view.js +0 -31
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import "core-js/modules/es.regexp.exec.js";
|
|
2
|
+
import "core-js/modules/es.string.replace.js";
|
|
3
|
+
import { useI18n } from 'agora-ui-foundation/lib/i18n';
|
|
4
|
+
import './copy-info.css';
|
|
5
|
+
import { FcrButton } from 'agora-ui-foundation/lib/components/button';
|
|
6
|
+
import { useCallback, useContext } from 'react';
|
|
7
|
+
import { copyText } from 'agora-ui-foundation/lib/utilities/copy-text';
|
|
8
|
+
import { FcrUIToastKey } from '../../toast-manager/type';
|
|
9
|
+
import { StoreContext } from '../store';
|
|
10
|
+
import { FcrIcon } from 'agora-ui-foundation/lib/components/icon';
|
|
11
|
+
import { FcrIconType } from 'agora-ui-foundation/lib/components/icon/type';
|
|
12
|
+
import { renderMeetingId } from 'agora-foundation/lib/utilities/tools';
|
|
13
|
+
import { generateMeetingDuration } from '../../../utilities/meeting-detail';
|
|
14
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
15
|
+
var CopyInfo = function CopyInfo() {
|
|
16
|
+
var transI18n = useI18n();
|
|
17
|
+
var _useContext = useContext(StoreContext),
|
|
18
|
+
_useContext$roomInfo = _useContext.roomInfo,
|
|
19
|
+
inviteLink = _useContext$roomInfo.inviteLink,
|
|
20
|
+
roomId = _useContext$roomInfo.roomId,
|
|
21
|
+
roomName = _useContext$roomInfo.roomName,
|
|
22
|
+
password = _useContext$roomInfo.password,
|
|
23
|
+
showToast = _useContext.showToast,
|
|
24
|
+
roomDetailCopyText = _useContext.roomDetailCopyText,
|
|
25
|
+
localUserName = _useContext.localUserName,
|
|
26
|
+
meetingId = _useContext.meetingId,
|
|
27
|
+
roomSchedule = _useContext.roomSchedule;
|
|
28
|
+
var duration = (roomSchedule === null || roomSchedule === void 0 ? void 0 : roomSchedule.duration) || 0;
|
|
29
|
+
var startTime = (roomSchedule === null || roomSchedule === void 0 ? void 0 : roomSchedule.startTime) || 0;
|
|
30
|
+
function handleCopyMeetingId(copyContent) {
|
|
31
|
+
if (!copyContent) return;
|
|
32
|
+
var content = meetingId ? copyContent : copyContent.replace(/\s+/g, '');
|
|
33
|
+
copyText(content).then(function () {
|
|
34
|
+
showToast({
|
|
35
|
+
key: FcrUIToastKey.FMT_STATUSBAR_STATUS_COPPIED
|
|
36
|
+
});
|
|
37
|
+
})["catch"](function () {
|
|
38
|
+
showToast({
|
|
39
|
+
key: FcrUIToastKey.FMT_INFORMATION_TIPS_NUMBERCOPYFAILED
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
var handleCopyMeetingDetail = useCallback(function () {
|
|
44
|
+
copyText(roomDetailCopyText).then(function () {
|
|
45
|
+
showToast({
|
|
46
|
+
key: FcrUIToastKey.FMT_STATUSBAR_STATUS_COPPIED
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
}, []);
|
|
50
|
+
var displayMeetingId = renderMeetingId(meetingId, roomId);
|
|
51
|
+
return /*#__PURE__*/_jsxs("div", {
|
|
52
|
+
className: "fcr-invite-copy-info",
|
|
53
|
+
children: [/*#__PURE__*/_jsxs("div", {
|
|
54
|
+
className: "fcr-invite-copy-info-content",
|
|
55
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
56
|
+
className: "fcr-invite-copy-info-title",
|
|
57
|
+
children: transI18n('fmt_link_invitation', {
|
|
58
|
+
reason1: localUserName
|
|
59
|
+
})
|
|
60
|
+
}), /*#__PURE__*/_jsxs("div", {
|
|
61
|
+
className: "fcr-invite-copy-info-content-item",
|
|
62
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
63
|
+
className: "fcr-invite-copy-info-content-item-label",
|
|
64
|
+
children: transI18n('fmt_meetinginfo_room_topic')
|
|
65
|
+
}), /*#__PURE__*/_jsx("div", {
|
|
66
|
+
className: "fcr-invite-copy-info-content-item-value",
|
|
67
|
+
children: roomName
|
|
68
|
+
})]
|
|
69
|
+
}), /*#__PURE__*/_jsxs("div", {
|
|
70
|
+
className: "fcr-invite-copy-info-content-item",
|
|
71
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
72
|
+
className: "fcr-invite-copy-info-content-item-label",
|
|
73
|
+
children: transI18n('fmt_meetingInfo_window_info_meetingID')
|
|
74
|
+
}), /*#__PURE__*/_jsxs("div", {
|
|
75
|
+
className: "fcr-invite-copy-info-content-item-value fcr-invite-copy-info-content-item-value-meeting-id",
|
|
76
|
+
children: [/*#__PURE__*/_jsx("span", {
|
|
77
|
+
children: displayMeetingId
|
|
78
|
+
}), /*#__PURE__*/_jsx(FcrIcon, {
|
|
79
|
+
onClick: function onClick() {
|
|
80
|
+
return handleCopyMeetingId(displayMeetingId);
|
|
81
|
+
},
|
|
82
|
+
type: FcrIconType.FCR_COPY_ICON,
|
|
83
|
+
size: 20,
|
|
84
|
+
colors: {
|
|
85
|
+
iconPrimary: 'var(--fcr_ui_scene_icontext1)'
|
|
86
|
+
}
|
|
87
|
+
})]
|
|
88
|
+
})]
|
|
89
|
+
}), password && /*#__PURE__*/_jsxs("div", {
|
|
90
|
+
className: "fcr-invite-copy-info-content-item",
|
|
91
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
92
|
+
className: "fcr-invite-copy-info-content-item-label",
|
|
93
|
+
children: transI18n('fmt_premeeting_joinroom_mobile_tips_password')
|
|
94
|
+
}), /*#__PURE__*/_jsxs("div", {
|
|
95
|
+
className: "fcr-invite-copy-info-content-item-value fcr-invite-copy-info-content-item-value-meeting-id",
|
|
96
|
+
children: [/*#__PURE__*/_jsx("span", {
|
|
97
|
+
children: password
|
|
98
|
+
}), /*#__PURE__*/_jsx(FcrIcon, {
|
|
99
|
+
onClick: function onClick() {
|
|
100
|
+
return handleCopyMeetingId(password);
|
|
101
|
+
},
|
|
102
|
+
type: FcrIconType.FCR_COPY_ICON,
|
|
103
|
+
size: 20,
|
|
104
|
+
colors: {
|
|
105
|
+
iconPrimary: 'var(--fcr_ui_scene_icontext1)'
|
|
106
|
+
}
|
|
107
|
+
})]
|
|
108
|
+
})]
|
|
109
|
+
}), /*#__PURE__*/_jsxs("div", {
|
|
110
|
+
className: "fcr-invite-copy-info-content-item",
|
|
111
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
112
|
+
className: "fcr-invite-copy-info-content-item-label",
|
|
113
|
+
children: transI18n('fmt_invitepage_label_invite_link')
|
|
114
|
+
}), /*#__PURE__*/_jsx("div", {
|
|
115
|
+
className: "fcr-invite-copy-info-content-item-value",
|
|
116
|
+
children: inviteLink
|
|
117
|
+
})]
|
|
118
|
+
}), /*#__PURE__*/_jsxs("div", {
|
|
119
|
+
className: "fcr-invite-copy-info-content-item",
|
|
120
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
121
|
+
className: "fcr-invite-copy-info-content-item-label",
|
|
122
|
+
children: transI18n('fmt_ai_summary_create_labels_meeting_time')
|
|
123
|
+
}), /*#__PURE__*/_jsx("div", {
|
|
124
|
+
className: "fcr-invite-copy-info-content-item-value",
|
|
125
|
+
children: generateMeetingDuration(startTime || 0, duration)
|
|
126
|
+
})]
|
|
127
|
+
})]
|
|
128
|
+
}), /*#__PURE__*/_jsx(FcrButton, {
|
|
129
|
+
type: "secondary-bordered",
|
|
130
|
+
size: "XS",
|
|
131
|
+
onClick: handleCopyMeetingDetail,
|
|
132
|
+
className: "invite__pstn-invite-copyinfo",
|
|
133
|
+
children: transI18n('fmt_popup_button_meetinginfor')
|
|
134
|
+
})]
|
|
135
|
+
});
|
|
136
|
+
};
|
|
137
|
+
export default CopyInfo;
|
|
@@ -152,9 +152,9 @@ export var PSTNInvite = observer(function () {
|
|
|
152
152
|
setIsInvitePhoneNumberError(true);
|
|
153
153
|
}
|
|
154
154
|
};
|
|
155
|
-
return /*#__PURE__*/
|
|
155
|
+
return /*#__PURE__*/_jsx("div", {
|
|
156
156
|
className: "invite__pstn-invite",
|
|
157
|
-
children:
|
|
157
|
+
children: /*#__PURE__*/_jsxs("div", {
|
|
158
158
|
className: "invite__pstn-invite__phone",
|
|
159
159
|
children: [!isPstnCalling ? /*#__PURE__*/_jsxs("div", {
|
|
160
160
|
className: "invite__pstn-invite_edit_phone",
|
|
@@ -228,18 +228,6 @@ export var PSTNInvite = observer(function () {
|
|
|
228
228
|
size: "XS",
|
|
229
229
|
children: !isPstnCalling ? transI18n('fmt_pstn_label_phonecall') : transI18n('fmt_pstn_button_hangupphone')
|
|
230
230
|
})]
|
|
231
|
-
})
|
|
232
|
-
className: "invite__pstn-invite-divider",
|
|
233
|
-
children: /*#__PURE__*/_jsx("span", {
|
|
234
|
-
className: "invite__pstn-invite-divider-content",
|
|
235
|
-
children: transI18n('fmt_pstn_label_or')
|
|
236
|
-
})
|
|
237
|
-
}), /*#__PURE__*/_jsx(FcrButton, {
|
|
238
|
-
type: "secondary-bordered",
|
|
239
|
-
size: "XS",
|
|
240
|
-
onClick: handleCopyMeetingDetail,
|
|
241
|
-
className: "invite__pstn-invite-copyinfo",
|
|
242
|
-
children: transI18n('fmt_popup_button_meetinginfor')
|
|
243
|
-
})]
|
|
231
|
+
})
|
|
244
232
|
});
|
|
245
233
|
});
|
|
@@ -19,6 +19,8 @@ import { useI18n } from 'agora-ui-foundation/lib/i18n';
|
|
|
19
19
|
import { ErrorTips } from './error-tips';
|
|
20
20
|
import { CallType, InviteStatus, VoipType } from '../enums';
|
|
21
21
|
import './voip-invite.css';
|
|
22
|
+
import { isPhoneNumber } from 'agora-foundation/lib/utilities/regex';
|
|
23
|
+
import { FcrUIToastKey } from '../../toast-manager/type';
|
|
22
24
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
23
25
|
export var VoipInvite = observer(function () {
|
|
24
26
|
var _calledVoipInfo$state;
|
|
@@ -45,12 +47,19 @@ export var VoipInvite = observer(function () {
|
|
|
45
47
|
isVoipCalling = _useContext.isVoipCalling,
|
|
46
48
|
startSessionByVoip = _useContext.startSessionByVoip,
|
|
47
49
|
stopSession = _useContext.stopSession,
|
|
48
|
-
calledVoipInfo = _useContext.calledVoipInfo
|
|
50
|
+
calledVoipInfo = _useContext.calledVoipInfo,
|
|
51
|
+
showToast = _useContext.showToast;
|
|
49
52
|
var _useState9 = useState(false),
|
|
50
53
|
_useState0 = _slicedToArray(_useState9, 2),
|
|
51
54
|
isLoading = _useState0[0],
|
|
52
55
|
setIsLoading = _useState0[1];
|
|
53
56
|
var handleCallVoip = function handleCallVoip() {
|
|
57
|
+
if (isPhoneNumber(callVoip)) {
|
|
58
|
+
showToast({
|
|
59
|
+
key: FcrUIToastKey.FMT_SIP_TIPS_ENTER_CORRECT_NUMBER
|
|
60
|
+
});
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
54
63
|
checkInput(callVoip, setIsError);
|
|
55
64
|
if (callVoip.trim().length === 0) {
|
|
56
65
|
return;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
export var InviteType = /*#__PURE__*/function (InviteType) {
|
|
2
2
|
InviteType["PSTN"] = "PSTN";
|
|
3
3
|
InviteType["VOIP"] = "VOIP";
|
|
4
|
+
InviteType["COPY"] = "COPY";
|
|
5
|
+
InviteType["WIDGET"] = "WIDGET";
|
|
4
6
|
return InviteType;
|
|
5
7
|
}({});
|
|
6
8
|
export var CallType = /*#__PURE__*/function (CallType) {
|
|
@@ -38,10 +38,13 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
|
38
38
|
var _InviteStore;
|
|
39
39
|
var _initProto, _init_InviteStatus, _init_isPstnCalling, _init_isVoipCalling, _init_ipInfo, _init_phoneInfo, _init_calledPstnInfo, _init_calledVoipInfo, _stopSessionDecs, _startSessionByPhoneDecs, _startSessionByVoipDecs, _showToastDecs, _getRoomConnectorIpInfoDecs, _getRoomConnectorPhoneInfoDecs, _handleErrorDecs, _updateInviteStatusDecs, _resetpstnStatusDecs, _resetVoipStatusDecs, _handlePhoneConnectorSessionStateUpdatedDecs, _handleIPConnectorSessionStateUpdatedDecs, _ref;
|
|
40
40
|
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
41
|
+
import "core-js/modules/es.array.concat.js";
|
|
41
42
|
import "core-js/modules/es.array.find.js";
|
|
43
|
+
import "core-js/modules/es.array.includes.js";
|
|
42
44
|
import "core-js/modules/es.array.iterator.js";
|
|
43
45
|
import "core-js/modules/es.array.map.js";
|
|
44
46
|
import "core-js/modules/es.object.to-string.js";
|
|
47
|
+
import "core-js/modules/es.string.includes.js";
|
|
45
48
|
import "core-js/modules/es.string.iterator.js";
|
|
46
49
|
import "core-js/modules/es.weak-map.js";
|
|
47
50
|
import "core-js/modules/esnext.iterator.constructor.js";
|
|
@@ -62,7 +65,7 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
62
65
|
function _setFunctionName(e, t, n) { "symbol" == _typeof(t) && (t = (t = t.description) ? "[" + t + "]" : ""); try { Object.defineProperty(e, "name", { configurable: !0, value: n ? n + " " + t : t }); } catch (e) {} return e; }
|
|
63
66
|
function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== e ? _typeof(e) : "null")); return e; }
|
|
64
67
|
import { action, computed, observable } from 'mobx';
|
|
65
|
-
import { FcrIPConnectorSessionType, FcrRoomConnectorPhoneRegion, FcrRoomConnectorSessionReason, FcrRoomConnectorSessionState } from 'fcr-core/lib/room-control/room-connector-control/type';
|
|
68
|
+
import { FcrIPConnectorSessionType, FcrIPConnectorSessionTypeToStringMap, FcrPhoneConnectorSessionType, FcrPhoneConnectorSessionTypeToStringMap, FcrRoomConnectorPhoneRegion, FcrRoomConnectorSessionReason, FcrRoomConnectorSessionState } from 'fcr-core/lib/room-control/room-connector-control/type';
|
|
66
69
|
import { createContext } from 'react';
|
|
67
70
|
import { CONTACTS_WIDGET_ID } from '../../type';
|
|
68
71
|
import { InviteStatus } from './enums';
|
|
@@ -70,6 +73,7 @@ import { FcrUIObjectKeys } from '../../object-manager';
|
|
|
70
73
|
import { createLogger } from '../../utilities/logger';
|
|
71
74
|
import { getInvitationInfoByRoomInfo } from '../../utilities/meeting-detail';
|
|
72
75
|
import { FcrUIDialogKey } from '../../utilities/constant';
|
|
76
|
+
import { FcrUIToastKey } from '../toast-manager/type';
|
|
73
77
|
var _A = /*#__PURE__*/new WeakMap();
|
|
74
78
|
var _B = /*#__PURE__*/new WeakMap();
|
|
75
79
|
var _C = /*#__PURE__*/new WeakMap();
|
|
@@ -141,6 +145,8 @@ var InviteStore = /*#__PURE__*/function () {
|
|
|
141
145
|
// Get all required objects from objectManager
|
|
142
146
|
|
|
143
147
|
this._mainRoomControl = objectManager.getObject(FcrUIObjectKeys.P_MAIN_ROOM_CONTROL_PROVIDER).mainRoomControl;
|
|
148
|
+
this._abilityProvider = objectManager.getObject(FcrUIObjectKeys.P_ABILITY_PROVIDER);
|
|
149
|
+
this._phoneAudioConnectorProvider = objectManager.getObject(FcrUIObjectKeys.P_PHONE_AUDIO_CONNECTOR_PROVIDER);
|
|
144
150
|
this._messageProvider = objectManager.getObject(FcrUIObjectKeys.P_MESSAGE_PROVIDER);
|
|
145
151
|
this._roomConnectorControl = this._mainRoomControl.getRoomConnectorControl();
|
|
146
152
|
this._sharedMemberDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_MEMBER_DATA_SOURCE);
|
|
@@ -297,6 +303,26 @@ var InviteStore = /*#__PURE__*/function () {
|
|
|
297
303
|
get: function get() {
|
|
298
304
|
return this.roomInfo.roomId;
|
|
299
305
|
}
|
|
306
|
+
}, {
|
|
307
|
+
key: "showInvitePstnTab",
|
|
308
|
+
get: function get() {
|
|
309
|
+
var types = this._phoneAudioConnectorProvider.getCallOutTypeArray();
|
|
310
|
+
var hasPstnPermission = types.includes(FcrPhoneConnectorSessionTypeToStringMap[FcrPhoneConnectorSessionType.PSTN]);
|
|
311
|
+
var hasVoltePermission = types.includes(FcrPhoneConnectorSessionTypeToStringMap[FcrPhoneConnectorSessionType.VOLTE]);
|
|
312
|
+
var isPstnCallOutSupported = this._abilityProvider.isCallOutAbilitySupported() && hasPstnPermission;
|
|
313
|
+
var isVolteCallOutSupported = this._abilityProvider.isCallOutVolteAbilitySupported() && hasVoltePermission;
|
|
314
|
+
return isPstnCallOutSupported || isVolteCallOutSupported;
|
|
315
|
+
}
|
|
316
|
+
}, {
|
|
317
|
+
key: "showInviteVoipTab",
|
|
318
|
+
get: function get() {
|
|
319
|
+
var types = this._phoneAudioConnectorProvider.getCallOutTypeArray();
|
|
320
|
+
var hasH323Permission = types.includes(FcrIPConnectorSessionTypeToStringMap[FcrIPConnectorSessionType.H323]);
|
|
321
|
+
var hasSipPermission = types.includes(FcrIPConnectorSessionTypeToStringMap[FcrIPConnectorSessionType.SIP]);
|
|
322
|
+
var isH323CallOutSupported = this._abilityProvider.isCallOutH323AbilitySupported() && hasH323Permission;
|
|
323
|
+
var isSipCallOutSupported = this._abilityProvider.isCallOutSipAbilitySupported() && hasSipPermission;
|
|
324
|
+
return isH323CallOutSupported || isSipCallOutSupported;
|
|
325
|
+
}
|
|
300
326
|
}, {
|
|
301
327
|
key: "widgetConfigByContacts",
|
|
302
328
|
get: function get() {
|
|
@@ -305,16 +331,6 @@ var InviteStore = /*#__PURE__*/function () {
|
|
|
305
331
|
});
|
|
306
332
|
return contacts;
|
|
307
333
|
}
|
|
308
|
-
}, {
|
|
309
|
-
key: "closeInviteDialog",
|
|
310
|
-
value: function closeInviteDialog() {
|
|
311
|
-
if (this._pstnSessionId) {
|
|
312
|
-
this.stopSession('pstn');
|
|
313
|
-
}
|
|
314
|
-
if (this._voipSessionId) {
|
|
315
|
-
this.stopSession('voip');
|
|
316
|
-
}
|
|
317
|
-
}
|
|
318
334
|
}, {
|
|
319
335
|
key: "release",
|
|
320
336
|
value: function release() {
|
|
@@ -364,11 +380,12 @@ var InviteStore = /*#__PURE__*/function () {
|
|
|
364
380
|
key: "startSessionByPhone",
|
|
365
381
|
value: function () {
|
|
366
382
|
var _startSessionByPhone = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(_ref4) {
|
|
367
|
-
var phoneNumber, userName, zone, _t2;
|
|
383
|
+
var phoneNumber, userName, zone, type, _t2;
|
|
368
384
|
return _regeneratorRuntime.wrap(function (_context2) {
|
|
369
385
|
while (1) switch (_context2.prev = _context2.next) {
|
|
370
386
|
case 0:
|
|
371
387
|
phoneNumber = _ref4.phoneNumber, userName = _ref4.userName, zone = _ref4.zone;
|
|
388
|
+
type = this._phoneAudioConnectorProvider.getPhoneCallOutType();
|
|
372
389
|
this.isPstnCalling = true;
|
|
373
390
|
this.calledPstnInfo = {
|
|
374
391
|
phoneNumber: phoneNumber,
|
|
@@ -379,7 +396,8 @@ var InviteStore = /*#__PURE__*/function () {
|
|
|
379
396
|
_context2.next = 2;
|
|
380
397
|
return this._roomConnectorControl.startSessionByPhone({
|
|
381
398
|
phoneNumber: phoneNumber,
|
|
382
|
-
userName: userName
|
|
399
|
+
userName: userName,
|
|
400
|
+
type: type
|
|
383
401
|
});
|
|
384
402
|
case 2:
|
|
385
403
|
this._pstnSessionId = _context2.sent;
|
|
@@ -389,7 +407,7 @@ var InviteStore = /*#__PURE__*/function () {
|
|
|
389
407
|
case 3:
|
|
390
408
|
_context2.prev = 3;
|
|
391
409
|
_t2 = _context2["catch"](1);
|
|
392
|
-
this.handleError(this.calledVoipInfo, _t2, '
|
|
410
|
+
this.handleError(this.calledVoipInfo, _t2, 'pstn');
|
|
393
411
|
case 4:
|
|
394
412
|
case "end":
|
|
395
413
|
return _context2.stop();
|
|
@@ -493,6 +511,12 @@ var InviteStore = /*#__PURE__*/function () {
|
|
|
493
511
|
value: function handleError(info, error, sessionType) {
|
|
494
512
|
var _this2 = this;
|
|
495
513
|
this.updateInviteStatus(info, InviteStatus.ERROR);
|
|
514
|
+
this.showToast({
|
|
515
|
+
key: FcrUIToastKey.ERR_MESSAGE,
|
|
516
|
+
params: {
|
|
517
|
+
message: "code: ".concat(error.code, ", message: ").concat(error.message)
|
|
518
|
+
}
|
|
519
|
+
});
|
|
496
520
|
setTimeout(function () {
|
|
497
521
|
if (sessionType === 'pstn') {
|
|
498
522
|
_this2.isPstnCalling = false;
|
|
@@ -2,40 +2,61 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
|
2
2
|
import "core-js/modules/es.array.push.js";
|
|
3
3
|
import "core-js/modules/es.function.name.js";
|
|
4
4
|
import { observer } from 'mobx-react';
|
|
5
|
-
import { useContext, useState } from 'react';
|
|
5
|
+
import { useContext, useMemo, useState } from 'react';
|
|
6
6
|
import { PSTNInvite } from './components/pstn-invite';
|
|
7
7
|
import { VoipInvite } from './components/voip-invite';
|
|
8
8
|
import { useI18n } from 'agora-ui-foundation/lib/i18n';
|
|
9
9
|
import FcrTabFrame from '../components/tab-frame';
|
|
10
10
|
import { InviteType } from './enums';
|
|
11
11
|
import { StoreContext } from './store';
|
|
12
|
-
import
|
|
12
|
+
import CopyInfo from './components/copy-info';
|
|
13
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
13
14
|
export var View = observer(function (props) {
|
|
14
15
|
var contactsChildren = props.contactsChildren;
|
|
15
16
|
var _useContext = useContext(StoreContext),
|
|
16
|
-
widgetConfigByContacts = _useContext.widgetConfigByContacts
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
widgetConfigByContacts = _useContext.widgetConfigByContacts,
|
|
18
|
+
showInviteVoipTab = _useContext.showInviteVoipTab,
|
|
19
|
+
showInvitePstnTab = _useContext.showInvitePstnTab;
|
|
20
|
+
var transI18n = useI18n();
|
|
21
|
+
var _useState = useState(InviteType.COPY),
|
|
19
22
|
_useState2 = _slicedToArray(_useState, 2),
|
|
20
23
|
currentInviteType = _useState2[0],
|
|
21
24
|
setCurrentInviteType = _useState2[1];
|
|
22
|
-
var
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
25
|
+
var tabs = useMemo(function () {
|
|
26
|
+
var tabs = [{
|
|
27
|
+
label: transI18n('fmt_invitepage_label_by_invitation'),
|
|
28
|
+
key: InviteType.COPY,
|
|
29
|
+
content: /*#__PURE__*/_jsx(CopyInfo, {})
|
|
30
|
+
}];
|
|
31
|
+
if (showInvitePstnTab) {
|
|
32
|
+
tabs.push({
|
|
33
|
+
label: "".concat(transI18n('fmt_pstn_label_phonecall')),
|
|
34
|
+
key: InviteType.PSTN,
|
|
35
|
+
content: /*#__PURE__*/_jsx(PSTNInvite, {})
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
if (showInviteVoipTab) {
|
|
39
|
+
tabs.push({
|
|
40
|
+
label: transI18n('fmt_invitepage_label_meeting_connector'),
|
|
41
|
+
key: InviteType.VOIP,
|
|
42
|
+
content: /*#__PURE__*/_jsx(VoipInvite, {})
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
if (widgetConfigByContacts) {
|
|
46
|
+
tabs.push({
|
|
47
|
+
key: InviteType.WIDGET,
|
|
48
|
+
label: widgetConfigByContacts.name,
|
|
49
|
+
content: /*#__PURE__*/_jsx(_Fragment, {
|
|
50
|
+
children: contactsChildren
|
|
51
|
+
})
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
var isSingleTab = tabs.length === 1;
|
|
55
|
+
if (isSingleTab && tabs[0].key === InviteType.COPY) {
|
|
56
|
+
tabs[0].label = transI18n('fmt_invitepage_label_meeting_details');
|
|
57
|
+
}
|
|
58
|
+
return tabs;
|
|
59
|
+
}, [transI18n, widgetConfigByContacts, contactsChildren, showInvitePstnTab, showInviteVoipTab]);
|
|
39
60
|
return /*#__PURE__*/_jsx(FcrTabFrame, {
|
|
40
61
|
activeKey: currentInviteType,
|
|
41
62
|
onChange: function onChange(key) {
|
|
@@ -33,7 +33,7 @@ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
|
33
33
|
import _createClass from "@babel/runtime/helpers/createClass";
|
|
34
34
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
35
35
|
var _LayoutStoreBase;
|
|
36
|
-
var _initProto, _participantDecs, _init_participant, _chatDecs, _init_chat, _chatActionDecs, _init_chatAction, _stateBarDecs, _init_stateBar, _actionBarDecs, _init_actionBar, _layersDecs, _init_layers, _whiteboardDecs, _init_whiteboard, _annotationDecs, _init_annotation, _screenShareControlDecs, _init_screenShareControl, _subtitlesDecs, _init_subtitles, _subtitlesHistoryDecs, _init_subtitlesHistory, _subtitlesHistorySettingsDecs, _init_subtitlesHistorySettings, _init_collapsed, _init_aside, _init_barHovering, _init_barLocked, _init_barHidden, _init_asideWidth,
|
|
36
|
+
var _initProto, _participantDecs, _init_participant, _chatDecs, _init_chat, _chatActionDecs, _init_chatAction, _stateBarDecs, _init_stateBar, _actionBarDecs, _init_actionBar, _layersDecs, _init_layers, _whiteboardDecs, _init_whiteboard, _annotationDecs, _init_annotation, _screenShareControlDecs, _init_screenShareControl, _subtitlesDecs, _init_subtitles, _subtitlesHistoryDecs, _init_subtitlesHistory, _subtitlesHistorySettingsDecs, _init_subtitlesHistorySettings, _init_collapsed, _init_aside, _init_barHovering, _init_barLocked, _init_barHidden, _init_asideWidth, _init_whiteboardActive, _init_ownerUser, _addPinMessageDecs, _cancelPinMessageDecs, _setWhiteboardActiveDecs, _setAsideWidthDecs, _updateSlotsDecs, _toggleLayoutDecs, _toggleCollapsedDecs, _toggleAsideDecs, _asideWidthChangedDecs, _toggleLayoutBarLockDecs, _toggleLayoutBarHiddenDecs, _resetLockTimerDecs, _setHoveringHandlerDecs, _setHoveringLeaveHandlerDecs, _setScreenShareSpeakerViewSizeDecs, _handleLiveLayoutChangeDecs, _onUserInfoUpdatedDecs, _handleLayoutUpdatedDecs, _init__handleLayoutUpdated, _handleMainListLengthChangedDecs, _handleMainListChangedDecs, _setBarHoveringDecs, _handleConnectionUpdatedDecs, _findVideoWindowByUserIdDecs, _onRemoteUsersLeftDecs, _ref;
|
|
37
37
|
import "core-js/modules/es.array.every.js";
|
|
38
38
|
import "core-js/modules/es.array.filter.js";
|
|
39
39
|
import "core-js/modules/es.array.find.js";
|
|
@@ -107,7 +107,6 @@ var _Q = /*#__PURE__*/new WeakMap();
|
|
|
107
107
|
var _R = /*#__PURE__*/new WeakMap();
|
|
108
108
|
var _S = /*#__PURE__*/new WeakMap();
|
|
109
109
|
var _T = /*#__PURE__*/new WeakMap();
|
|
110
|
-
var _U = /*#__PURE__*/new WeakMap();
|
|
111
110
|
_ref = (_participantDecs = [observable, observable.ref], _chatDecs = [observable, observable.ref], _chatActionDecs = [observable, observable.ref], _stateBarDecs = [observable, observable.ref], _actionBarDecs = [observable, observable.ref], _layersDecs = [observable, observable.ref], _whiteboardDecs = [observable, observable.ref], _annotationDecs = [observable, observable.ref], _screenShareControlDecs = [observable, observable.ref], _subtitlesDecs = [observable, observable.ref], _subtitlesHistoryDecs = [observable, observable.ref], _subtitlesHistorySettingsDecs = [observable, observable.ref], _addPinMessageDecs = [action, action.bound], _cancelPinMessageDecs = [action, action.bound], _setWhiteboardActiveDecs = [action, action.bound], _setAsideWidthDecs = [action, action.bound], _updateSlotsDecs = [action, action.bound], _toggleLayoutDecs = [action, action.bound], _toggleCollapsedDecs = [action, action.bound], _toggleAsideDecs = [action, action.bound], _asideWidthChangedDecs = [action, action.bound], _toggleLayoutBarLockDecs = [action, action.bound], _toggleLayoutBarHiddenDecs = [action, action.bound], _resetLockTimerDecs = [action, action.bound], _setHoveringHandlerDecs = [action, action.bound], _setHoveringLeaveHandlerDecs = [action, action.bound], _setScreenShareSpeakerViewSizeDecs = [debounced(400), bound], _handleLiveLayoutChangeDecs = [action, action.bound], _onUserInfoUpdatedDecs = [action, action.bound], _handleLayoutUpdatedDecs = [action, action.bound], _handleMainListLengthChangedDecs = [action, action.bound], _handleMainListChangedDecs = [action, action.bound], _setBarHoveringDecs = [action, action.bound], _handleConnectionUpdatedDecs = [action, action.bound], _findVideoWindowByUserIdDecs = [action, action.bound], _onRemoteUsersLeftDecs = [action, action.bound], "logger");
|
|
112
111
|
export var LayoutStoreBase = /*#__PURE__*/function () {
|
|
113
112
|
function LayoutStoreBase(_ref2) {
|
|
@@ -141,9 +140,8 @@ export var LayoutStoreBase = /*#__PURE__*/function () {
|
|
|
141
140
|
_classPrivateFieldInitSpec(this, _P, _init_barLocked(this, true));
|
|
142
141
|
_classPrivateFieldInitSpec(this, _Q, _init_barHidden(this, false));
|
|
143
142
|
_classPrivateFieldInitSpec(this, _R, _init_asideWidth(this, MinAsideWidth));
|
|
144
|
-
_classPrivateFieldInitSpec(this, _S,
|
|
145
|
-
_classPrivateFieldInitSpec(this, _T,
|
|
146
|
-
_classPrivateFieldInitSpec(this, _U, _init_ownerUser(this, undefined));
|
|
143
|
+
_classPrivateFieldInitSpec(this, _S, _init_whiteboardActive(this, false));
|
|
144
|
+
_classPrivateFieldInitSpec(this, _T, _init_ownerUser(this, undefined));
|
|
147
145
|
_defineProperty(this, "getAllowedOperations", computedFn(function (targetRole, isSelf) {
|
|
148
146
|
return _this._privilegeProvider.getAllowedOperations(targetRole, isSelf);
|
|
149
147
|
}));
|
|
@@ -169,6 +167,7 @@ export var LayoutStoreBase = /*#__PURE__*/function () {
|
|
|
169
167
|
this._privilegeProvider = objectManager.getObject(FcrUIObjectKeys.P_PRIVILEGE_PROVIDER);
|
|
170
168
|
this._sharedSettingDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_SETTING_DATA_SOURCE);
|
|
171
169
|
this._sharedInterpreterDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_INTERPRETER_DATA_SOURCE);
|
|
170
|
+
this._sharedChatDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_CHAT_DATA_SOURCE);
|
|
172
171
|
this._chatProvider = objectManager.getObject(FcrUIObjectKeys.P_CHAT_PROVIDER);
|
|
173
172
|
this._sharedUserAudioVolumeDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_USER_AUDIO_VOLUME_DATA_SOURCE);
|
|
174
173
|
this._videoWindowDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_VIDEO_WINDOW_DATA_SOURCE);
|
|
@@ -176,7 +175,7 @@ export var LayoutStoreBase = /*#__PURE__*/function () {
|
|
|
176
175
|
this._pinDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_PIN_DATA_SOURCE);
|
|
177
176
|
this._sharedScreenShareDataSource = objectManager.getObject(FcrUIObjectKeys.S_SHARED_SCREEN_SHARE_DATA_SOURCE);
|
|
178
177
|
this._annotationProvider = objectManager.getObject(FcrUIObjectKeys.P_ANNOTATION_PROVIDER);
|
|
179
|
-
this.
|
|
178
|
+
this._sharedChatDataSource.setConnectionState(FcrUIRoomType.MAIN_ROOM, this._chatRoomControl.getConnectionState());
|
|
180
179
|
}
|
|
181
180
|
return _createClass(LayoutStoreBase, [{
|
|
182
181
|
key: "participant",
|
|
@@ -325,26 +324,24 @@ export var LayoutStoreBase = /*#__PURE__*/function () {
|
|
|
325
324
|
}, {
|
|
326
325
|
key: "chatRoomState",
|
|
327
326
|
get: function get() {
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
set: function set(v) {
|
|
331
|
-
_classPrivateFieldSet(_S, this, v);
|
|
327
|
+
var _this$_sharedChatData, _this$_sharedChatData2;
|
|
328
|
+
return (_this$_sharedChatData = (_this$_sharedChatData2 = this._sharedChatDataSource) === null || _this$_sharedChatData2 === void 0 ? void 0 : _this$_sharedChatData2.currentConnectionState) !== null && _this$_sharedChatData !== void 0 ? _this$_sharedChatData : FcrChatRoomConnectionState.Disconnected;
|
|
332
329
|
}
|
|
333
330
|
}, {
|
|
334
331
|
key: "whiteboardActive",
|
|
335
332
|
get: function get() {
|
|
336
|
-
return _classPrivateFieldGet(
|
|
333
|
+
return _classPrivateFieldGet(_S, this);
|
|
337
334
|
},
|
|
338
335
|
set: function set(v) {
|
|
339
|
-
_classPrivateFieldSet(
|
|
336
|
+
_classPrivateFieldSet(_S, this, v);
|
|
340
337
|
}
|
|
341
338
|
}, {
|
|
342
339
|
key: "ownerUser",
|
|
343
340
|
get: function get() {
|
|
344
|
-
return _classPrivateFieldGet(
|
|
341
|
+
return _classPrivateFieldGet(_T, this);
|
|
345
342
|
},
|
|
346
343
|
set: function set(v) {
|
|
347
|
-
_classPrivateFieldSet(
|
|
344
|
+
_classPrivateFieldSet(_T, this, v);
|
|
348
345
|
}
|
|
349
346
|
}, {
|
|
350
347
|
key: "streamControl",
|
|
@@ -1212,9 +1209,10 @@ export var LayoutStoreBase = /*#__PURE__*/function () {
|
|
|
1212
1209
|
}
|
|
1213
1210
|
}, {
|
|
1214
1211
|
key: "_handleConnectionUpdated",
|
|
1215
|
-
value: function _handleConnectionUpdated(_, state) {
|
|
1216
|
-
this.logger.info('layout store handleConnectionUpdated', state);
|
|
1217
|
-
|
|
1212
|
+
value: function _handleConnectionUpdated(_, state, roomType) {
|
|
1213
|
+
this.logger.info('layout store handleConnectionUpdated', state, roomType);
|
|
1214
|
+
// 连接状态已由共享数据源统一管理,这里不需要再更新
|
|
1215
|
+
// 共享数据源会在收到回调时自动更新状态
|
|
1218
1216
|
}
|
|
1219
1217
|
}, {
|
|
1220
1218
|
key: "_findVideoWindowByUserId",
|
|
@@ -1312,7 +1310,7 @@ export var LayoutStoreBase = /*#__PURE__*/function () {
|
|
|
1312
1310
|
}]);
|
|
1313
1311
|
}();
|
|
1314
1312
|
_LayoutStoreBase = LayoutStoreBase;
|
|
1315
|
-
var _applyDecs$e = _slicedToArray(_applyDecs(_LayoutStoreBase, [[_participantDecs, 17, "participant"], [_chatDecs, 17, "chat"], [_chatActionDecs, 17, "chatAction"], [_stateBarDecs, 17, "stateBar"], [_actionBarDecs, 17, "actionBar"], [_layersDecs, 17, "layers"], [_whiteboardDecs, 17, "whiteboard"], [_annotationDecs, 17, "annotation"], [_screenShareControlDecs, 17, "screenShareControl"], [_subtitlesDecs, 17, "subtitles"], [_subtitlesHistoryDecs, 17, "subtitlesHistory"], [_subtitlesHistorySettingsDecs, 17, "subtitlesHistorySettings"], [observable, 1, "collapsed"], [observable, 1, "aside"], [observable, 1, "barHovering"], [observable, 1, "barLocked"], [observable, 1, "barHidden"], [observable, 1, "asideWidth"], [
|
|
1313
|
+
var _applyDecs$e = _slicedToArray(_applyDecs(_LayoutStoreBase, [[_participantDecs, 17, "participant"], [_chatDecs, 17, "chat"], [_chatActionDecs, 17, "chatAction"], [_stateBarDecs, 17, "stateBar"], [_actionBarDecs, 17, "actionBar"], [_layersDecs, 17, "layers"], [_whiteboardDecs, 17, "whiteboard"], [_annotationDecs, 17, "annotation"], [_screenShareControlDecs, 17, "screenShareControl"], [_subtitlesDecs, 17, "subtitles"], [_subtitlesHistoryDecs, 17, "subtitlesHistory"], [_subtitlesHistorySettingsDecs, 17, "subtitlesHistorySettings"], [observable, 1, "collapsed"], [observable, 1, "aside"], [observable, 1, "barHovering"], [observable, 1, "barLocked"], [observable, 1, "barHidden"], [observable, 1, "asideWidth"], [computed, 3, "chatRoomState"], [observable, 1, "whiteboardActive"], [observable, 1, "ownerUser"], [computed, 3, "isWaterMarkEnabled"], [computed, 3, "isMulti"], [computed, 3, "layout"], [computed, 3, "manualLayout"], [computed, 3, "scalcValue"], [computed, 3, "sourceList"], [computed, 3, "layoutMainList"], [computed, 3, "mainList"], [computed, 3, "spotlightStreamId"], [computed, 3, "foldList"], [computed, 3, "galleryList"], [computed, 3, "isMainWindowInScreenSharing"], [computed, 3, "isCurrentUserInBoardSharing"], [computed, 3, "asideLayout"], [computed, 3, "carouselList"], [computed, 3, "hasPinnedStream"], [computed, 3, "isRobot"], [computed, 3, "findSpotlightUser"], [computed, 3, "isWhoISpeakingActive"], [computed, 3, "microphoneEnabled"], [computed, 3, "cameraEnabled"], [computed, 3, "galleryMaxSize"], [computed, 3, "asideContent"], [computed, 3, "participantsRenderAt"], [computed, 3, "chatRenderAt"], [computed, 3, "subtitlesHistoryRenderAt"], [bound, 2, "getWaterMarkContent"], [bound, 2, "hasMutePermission"], [bound, 2, "hasUnmutePermission"], [bound, 2, "hasRequestStartAudioPermission"], [bound, 2, "toggleMainStream"], [_addPinMessageDecs, 18, "addPinMessage"], [_cancelPinMessageDecs, 18, "cancelPinMessage"], [bound, 2, "addPin"], [bound, 2, "removePin"], [bound, 2, "setVideoOrientation"], [bound, 2, "setAllowChat"], [bound, 2, "handleSetPinState"], [_setWhiteboardActiveDecs, 18, "setWhiteboardActive"], [_setAsideWidthDecs, 18, "setAsideWidth"], [_updateSlotsDecs, 18, "updateSlots"], [bound, 2, "closeParticipantFromAside"], [bound, 2, "moveParticipantFromAsideToDialog"], [bound, 2, "closeChatFromAside"], [bound, 2, "closeAsideChat"], [bound, 2, "moveChatFromAsideToDialog"], [bound, 2, "openPrivateChat"], [bound, 2, "openRenameDialog"], [bound, 2, "closeSubtitlesHistoryFromAside"], [bound, 2, "moveSubtitlesHistoryFromAsideToDialog"], [_toggleLayoutDecs, 18, "toggleLayout"], [_toggleCollapsedDecs, 18, "toggleCollapsed"], [_toggleAsideDecs, 18, "toggleAside"], [_asideWidthChangedDecs, 18, "asideWidthChanged"], [_toggleLayoutBarLockDecs, 18, "toggleLayoutBarLock"], [_toggleLayoutBarHiddenDecs, 18, "toggleLayoutBarHidden"], [_resetLockTimerDecs, 18, "resetLockTimer"], [_setHoveringHandlerDecs, 18, "setHoveringHandler"], [_setHoveringLeaveHandlerDecs, 18, "setHoveringLeaveHandler"], [_setScreenShareSpeakerViewSizeDecs, 2, "setScreenShareSpeakerViewSize"], [_handleLiveLayoutChangeDecs, 18, "handleLiveLayoutChange"], [_onUserInfoUpdatedDecs, 18, "onUserInfoUpdated"], [bound, 2, "stopLocalPreview"], [bound, 2, "startLocalPreview"], [bound, 2, "setAllowChatWithPayload"], [bound, 2, "setScaleValue"], [bound, 2, "muteAudio"], [bound, 2, "setControlbarEnabled"], [bound, 2, "sendParticipantEvent"], [bound, 2, "onEvent"], [bound, 2, "_addListeners"], [computed, 3, "_hasVideoStreamUser"], [_handleMainListLengthChangedDecs, 18, "_handleMainListLengthChanged"], [_handleMainListChangedDecs, 18, "_handleMainListChanged"], [action, 2, "_switchToSpeaker"], [action, 2, "_switchToGallery"], [_setBarHoveringDecs, 18, "_setBarHovering"], [_handleConnectionUpdatedDecs, 18, "_handleConnectionUpdated"], [_findVideoWindowByUserIdDecs, 18, "_findVideoWindowByUserId"], [_onRemoteUsersLeftDecs, 18, "_onRemoteUsersLeft"], [bound, 2, "_handleLiveStreamingStateUpdated"], [bound, 2, "_handleStreamAdded"], [bound, 2, "_onStreamsAdded"], [bound, 2, "_onStreamsUpdated"], [bound, 2, "_onStreamsRemoved"], [_handleLayoutUpdatedDecs, 16, "_handleLayoutUpdated"]], []).e, 22);
|
|
1316
1314
|
_init_participant = _applyDecs$e[0];
|
|
1317
1315
|
_init_chat = _applyDecs$e[1];
|
|
1318
1316
|
_init_chatAction = _applyDecs$e[2];
|
|
@@ -1331,9 +1329,8 @@ _init_barHovering = _applyDecs$e[14];
|
|
|
1331
1329
|
_init_barLocked = _applyDecs$e[15];
|
|
1332
1330
|
_init_barHidden = _applyDecs$e[16];
|
|
1333
1331
|
_init_asideWidth = _applyDecs$e[17];
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
_initProto = _applyDecs$e[22];
|
|
1332
|
+
_init_whiteboardActive = _applyDecs$e[18];
|
|
1333
|
+
_init_ownerUser = _applyDecs$e[19];
|
|
1334
|
+
_init__handleLayoutUpdated = _applyDecs$e[20];
|
|
1335
|
+
_initProto = _applyDecs$e[21];
|
|
1339
1336
|
export var StoreContext = /*#__PURE__*/createContext(null);
|
|
@@ -14,6 +14,72 @@
|
|
|
14
14
|
flex-direction: column;
|
|
15
15
|
align-items: center;
|
|
16
16
|
justify-content: center;
|
|
17
|
-
gap:
|
|
17
|
+
gap: 20px;
|
|
18
18
|
overflow: hidden;
|
|
19
19
|
}
|
|
20
|
+
|
|
21
|
+
.participants-container-rename-input-wrapper {
|
|
22
|
+
width: 100%;
|
|
23
|
+
position: relative;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.participants-container-rename-input-wrapper .fcr-textarea {
|
|
27
|
+
width: 272px;
|
|
28
|
+
height: 84px;
|
|
29
|
+
border-radius: var(--fcr_cornerradius_l);
|
|
30
|
+
border-width: 1px;
|
|
31
|
+
padding-top: 12px;
|
|
32
|
+
padding-right: 12px;
|
|
33
|
+
padding-bottom: 26px; /* 8px (Figma padding-bottom) + 18px (字符计数区域) = 26px */
|
|
34
|
+
padding-left: 12px;
|
|
35
|
+
box-sizing: border-box;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.participants-container-rename-input-wrapper .fcr-textarea textarea {
|
|
39
|
+
width: 248px; /* 272 - 12*2 = 248px */
|
|
40
|
+
height: 40px;
|
|
41
|
+
font-family:
|
|
42
|
+
'Inter',
|
|
43
|
+
ui-sans-serif,
|
|
44
|
+
system-ui,
|
|
45
|
+
-apple-system,
|
|
46
|
+
BlinkMacSystemFont,
|
|
47
|
+
'Segoe UI',
|
|
48
|
+
Roboto,
|
|
49
|
+
'Helvetica Neue',
|
|
50
|
+
Arial,
|
|
51
|
+
sans-serif;
|
|
52
|
+
font-weight: 400;
|
|
53
|
+
font-size: 14px;
|
|
54
|
+
line-height: 20px;
|
|
55
|
+
letter-spacing: 0;
|
|
56
|
+
color: var(--fcr_ui_scene_icontext1);
|
|
57
|
+
padding: 0; /* 容器的 padding 已经处理了间距 */
|
|
58
|
+
box-sizing: border-box;
|
|
59
|
+
vertical-align: bottom;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.participants-container-rename-input-wrapper .fcr-textarea .fcr-textarea-wc {
|
|
63
|
+
height: 16px;
|
|
64
|
+
font-family:
|
|
65
|
+
'Inter',
|
|
66
|
+
ui-sans-serif,
|
|
67
|
+
system-ui,
|
|
68
|
+
-apple-system,
|
|
69
|
+
BlinkMacSystemFont,
|
|
70
|
+
'Segoe UI',
|
|
71
|
+
Roboto,
|
|
72
|
+
'Helvetica Neue',
|
|
73
|
+
Arial,
|
|
74
|
+
sans-serif;
|
|
75
|
+
font-weight: 400;
|
|
76
|
+
font-size: 12px;
|
|
77
|
+
line-height: 16px;
|
|
78
|
+
letter-spacing: 0;
|
|
79
|
+
text-align: right;
|
|
80
|
+
color: var(--fcr_ui_scene_icontext2);
|
|
81
|
+
position: absolute;
|
|
82
|
+
bottom: 8px; /* 根据 Figma padding-bottom: 8px 调整 */
|
|
83
|
+
left: 12px; /* 与容器的 padding-left 对齐 */
|
|
84
|
+
right: 12px; /* 与容器的 padding-right 对齐,宽度自动计算为 248px (272 - 12*2) */
|
|
85
|
+
}
|