@agilemotion/oui-react-js 1.6.4 → 1.6.5
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/dist/ApplicationManager.js +675 -1044
- package/dist/BasicApp.js +7 -27
- package/dist/BasicAppHome.js +27 -101
- package/dist/DynamicJS.js +109 -197
- package/dist/InteractionPortalApp.js +7 -27
- package/dist/InteractionPortalAppHome.js +21 -87
- package/dist/InteractionPortalApp_old.js +60 -122
- package/dist/RestUtils.js +269 -410
- package/dist/TypedValue.js +20 -26
- package/dist/Utils.js +295 -481
- package/dist/WithRouter.js +9 -17
- package/dist/assets/jss/components/authNavbarStyle.js +168 -171
- package/dist/assets/jss/components/buttonStyle.js +2 -5
- package/dist/assets/jss/components/cardAvatarStyle.js +2 -5
- package/dist/assets/jss/components/cardBodyStyle.js +2 -5
- package/dist/assets/jss/components/cardFooterStyle.js +2 -5
- package/dist/assets/jss/components/cardHeaderStyle.js +20 -17
- package/dist/assets/jss/components/cardIconStyle.js +2 -5
- package/dist/assets/jss/components/cardStyle.js +2 -5
- package/dist/assets/jss/components/cardTextStyle.js +2 -5
- package/dist/assets/jss/components/customDropdownStyle.js +171 -173
- package/dist/assets/jss/components/customInputStyle.js +5 -13
- package/dist/assets/jss/components/dropdownStyle.js +71 -74
- package/dist/assets/jss/components/footerStyle.js +14 -23
- package/dist/assets/jss/components/headerLinksStyle.js +52 -53
- package/dist/assets/jss/components/headerStyle.js +68 -73
- package/dist/assets/jss/components/navbarLinksStyle.js +81 -74
- package/dist/assets/jss/components/navbarStyle.js +79 -84
- package/dist/assets/jss/components/sidebarStyle.js +438 -441
- package/dist/assets/jss/components/typographyStyle.js +5 -13
- package/dist/assets/jss/rootStyle.js +85 -151
- package/dist/assets/jss/views/layoutStyle.js +45 -51
- package/dist/assets/jss/views/loginBasicStyle.js +2 -5
- package/dist/assets/jss/views/loginBusinessPortalStyle.js +2 -5
- package/dist/assets/jss/views/loginStyle.js +80 -87
- package/dist/components/AlertBar.js +20 -75
- package/dist/components/AlertItem.js +13 -49
- package/dist/components/AlertTemplate.js +12 -18
- package/dist/components/Button.js +41 -112
- package/dist/components/Calendar.js +99 -208
- package/dist/components/ConfirmationDialog.js +13 -54
- package/dist/components/DataGrid.js +271 -695
- package/dist/components/DataGridColumn.js +24 -74
- package/dist/components/DataGridFilter.js +107 -245
- package/dist/components/DataGridHeading.js +34 -78
- package/dist/components/Dialog.js +37 -130
- package/dist/components/DocumentTemplateDesigner.js +16 -57
- package/dist/components/DocumentTemplateDesignerComponent.js +47 -141
- package/dist/components/DocumentTemplatePlaceholderDialog.js +34 -67
- package/dist/components/DocumentViewer.js +25 -65
- package/dist/components/DocumentViewerComponent.js +13 -44
- package/dist/components/ElementResizeHandler.js +148 -200
- package/dist/components/FileThumb.js +15 -56
- package/dist/components/Graph.js +98 -203
- package/dist/components/GraphNode.js +20 -61
- package/dist/components/HtmlPanel.js +38 -105
- package/dist/components/Icon.js +174 -253
- package/dist/components/LoadingIndicator.js +4 -11
- package/dist/components/LottieIcon.js +63 -60
- package/dist/components/PopupView.js +21 -60
- package/dist/components/Portlet.js +18 -60
- package/dist/components/RegularButton.js +34 -42
- package/dist/components/SignaturePanel.js +19 -67
- package/dist/components/SocketManager.js +133 -228
- package/dist/components/StepperTitleBar.js +48 -99
- package/dist/components/TabPage.js +30 -47
- package/dist/components/TabPanel.js +35 -122
- package/dist/components/TableCellContent.js +34 -98
- package/dist/components/TemplateDesigner.js +115 -230
- package/dist/components/TemplateItemEventHandler.js +298 -481
- package/dist/components/TemplateTable.js +117 -218
- package/dist/components/TitleBar.js +15 -53
- package/dist/components/Toolbar.js +44 -110
- package/dist/components/Tooltip.js +37 -56
- package/dist/components/Tree.js +50 -143
- package/dist/components/UseIsVisible.js +5 -25
- package/dist/components/card/Card.js +35 -39
- package/dist/components/card/CardAvatar.js +21 -32
- package/dist/components/card/CardBody.js +29 -36
- package/dist/components/card/CardFooter.js +26 -35
- package/dist/components/card/CardHeader.js +29 -36
- package/dist/components/card/CardIcon.js +15 -29
- package/dist/components/card/CardText.js +15 -29
- package/dist/components/customInput/CustomInput.js +38 -40
- package/dist/components/dashboard/FoldingSideTabDashboard.js +65 -184
- package/dist/components/dashboard/SideMenuModuleDashboard.js +67 -185
- package/dist/components/dashboard/TopMenuModuleDashboard.js +22 -63
- package/dist/components/dashboard/components/Header.js +15 -52
- package/dist/components/dashboard/components/LeftDrawer.js +9 -23
- package/dist/components/dashboard/components/UserIdentity.js +4 -12
- package/dist/components/dashboard/components/blackDashboard/fixedPlugin/FixedPlugin.js +115 -155
- package/dist/components/dashboard/components/blackDashboard/sidebar/FoldingTabSidebar.js +344 -419
- package/dist/components/dashboard/components/blackDashboard/sidebar/ModuleMenu.js +15 -29
- package/dist/components/dashboard/components/blackDashboard/sidebar/ModuleMenuSidebar.js +405 -485
- package/dist/components/dashboard/components/portal/Timeline.js +3 -8
- package/dist/components/dashboard/components/portal/Workspace.js +4 -13
- package/dist/components/footer/Footer.js +23 -45
- package/dist/components/footer/HomeFooter.js +38 -78
- package/dist/components/form/AddressSearch.js +26 -76
- package/dist/components/form/AutoComplete.js +54 -168
- package/dist/components/form/BaseField.js +59 -189
- package/dist/components/form/Checkbox.js +11 -24
- package/dist/components/form/DatePicker.js +28 -82
- package/dist/components/form/FieldSet.js +84 -300
- package/dist/components/form/Form.js +206 -501
- package/dist/components/form/GridField.js +83 -243
- package/dist/components/form/IconField.js +10 -21
- package/dist/components/form/ImageEditor.js +98 -208
- package/dist/components/form/LabelField.js +13 -28
- package/dist/components/form/LookupField.js +36 -102
- package/dist/components/form/MultiFileUploadField.js +67 -134
- package/dist/components/form/RadioGroup.js +20 -57
- package/dist/components/form/Section.js +33 -118
- package/dist/components/form/SelectItem.js +36 -83
- package/dist/components/form/SignatureTemplateDesignerField.js +12 -26
- package/dist/components/form/Switch.js +11 -24
- package/dist/components/form/TextField.js +19 -55
- package/dist/components/form/TimePicker.js +18 -43
- package/dist/components/form/TransferList.js +76 -200
- package/dist/components/form/UploadField.js +134 -256
- package/dist/components/grid/GridContainer.js +10 -23
- package/dist/components/grid/GridItem.js +10 -23
- package/dist/components/layout/CollapsiblePanel.js +20 -59
- package/dist/components/layout/Layout.js +40 -149
- package/dist/components/layout/View.js +65 -195
- package/dist/components/layout/ViewContainer.js +13 -33
- package/dist/components/layout/ViewPort.js +14 -48
- package/dist/components/layout/Window.js +62 -135
- package/dist/components/layout/WindowViewPort.js +18 -63
- package/dist/components/media/ClosablePanel.js +9 -18
- package/dist/components/media/LobbyWaitingList.js +11 -17
- package/dist/components/media/MediaSoupHelper.js +173 -401
- package/dist/components/media/SideBarContent.js +17 -34
- package/dist/components/media/SocketRequest.js +7 -18
- package/dist/components/media/SocketResponse.js +5 -14
- package/dist/components/media/Timer.js +18 -54
- package/dist/components/media/Toolbar.js +97 -254
- package/dist/components/media/ToolbarButton.js +34 -95
- package/dist/components/media/Toolbar_bck.js +70 -186
- package/dist/components/media/Tracks.js +19 -33
- package/dist/components/media/TrainingRoom.js +121 -374
- package/dist/components/media/Transports.js +17 -29
- package/dist/components/media/VCEventManager.js +45 -116
- package/dist/components/media/VCEventType.js +82 -168
- package/dist/components/media/VCParticipantList.js +16 -51
- package/dist/components/media/VCParticipantListItem.js +44 -141
- package/dist/components/media/VCRoom.js +14 -58
- package/dist/components/media/VCRoomParticipant.js +235 -556
- package/dist/components/media/VCRoomRecorder.js +106 -204
- package/dist/components/media/VCRoomWorkspace.js +248 -584
- package/dist/components/media/Video.js +27 -112
- package/dist/components/media/VideoPlayer.js +23 -91
- package/dist/components/media/chat/ChatRoom.js +143 -361
- package/dist/components/media/chat/ChatRoomItem.js +17 -58
- package/dist/components/media/chat/ChatRoomList.js +15 -60
- package/dist/components/menu/CollapsibleMenu.js +22 -52
- package/dist/components/menu/MenuBars.js +50 -116
- package/dist/components/menu/MenuButton.js +53 -130
- package/dist/components/menu/MenuItem.js +11 -51
- package/dist/components/menu/MenuLink.js +13 -41
- package/dist/components/menu/PopupMenu.js +13 -25
- package/dist/components/navbars/AuthNavbar.js +21 -56
- package/dist/components/navbars/HomeNavbar.js +213 -290
- package/dist/components/navbars/PortalNavbar.js +26 -81
- package/dist/components/signatures/AgilitySignaturePanel.js +41 -135
- package/dist/components/signatures/AlertItem.js +14 -50
- package/dist/components/signatures/Card.js +6 -16
- package/dist/components/signatures/DocumentContainer.js +57 -165
- package/dist/components/signatures/ImageSignatureInput.js +64 -124
- package/dist/components/signatures/MenuButton.js +28 -63
- package/dist/components/signatures/Prompt.js +6 -41
- package/dist/components/signatures/ResponsiveTable.js +181 -370
- package/dist/components/signatures/SearchView.js +34 -112
- package/dist/components/signatures/SignatorySearch.js +11 -44
- package/dist/components/signatures/SignatorySearchForm.js +19 -50
- package/dist/components/signatures/SignatureInput.js +28 -91
- package/dist/components/signatures/SignatureInputProps.js +49 -144
- package/dist/components/signatures/SignatureTemplateDesigner.js +230 -430
- package/dist/components/signatures/Toolbar.js +99 -173
- package/dist/components/signatures/ViewUtils.js +207 -313
- package/dist/components/typography/Danger.js +6 -11
- package/dist/components/typography/Info.js +7 -11
- package/dist/components/typography/Link.js +6 -12
- package/dist/event/ActionHandlers.js +48 -87
- package/dist/event/Event.js +21 -25
- package/dist/event/EventListener.js +54 -48
- package/dist/event/EventType.js +18 -40
- package/dist/event/LoadDataActionHandler.js +10 -31
- package/dist/event/Observable.js +204 -396
- package/dist/event/RouteActionHandler.js +119 -171
- package/dist/event/ScriptActionHandler.js +10 -32
- package/dist/event/ServiceCallActionHandler.js +37 -64
- package/dist/event/SignalGraphActionHandler.js +9 -31
- package/dist/js/Addresses.js +23 -42
- package/dist/js/Calendar.js +41 -89
- package/dist/js/DynamicLib.js +11 -23
- package/dist/js/Media.js +80 -174
- package/dist/js/Validators.js +6 -12
- package/dist/js/Windows.js +22 -40
- package/dist/redux/store/ConfigureStore.js +12 -29
- package/dist/redux/store/DashboardStore.js +47 -120
- package/dist/redux/store/History.js +2 -5
- package/dist/redux/store/SecurityStore.js +22 -65
- package/dist/security/TokenManager.js +29 -53
- package/dist/theme-default.js +3 -8
- package/dist/view/Dashboard.js +140 -308
- package/dist/view/PortalDashboard.js +6 -13
- package/dist/view/Settings.js +3 -11
- package/dist/view/Views.js +15 -35
- package/dist/view/security/ChangePasswordBasic.js +41 -147
- package/dist/view/security/ForgotPassword.js +26 -106
- package/dist/view/security/ForgotPasswordBasic.js +22 -96
- package/dist/view/security/Login.js +29 -117
- package/dist/view/security/LoginBasic.js +28 -108
- package/dist/view/security/LoginInteractionPortal.js +28 -106
- package/dist/view/security/ResetPassword.js +25 -110
- package/dist/view/security/ResetPasswordBasic.js +39 -142
- package/dist/view/security/Security.js +14 -26
- package/package.json +25 -20
|
@@ -1,490 +1,242 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
4
|
-
|
|
5
3
|
Object.defineProperty(exports, "__esModule", {
|
|
6
4
|
value: true
|
|
7
5
|
});
|
|
8
6
|
exports.default = void 0;
|
|
9
|
-
|
|
10
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
|
|
12
8
|
require("./VCRoomWorkspace.css");
|
|
13
|
-
|
|
14
9
|
var _Grid = _interopRequireDefault(require("@material-ui/core/Grid"));
|
|
15
|
-
|
|
16
10
|
var _VCRoomParticipant = _interopRequireDefault(require("./VCRoomParticipant"));
|
|
17
|
-
|
|
18
11
|
var _Box = _interopRequireDefault(require("@material-ui/core/Box"));
|
|
19
|
-
|
|
20
12
|
var _VCEventManager = _interopRequireDefault(require("./VCEventManager"));
|
|
21
|
-
|
|
22
13
|
var _MediaSoupHelper = _interopRequireDefault(require("./MediaSoupHelper"));
|
|
23
|
-
|
|
24
14
|
var _Transports = _interopRequireDefault(require("./Transports"));
|
|
25
|
-
|
|
26
15
|
var _VCEventType = require("./VCEventType");
|
|
27
|
-
|
|
28
16
|
var _Icon = _interopRequireDefault(require("../Icon"));
|
|
29
|
-
|
|
30
17
|
var _SocketManager = _interopRequireDefault(require("../SocketManager"));
|
|
31
|
-
|
|
32
18
|
var _LobbyWaitingList = _interopRequireDefault(require("./LobbyWaitingList"));
|
|
33
|
-
|
|
34
19
|
var _VCRoom = require("./VCRoom");
|
|
35
|
-
|
|
36
20
|
var _SideBarContent = _interopRequireDefault(require("./SideBarContent"));
|
|
37
|
-
|
|
38
|
-
function
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
var _React$useState7 = _react.default.useState(null),
|
|
83
|
-
_React$useState8 = _slicedToArray(_React$useState7, 2),
|
|
84
|
-
device = _React$useState8[0],
|
|
85
|
-
setDevice = _React$useState8[1];
|
|
86
|
-
|
|
87
|
-
var _React$useState9 = _react.default.useState(null),
|
|
88
|
-
_React$useState10 = _slicedToArray(_React$useState9, 2),
|
|
89
|
-
shareScreenProducer = _React$useState10[0],
|
|
90
|
-
setShareScreenProducer = _React$useState10[1];
|
|
91
|
-
|
|
92
|
-
var _React$useState11 = _react.default.useState(null),
|
|
93
|
-
_React$useState12 = _slicedToArray(_React$useState11, 2),
|
|
94
|
-
producerTransport = _React$useState12[0],
|
|
95
|
-
setProducerTransport = _React$useState12[1];
|
|
96
|
-
|
|
97
|
-
var _React$useState13 = _react.default.useState(null),
|
|
98
|
-
_React$useState14 = _slicedToArray(_React$useState13, 2),
|
|
99
|
-
screenShared = _React$useState14[0],
|
|
100
|
-
setScreenShared = _React$useState14[1];
|
|
101
|
-
|
|
102
|
-
var _React$useState15 = _react.default.useState(null),
|
|
103
|
-
_React$useState16 = _slicedToArray(_React$useState15, 2),
|
|
104
|
-
someoneSharing = _React$useState16[0],
|
|
105
|
-
setSomeoneSharing = _React$useState16[1];
|
|
106
|
-
|
|
107
|
-
var _React$useState17 = _react.default.useState(false),
|
|
108
|
-
_React$useState18 = _slicedToArray(_React$useState17, 2),
|
|
109
|
-
showSharedScreen = _React$useState18[0],
|
|
110
|
-
setShowSharedScreen = _React$useState18[1];
|
|
111
|
-
|
|
112
|
-
var _React$useState19 = _react.default.useState(''),
|
|
113
|
-
_React$useState20 = _slicedToArray(_React$useState19, 2),
|
|
114
|
-
message = _React$useState20[0],
|
|
115
|
-
setMessage = _React$useState20[1];
|
|
116
|
-
|
|
117
|
-
var _React$useState21 = _react.default.useState(null),
|
|
118
|
-
_React$useState22 = _slicedToArray(_React$useState21, 2),
|
|
119
|
-
shareScreenConsumer = _React$useState22[0],
|
|
120
|
-
setShareScreenConsumer = _React$useState22[1];
|
|
121
|
-
|
|
122
|
-
var _React$useState23 = _react.default.useState(null),
|
|
123
|
-
_React$useState24 = _slicedToArray(_React$useState23, 2),
|
|
124
|
-
grid = _React$useState24[0],
|
|
125
|
-
setGrid = _React$useState24[1];
|
|
126
|
-
|
|
127
|
-
var _useState = (0, _react.useState)({}),
|
|
128
|
-
_useState2 = _slicedToArray(_useState, 1),
|
|
129
|
-
eventHandler = _useState2[0];
|
|
130
|
-
|
|
131
|
-
var transports = (0, _react.useRef)(new _Transports.default());
|
|
132
|
-
var shareScreenVideoRef = (0, _react.useRef)();
|
|
133
|
-
var shareScreenStream = (0, _react.useRef)();
|
|
134
|
-
var waitingList = props.waitingList,
|
|
135
|
-
roomStatus = props.roomStatus,
|
|
136
|
-
meetingId = props.meetingId,
|
|
137
|
-
meetingChat = props.meetingChat,
|
|
138
|
-
sideBarTab = props.sideBarTab,
|
|
139
|
-
meetingTitle = props.meetingTitle,
|
|
140
|
-
whiteBoardShown = props.whiteBoardShown,
|
|
141
|
-
videoMuted = props.videoMuted,
|
|
142
|
-
audioMuted = props.audioMuted,
|
|
143
|
-
isHost = props.isHost,
|
|
144
|
-
rtpCapabilities = props.rtpCapabilities,
|
|
145
|
-
onloadScreenShareData = props.onloadScreenShareData,
|
|
146
|
-
displayState = props.displayState,
|
|
147
|
-
startScreenSharing = props.startScreenSharing,
|
|
148
|
-
participants = props.participants;
|
|
149
|
-
|
|
150
|
-
var startShareScreen = function startShareScreen() {
|
|
21
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
22
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
23
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
24
|
+
/* eslint-disable react-hooks/exhaustive-deps */
|
|
25
|
+
|
|
26
|
+
const MAX_COLS = 3;
|
|
27
|
+
const MAX_ROWS = 2;
|
|
28
|
+
|
|
29
|
+
// TODO : Clean-up all tracks and producers and consumers when the component closes
|
|
30
|
+
const VCRoomWorkspace = props => {
|
|
31
|
+
const [currentUserParticipant, setCurrentUserParticipant] = _react.default.useState(null);
|
|
32
|
+
const [inViewParticipants, setInViewParticipants] = _react.default.useState([]);
|
|
33
|
+
const [consumerTransport, setConsumerTransport] = _react.default.useState(null);
|
|
34
|
+
//const [videoRefresher, setVideoRefresher] = React.useState(false);
|
|
35
|
+
const [device, setDevice] = _react.default.useState(null);
|
|
36
|
+
const [shareScreenProducer, setShareScreenProducer] = _react.default.useState(null);
|
|
37
|
+
const [producerTransport, setProducerTransport] = _react.default.useState(null);
|
|
38
|
+
const [screenShared, setScreenShared] = _react.default.useState(null);
|
|
39
|
+
const [someoneSharing, setSomeoneSharing] = _react.default.useState(null);
|
|
40
|
+
const [showSharedScreen, setShowSharedScreen] = _react.default.useState(false);
|
|
41
|
+
const [message, setMessage] = _react.default.useState('');
|
|
42
|
+
const [shareScreenConsumer, setShareScreenConsumer] = _react.default.useState(null);
|
|
43
|
+
const [grid, setGrid] = _react.default.useState(null);
|
|
44
|
+
const [eventHandler] = (0, _react.useState)({});
|
|
45
|
+
const transports = (0, _react.useRef)(new _Transports.default());
|
|
46
|
+
const shareScreenVideoRef = (0, _react.useRef)();
|
|
47
|
+
const shareScreenStream = (0, _react.useRef)();
|
|
48
|
+
const {
|
|
49
|
+
waitingList,
|
|
50
|
+
roomStatus,
|
|
51
|
+
meetingId,
|
|
52
|
+
meetingChat,
|
|
53
|
+
sideBarTab,
|
|
54
|
+
meetingTitle,
|
|
55
|
+
whiteBoardShown,
|
|
56
|
+
videoMuted,
|
|
57
|
+
audioMuted,
|
|
58
|
+
isHost,
|
|
59
|
+
rtpCapabilities,
|
|
60
|
+
onloadScreenShareData,
|
|
61
|
+
displayState,
|
|
62
|
+
startScreenSharing,
|
|
63
|
+
participants
|
|
64
|
+
} = props;
|
|
65
|
+
const startShareScreen = () => {
|
|
151
66
|
produceScreenShare();
|
|
152
67
|
};
|
|
153
|
-
|
|
154
|
-
var stopShareScreen = function stopShareScreen() {
|
|
68
|
+
const stopShareScreen = () => {
|
|
155
69
|
if (shareScreenStream.current) {
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
try {
|
|
160
|
-
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
161
|
-
var track = _step.value;
|
|
162
|
-
track.stop();
|
|
163
|
-
}
|
|
164
|
-
} catch (err) {
|
|
165
|
-
_iterator.e(err);
|
|
166
|
-
} finally {
|
|
167
|
-
_iterator.f();
|
|
70
|
+
for (const track of shareScreenStream.current.getTracks()) {
|
|
71
|
+
track.stop();
|
|
168
72
|
}
|
|
169
|
-
|
|
170
73
|
shareScreenStream.current = null;
|
|
171
74
|
removeShareScreenElement();
|
|
172
75
|
}
|
|
173
|
-
|
|
174
76
|
props.onStopSharing();
|
|
175
77
|
};
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
console.log('Share screen producer already exist');
|
|
217
|
-
return _context3.abrupt("return");
|
|
218
|
-
|
|
219
|
-
case 12:
|
|
220
|
-
videoConstraints = {
|
|
221
|
-
cursor: true,
|
|
222
|
-
audio: false,
|
|
223
|
-
video: {
|
|
224
|
-
mandatory: {
|
|
225
|
-
width: {
|
|
226
|
-
min: 160,
|
|
227
|
-
ideal: 320,
|
|
228
|
-
max: 640
|
|
229
|
-
},
|
|
230
|
-
height: {
|
|
231
|
-
min: 120,
|
|
232
|
-
ideal: 240,
|
|
233
|
-
max: 480
|
|
234
|
-
},
|
|
235
|
-
frameRate: {
|
|
236
|
-
min: 15,
|
|
237
|
-
max: 15
|
|
238
|
-
},
|
|
239
|
-
googCpuOveruseDetection: true,
|
|
240
|
-
googCpuOveruseEncodeUsage: true,
|
|
241
|
-
googCpuOveruseThreshold: 70
|
|
242
|
-
}
|
|
243
|
-
},
|
|
244
|
-
preferCurrentTab: true,
|
|
245
|
-
selfBrowserSurface: 'include',
|
|
246
|
-
systemAudio: 'exclude',
|
|
247
|
-
surfaceSwitching: 'exclude',
|
|
248
|
-
monitorTypeSurfaces: 'exclude'
|
|
249
|
-
};
|
|
250
|
-
|
|
251
|
-
_SocketManager.default.emitEvent(_VCEventType.VCEventType.CANCEL_SCREEN_SHARE, {
|
|
252
|
-
roomId: props.meetingId
|
|
253
|
-
}).then( /*#__PURE__*/function () {
|
|
254
|
-
var _ref2 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2(result) {
|
|
255
|
-
return regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
256
|
-
while (1) {
|
|
257
|
-
switch (_context2.prev = _context2.next) {
|
|
258
|
-
case 0:
|
|
259
|
-
navigator.mediaDevices.getDisplayMedia(videoConstraints).then( /*#__PURE__*/function () {
|
|
260
|
-
var _ref3 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(stream) {
|
|
261
|
-
var track, params, producer;
|
|
262
|
-
return regeneratorRuntime.wrap(function _callee$(_context) {
|
|
263
|
-
while (1) {
|
|
264
|
-
switch (_context.prev = _context.next) {
|
|
265
|
-
case 0:
|
|
266
|
-
track = stream.getVideoTracks()[0];
|
|
267
|
-
|
|
268
|
-
track.onended = function (e) {
|
|
269
|
-
track.stop();
|
|
270
|
-
stopShareScreen();
|
|
271
|
-
};
|
|
272
|
-
|
|
273
|
-
params = {
|
|
274
|
-
track: track,
|
|
275
|
-
appData: {
|
|
276
|
-
screenSharing: true
|
|
277
|
-
}
|
|
278
|
-
};
|
|
279
|
-
_context.next = 5;
|
|
280
|
-
return producerTransport.produce(params);
|
|
281
|
-
|
|
282
|
-
case 5:
|
|
283
|
-
producer = _context.sent;
|
|
284
|
-
setShareScreenProducer(producer);
|
|
285
|
-
shareScreenStream.current = stream;
|
|
286
|
-
|
|
287
|
-
if (showSharedScreen) {
|
|
288
|
-
shareScreenVideoRef.current.srcObject = stream;
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
producer.on('transportclose', function () {
|
|
292
|
-
stream.srcObject.getTracks().forEach(function (track) {
|
|
293
|
-
track.stop();
|
|
294
|
-
});
|
|
295
|
-
setShareScreenProducer(null);
|
|
296
|
-
});
|
|
297
|
-
producer.on('close', function () {
|
|
298
|
-
stream.srcObject.getTracks().forEach(function (track) {
|
|
299
|
-
track.stop();
|
|
300
|
-
});
|
|
301
|
-
setShareScreenProducer(null);
|
|
302
|
-
});
|
|
303
|
-
props.onStartSharing();
|
|
304
|
-
|
|
305
|
-
case 12:
|
|
306
|
-
case "end":
|
|
307
|
-
return _context.stop();
|
|
308
|
-
}
|
|
309
|
-
}
|
|
310
|
-
}, _callee);
|
|
311
|
-
}));
|
|
312
|
-
|
|
313
|
-
return function (_x2) {
|
|
314
|
-
return _ref3.apply(this, arguments);
|
|
315
|
-
};
|
|
316
|
-
}()).catch(function (e) {
|
|
317
|
-
props.onStopSharing();
|
|
318
|
-
});
|
|
319
|
-
|
|
320
|
-
case 1:
|
|
321
|
-
case "end":
|
|
322
|
-
return _context2.stop();
|
|
323
|
-
}
|
|
324
|
-
}
|
|
325
|
-
}, _callee2);
|
|
326
|
-
}));
|
|
327
|
-
|
|
328
|
-
return function (_x) {
|
|
329
|
-
return _ref2.apply(this, arguments);
|
|
330
|
-
};
|
|
331
|
-
}()).catch(function (e) {
|
|
332
|
-
return console.log('ERROR CANCELLING SCREEN SHARE : ', e);
|
|
333
|
-
});
|
|
334
|
-
|
|
335
|
-
case 14:
|
|
336
|
-
case "end":
|
|
337
|
-
return _context3.stop();
|
|
338
|
-
}
|
|
78
|
+
const produceScreenShare = async () => {
|
|
79
|
+
if (!device) {
|
|
80
|
+
console.error('No available device');
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
if (!producerTransport) {
|
|
84
|
+
console.error('No producer transport');
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
if (!device.canProduce('video')) {
|
|
88
|
+
console.error('Cannot produce screen share');
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
if (shareScreenProducer) {
|
|
92
|
+
console.log('Share screen producer already exist');
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
const videoConstraints = {
|
|
96
|
+
cursor: true,
|
|
97
|
+
audio: false,
|
|
98
|
+
video: {
|
|
99
|
+
mandatory: {
|
|
100
|
+
width: {
|
|
101
|
+
min: 160,
|
|
102
|
+
ideal: 320,
|
|
103
|
+
max: 640
|
|
104
|
+
},
|
|
105
|
+
height: {
|
|
106
|
+
min: 120,
|
|
107
|
+
ideal: 240,
|
|
108
|
+
max: 480
|
|
109
|
+
},
|
|
110
|
+
frameRate: {
|
|
111
|
+
min: 15,
|
|
112
|
+
max: 15
|
|
113
|
+
},
|
|
114
|
+
googCpuOveruseDetection: true,
|
|
115
|
+
googCpuOveruseEncodeUsage: true,
|
|
116
|
+
googCpuOveruseThreshold: 70
|
|
339
117
|
}
|
|
340
|
-
},
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
118
|
+
},
|
|
119
|
+
preferCurrentTab: true,
|
|
120
|
+
selfBrowserSurface: 'include',
|
|
121
|
+
systemAudio: 'exclude',
|
|
122
|
+
surfaceSwitching: 'exclude',
|
|
123
|
+
monitorTypeSurfaces: 'exclude'
|
|
345
124
|
};
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
}
|
|
360
|
-
|
|
361
|
-
console.log('There is no share screen producer');
|
|
362
|
-
return _context4.abrupt("return");
|
|
363
|
-
|
|
364
|
-
case 3:
|
|
365
|
-
producerId = shareScreenProducer.id;
|
|
366
|
-
console.log('Close producer', producerId);
|
|
367
|
-
|
|
368
|
-
_SocketManager.default.emitEvent(_VCEventType.VCEventType.PRODUCER_CLOSED, {
|
|
369
|
-
userId: sessionStorage.getItem('username'),
|
|
370
|
-
producerId: producerId,
|
|
371
|
-
roomId: meetingId
|
|
372
|
-
}).catch(function (e) {
|
|
373
|
-
return console.log('PRODUCER_CLOSED ERROR : ', e);
|
|
374
|
-
});
|
|
375
|
-
|
|
376
|
-
shareScreenProducer.close();
|
|
377
|
-
stopShareScreen();
|
|
378
|
-
setShareScreenProducer(null); //setSomeoneSharing(false);
|
|
379
|
-
|
|
380
|
-
setScreenShared(false);
|
|
381
|
-
|
|
382
|
-
if (shareScreenStream.current) {
|
|
383
|
-
_iterator2 = _createForOfIteratorHelper(shareScreenStream.current.getTracks());
|
|
384
|
-
|
|
385
|
-
try {
|
|
386
|
-
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
387
|
-
track = _step2.value;
|
|
388
|
-
track.stop();
|
|
389
|
-
}
|
|
390
|
-
} catch (err) {
|
|
391
|
-
_iterator2.e(err);
|
|
392
|
-
} finally {
|
|
393
|
-
_iterator2.f();
|
|
394
|
-
}
|
|
395
|
-
}
|
|
396
|
-
|
|
397
|
-
case 11:
|
|
398
|
-
case "end":
|
|
399
|
-
return _context4.stop();
|
|
125
|
+
_SocketManager.default.emitEvent(_VCEventType.VCEventType.CANCEL_SCREEN_SHARE, {
|
|
126
|
+
roomId: props.meetingId
|
|
127
|
+
}).then(async result => {
|
|
128
|
+
navigator.mediaDevices.getDisplayMedia(videoConstraints).then(async stream => {
|
|
129
|
+
const track = stream.getVideoTracks()[0];
|
|
130
|
+
track.onended = e => {
|
|
131
|
+
track.stop();
|
|
132
|
+
stopShareScreen();
|
|
133
|
+
};
|
|
134
|
+
const params = {
|
|
135
|
+
track,
|
|
136
|
+
appData: {
|
|
137
|
+
screenSharing: true
|
|
400
138
|
}
|
|
139
|
+
};
|
|
140
|
+
let producer = await producerTransport.produce(params);
|
|
141
|
+
setShareScreenProducer(producer);
|
|
142
|
+
shareScreenStream.current = stream;
|
|
143
|
+
if (showSharedScreen) {
|
|
144
|
+
shareScreenVideoRef.current.srcObject = stream;
|
|
401
145
|
}
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
146
|
+
producer.on('transportclose', () => {
|
|
147
|
+
stream.srcObject.getTracks().forEach(function (track) {
|
|
148
|
+
track.stop();
|
|
149
|
+
});
|
|
150
|
+
setShareScreenProducer(null);
|
|
151
|
+
});
|
|
152
|
+
producer.on('close', () => {
|
|
153
|
+
stream.srcObject.getTracks().forEach(function (track) {
|
|
154
|
+
track.stop();
|
|
155
|
+
});
|
|
156
|
+
setShareScreenProducer(null);
|
|
157
|
+
});
|
|
158
|
+
props.onStartSharing();
|
|
159
|
+
}).catch(e => {
|
|
160
|
+
props.onStopSharing();
|
|
161
|
+
});
|
|
162
|
+
}).catch(e => console.log('ERROR CANCELLING SCREEN SHARE : ', e));
|
|
163
|
+
};
|
|
164
|
+
const stopProducingScreenShare = async () => {
|
|
165
|
+
if (!shareScreenProducer) {
|
|
166
|
+
console.log('There is no share screen producer');
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
let producerId = shareScreenProducer.id;
|
|
170
|
+
console.log('Close producer', producerId);
|
|
171
|
+
_SocketManager.default.emitEvent(_VCEventType.VCEventType.PRODUCER_CLOSED, {
|
|
172
|
+
userId: sessionStorage.getItem('username'),
|
|
173
|
+
producerId,
|
|
174
|
+
roomId: meetingId
|
|
175
|
+
}).catch(e => console.log('PRODUCER_CLOSED ERROR : ', e));
|
|
176
|
+
shareScreenProducer.close();
|
|
177
|
+
stopShareScreen();
|
|
178
|
+
setShareScreenProducer(null);
|
|
179
|
+
//setSomeoneSharing(false);
|
|
180
|
+
setScreenShared(false);
|
|
181
|
+
if (shareScreenStream.current) {
|
|
182
|
+
for (const track of shareScreenStream.current.getTracks()) {
|
|
183
|
+
track.stop();
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
};
|
|
187
|
+
const onNewProducers = producers => {
|
|
188
|
+
let screenShareProducer = producers.find(p => p.screenSharing);
|
|
415
189
|
if (screenShareProducer) {
|
|
416
190
|
consume(screenShareProducer);
|
|
417
191
|
}
|
|
418
192
|
};
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
var el = document.getElementById('share-screen-video');
|
|
422
|
-
|
|
193
|
+
const removeShareScreenElement = () => {
|
|
194
|
+
let el = document.getElementById('share-screen-video');
|
|
423
195
|
if (el) {
|
|
424
196
|
el.parentNode.removeChild(el);
|
|
425
197
|
}
|
|
426
198
|
};
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
}
|
|
457
|
-
});
|
|
458
|
-
|
|
459
|
-
case 1:
|
|
460
|
-
case "end":
|
|
461
|
-
return _context5.stop();
|
|
462
|
-
}
|
|
463
|
-
}
|
|
464
|
-
}, _callee5);
|
|
465
|
-
}));
|
|
466
|
-
|
|
467
|
-
return function consume(_x3) {
|
|
468
|
-
return _ref5.apply(this, arguments);
|
|
469
|
-
};
|
|
470
|
-
}();
|
|
471
|
-
|
|
472
|
-
var handler = function handler() {
|
|
199
|
+
const consume = async producer => {
|
|
200
|
+
_MediaSoupHelper.default.getConsumeStream(producer.producerId, device.rtpCapabilities, consumerTransport, props.meetingId, sessionStorage.getItem('username'), 'video').then(_ref => {
|
|
201
|
+
let {
|
|
202
|
+
consumer,
|
|
203
|
+
stream,
|
|
204
|
+
kind
|
|
205
|
+
} = _ref;
|
|
206
|
+
if (consumer) {
|
|
207
|
+
setShareScreenConsumer(consumer);
|
|
208
|
+
console.log('=====================================SHARING CONSUME=====================================');
|
|
209
|
+
props.sharingHandler(true);
|
|
210
|
+
setScreenShared(true);
|
|
211
|
+
setSomeoneSharing(true);
|
|
212
|
+
//setShowSharedScreen(true);
|
|
213
|
+
setMessage(producer.username + ' is sharing');
|
|
214
|
+
shareScreenVideoRef.current.srcObject = stream;
|
|
215
|
+
shareScreenStream.current = stream;
|
|
216
|
+
//setVideoRefresher(!videoRefresher);
|
|
217
|
+
|
|
218
|
+
consumer.on('trackended', () => {
|
|
219
|
+
removeShareScreenElement();
|
|
220
|
+
});
|
|
221
|
+
consumer.on('transportclose', () => {
|
|
222
|
+
removeShareScreenElement();
|
|
223
|
+
});
|
|
224
|
+
}
|
|
225
|
+
});
|
|
226
|
+
};
|
|
227
|
+
const handler = () => {
|
|
473
228
|
return {
|
|
474
229
|
get id() {
|
|
475
230
|
return 'meeting-participant-grid';
|
|
476
231
|
},
|
|
477
|
-
|
|
478
|
-
on: function on(eventType, be) {
|
|
232
|
+
on: (eventType, be) => {
|
|
479
233
|
switch (eventType) {
|
|
480
234
|
case _VCEventType.VCEventType.PARTICIPANT_IN_VIEW:
|
|
481
235
|
onBringToView(be);
|
|
482
236
|
break;
|
|
483
|
-
|
|
484
237
|
case _VCEventType.VCEventType.NEW_PRODUCERS:
|
|
485
238
|
onNewProducers(be.payload);
|
|
486
239
|
break;
|
|
487
|
-
|
|
488
240
|
case _VCEventType.VCEventType.CONSUMER_CLOSED:
|
|
489
241
|
if (shareScreenConsumer && shareScreenConsumer.id === be.payload.consumerId) {
|
|
490
242
|
removeShareScreenElement();
|
|
@@ -494,139 +246,93 @@ var VCRoomWorkspace = function VCRoomWorkspace(props) {
|
|
|
494
246
|
setScreenShared(false);
|
|
495
247
|
setShowSharedScreen(false);
|
|
496
248
|
}
|
|
497
|
-
|
|
498
249
|
break;
|
|
499
250
|
}
|
|
500
251
|
}
|
|
501
252
|
};
|
|
502
253
|
};
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
if (!inViewParticipants.find(function (p) {
|
|
506
|
-
return p.userId === payload.userId;
|
|
507
|
-
})) {
|
|
254
|
+
const onBringToView = payload => {
|
|
255
|
+
if (!inViewParticipants.find(p => p.userId === payload.userId)) {
|
|
508
256
|
if (inViewParticipants.length === MAX_COLS * MAX_ROWS) {
|
|
509
|
-
|
|
510
|
-
|
|
257
|
+
let offViewParticipant = inViewParticipants[inViewParticipants.length - 1];
|
|
511
258
|
_VCEventManager.default.fireEvent(_VCEventType.VCEventType.PARTICIPANT_OFF_VIEW, offViewParticipant);
|
|
512
|
-
|
|
513
259
|
inViewParticipants.splice(inViewParticipants.length - 1, 1);
|
|
514
260
|
offViewParticipant.inView = false;
|
|
515
261
|
}
|
|
262
|
+
let participant = props.participants.find(p => p.userId === payload.userId);
|
|
263
|
+
inViewParticipants.push(participant);
|
|
516
264
|
|
|
517
|
-
|
|
518
|
-
return p.userId === payload.userId;
|
|
519
|
-
});
|
|
520
|
-
inViewParticipants.push(participant); // Refresh the list
|
|
521
|
-
|
|
265
|
+
// Refresh the list
|
|
522
266
|
setInViewParticipants([].concat(inViewParticipants));
|
|
523
267
|
}
|
|
524
268
|
};
|
|
525
|
-
|
|
526
|
-
var removeFromView = function removeFromView(participant) {
|
|
269
|
+
const removeFromView = participant => {
|
|
527
270
|
participant.inView = false;
|
|
528
|
-
setInViewParticipants(inViewParticipants.filter(
|
|
529
|
-
return p.userId !== participant.userId;
|
|
530
|
-
}));
|
|
531
|
-
|
|
271
|
+
setInViewParticipants(inViewParticipants.filter(p => p.userId !== participant.userId));
|
|
532
272
|
_VCEventManager.default.fireEvent(_VCEventType.VCEventType.PARTICIPANT_OFF_VIEW, participant);
|
|
533
273
|
};
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
case 2:
|
|
546
|
-
device = _context6.sent;
|
|
547
|
-
setDevice(device);
|
|
548
|
-
_context6.next = 6;
|
|
549
|
-
return _MediaSoupHelper.default.initConsumerTransport(device, meetingId, sessionStorage.getItem('username'));
|
|
550
|
-
|
|
551
|
-
case 6:
|
|
552
|
-
consumerTransport = _context6.sent;
|
|
553
|
-
_context6.next = 9;
|
|
554
|
-
return _MediaSoupHelper.default.initProducerTransport(device, meetingId, sessionStorage.getItem('username'));
|
|
555
|
-
|
|
556
|
-
case 9:
|
|
557
|
-
producerTransport = _context6.sent;
|
|
558
|
-
setConsumerTransport(consumerTransport);
|
|
559
|
-
setProducerTransport(producerTransport);
|
|
560
|
-
transports.current.setConsumerTransport(consumerTransport);
|
|
561
|
-
transports.current.setProducerTransport(producerTransport);
|
|
562
|
-
|
|
563
|
-
case 14:
|
|
564
|
-
case "end":
|
|
565
|
-
return _context6.stop();
|
|
566
|
-
}
|
|
567
|
-
}
|
|
568
|
-
}, _callee6);
|
|
569
|
-
}));
|
|
570
|
-
|
|
571
|
-
return function setupSelfDevices() {
|
|
572
|
-
return _ref7.apply(this, arguments);
|
|
573
|
-
};
|
|
574
|
-
}();
|
|
575
|
-
|
|
576
|
-
(0, _react.useEffect)(function () {
|
|
274
|
+
const setupSelfDevices = async () => {
|
|
275
|
+
let device = await _MediaSoupHelper.default.getParticipantDevice(rtpCapabilities);
|
|
276
|
+
setDevice(device);
|
|
277
|
+
let consumerTransport = await _MediaSoupHelper.default.initConsumerTransport(device, meetingId, sessionStorage.getItem('username'));
|
|
278
|
+
let producerTransport = await _MediaSoupHelper.default.initProducerTransport(device, meetingId, sessionStorage.getItem('username'));
|
|
279
|
+
setConsumerTransport(consumerTransport);
|
|
280
|
+
setProducerTransport(producerTransport);
|
|
281
|
+
transports.current.setConsumerTransport(consumerTransport);
|
|
282
|
+
transports.current.setProducerTransport(producerTransport);
|
|
283
|
+
};
|
|
284
|
+
(0, _react.useEffect)(() => {
|
|
577
285
|
eventHandler.api = handler();
|
|
578
286
|
});
|
|
579
|
-
(0, _react.useEffect)(
|
|
580
|
-
(0, _react.useEffect)(
|
|
287
|
+
(0, _react.useEffect)(() => {}, [props.audioMuted]);
|
|
288
|
+
(0, _react.useEffect)(() => {
|
|
581
289
|
setupGrid();
|
|
582
290
|
}, [inViewParticipants]);
|
|
291
|
+
|
|
583
292
|
/*useEffect(() => {
|
|
584
293
|
if(grid === null) {
|
|
585
294
|
setupGrid();
|
|
586
295
|
}
|
|
587
296
|
}, [grid]);*/
|
|
588
297
|
|
|
589
|
-
(0, _react.useEffect)(
|
|
298
|
+
(0, _react.useEffect)(() => {
|
|
590
299
|
if (!screenShared) {
|
|
591
300
|
stopProducingScreenShare();
|
|
592
301
|
}
|
|
593
302
|
}, [screenShared]);
|
|
594
|
-
(0, _react.useEffect)(
|
|
303
|
+
(0, _react.useEffect)(() => {
|
|
595
304
|
if (startScreenSharing) {
|
|
596
305
|
produceScreenShare();
|
|
597
306
|
}
|
|
598
307
|
}, [startScreenSharing]);
|
|
599
|
-
(0, _react.useEffect)(
|
|
308
|
+
(0, _react.useEffect)(() => {
|
|
600
309
|
if (onloadScreenShareData && device && consumerTransport) {
|
|
601
310
|
consume(onloadScreenShareData);
|
|
602
311
|
}
|
|
603
312
|
}, [onloadScreenShareData, device, consumerTransport]);
|
|
604
|
-
(0, _react.useEffect)(
|
|
313
|
+
(0, _react.useEffect)(() => {
|
|
605
314
|
setScreenShared(props.screenShared);
|
|
606
|
-
|
|
607
315
|
if (props.screenShared) {
|
|
608
316
|
startShareScreen();
|
|
609
317
|
} else {
|
|
610
318
|
stopShareScreen();
|
|
611
319
|
}
|
|
612
320
|
}, [props.screenShared]);
|
|
613
|
-
(0, _react.useEffect)(
|
|
321
|
+
(0, _react.useEffect)(() => {
|
|
614
322
|
_VCEventManager.default.addSubscriptions(eventHandler, _VCEventType.VCEventType.NEW_PRODUCERS, _VCEventType.VCEventType.CONSUMER_CLOSED, _VCEventType.VCEventType.PARTICIPANT_IN_VIEW);
|
|
615
|
-
|
|
616
323
|
setupSelfDevices();
|
|
617
|
-
return
|
|
324
|
+
return () => {
|
|
618
325
|
_VCEventManager.default.removeSubscriptions(eventHandler);
|
|
619
|
-
|
|
620
326
|
transports.current.closeConsumerTransport();
|
|
621
327
|
transports.current.closeProducerTransport();
|
|
622
328
|
};
|
|
623
329
|
}, []);
|
|
624
|
-
(0, _react.useEffect)(
|
|
330
|
+
(0, _react.useEffect)(() => {
|
|
625
331
|
if (grid) {
|
|
626
332
|
props.onGridSetup();
|
|
627
333
|
}
|
|
628
334
|
}, [grid]);
|
|
629
|
-
(0, _react.useEffect)(
|
|
335
|
+
(0, _react.useEffect)(() => {
|
|
630
336
|
if (props.participants && props.currentUserFullName) {
|
|
631
337
|
setCurrentUserParticipant({
|
|
632
338
|
isCurrentUser: true,
|
|
@@ -634,57 +340,37 @@ var VCRoomWorkspace = function VCRoomWorkspace(props) {
|
|
|
634
340
|
peer: null,
|
|
635
341
|
name: props.currentUserFullName,
|
|
636
342
|
avatarId: sessionStorage.getItem('userAvatarId'),
|
|
637
|
-
videoMuted
|
|
638
|
-
audioMuted
|
|
343
|
+
videoMuted,
|
|
344
|
+
audioMuted
|
|
639
345
|
});
|
|
640
|
-
|
|
346
|
+
let counter = 0;
|
|
641
347
|
inViewParticipants.splice(0, inViewParticipants.length);
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
648
|
-
var participant = _step3.value;
|
|
649
|
-
participant.inView = true;
|
|
650
|
-
inViewParticipants.push(participant);
|
|
651
|
-
|
|
652
|
-
if (++counter >= MAX_ROWS * MAX_COLS) {
|
|
653
|
-
break;
|
|
654
|
-
}
|
|
348
|
+
for (const participant of props.participants) {
|
|
349
|
+
participant.inView = true;
|
|
350
|
+
inViewParticipants.push(participant);
|
|
351
|
+
if (++counter >= MAX_ROWS * MAX_COLS) {
|
|
352
|
+
break;
|
|
655
353
|
}
|
|
656
|
-
} catch (err) {
|
|
657
|
-
_iterator3.e(err);
|
|
658
|
-
} finally {
|
|
659
|
-
_iterator3.f();
|
|
660
354
|
}
|
|
661
|
-
|
|
662
355
|
setupGrid(inViewParticipants);
|
|
663
356
|
}
|
|
664
357
|
}, [props.participants, props.currentUserFullName, props.displayState]);
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
for (var i = 0; i < rows; i++) {
|
|
358
|
+
const setupGrid = () => {
|
|
359
|
+
let inViewGrid = [];
|
|
360
|
+
let numRows = inViewParticipants.length < MAX_ROWS ? inViewParticipants.length : MAX_ROWS;
|
|
361
|
+
let rows = inViewParticipants.length === 2 ? 1 : numRows;
|
|
362
|
+
for (let i = 0; i < rows; i++) {
|
|
672
363
|
inViewGrid.push([]);
|
|
673
364
|
}
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
for (var _i2 = 0; _i2 < inViewParticipants.length; _i2++) {
|
|
678
|
-
inViewGrid[currentRowIndex].push(inViewParticipants[_i2]);
|
|
679
|
-
|
|
365
|
+
let currentRowIndex = 0;
|
|
366
|
+
for (let i = 0; i < inViewParticipants.length; i++) {
|
|
367
|
+
inViewGrid[currentRowIndex].push(inViewParticipants[i]);
|
|
680
368
|
if (currentRowIndex++ === rows - 1) {
|
|
681
369
|
currentRowIndex = 0;
|
|
682
370
|
}
|
|
683
371
|
}
|
|
684
|
-
|
|
685
372
|
setGrid(inViewGrid);
|
|
686
373
|
};
|
|
687
|
-
|
|
688
374
|
function renderStrip() {
|
|
689
375
|
return inViewParticipants && inViewParticipants.length > 0 && /*#__PURE__*/_react.default.createElement("div", {
|
|
690
376
|
style: {
|
|
@@ -697,7 +383,7 @@ var VCRoomWorkspace = function VCRoomWorkspace(props) {
|
|
|
697
383
|
alignItems: 'center'
|
|
698
384
|
},
|
|
699
385
|
className: "row flex-row flex-nowrap no-margin no-padding"
|
|
700
|
-
}, inViewParticipants.map(
|
|
386
|
+
}, inViewParticipants.map((participant, index) => {
|
|
701
387
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
702
388
|
className: 'col-*-*',
|
|
703
389
|
key: index + '-' + participant.userId,
|
|
@@ -714,26 +400,19 @@ var VCRoomWorkspace = function VCRoomWorkspace(props) {
|
|
|
714
400
|
displayState: displayState,
|
|
715
401
|
audioMuted: participant.audioMuted,
|
|
716
402
|
videoMuted: participant.videoMuted,
|
|
717
|
-
onRemoveFromView:
|
|
718
|
-
return removeFromView(participant);
|
|
719
|
-
},
|
|
403
|
+
onRemoveFromView: participant => removeFromView(participant),
|
|
720
404
|
consumerTransport: consumerTransport,
|
|
721
405
|
rtpCapabilities: rtpCapabilities,
|
|
722
406
|
numberOfInViewParticipants: inViewParticipants.length,
|
|
723
407
|
participants: participants,
|
|
724
408
|
sizing: 'sm',
|
|
725
|
-
onHostAudioMute:
|
|
726
|
-
|
|
727
|
-
},
|
|
728
|
-
onHostVideoMute: function onHostVideoMute() {
|
|
729
|
-
return props.onHostVideoMute(participant);
|
|
730
|
-
},
|
|
409
|
+
onHostAudioMute: () => props.onHostAudioMute(participant),
|
|
410
|
+
onHostVideoMute: () => props.onHostVideoMute(participant),
|
|
731
411
|
isHost: isHost
|
|
732
412
|
}));
|
|
733
413
|
}));
|
|
734
414
|
}
|
|
735
|
-
|
|
736
|
-
var renderRow = function renderRow(row, index) {
|
|
415
|
+
const renderRow = (row, index) => {
|
|
737
416
|
return /*#__PURE__*/_react.default.createElement(_Grid.default, {
|
|
738
417
|
style: {
|
|
739
418
|
height: '100%',
|
|
@@ -747,7 +426,7 @@ var VCRoomWorkspace = function VCRoomWorkspace(props) {
|
|
|
747
426
|
container: true,
|
|
748
427
|
item: true,
|
|
749
428
|
spacing: 2
|
|
750
|
-
}, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, row.map(
|
|
429
|
+
}, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, row.map((participant, index) => {
|
|
751
430
|
return /*#__PURE__*/_react.default.createElement(_Grid.default, {
|
|
752
431
|
item: true,
|
|
753
432
|
key: index + '-' + participant.userId,
|
|
@@ -765,24 +444,17 @@ var VCRoomWorkspace = function VCRoomWorkspace(props) {
|
|
|
765
444
|
sizing: displayState === 'MINIMIZED' ? 'sm' : 'md',
|
|
766
445
|
audioMuted: participant.audioMuted,
|
|
767
446
|
videoMuted: participant.videoMuted,
|
|
768
|
-
onRemoveFromView:
|
|
769
|
-
return removeFromView(participant);
|
|
770
|
-
},
|
|
447
|
+
onRemoveFromView: participant => removeFromView(participant),
|
|
771
448
|
consumerTransport: consumerTransport,
|
|
772
449
|
numberOfInViewParticipants: inViewParticipants.length,
|
|
773
450
|
participants: participants,
|
|
774
451
|
rtpCapabilities: rtpCapabilities,
|
|
775
|
-
onHostAudioMute:
|
|
776
|
-
|
|
777
|
-
},
|
|
778
|
-
onHostVideoMute: function onHostVideoMute() {
|
|
779
|
-
return props.onHostVideoMute(participant);
|
|
780
|
-
},
|
|
452
|
+
onHostAudioMute: () => props.onHostAudioMute(participant),
|
|
453
|
+
onHostVideoMute: () => props.onHostVideoMute(participant),
|
|
781
454
|
isHost: isHost
|
|
782
455
|
}));
|
|
783
456
|
})));
|
|
784
457
|
};
|
|
785
|
-
|
|
786
458
|
function renderCurrentParticipant() {
|
|
787
459
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, currentUserParticipant && /*#__PURE__*/_react.default.createElement(_VCRoomParticipant.default, {
|
|
788
460
|
data: currentUserParticipant,
|
|
@@ -798,16 +470,11 @@ var VCRoomWorkspace = function VCRoomWorkspace(props) {
|
|
|
798
470
|
videoMuted: videoMuted,
|
|
799
471
|
numberOfInViewParticipants: inViewParticipants.length,
|
|
800
472
|
participants: participants,
|
|
801
|
-
onHostAudioMute:
|
|
802
|
-
|
|
803
|
-
},
|
|
804
|
-
onHostVideoMute: function onHostVideoMute() {
|
|
805
|
-
return props.onHostVideoMute(currentUserParticipant);
|
|
806
|
-
},
|
|
473
|
+
onHostAudioMute: () => props.onHostAudioMute(currentUserParticipant),
|
|
474
|
+
onHostVideoMute: () => props.onHostVideoMute(currentUserParticipant),
|
|
807
475
|
isHost: isHost
|
|
808
476
|
}));
|
|
809
477
|
}
|
|
810
|
-
|
|
811
478
|
function renderParticipantGrid() {
|
|
812
479
|
return (!screenShared && !whiteBoardShown || screenShared && !showSharedScreen && !someoneSharing) && /*#__PURE__*/_react.default.createElement(_Box.default, {
|
|
813
480
|
style: {
|
|
@@ -830,7 +497,7 @@ var VCRoomWorkspace = function VCRoomWorkspace(props) {
|
|
|
830
497
|
overflowY: 'auto',
|
|
831
498
|
overflowX: 'hidden'
|
|
832
499
|
}
|
|
833
|
-
}, grid.map(
|
|
500
|
+
}, grid.map((row, index) => {
|
|
834
501
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
835
502
|
style: {
|
|
836
503
|
width: '100%',
|
|
@@ -841,7 +508,6 @@ var VCRoomWorkspace = function VCRoomWorkspace(props) {
|
|
|
841
508
|
}, renderRow(row, index)));
|
|
842
509
|
})));
|
|
843
510
|
}
|
|
844
|
-
|
|
845
511
|
return device ? /*#__PURE__*/_react.default.createElement("div", {
|
|
846
512
|
className: 'row-*-* grid',
|
|
847
513
|
style: {
|
|
@@ -897,7 +563,7 @@ var VCRoomWorkspace = function VCRoomWorkspace(props) {
|
|
|
897
563
|
zIndex: '0'
|
|
898
564
|
}
|
|
899
565
|
})))), /*#__PURE__*/_react.default.createElement("div", {
|
|
900
|
-
className:
|
|
566
|
+
className: `${displayState === 'MAXIMIZED' ? 'row-*-*' : ''}`,
|
|
901
567
|
style: {
|
|
902
568
|
width: displayState === 'MAXIMIZED' ? '100%' : '200px',
|
|
903
569
|
height: displayState === 'MAXIMIZED' ? '152px' : displayState === 'MINIMIZED' ? '100%' : null,
|
|
@@ -923,7 +589,7 @@ var VCRoomWorkspace = function VCRoomWorkspace(props) {
|
|
|
923
589
|
height: '100%'
|
|
924
590
|
}
|
|
925
591
|
}, renderStrip())), /*#__PURE__*/_react.default.createElement("div", {
|
|
926
|
-
className:
|
|
592
|
+
className: `${(displayState === 'MAXIMIZED' ? 'col ' : '') + 'no-margin no-padding'}`,
|
|
927
593
|
style: {
|
|
928
594
|
width: '200px',
|
|
929
595
|
height: '148px'
|
|
@@ -943,6 +609,4 @@ var VCRoomWorkspace = function VCRoomWorkspace(props) {
|
|
|
943
609
|
acceptUserHandler: props.acceptUserHandler
|
|
944
610
|
}))) : null;
|
|
945
611
|
};
|
|
946
|
-
|
|
947
|
-
var _default = VCRoomWorkspace;
|
|
948
|
-
exports.default = _default;
|
|
612
|
+
var _default = exports.default = VCRoomWorkspace;
|