@agilemotion/oui-react-js 1.4.2 → 1.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/RestUtils.js +16 -37
- package/dist/Utils.js +10 -1
- package/dist/assets/img/default-file-thumb.png +0 -0
- package/dist/assets/img/doc.png +0 -0
- package/dist/assets/img/excel.png +0 -0
- package/dist/assets/img/media.png +0 -0
- package/dist/assets/img/pdf-icon.png +0 -0
- package/dist/assets/img/powerpoint.png +0 -0
- package/dist/assets/img/zip.png +0 -0
- package/dist/components/Calendar.js +15 -0
- package/dist/components/DataGrid.js +1 -3
- package/dist/components/FileThumb.js +1 -1
- package/dist/components/Icon.js +8 -0
- package/dist/components/SocketManager.js +1 -1
- package/dist/components/Toolbar.js +1 -0
- package/dist/components/Tree.js +2 -2
- package/dist/components/dashboard/BasicBusinessAppDashboard.js +19 -2
- package/dist/components/form/FieldSet.js +1 -1
- package/dist/components/form/Form.js +1 -2
- package/dist/components/form/ImageEditor.js +4 -4
- package/dist/components/form/SelectItem.js +1 -1
- package/dist/components/form/TransferList.js +1 -1
- package/dist/components/layout/VC.css +9 -0
- package/dist/components/layout/View.css +8 -0
- package/dist/components/layout/Window.js +63 -8
- package/dist/components/layout/WindowViewPort.js +41 -2
- package/dist/components/media/Toolbar.css +24 -3
- package/dist/components/media/Toolbar.js +77 -81
- package/dist/components/media/TrainingRoom.js +82 -12
- package/dist/components/media/VCEventType.js +5 -1
- package/dist/components/media/VCRoomParticipant.css +9 -2
- package/dist/components/media/VCRoomParticipant.js +2 -4
- package/dist/components/media/VCRoomWorkspace.css +14 -0
- package/dist/components/media/VCRoomWorkspace.js +71 -48
- package/dist/components/signatures/SignatureTemplateDesigner.js +1 -1
- package/dist/event/ServiceCallActionHandler.js +1 -7
- package/dist/js/Media.js +43 -39
- package/dist/view/security/ChangePasswordBasic.js +1 -1
- package/dist/view/security/LoginBasic.js +1 -1
- package/dist/view/security/Security.js +1 -0
- package/package.json +1 -1
|
@@ -11,8 +11,6 @@ require("./Toolbar.css");
|
|
|
11
11
|
|
|
12
12
|
var _Icon = _interopRequireDefault(require("../Icon"));
|
|
13
13
|
|
|
14
|
-
var _IconButton = _interopRequireDefault(require("@material-ui/core/IconButton"));
|
|
15
|
-
|
|
16
14
|
var _Tooltip = _interopRequireDefault(require("@material-ui/core/Tooltip"));
|
|
17
15
|
|
|
18
16
|
var _core = require("@material-ui/core");
|
|
@@ -29,6 +27,14 @@ var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
|
|
|
29
27
|
|
|
30
28
|
var _Timer = _interopRequireDefault(require("./Timer"));
|
|
31
29
|
|
|
30
|
+
var _VCEventType = require("./VCEventType");
|
|
31
|
+
|
|
32
|
+
var _VCEventManager = _interopRequireDefault(require("./VCEventManager"));
|
|
33
|
+
|
|
34
|
+
var _ApplicationManager = _interopRequireDefault(require("../../ApplicationManager"));
|
|
35
|
+
|
|
36
|
+
var _SocketManager = _interopRequireDefault(require("../SocketManager"));
|
|
37
|
+
|
|
32
38
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
33
39
|
|
|
34
40
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
@@ -36,30 +42,7 @@ function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return
|
|
|
36
42
|
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
37
43
|
|
|
38
44
|
/* eslint-disable react-hooks/exhaustive-deps */
|
|
39
|
-
const config = {
|
|
40
|
-
eventHandlingConfig: {
|
|
41
|
-
subscriptions: [{
|
|
42
|
-
eventType: 'RAISE_HAND',
|
|
43
|
-
actions: [{
|
|
44
|
-
actionType: 'script',
|
|
45
|
-
script: {
|
|
46
|
-
lines: ['@#{this}.onRaiseHand($event.data)']
|
|
47
|
-
}
|
|
48
|
-
}]
|
|
49
|
-
}, {
|
|
50
|
-
eventType: 'LOWER_HAND',
|
|
51
|
-
actions: [{
|
|
52
|
-
actionType: 'script',
|
|
53
|
-
script: {
|
|
54
|
-
lines: ['@#{this}.onLowerHand($event.data)']
|
|
55
|
-
}
|
|
56
|
-
}]
|
|
57
|
-
}]
|
|
58
|
-
}
|
|
59
|
-
};
|
|
60
|
-
|
|
61
45
|
const Toolbar = props => {
|
|
62
|
-
const [numberOfHandsRaised, setNumberOfHandsRaised] = (0, _react.useState)(0);
|
|
63
46
|
const [videoMuted, setVideoMuted] = (0, _react.useState)(props.videoMuted);
|
|
64
47
|
const [audioMuted, setAudioMuted] = (0, _react.useState)(props.audioMuted);
|
|
65
48
|
const [isRecording, setIsRecording] = (0, _react.useState)(false);
|
|
@@ -68,33 +51,7 @@ const Toolbar = props => {
|
|
|
68
51
|
const openMoreActions = Boolean(anchorEl);
|
|
69
52
|
const [screenShared, setScreenShared] = (0, _react.useState)(false);
|
|
70
53
|
const [roomStatus, setRoomStatus] = (0, _react.useState)();
|
|
71
|
-
(0, _react.
|
|
72
|
-
eventHandler.api = api();
|
|
73
|
-
|
|
74
|
-
let parsedConfig = _Utils.default.parseConfig(config, props.viewId);
|
|
75
|
-
|
|
76
|
-
_Observable.default.addSubscriptions(parsedConfig.eventHandlingConfig, props.eventHandler, props.viewId);
|
|
77
|
-
|
|
78
|
-
_Observable.default.addSystemSubscriptions(props.viewId, parsedConfig);
|
|
79
|
-
|
|
80
|
-
return () => {};
|
|
81
|
-
}, []);
|
|
82
|
-
|
|
83
|
-
const api = () => {
|
|
84
|
-
return {
|
|
85
|
-
get id() {
|
|
86
|
-
return 'meeting-toolbar';
|
|
87
|
-
},
|
|
88
|
-
|
|
89
|
-
onRaiseHand: be => {
|
|
90
|
-
onRaiseHand(be.payload);
|
|
91
|
-
},
|
|
92
|
-
onLowerHand: be => {
|
|
93
|
-
onLowerHand(be.payload);
|
|
94
|
-
}
|
|
95
|
-
};
|
|
96
|
-
};
|
|
97
|
-
|
|
54
|
+
const [raisedHandsNames, setRaisedHandsNames] = (0, _react.useState)([]);
|
|
98
55
|
const {
|
|
99
56
|
participants,
|
|
100
57
|
hasUnreadChats,
|
|
@@ -105,7 +62,8 @@ const Toolbar = props => {
|
|
|
105
62
|
isHost,
|
|
106
63
|
someoneSharing,
|
|
107
64
|
videoDisabled,
|
|
108
|
-
audioDisabled
|
|
65
|
+
audioDisabled,
|
|
66
|
+
raisedHands
|
|
109
67
|
} = props;
|
|
110
68
|
(0, _react.useEffect)(() => {
|
|
111
69
|
setScreenShared(props.screenShared);
|
|
@@ -113,13 +71,24 @@ const Toolbar = props => {
|
|
|
113
71
|
(0, _react.useEffect)(() => {
|
|
114
72
|
setIsRecording(props.isRecording);
|
|
115
73
|
}, [props.isRecording]);
|
|
74
|
+
(0, _react.useEffect)(() => {
|
|
75
|
+
setupRaisedHandsNames();
|
|
76
|
+
}, [raisedHands]);
|
|
116
77
|
|
|
117
|
-
const
|
|
118
|
-
|
|
119
|
-
|
|
78
|
+
const setupRaisedHandsNames = () => {
|
|
79
|
+
if (raisedHands.length === 0) {
|
|
80
|
+
setRaisedHandsNames([]);
|
|
81
|
+
} else {
|
|
82
|
+
let names = [];
|
|
83
|
+
|
|
84
|
+
for (const raisedHand of raisedHands) {
|
|
85
|
+
var _participants$find;
|
|
86
|
+
|
|
87
|
+
names.push((_participants$find = participants.find(p => p.userId === raisedHand)) === null || _participants$find === void 0 ? void 0 : _participants$find.name);
|
|
88
|
+
}
|
|
120
89
|
|
|
121
|
-
|
|
122
|
-
|
|
90
|
+
setRaisedHandsNames(names);
|
|
91
|
+
}
|
|
123
92
|
};
|
|
124
93
|
|
|
125
94
|
const handleClick = event => {
|
|
@@ -162,9 +131,6 @@ const Toolbar = props => {
|
|
|
162
131
|
(0, _react.useEffect)(() => {
|
|
163
132
|
eventHandler.onMuteAudio(audioMuted);
|
|
164
133
|
}, [audioMuted]);
|
|
165
|
-
(0, _react.useEffect)(() => {
|
|
166
|
-
eventHandler.api = api();
|
|
167
|
-
});
|
|
168
134
|
|
|
169
135
|
const muteAudio = () => {
|
|
170
136
|
setAudioMuted(prevStatus => !prevStatus);
|
|
@@ -173,12 +139,10 @@ const Toolbar = props => {
|
|
|
173
139
|
|
|
174
140
|
const shareScreen = () => {
|
|
175
141
|
eventHandler.shareScreen();
|
|
176
|
-
setScreenShared(true);
|
|
177
142
|
};
|
|
178
143
|
|
|
179
144
|
const stopShareScreen = () => {
|
|
180
145
|
eventHandler.stopShareScreen();
|
|
181
|
-
setScreenShared(false);
|
|
182
146
|
};
|
|
183
147
|
|
|
184
148
|
const endCall = () => {
|
|
@@ -197,7 +161,8 @@ const Toolbar = props => {
|
|
|
197
161
|
eventHandler.showChat();
|
|
198
162
|
};
|
|
199
163
|
|
|
200
|
-
const raiseHand = () => {
|
|
164
|
+
const raiseHand = () => {
|
|
165
|
+
eventHandler.raiseHand();
|
|
201
166
|
};
|
|
202
167
|
|
|
203
168
|
const lowerHand = () => {
|
|
@@ -213,13 +178,24 @@ const Toolbar = props => {
|
|
|
213
178
|
eventHandler.toggleAutoPermit();
|
|
214
179
|
};
|
|
215
180
|
|
|
181
|
+
const renderRaisedHandsToolTip = () => {
|
|
182
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
183
|
+
style: {
|
|
184
|
+
textAlign: 'center',
|
|
185
|
+
fontSize: '14px'
|
|
186
|
+
}
|
|
187
|
+
}, raisedHandsNames.map(name => {
|
|
188
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, name, /*#__PURE__*/_react.default.createElement("br", null));
|
|
189
|
+
}));
|
|
190
|
+
};
|
|
191
|
+
|
|
216
192
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
217
193
|
style: {
|
|
218
194
|
width: '100%'
|
|
219
195
|
},
|
|
220
196
|
className: 'centered-flex-box vc-toolbar'
|
|
221
197
|
}, roomStatus === 'SESSION_ENDED' ? /*#__PURE__*/_react.default.createElement("div", {
|
|
222
|
-
className: 'row centered-flex-box'
|
|
198
|
+
className: 'row centered-flex-box button-wrapper col no-margin no-padding'
|
|
223
199
|
}, /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
|
|
224
200
|
title: "Close"
|
|
225
201
|
}, /*#__PURE__*/_react.default.createElement(_Button.default, {
|
|
@@ -242,15 +218,20 @@ const Toolbar = props => {
|
|
|
242
218
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
243
219
|
style: {
|
|
244
220
|
width: '120px'
|
|
245
|
-
}
|
|
221
|
+
},
|
|
222
|
+
className: 'timer'
|
|
246
223
|
}, /*#__PURE__*/_react.default.createElement(_Timer.default, null)), /*#__PURE__*/_react.default.createElement("div", {
|
|
247
224
|
style: {
|
|
248
225
|
display: 'flex',
|
|
249
226
|
justifyContent: 'right',
|
|
250
227
|
width: 'calc(100% - 120px)'
|
|
251
228
|
},
|
|
252
|
-
className: 'col'
|
|
253
|
-
},
|
|
229
|
+
className: 'col button-container'
|
|
230
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
231
|
+
className: 'row no-margin no-padding'
|
|
232
|
+
}, isHost && roomStatus === 'SESSION' && displayState === 'MAXIMIZED' && /*#__PURE__*/_react.default.createElement("div", {
|
|
233
|
+
className: 'button-wrapper col no-margin no-padding'
|
|
234
|
+
}, /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
|
|
254
235
|
title: "Record"
|
|
255
236
|
}, /*#__PURE__*/_react.default.createElement(_Button.default, {
|
|
256
237
|
onClick: () => {
|
|
@@ -272,7 +253,9 @@ const Toolbar = props => {
|
|
|
272
253
|
id: 'RECORD'
|
|
273
254
|
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
274
255
|
className: 'text'
|
|
275
|
-
}, isRecording ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "Recording") : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "Record"))))), (roomStatus === 'SESSION' || roomStatus === 'LOBBY') && !videoDisabled && /*#__PURE__*/_react.default.createElement(
|
|
256
|
+
}, isRecording ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "Recording") : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "Record")))))), (roomStatus === 'SESSION' || roomStatus === 'LOBBY') && !videoDisabled && /*#__PURE__*/_react.default.createElement("div", {
|
|
257
|
+
className: 'button-wrapper col no-margin no-padding'
|
|
258
|
+
}, /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
|
|
276
259
|
title: "Video"
|
|
277
260
|
}, /*#__PURE__*/_react.default.createElement(_Button.default, {
|
|
278
261
|
onClick: () => {
|
|
@@ -294,7 +277,9 @@ const Toolbar = props => {
|
|
|
294
277
|
id: 'CAMERA'
|
|
295
278
|
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
296
279
|
className: 'text'
|
|
297
|
-
}, "Camera")))), (roomStatus === 'SESSION' || roomStatus === 'LOBBY') && !audioDisabled && /*#__PURE__*/_react.default.createElement(
|
|
280
|
+
}, "Camera"))))), (roomStatus === 'SESSION' || roomStatus === 'LOBBY') && !audioDisabled && /*#__PURE__*/_react.default.createElement("div", {
|
|
281
|
+
className: 'button-wrapper col no-margin no-padding'
|
|
282
|
+
}, /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
|
|
298
283
|
title: "Audio"
|
|
299
284
|
}, /*#__PURE__*/_react.default.createElement(_Button.default, {
|
|
300
285
|
onClick: () => {
|
|
@@ -316,7 +301,9 @@ const Toolbar = props => {
|
|
|
316
301
|
id: 'MIC'
|
|
317
302
|
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
318
303
|
className: 'text'
|
|
319
|
-
}, "Mic")))), ' ', roomStatus === 'SESSION' && displayState === 'MAXIMIZED' && !whiteBoardShown &&
|
|
304
|
+
}, "Mic"))))), ' ', roomStatus === 'SESSION' && displayState === 'MAXIMIZED' && !whiteBoardShown && /*#__PURE__*/_react.default.createElement("div", {
|
|
305
|
+
className: 'button-wrapper col no-margin no-padding'
|
|
306
|
+
}, /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
|
|
320
307
|
title: "Share"
|
|
321
308
|
}, /*#__PURE__*/_react.default.createElement(_Button.default, {
|
|
322
309
|
onClick: () => {
|
|
@@ -351,7 +338,9 @@ const Toolbar = props => {
|
|
|
351
338
|
style: {
|
|
352
339
|
marginRight: '8px'
|
|
353
340
|
}
|
|
354
|
-
}, "Share screen")))))), roomStatus === 'SESSION' && displayState === 'MAXIMIZED' && /*#__PURE__*/_react.default.createElement(
|
|
341
|
+
}, "Share screen"))))))), roomStatus === 'SESSION' && displayState === 'MAXIMIZED' && /*#__PURE__*/_react.default.createElement("div", {
|
|
342
|
+
className: 'button-wrapper col no-margin no-padding'
|
|
343
|
+
}, /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
|
|
355
344
|
title: "Chat"
|
|
356
345
|
}, /*#__PURE__*/_react.default.createElement(_Button.default, {
|
|
357
346
|
style: {
|
|
@@ -371,11 +360,13 @@ const Toolbar = props => {
|
|
|
371
360
|
id: 'CHAT_BUBBLE'
|
|
372
361
|
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
373
362
|
className: 'text'
|
|
374
|
-
}, "Chat")))), roomStatus === 'SESSION' && displayState === 'MAXIMIZED' && /*#__PURE__*/_react.default.createElement("div", {
|
|
363
|
+
}, "Chat"))))), roomStatus === 'SESSION' && displayState === 'MAXIMIZED' && /*#__PURE__*/_react.default.createElement("div", {
|
|
375
364
|
className: 'centered-flex-box'
|
|
376
365
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
377
366
|
className: 'marker'
|
|
378
|
-
}, participants.length), /*#__PURE__*/_react.default.createElement("div",
|
|
367
|
+
}, participants.length), /*#__PURE__*/_react.default.createElement("div", {
|
|
368
|
+
className: 'button-wrapper col no-margin no-padding'
|
|
369
|
+
}, /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
|
|
379
370
|
title: "People"
|
|
380
371
|
}, /*#__PURE__*/_react.default.createElement(_Button.default, {
|
|
381
372
|
onClick: e => showPeople(),
|
|
@@ -395,10 +386,12 @@ const Toolbar = props => {
|
|
|
395
386
|
className: 'text'
|
|
396
387
|
}, "People")))))), roomStatus === 'SESSION' && /*#__PURE__*/_react.default.createElement("div", {
|
|
397
388
|
className: 'centered-flex-box'
|
|
398
|
-
},
|
|
389
|
+
}, raisedHands.length > 0 && /*#__PURE__*/_react.default.createElement("div", {
|
|
399
390
|
className: 'marker'
|
|
400
|
-
},
|
|
401
|
-
|
|
391
|
+
}, raisedHands.length), /*#__PURE__*/_react.default.createElement("div", {
|
|
392
|
+
className: 'button-wrapper col no-margin no-padding'
|
|
393
|
+
}, /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
|
|
394
|
+
title: raisedHands.length > 0 ? /*#__PURE__*/_react.default.createElement("div", null, renderRaisedHandsToolTip()) : handRaised ? 'Lower hand' : 'Raise hand'
|
|
402
395
|
}, /*#__PURE__*/_react.default.createElement(_Button.default, {
|
|
403
396
|
onClick: e => {
|
|
404
397
|
if (handRaised) {
|
|
@@ -421,7 +414,9 @@ const Toolbar = props => {
|
|
|
421
414
|
id: 'PAN_TOOL'
|
|
422
415
|
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
423
416
|
className: 'text'
|
|
424
|
-
}, handRaised ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "Lower") : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "Raise"))))))), /*#__PURE__*/_react.default.createElement(
|
|
417
|
+
}, handRaised ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "Lower") : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "Raise"))))))), /*#__PURE__*/_react.default.createElement("div", {
|
|
418
|
+
className: 'button-wrapper col no-margin no-padding hang-up'
|
|
419
|
+
}, /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
|
|
425
420
|
title: "Hang up"
|
|
426
421
|
}, /*#__PURE__*/_react.default.createElement(_Button.default, {
|
|
427
422
|
onClick: endCall,
|
|
@@ -430,7 +425,8 @@ const Toolbar = props => {
|
|
|
430
425
|
color: 'white',
|
|
431
426
|
marginRight: '4px',
|
|
432
427
|
minWidth: '120px',
|
|
433
|
-
width: '120px'
|
|
428
|
+
width: '120px',
|
|
429
|
+
height: '60px'
|
|
434
430
|
}
|
|
435
431
|
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
436
432
|
style: {
|
|
@@ -439,7 +435,7 @@ const Toolbar = props => {
|
|
|
439
435
|
}
|
|
440
436
|
}, "Hang up"), /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
441
437
|
id: 'CALL_END'
|
|
442
|
-
}))))), /*#__PURE__*/_react.default.createElement(_core.Menu, {
|
|
438
|
+
}))))))), /*#__PURE__*/_react.default.createElement(_core.Menu, {
|
|
443
439
|
anchorEl: anchorEl,
|
|
444
440
|
id: "account-menu",
|
|
445
441
|
open: openMoreActions,
|
|
@@ -487,7 +483,7 @@ const Toolbar = props => {
|
|
|
487
483
|
onClick: toggleAutoPermit
|
|
488
484
|
}, /*#__PURE__*/_react.default.createElement(_core.ListItemIcon, null, /*#__PURE__*/_react.default.createElement(_icons.PersonAdd, {
|
|
489
485
|
fontSize: "small"
|
|
490
|
-
})), autoPermit ? 'Disable auto permit [Auto permit is currently on]' : 'Enable auto permit [Auto permit is currently off]'))
|
|
486
|
+
})), autoPermit ? 'Disable auto permit [Auto permit is currently on]' : 'Enable auto permit [Auto permit is currently off]')));
|
|
491
487
|
};
|
|
492
488
|
|
|
493
489
|
var _default = Toolbar;
|
|
@@ -88,6 +88,10 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.defau
|
|
|
88
88
|
|
|
89
89
|
const [screenShared, setScreenShared] = _react.default.useState(null);
|
|
90
90
|
|
|
91
|
+
const [startScreenSharing, setStartScreenSharing] = _react.default.useState(false);
|
|
92
|
+
|
|
93
|
+
const [raisedHands, setRaisedHands] = (0, _react.useState)([]);
|
|
94
|
+
|
|
91
95
|
const handler = () => {
|
|
92
96
|
return {
|
|
93
97
|
get id() {
|
|
@@ -116,13 +120,42 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.defau
|
|
|
116
120
|
break;
|
|
117
121
|
|
|
118
122
|
case _VCEventType.VCEventType.SYSTEM_EVENT:
|
|
119
|
-
|
|
123
|
+
break;
|
|
124
|
+
|
|
125
|
+
case _VCEventType.VCEventType.RAISE_HAND:
|
|
126
|
+
onRaiseHand(be.payload);
|
|
127
|
+
break;
|
|
128
|
+
|
|
129
|
+
case _VCEventType.VCEventType.LOWER_HAND:
|
|
130
|
+
onLowerHand(be.payload);
|
|
131
|
+
break;
|
|
132
|
+
|
|
133
|
+
case _VCEventType.VCEventType.SHARING_STOPPED:
|
|
134
|
+
setScreenShared(false);
|
|
135
|
+
setStartScreenSharing(false);
|
|
120
136
|
break;
|
|
121
137
|
}
|
|
122
138
|
}
|
|
123
139
|
};
|
|
124
140
|
};
|
|
125
141
|
|
|
142
|
+
const onRaiseHand = payload => {
|
|
143
|
+
raisedHands.push(payload.userId);
|
|
144
|
+
setRaisedHands([].concat(raisedHands));
|
|
145
|
+
};
|
|
146
|
+
|
|
147
|
+
const onLowerHand = payload => {
|
|
148
|
+
if (raisedHands.length > 0) {
|
|
149
|
+
let index = raisedHands.findIndex(p => p.userId === payload.userId);
|
|
150
|
+
|
|
151
|
+
if (index > -1) {
|
|
152
|
+
raisedHands.splice(index, 1);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
setRaisedHands([].concat(raisedHands));
|
|
157
|
+
};
|
|
158
|
+
|
|
126
159
|
const fetchChats = () => {
|
|
127
160
|
(0, _RestUtils.sendRequest)("".concat(location, "/api/v1/chat/fetchMeetingChat/").concat(props.calendarEvent.id), response => {
|
|
128
161
|
if (response && response.id) {
|
|
@@ -234,6 +267,21 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.defau
|
|
|
234
267
|
setVideoMuted(!props.settings.videoOn);
|
|
235
268
|
}
|
|
236
269
|
}, [props.settings]);
|
|
270
|
+
(0, _react.useEffect)(() => {
|
|
271
|
+
if (!_Utils.default.isNull(handRaised)) {
|
|
272
|
+
if (handRaised) {
|
|
273
|
+
_SocketManager.default.emitEvent(_VCEventType.VCEventType.RAISE_HAND, {
|
|
274
|
+
roomId: props.calendarEvent.id,
|
|
275
|
+
userId: sessionStorage.getItem('username')
|
|
276
|
+
}).catch(error => {});
|
|
277
|
+
} else {
|
|
278
|
+
_SocketManager.default.emitEvent(_VCEventType.VCEventType.LOWER_HAND, {
|
|
279
|
+
roomId: props.calendarEvent.id,
|
|
280
|
+
userId: sessionStorage.getItem('username')
|
|
281
|
+
}).catch(error => {});
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
}, [handRaised]);
|
|
237
285
|
(0, _react.useEffect)(() => {
|
|
238
286
|
_VCEventManager.default.removeSubscriptions(eventHandler);
|
|
239
287
|
|
|
@@ -253,7 +301,7 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.defau
|
|
|
253
301
|
setDisplayState(initialContext ? initialContext.windowDisplayState : 'MAXIMIZED');
|
|
254
302
|
});
|
|
255
303
|
|
|
256
|
-
_VCEventManager.default.addSubscriptions(eventHandler, _VCEventType.VCEventType.REQUEST_TO_JOIN_MEETING, _VCEventType.VCEventType.USER_JOINED, _VCEventType.VCEventType.USER_LEFT_MEETING, _VCEventType.VCEventType.SYSTEM_EVENT, _VCEventType.VCEventType.SOCKET_CONNECT, _VCEventType.VCEventType.SOCKET_DISCONNECT, _VCEventType.VCEventType.PEER_DISCONNECT, _VCEventType.VCEventType.CONSUMER_TRANSPORT_FAILED, _VCEventType.VCEventType.CREATE_TRANSPORT_FAILED);
|
|
304
|
+
_VCEventManager.default.addSubscriptions(eventHandler, _VCEventType.VCEventType.REQUEST_TO_JOIN_MEETING, _VCEventType.VCEventType.USER_JOINED, _VCEventType.VCEventType.USER_LEFT_MEETING, _VCEventType.VCEventType.SYSTEM_EVENT, _VCEventType.VCEventType.SOCKET_CONNECT, _VCEventType.VCEventType.SOCKET_DISCONNECT, _VCEventType.VCEventType.RAISE_HAND, _VCEventType.VCEventType.LOWER_HAND, _VCEventType.VCEventType.PEER_DISCONNECT, _VCEventType.VCEventType.CONSUMER_TRANSPORT_FAILED, _VCEventType.VCEventType.CREATE_TRANSPORT_FAILED, _VCEventType.VCEventType.SHARING_STOPPED);
|
|
257
305
|
|
|
258
306
|
document.addEventListener('sideBarToggleEvent', handleSidebarToggle);
|
|
259
307
|
|
|
@@ -282,6 +330,7 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.defau
|
|
|
282
330
|
if (props.calendarEvent.host.username === sessionStorage.getItem('username')) {
|
|
283
331
|
userFullName = props.calendarEvent.host.name;
|
|
284
332
|
} else {
|
|
333
|
+
console.log("\n\n\n\nATTENDEEES : ", sessionStorage.getItem('username'));
|
|
285
334
|
userFullName = props.calendarEvent.attendees.find(a => a.username === sessionStorage.getItem('username')).name;
|
|
286
335
|
}
|
|
287
336
|
|
|
@@ -296,7 +345,7 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.defau
|
|
|
296
345
|
setOnloadScreenShareData(response.shareScreenProducerData);
|
|
297
346
|
setRoomStatus(participants.length > 0 ? Status.SESSION : Status.LOBBY);
|
|
298
347
|
}).catch(e => {
|
|
299
|
-
setRoomStatus(
|
|
348
|
+
setRoomStatus(Status.SYSTEM_ERROR);
|
|
300
349
|
});
|
|
301
350
|
} catch (e) {
|
|
302
351
|
setRoomStatus(Status.SYSTEM_ERROR);
|
|
@@ -369,7 +418,7 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.defau
|
|
|
369
418
|
|
|
370
419
|
if (!toParticipantIds) {
|
|
371
420
|
for (const participant of participants) {
|
|
372
|
-
if (participant.userId !== sessionStorage.getItem(
|
|
421
|
+
if (participant.userId !== sessionStorage.getItem('username')) {
|
|
373
422
|
participantIds.push(participant.userId);
|
|
374
423
|
}
|
|
375
424
|
}
|
|
@@ -388,9 +437,9 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.defau
|
|
|
388
437
|
_VCRoomRecorder.default.init(props.calendarEvent.id, props.calendarEvent.title);
|
|
389
438
|
|
|
390
439
|
setIsRecording(true);
|
|
391
|
-
emitSystemEvent(
|
|
440
|
+
emitSystemEvent('MEETING_RECORDING', {
|
|
392
441
|
recording: true,
|
|
393
|
-
userId: sessionStorage.getItem(
|
|
442
|
+
userId: sessionStorage.getItem('username')
|
|
394
443
|
});
|
|
395
444
|
|
|
396
445
|
_VCRoomRecorder.default.recordMeeting();
|
|
@@ -400,9 +449,9 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.defau
|
|
|
400
449
|
setIsRecording(false);
|
|
401
450
|
|
|
402
451
|
if (publish) {
|
|
403
|
-
emitSystemEvent(
|
|
452
|
+
emitSystemEvent('MEETING_RECORDING', {
|
|
404
453
|
recording: false,
|
|
405
|
-
userId: sessionStorage.getItem(
|
|
454
|
+
userId: sessionStorage.getItem('username')
|
|
406
455
|
});
|
|
407
456
|
}
|
|
408
457
|
|
|
@@ -419,7 +468,10 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.defau
|
|
|
419
468
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
420
469
|
className: 'row no-margin no-padding w-100 h-100'
|
|
421
470
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
422
|
-
className: 'col no-margin no-padding'
|
|
471
|
+
className: 'col no-margin no-padding',
|
|
472
|
+
style: {
|
|
473
|
+
minWidth: '280px'
|
|
474
|
+
}
|
|
423
475
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
424
476
|
className: 'row no-margin no-padding w-100 h-100'
|
|
425
477
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -446,16 +498,23 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.defau
|
|
|
446
498
|
setSideBarOpen(true);
|
|
447
499
|
},
|
|
448
500
|
shareScreen: () => {
|
|
449
|
-
|
|
501
|
+
setStartScreenSharing(true);
|
|
450
502
|
},
|
|
451
503
|
stopShareScreen: () => {
|
|
452
504
|
setScreenShared(false);
|
|
505
|
+
setStartScreenSharing(false);
|
|
453
506
|
},
|
|
454
507
|
recordMeeting: () => {
|
|
455
508
|
recordMeeting();
|
|
456
509
|
},
|
|
457
510
|
stopRecording: () => {
|
|
458
511
|
stopRecordingMeeting();
|
|
512
|
+
},
|
|
513
|
+
raiseHand: () => {
|
|
514
|
+
setHandRaised(true);
|
|
515
|
+
},
|
|
516
|
+
lowerHand: () => {
|
|
517
|
+
setHandRaised(false);
|
|
459
518
|
}
|
|
460
519
|
},
|
|
461
520
|
hasUnreadChats: hasUnreadChats,
|
|
@@ -471,7 +530,9 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.defau
|
|
|
471
530
|
isHost: props.calendarEvent.host.username === sessionStorage.getItem('username'),
|
|
472
531
|
autoPermit: !props.calendarEvent.host.askToJoin,
|
|
473
532
|
someoneSharing: someoneSharing,
|
|
474
|
-
isRecording: isRecording
|
|
533
|
+
isRecording: isRecording,
|
|
534
|
+
raisedHands: raisedHands,
|
|
535
|
+
meetingId: props.calendarEvent.id
|
|
475
536
|
})), roomStatus === Status.SYSTEM_ERROR && /*#__PURE__*/_react.default.createElement("div", {
|
|
476
537
|
style: {
|
|
477
538
|
color: 'rgb(235, 63, 33)',
|
|
@@ -501,10 +562,19 @@ const TrainingRoom = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.defau
|
|
|
501
562
|
onGridSetup: () => {
|
|
502
563
|
setSideBarTab('People');
|
|
503
564
|
},
|
|
565
|
+
sideBarTab: sideBarTab,
|
|
504
566
|
roomStatus: roomStatus,
|
|
505
567
|
isHost: isHost,
|
|
568
|
+
startScreenSharing: startScreenSharing,
|
|
506
569
|
sharingHandler: someoneSharing => setSomeoneSharing(someoneSharing),
|
|
507
|
-
onStopSharing: () =>
|
|
570
|
+
onStopSharing: () => {
|
|
571
|
+
setScreenShared(false);
|
|
572
|
+
setStartScreenSharing(false);
|
|
573
|
+
},
|
|
574
|
+
onStartSharing: () => {
|
|
575
|
+
setScreenShared(true);
|
|
576
|
+
setStartScreenSharing(false);
|
|
577
|
+
},
|
|
508
578
|
autoPermit: autoPermit,
|
|
509
579
|
rtpCapabilities: rtpCapabilities,
|
|
510
580
|
screenShared: screenShared,
|
|
@@ -161,4 +161,8 @@ _defineProperty(VCEventType, "REQUEST_TO_JOIN_MEETING_ANSWERED", "REQUEST_TO_JOI
|
|
|
161
161
|
|
|
162
162
|
_defineProperty(VCEventType, "PEER_DISCONNECT", "PEER_DISCONNECT");
|
|
163
163
|
|
|
164
|
-
_defineProperty(VCEventType, "CONSUMER_CLOSED", "CONSUMER_CLOSED");
|
|
164
|
+
_defineProperty(VCEventType, "CONSUMER_CLOSED", "CONSUMER_CLOSED");
|
|
165
|
+
|
|
166
|
+
_defineProperty(VCEventType, "CANCEL_SCREEN_SHARE", "CANCEL_SCREEN_SHARE");
|
|
167
|
+
|
|
168
|
+
_defineProperty(VCEventType, "SHARING_STOPPED", "SHARING_STOPPED");
|
|
@@ -1,13 +1,20 @@
|
|
|
1
|
-
.meeting-participant-container
|
|
1
|
+
.meeting-participant-container,
|
|
2
|
+
.meeting-participant-container-current-user {
|
|
2
3
|
display: inline-block;
|
|
3
4
|
text-align: center;
|
|
4
5
|
width: 100%;
|
|
5
6
|
height: 100%;
|
|
6
|
-
|
|
7
|
+
min-width: 120px;
|
|
8
|
+
min-height: 120px;
|
|
7
9
|
color: rgb(40, 40, 43);
|
|
8
10
|
background-color: #f9f9f9;
|
|
9
11
|
}
|
|
10
12
|
|
|
13
|
+
.meeting-participant-container-current-user {
|
|
14
|
+
min-width: 150px;
|
|
15
|
+
min-height: 150px;
|
|
16
|
+
}
|
|
17
|
+
|
|
11
18
|
.avatar-wrapper,
|
|
12
19
|
.avatar-wrapper-sm {
|
|
13
20
|
font-size: 36px;
|
|
@@ -587,13 +587,11 @@ const VCRoomParticipant = props => {
|
|
|
587
587
|
};
|
|
588
588
|
|
|
589
589
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
590
|
-
className: 'col-*-* meeting-participant-container',
|
|
590
|
+
className: "".concat('col-*-* ' + (props.isCurrentUser ? 'meeting-participant-container-current-user' : 'meeting-participant-container')),
|
|
591
591
|
style: {
|
|
592
592
|
padding: props.padding ? props.padding : null,
|
|
593
593
|
height: props.height ? props.height : null,
|
|
594
|
-
position: 'relative'
|
|
595
|
-
minWidth: '150px',
|
|
596
|
-
minHeight: '150px'
|
|
594
|
+
position: 'relative'
|
|
597
595
|
}
|
|
598
596
|
}, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (videoMuted || !videoRef.current || !videoRef.current.srcObject) && /*#__PURE__*/_react.default.createElement("div", {
|
|
599
597
|
className: 'centered-flex-box',
|
|
@@ -6,6 +6,20 @@
|
|
|
6
6
|
width: 100%;
|
|
7
7
|
}
|
|
8
8
|
|
|
9
|
+
.window-pinned .strip-participants {
|
|
10
|
+
display: none;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.window-pinned .content-box {
|
|
14
|
+
align-items: flex-start;
|
|
15
|
+
max-height: 80%;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.window-pinned .people-content-list {
|
|
19
|
+
max-height: 400px;
|
|
20
|
+
padding: 16px 0;
|
|
21
|
+
}
|
|
22
|
+
|
|
9
23
|
.share-screen-video {
|
|
10
24
|
height: 100%;
|
|
11
25
|
width: 100%;
|