@agilemotion/oui-react-js 1.3.9 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{ApplicationContext.js → ApplicationManager.js} +196 -74
- package/dist/BasicApp.js +66 -63
- package/dist/BasicAppHome.js +85 -118
- package/dist/BusinessPortalAppHome.js +9 -15
- package/dist/DynamicJS.js +7 -3
- package/dist/RestUtils.js +13 -14
- package/dist/Utils.js +15 -9
- package/dist/WithRouter.js +34 -0
- package/dist/assets/scss/black-dashboard-react/custom/_sidebar-and-main-panel.scss +1 -1
- package/dist/components/AlertBar.js +1 -1
- package/dist/components/Button.js +34 -25
- package/dist/components/Calendar.js +9 -45
- package/dist/components/DataGrid.js +49 -18
- package/dist/components/DataGridColumn.js +1 -1
- package/dist/components/DataGridFilter.js +2 -2
- package/dist/components/Dialog.js +1 -1
- package/dist/components/DocumentViewer.js +5 -5
- package/dist/components/FileThumb.js +30 -19
- package/dist/components/Graph.js +10 -2
- package/dist/components/GraphNode.js +1 -1
- package/dist/components/HtmlPanel.js +10 -5
- package/dist/components/Icon.js +8 -0
- package/dist/components/PopupView.js +1 -1
- package/dist/components/Portlet.js +100 -0
- package/dist/components/SignaturePanel.js +1 -1
- package/dist/components/SocketManager.js +2 -2
- package/dist/components/StepperTitleBar.js +4 -4
- package/dist/components/TabPanel.js +11 -3
- package/dist/components/TableCellContent.js +1 -1
- package/dist/components/TemplateDesigner.js +11 -11
- package/dist/components/TitleBar.js +4 -3
- package/dist/components/Toolbar.js +42 -11
- package/dist/components/Tree.js +3 -3
- package/dist/components/dashboard/BasicBusinessAppDashboard.js +9 -7
- package/dist/components/dashboard/components/Header.js +1 -1
- package/dist/components/dashboard/components/blackDashboard/sidebar/Sidebar.css +7 -0
- package/dist/components/dashboard/components/blackDashboard/sidebar/Sidebar.js +74 -72
- package/dist/components/form/AutoComplete.js +31 -30
- package/dist/components/form/BaseField.js +38 -26
- package/dist/components/form/DatePicker.js +5 -2
- package/dist/components/form/FieldSet.js +11 -19
- package/dist/components/form/Form.js +24 -16
- package/dist/components/form/ImageEditor.js +4 -4
- package/dist/components/form/MultiFileUploadField.js +15 -14
- package/dist/components/form/RadioGroup.js +10 -11
- package/dist/components/form/Section.js +10 -0
- package/dist/components/form/TimePicker.js +1 -0
- package/dist/components/form/UploadField.js +115 -108
- package/dist/components/layout/Layout.js +65 -12
- package/dist/components/layout/View.css +1 -0
- package/dist/components/layout/View.js +20 -23
- package/dist/components/layout/ViewContainer.css +3 -0
- package/dist/components/layout/ViewContainer.js +59 -0
- package/dist/components/layout/ViewPort.js +50 -80
- package/dist/components/layout/Window.css +18 -0
- package/dist/components/layout/Window.js +287 -0
- package/dist/components/layout/WindowViewPort.js +71 -0
- package/dist/components/media/MediaSoupHelper.js +1 -1
- package/dist/components/media/Toolbar.css +18 -3
- package/dist/components/media/Toolbar.js +80 -56
- package/dist/components/media/TrainingRoom.js +97 -20
- package/dist/components/media/VCRoom.js +1 -1
- package/dist/components/media/VCRoomParticipant.js +17 -15
- package/dist/components/media/VCRoomRecorder.js +223 -0
- package/dist/components/media/VCRoomWorkspace.js +169 -156
- package/dist/components/media/VideoPlayer.css +10 -0
- package/dist/components/media/VideoPlayer.js +86 -0
- package/dist/components/menu/MenuButton.js +22 -6
- package/dist/components/menu/MenuLink.js +13 -10
- package/dist/components/navbars/HomeNavbar.js +2 -2
- package/dist/components/navbars/PortalNavbar.js +3 -3
- package/dist/components/signatures/AgilitySignaturePanel.js +4 -4
- package/dist/components/signatures/ImageSignatureInput.js +4 -4
- package/dist/components/signatures/SignatureInput.js +4 -4
- package/dist/components/signatures/SignatureTemplateDesigner.js +6 -6
- package/dist/event/ActionHandlers.js +3 -3
- package/dist/event/Observable.js +33 -15
- package/dist/event/RouteActionHandler.js +38 -29
- package/dist/event/ServiceCallActionHandler.js +4 -2
- package/dist/event/SignalGraphActionHandler.js +2 -2
- package/dist/js/Calendar.js +220 -0
- package/dist/js/Media.js +2 -2
- package/dist/view/Dashboard.js +34 -28
- package/dist/view/Views.js +30 -0
- package/dist/view/security/ChangePasswordBasic.js +6 -4
- package/dist/view/security/ForgotPassword.js +4 -4
- package/dist/view/security/ForgotPasswordBasic.js +4 -4
- package/dist/view/security/Login.js +4 -4
- package/dist/view/security/LoginBasic.js +5 -5
- package/dist/view/security/LoginBusinessPortal.js +4 -4
- package/dist/view/security/ResetPassword.js +4 -4
- package/dist/view/security/ResetPasswordBasic.js +6 -4
- package/package.json +6 -16
- package/gulpfile.js +0 -77
|
@@ -84,15 +84,38 @@ const VCRoomWorkspace = props => {
|
|
|
84
84
|
isHost,
|
|
85
85
|
autoPermit,
|
|
86
86
|
rtpCapabilities,
|
|
87
|
-
onloadScreenShareData
|
|
87
|
+
onloadScreenShareData,
|
|
88
|
+
displayState
|
|
88
89
|
} = props;
|
|
89
90
|
|
|
91
|
+
const startShareScreen = () => {
|
|
92
|
+
produceScreenShare();
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
const stopShareScreen = () => {
|
|
96
|
+
if (shareScreenStream.current) {
|
|
97
|
+
for (const track of shareScreenStream.current.getTracks()) {
|
|
98
|
+
track.stop();
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
shareScreenStream.current = null;
|
|
102
|
+
removeShareScreenElement();
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
props.onStopSharing();
|
|
106
|
+
};
|
|
107
|
+
|
|
90
108
|
const produceScreenShare = async () => {
|
|
91
109
|
if (!device) {
|
|
92
110
|
console.error('No available device');
|
|
93
111
|
return;
|
|
94
112
|
}
|
|
95
113
|
|
|
114
|
+
if (!producerTransport) {
|
|
115
|
+
console.error('No producer transport');
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
|
|
96
119
|
if (!device.canProduce('video')) {
|
|
97
120
|
console.error('Cannot produce screen share');
|
|
98
121
|
return;
|
|
@@ -108,8 +131,6 @@ const VCRoomWorkspace = props => {
|
|
|
108
131
|
audio: false,
|
|
109
132
|
video: {
|
|
110
133
|
mandatory: {
|
|
111
|
-
chromeMediaSource: 'desktop',
|
|
112
|
-
chromeMediaSourceId: shareScreenSource.id,
|
|
113
134
|
width: {
|
|
114
135
|
min: 160,
|
|
115
136
|
ideal: 320,
|
|
@@ -128,35 +149,49 @@ const VCRoomWorkspace = props => {
|
|
|
128
149
|
googCpuOveruseEncodeUsage: true,
|
|
129
150
|
googCpuOveruseThreshold: 70
|
|
130
151
|
}
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
appData: {
|
|
138
|
-
screenSharing: true
|
|
139
|
-
}
|
|
152
|
+
},
|
|
153
|
+
preferCurrentTab: true,
|
|
154
|
+
selfBrowserSurface: 'include',
|
|
155
|
+
systemAudio: 'exclude',
|
|
156
|
+
surfaceSwitching: 'exclude',
|
|
157
|
+
monitorTypeSurfaces: 'exclude'
|
|
140
158
|
};
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
shareScreenStream.current = stream;
|
|
159
|
+
navigator.mediaDevices.getDisplayMedia(videoConstraints).then(async stream => {
|
|
160
|
+
const track = stream.getVideoTracks()[0];
|
|
144
161
|
|
|
145
|
-
|
|
146
|
-
shareScreenVideoRef.current.srcObject = stream;
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
producer.on('transportclose', () => {
|
|
150
|
-
stream.srcObject.getTracks().forEach(function (track) {
|
|
162
|
+
track.onended = e => {
|
|
151
163
|
track.stop();
|
|
164
|
+
stopShareScreen();
|
|
165
|
+
};
|
|
166
|
+
|
|
167
|
+
const params = {
|
|
168
|
+
track,
|
|
169
|
+
appData: {
|
|
170
|
+
screenSharing: true
|
|
171
|
+
}
|
|
172
|
+
};
|
|
173
|
+
let producer = await producerTransport.produce(params);
|
|
174
|
+
setShareScreenProducer(producer);
|
|
175
|
+
shareScreenStream.current = stream;
|
|
176
|
+
|
|
177
|
+
if (showSharedScreen) {
|
|
178
|
+
shareScreenVideoRef.current.srcObject = stream;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
producer.on('transportclose', () => {
|
|
182
|
+
stream.srcObject.getTracks().forEach(function (track) {
|
|
183
|
+
track.stop();
|
|
184
|
+
});
|
|
185
|
+
setShareScreenProducer(null);
|
|
152
186
|
});
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
187
|
+
producer.on('close', () => {
|
|
188
|
+
stream.srcObject.getTracks().forEach(function (track) {
|
|
189
|
+
track.stop();
|
|
190
|
+
});
|
|
191
|
+
setShareScreenProducer(null);
|
|
158
192
|
});
|
|
159
|
-
|
|
193
|
+
}).catch(e => {
|
|
194
|
+
console.error(e);
|
|
160
195
|
});
|
|
161
196
|
};
|
|
162
197
|
|
|
@@ -170,13 +205,13 @@ const VCRoomWorkspace = props => {
|
|
|
170
205
|
console.log('Close producer', producerId);
|
|
171
206
|
|
|
172
207
|
_SocketManager.default.emitEvent(_VCEventType.VCEventType.PRODUCER_CLOSED, {
|
|
173
|
-
userId: sessionStorage.getItem(
|
|
208
|
+
userId: sessionStorage.getItem('username'),
|
|
174
209
|
producerId,
|
|
175
210
|
roomId: meetingId
|
|
176
|
-
}).catch(e => console.log(
|
|
211
|
+
}).catch(e => console.log('PRODUCER_CLOSED ERROR : ', e));
|
|
177
212
|
|
|
178
213
|
shareScreenProducer.close();
|
|
179
|
-
|
|
214
|
+
stopShareScreen();
|
|
180
215
|
setShareScreenProducer(null);
|
|
181
216
|
setSomeoneSharing(false);
|
|
182
217
|
setShareScreenSource(null);
|
|
@@ -197,41 +232,37 @@ const VCRoomWorkspace = props => {
|
|
|
197
232
|
}
|
|
198
233
|
};
|
|
199
234
|
|
|
200
|
-
const
|
|
235
|
+
const removeShareScreenElement = () => {
|
|
201
236
|
let el = document.getElementById('share-screen-video');
|
|
202
237
|
|
|
203
238
|
if (el) {
|
|
204
|
-
for (const track of el.srcObject.getTracks()) {
|
|
205
|
-
track.stop();
|
|
206
|
-
}
|
|
207
|
-
|
|
208
239
|
el.parentNode.removeChild(el);
|
|
209
240
|
}
|
|
210
241
|
};
|
|
211
242
|
|
|
212
243
|
const consume = async producer => {
|
|
213
|
-
_MediaSoupHelper.default.getConsumeStream(producer.producerId, device.rtpCapabilities, consumerTransport, props.meetingId, sessionStorage.getItem(
|
|
244
|
+
_MediaSoupHelper.default.getConsumeStream(producer.producerId, device.rtpCapabilities, consumerTransport, props.meetingId, sessionStorage.getItem('username'), 'video').then(({
|
|
214
245
|
consumer,
|
|
215
246
|
stream,
|
|
216
247
|
kind
|
|
217
248
|
}) => {
|
|
218
249
|
if (consumer) {
|
|
219
250
|
setShareScreenConsumer(consumer);
|
|
220
|
-
console.log(
|
|
251
|
+
console.log('=====================================SHARING CONSUME=====================================');
|
|
221
252
|
props.sharingHandler(true);
|
|
222
253
|
setScreenShared(true);
|
|
223
254
|
setSomeoneSharing(true); //setShowSharedScreen(true);
|
|
224
255
|
|
|
225
256
|
setShareScreenSource(null);
|
|
226
|
-
setMessage(producer.username +
|
|
257
|
+
setMessage(producer.username + ' is sharing');
|
|
227
258
|
shareScreenVideoRef.current.srcObject = stream;
|
|
228
259
|
shareScreenStream.current = stream; //setVideoRefresher(!videoRefresher);
|
|
229
260
|
|
|
230
261
|
consumer.on('trackended', () => {
|
|
231
|
-
|
|
262
|
+
removeShareScreenElement();
|
|
232
263
|
});
|
|
233
264
|
consumer.on('transportclose', () => {
|
|
234
|
-
|
|
265
|
+
removeShareScreenElement();
|
|
235
266
|
});
|
|
236
267
|
}
|
|
237
268
|
});
|
|
@@ -255,7 +286,7 @@ const VCRoomWorkspace = props => {
|
|
|
255
286
|
|
|
256
287
|
case _VCEventType.VCEventType.CONSUMER_CLOSED:
|
|
257
288
|
if (shareScreenConsumer && shareScreenConsumer.id === be.payload.consumerId) {
|
|
258
|
-
|
|
289
|
+
removeShareScreenElement();
|
|
259
290
|
setMessage(null);
|
|
260
291
|
props.sharingHandler(false);
|
|
261
292
|
setSomeoneSharing(false);
|
|
@@ -297,8 +328,8 @@ const VCRoomWorkspace = props => {
|
|
|
297
328
|
const setupSelfDevices = async () => {
|
|
298
329
|
let device = await _MediaSoupHelper.default.getParticipantDevice(rtpCapabilities);
|
|
299
330
|
setDevice(device);
|
|
300
|
-
let consumerTransport = await _MediaSoupHelper.default.initConsumerTransport(device, meetingId, sessionStorage.getItem(
|
|
301
|
-
let producerTransport = await _MediaSoupHelper.default.initProducerTransport(device, meetingId, sessionStorage.getItem(
|
|
331
|
+
let consumerTransport = await _MediaSoupHelper.default.initConsumerTransport(device, meetingId, sessionStorage.getItem('username'));
|
|
332
|
+
let producerTransport = await _MediaSoupHelper.default.initProducerTransport(device, meetingId, sessionStorage.getItem('username'));
|
|
302
333
|
setConsumerTransport(consumerTransport);
|
|
303
334
|
setProducerTransport(producerTransport);
|
|
304
335
|
transports.current.setConsumerTransport(consumerTransport);
|
|
@@ -331,16 +362,13 @@ const VCRoomWorkspace = props => {
|
|
|
331
362
|
}
|
|
332
363
|
}, [onloadScreenShareData, device, consumerTransport]);
|
|
333
364
|
(0, _react.useEffect)(() => {
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
if (props.shareScreenSource && props.shareScreenSource.name) {
|
|
337
|
-
var _props$shareScreenSou;
|
|
365
|
+
setScreenShared(props.screenShared);
|
|
338
366
|
|
|
339
|
-
|
|
367
|
+
if (props.screenShared) {
|
|
368
|
+
startShareScreen();
|
|
369
|
+
} else {
|
|
370
|
+
stopShareScreen();
|
|
340
371
|
}
|
|
341
|
-
}, [props.shareScreenSource]);
|
|
342
|
-
(0, _react.useEffect)(() => {
|
|
343
|
-
setScreenShared(props.screenShared);
|
|
344
372
|
}, [props.screenShared]);
|
|
345
373
|
(0, _react.useEffect)(() => {
|
|
346
374
|
_VCEventManager.default.addSubscriptions(eventHandler, _VCEventType.VCEventType.NEW_PRODUCERS, _VCEventType.VCEventType.CONSUMER_CLOSED, _VCEventType.VCEventType.PARTICIPANT_IN_VIEW);
|
|
@@ -362,10 +390,10 @@ const VCRoomWorkspace = props => {
|
|
|
362
390
|
if (props.participants && props.currentUserFullName) {
|
|
363
391
|
setCurrentUserParticipant({
|
|
364
392
|
isCurrentUser: true,
|
|
365
|
-
userId: sessionStorage.getItem(
|
|
393
|
+
userId: sessionStorage.getItem('username'),
|
|
366
394
|
peer: null,
|
|
367
395
|
name: props.currentUserFullName,
|
|
368
|
-
avatarId: sessionStorage.getItem(
|
|
396
|
+
avatarId: sessionStorage.getItem('userAvatarId'),
|
|
369
397
|
videoMuted,
|
|
370
398
|
audioMuted
|
|
371
399
|
});
|
|
@@ -422,10 +450,10 @@ const VCRoomWorkspace = props => {
|
|
|
422
450
|
}, inViewParticipants.map((participant, index) => {
|
|
423
451
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
424
452
|
className: 'col-*-*',
|
|
425
|
-
key: index +
|
|
453
|
+
key: index + '-' + participant.userId,
|
|
426
454
|
style: {
|
|
427
455
|
borderRadius: '4px',
|
|
428
|
-
minWidth:
|
|
456
|
+
minWidth: '200px',
|
|
429
457
|
padding: '4px',
|
|
430
458
|
height: '148px'
|
|
431
459
|
}
|
|
@@ -433,6 +461,7 @@ const VCRoomWorkspace = props => {
|
|
|
433
461
|
data: participant,
|
|
434
462
|
device: device,
|
|
435
463
|
meetingId: meetingId,
|
|
464
|
+
displayState: displayState,
|
|
436
465
|
audioMuted: participant.audioMuted,
|
|
437
466
|
videoMuted: participant.videoMuted,
|
|
438
467
|
onRemoveFromView: participant => removeFromView(participant),
|
|
@@ -451,8 +480,8 @@ const VCRoomWorkspace = props => {
|
|
|
451
480
|
return /*#__PURE__*/_react.default.createElement(_Grid.default, {
|
|
452
481
|
style: {
|
|
453
482
|
height: '100%',
|
|
454
|
-
justifyContent:
|
|
455
|
-
alignItems:
|
|
483
|
+
justifyContent: 'center',
|
|
484
|
+
alignItems: 'center'
|
|
456
485
|
},
|
|
457
486
|
key: index,
|
|
458
487
|
direction: "row",
|
|
@@ -465,12 +494,12 @@ const VCRoomWorkspace = props => {
|
|
|
465
494
|
return /*#__PURE__*/_react.default.createElement(_Grid.default, {
|
|
466
495
|
item: true,
|
|
467
496
|
xs: 4,
|
|
468
|
-
key: index +
|
|
497
|
+
key: index + '-' + participant.userId,
|
|
469
498
|
className: 'meetingParticipantContainer',
|
|
470
499
|
style: {
|
|
471
500
|
borderRadius: '4px',
|
|
472
|
-
width: 100 / row.length +
|
|
473
|
-
height:
|
|
501
|
+
width: 100 / row.length + '%',
|
|
502
|
+
height: '100%',
|
|
474
503
|
flexBasis: null,
|
|
475
504
|
maxWidth: null
|
|
476
505
|
}
|
|
@@ -478,6 +507,7 @@ const VCRoomWorkspace = props => {
|
|
|
478
507
|
data: participant,
|
|
479
508
|
device: device,
|
|
480
509
|
meetingId: meetingId,
|
|
510
|
+
sizing: displayState === 'MINIMIZED' ? 'sm' : 'md',
|
|
481
511
|
audioMuted: participant.audioMuted,
|
|
482
512
|
videoMuted: participant.videoMuted,
|
|
483
513
|
onRemoveFromView: participant => removeFromView(participant),
|
|
@@ -491,149 +521,132 @@ const VCRoomWorkspace = props => {
|
|
|
491
521
|
})));
|
|
492
522
|
};
|
|
493
523
|
|
|
524
|
+
function renderCurrentParticipant() {
|
|
525
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, currentUserParticipant && /*#__PURE__*/_react.default.createElement(_VCRoomParticipant.default, {
|
|
526
|
+
data: currentUserParticipant,
|
|
527
|
+
device: device,
|
|
528
|
+
meetingId: meetingId,
|
|
529
|
+
meetingTitle: meetingTitle,
|
|
530
|
+
rtpCapabilities: rtpCapabilities,
|
|
531
|
+
isCurrentUser: true,
|
|
532
|
+
onAudioDeviceChange: props.onAudioDeviceChange,
|
|
533
|
+
consumerTransport: consumerTransport,
|
|
534
|
+
producerTransport: producerTransport,
|
|
535
|
+
audioMuted: audioMuted,
|
|
536
|
+
videoMuted: videoMuted,
|
|
537
|
+
numberOfInViewParticipants: inViewParticipants.length,
|
|
538
|
+
onHostAudioMute: () => props.onHostAudioMute(currentUserParticipant),
|
|
539
|
+
onHostVideoMute: () => props.onHostVideoMute(currentUserParticipant),
|
|
540
|
+
isHost: isHost
|
|
541
|
+
}));
|
|
542
|
+
}
|
|
543
|
+
|
|
544
|
+
function renderParticipantGrid() {
|
|
545
|
+
return (!screenShared && !whiteBoardShown || screenShared && !showSharedScreen && !someoneSharing) && /*#__PURE__*/_react.default.createElement(_Box.default, {
|
|
546
|
+
style: {
|
|
547
|
+
flexGrow: 1,
|
|
548
|
+
height: displayState === 'MAXIMIZED' ? 'calc(100% - 216px)' : '100%',
|
|
549
|
+
width: '100%',
|
|
550
|
+
justifyContent: 'center',
|
|
551
|
+
alignItems: 'center',
|
|
552
|
+
display: 'flex'
|
|
553
|
+
}
|
|
554
|
+
}, /*#__PURE__*/_react.default.createElement(_Grid.default, {
|
|
555
|
+
container: true,
|
|
556
|
+
spacing: 1,
|
|
557
|
+
style: {
|
|
558
|
+
width: '100%',
|
|
559
|
+
display: 'flex',
|
|
560
|
+
alignItems: 'center',
|
|
561
|
+
maxHeight: '100%',
|
|
562
|
+
height: '100%',
|
|
563
|
+
overflowY: 'auto',
|
|
564
|
+
overflowX: 'hidden'
|
|
565
|
+
}
|
|
566
|
+
}, grid.map((row, index) => {
|
|
567
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
568
|
+
style: {
|
|
569
|
+
width: '100%',
|
|
570
|
+
height: 100 / grid.length + '%',
|
|
571
|
+
maxHeight: '50%'
|
|
572
|
+
}
|
|
573
|
+
}, /*#__PURE__*/_react.default.createElement(_react.Fragment, {
|
|
574
|
+
key: index
|
|
575
|
+
}, renderRow(row, index)));
|
|
576
|
+
})));
|
|
577
|
+
}
|
|
578
|
+
|
|
494
579
|
return device ? /*#__PURE__*/_react.default.createElement("div", {
|
|
495
580
|
className: 'row-*-* grid',
|
|
496
581
|
style: {
|
|
497
|
-
height: '100%',
|
|
498
|
-
width: '100%'
|
|
499
|
-
}
|
|
500
|
-
}, roomStatus !== "LOBBY" && /*#__PURE__*/_react.default.createElement("div", {
|
|
501
|
-
className: 'row-*-* messages',
|
|
502
|
-
style: {
|
|
582
|
+
height: displayState === 'MAXIMIZED' ? '100%' : 'calc(100% - 100px)',
|
|
503
583
|
width: '100%',
|
|
504
|
-
|
|
505
|
-
marginLeft: '0',
|
|
506
|
-
marginRight: '0',
|
|
507
|
-
display: 'flex',
|
|
508
|
-
alignItems: 'center',
|
|
509
|
-
color: 'white',
|
|
510
|
-
fontSize: '16px',
|
|
511
|
-
padding: '4px',
|
|
512
|
-
overflowY: 'auto'
|
|
584
|
+
display: displayState === 'MAXIMIZED' ? null : 'table'
|
|
513
585
|
}
|
|
514
|
-
}, (
|
|
515
|
-
className: 'row-*-*'
|
|
516
|
-
}, shareScreenSource && shareScreenSource.name && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
517
|
-
id: 'WARNING',
|
|
518
|
-
color: 'rgb(235, 63, 33)'
|
|
519
|
-
})), /*#__PURE__*/_react.default.createElement("div", null, (shareScreenSource.name.toLowerCase() === 'entire screen' ? 'Your entire screen' : 'The ' + shareScreenSource.name + ' window') + ' is being shared with other participants')), message && /*#__PURE__*/_react.default.createElement("span", null, message))), (roomStatus === "LOBBY" || props.allUserParticipantsLeft) && /*#__PURE__*/_react.default.createElement("div", {
|
|
586
|
+
}, (roomStatus === 'LOBBY' || props.allUserParticipantsLeft) && /*#__PURE__*/_react.default.createElement("div", {
|
|
520
587
|
style: {
|
|
521
|
-
height: 'calc(100% - 216px)',
|
|
588
|
+
height: displayState === 'MAXIMIZED' ? 'calc(100% - 216px)' : '100%',
|
|
522
589
|
fontSize: '28px',
|
|
523
590
|
width: '100%',
|
|
524
591
|
justifyContent: 'center',
|
|
525
592
|
alignItems: 'center',
|
|
526
593
|
display: 'flex'
|
|
527
594
|
}
|
|
528
|
-
}, _VCRoom.WAITING_FOR_OTHERS_TO_JOIN_MESSAGE), grid && roomStatus !==
|
|
529
|
-
style: {
|
|
530
|
-
flexGrow: 1,
|
|
531
|
-
height: 'calc(100% - 296px)',
|
|
532
|
-
width: '100%',
|
|
533
|
-
justifyContent: 'center',
|
|
534
|
-
alignItems: 'center',
|
|
535
|
-
display: 'flex'
|
|
536
|
-
}
|
|
537
|
-
}, /*#__PURE__*/_react.default.createElement(_Grid.default, {
|
|
538
|
-
container: true,
|
|
539
|
-
spacing: 1,
|
|
595
|
+
}, _VCRoom.WAITING_FOR_OTHERS_TO_JOIN_MESSAGE), grid && roomStatus !== 'LOBBY' && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, displayState === 'MAXIMIZED' && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, renderParticipantGrid()), displayState === 'MINIMIZED' && /*#__PURE__*/_react.default.createElement("div", {
|
|
540
596
|
style: {
|
|
541
|
-
width: '100%',
|
|
542
|
-
display: '
|
|
543
|
-
alignItems: 'center',
|
|
544
|
-
maxHeight: '100%',
|
|
545
|
-
height: "100%",
|
|
546
|
-
overflowY: 'auto',
|
|
547
|
-
overflowX: 'hidden'
|
|
597
|
+
width: 'calc(100% - 200px)',
|
|
598
|
+
display: 'table-cell'
|
|
548
599
|
}
|
|
549
|
-
},
|
|
550
|
-
return /*#__PURE__*/_react.default.createElement("div", {
|
|
551
|
-
style: {
|
|
552
|
-
width: "100%",
|
|
553
|
-
height: 100 / grid.length + "%",
|
|
554
|
-
maxHeight: "50%"
|
|
555
|
-
}
|
|
556
|
-
}, /*#__PURE__*/_react.default.createElement(_react.Fragment, {
|
|
557
|
-
key: index
|
|
558
|
-
}, renderRow(row, index)));
|
|
559
|
-
}))), /*#__PURE__*/_react.default.createElement("div", {
|
|
600
|
+
}, renderParticipantGrid()), /*#__PURE__*/_react.default.createElement("div", {
|
|
560
601
|
className: 'content-box',
|
|
561
602
|
style: {
|
|
562
603
|
display: !(screenShared && showSharedScreen || someoneSharing) ? 'none' : null
|
|
563
604
|
}
|
|
605
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
606
|
+
style: {
|
|
607
|
+
width: '100%',
|
|
608
|
+
maxHeight: '100%'
|
|
609
|
+
}
|
|
564
610
|
}, /*#__PURE__*/_react.default.createElement("video", {
|
|
565
611
|
id: 'screen-share-video',
|
|
566
|
-
width: 640,
|
|
567
|
-
height: 320,
|
|
568
612
|
autoPlay: true,
|
|
569
613
|
ref: shareScreenVideoRef,
|
|
570
614
|
muted: true,
|
|
571
615
|
style: {
|
|
572
616
|
width: '100%',
|
|
573
|
-
|
|
617
|
+
maxHeight: '100%',
|
|
574
618
|
zIndex: '0'
|
|
575
619
|
}
|
|
576
|
-
})),
|
|
577
|
-
className: '
|
|
578
|
-
}, "Whiteboard...")), roomStatus !== "LOBBY" && /*#__PURE__*/_react.default.createElement("div", {
|
|
579
|
-
className: 'row-*-*',
|
|
620
|
+
})))), /*#__PURE__*/_react.default.createElement("div", {
|
|
621
|
+
className: "".concat(displayState === 'MAXIMIZED' ? 'row-*-*' : ''),
|
|
580
622
|
style: {
|
|
581
|
-
width: '100%',
|
|
582
|
-
height: '
|
|
583
|
-
marginLeft: '0',
|
|
623
|
+
width: displayState === 'MAXIMIZED' ? '100%' : '200px',
|
|
624
|
+
height: displayState === 'MAXIMIZED' ? '152px' : '100%',
|
|
584
625
|
marginRight: '0',
|
|
585
|
-
display: 'flex',
|
|
626
|
+
display: screenShared && showSharedScreen || someoneSharing ? 'none' : displayState === 'MAXIMIZED' ? 'flex' : 'table-cell',
|
|
586
627
|
alignItems: 'center',
|
|
587
|
-
|
|
588
|
-
fontSize: '16px',
|
|
589
|
-
padding: '4px'
|
|
590
|
-
}
|
|
591
|
-
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
592
|
-
className: 'row-*-*',
|
|
593
|
-
style: {
|
|
594
|
-
width: '100%',
|
|
595
|
-
height: '152px',
|
|
596
|
-
marginRight: '0',
|
|
597
|
-
display: 'flex',
|
|
598
|
-
alignItems: 'center'
|
|
628
|
+
verticalAlign: 'top'
|
|
599
629
|
}
|
|
600
630
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
601
631
|
style: {
|
|
602
|
-
width: 'calc(100% - 232px)',
|
|
632
|
+
width: displayState === 'MAXIMIZED' ? 'calc(100% - 232px)' : '100%',
|
|
603
633
|
height: '148px',
|
|
604
634
|
borderRadius: '4px',
|
|
605
635
|
marginRight: '16px',
|
|
606
636
|
paddingLeft: '16px'
|
|
607
637
|
}
|
|
608
|
-
}, (
|
|
638
|
+
}, (whiteBoardShown || roomStatus === 'LOBBY') && grid && /*#__PURE__*/_react.default.createElement("div", {
|
|
609
639
|
style: {
|
|
610
640
|
width: '100%',
|
|
611
641
|
height: '100%'
|
|
612
642
|
}
|
|
613
643
|
}, renderStrip())), /*#__PURE__*/_react.default.createElement("div", {
|
|
614
|
-
className: 'col no-margin no-padding',
|
|
644
|
+
className: "".concat((displayState === 'MAXIMIZED' ? 'col ' : '') + 'no-margin no-padding'),
|
|
615
645
|
style: {
|
|
616
646
|
width: '200px',
|
|
617
647
|
height: '148px'
|
|
618
648
|
}
|
|
619
|
-
},
|
|
620
|
-
data: currentUserParticipant,
|
|
621
|
-
device: device,
|
|
622
|
-
meetingId: meetingId,
|
|
623
|
-
meetingTitle: meetingTitle,
|
|
624
|
-
rtpCapabilities: rtpCapabilities,
|
|
625
|
-
isCurrentUser: true,
|
|
626
|
-
onAudioDeviceChange: props.onAudioDeviceChange,
|
|
627
|
-
consumerTransport: consumerTransport,
|
|
628
|
-
producerTransport: producerTransport,
|
|
629
|
-
audioMuted: audioMuted,
|
|
630
|
-
videoMuted: videoMuted,
|
|
631
|
-
numberOfInViewParticipants: inViewParticipants.length,
|
|
632
|
-
sizing: 'md',
|
|
633
|
-
onHostAudioMute: () => props.onHostAudioMute(currentUserParticipant),
|
|
634
|
-
onHostVideoMute: () => props.onHostVideoMute(currentUserParticipant),
|
|
635
|
-
isHost: isHost
|
|
636
|
-
}))), waitingList && waitingList.length > 0 && /*#__PURE__*/_react.default.createElement("div", {
|
|
649
|
+
}, renderCurrentParticipant())), waitingList && waitingList.length > 0 && /*#__PURE__*/_react.default.createElement("div", {
|
|
637
650
|
className: 'no-side-margin no-side-padding grid-side-bar',
|
|
638
651
|
style: {
|
|
639
652
|
backgroundColor: 'transparent',
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
|
|
10
|
+
var _Utils = _interopRequireDefault(require("../../Utils"));
|
|
11
|
+
|
|
12
|
+
require("./VideoPlayer.css");
|
|
13
|
+
|
|
14
|
+
var _reactPlayer = _interopRequireDefault(require("react-player"));
|
|
15
|
+
|
|
16
|
+
var _ApplicationManager = _interopRequireDefault(require("../../ApplicationManager"));
|
|
17
|
+
|
|
18
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
+
|
|
20
|
+
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
|
|
21
|
+
|
|
22
|
+
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; }
|
|
23
|
+
|
|
24
|
+
const location = window.location.protocol + '//' + window.location.hostname;
|
|
25
|
+
|
|
26
|
+
const VideoPlayer = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.default.forwardRef((props, ref) => {
|
|
27
|
+
const [playing, setPlaying] = (0, _react.useState)(false);
|
|
28
|
+
const [documentId, setDocumentId] = (0, _react.useState)(false);
|
|
29
|
+
const [downloadUrl, setDownloadUrl] = (0, _react.useState)(null);
|
|
30
|
+
|
|
31
|
+
_react.default.useEffect(() => {
|
|
32
|
+
props.handle.api = api();
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
_react.default.useEffect(() => {}, [playing]);
|
|
36
|
+
|
|
37
|
+
_react.default.useEffect(() => {
|
|
38
|
+
if (documentId) {
|
|
39
|
+
setDownloadUrl(location + _ApplicationManager.default.getContextRoot() + '/docs/api/v1/manager/download/' + documentId + '?access_token=' + sessionStorage.getItem('accessToken') + '&idToken=' + sessionStorage.getItem('idToken'));
|
|
40
|
+
console.log(location + _ApplicationManager.default.getContextRoot() + '/docs/api/v1/manager/download/' + documentId + '?access_token=' + sessionStorage.getItem('accessToken') + '&idToken=' + sessionStorage.getItem('idToken'));
|
|
41
|
+
} else {
|
|
42
|
+
setDownloadUrl(null);
|
|
43
|
+
}
|
|
44
|
+
}, [documentId]);
|
|
45
|
+
|
|
46
|
+
const api = () => {
|
|
47
|
+
return {
|
|
48
|
+
get id() {
|
|
49
|
+
return props.config.id;
|
|
50
|
+
},
|
|
51
|
+
|
|
52
|
+
set playing(playing) {
|
|
53
|
+
setPlaying(playing);
|
|
54
|
+
},
|
|
55
|
+
|
|
56
|
+
set documentId(documentId) {
|
|
57
|
+
setDocumentId(documentId);
|
|
58
|
+
},
|
|
59
|
+
|
|
60
|
+
getChildren: () => {
|
|
61
|
+
return [];
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
67
|
+
style: _Utils.default.mergeStyles({}, props.config)
|
|
68
|
+
}, downloadUrl && /*#__PURE__*/_react.default.createElement("div", {
|
|
69
|
+
className: "player-wrapper"
|
|
70
|
+
}, /*#__PURE__*/_react.default.createElement(_reactPlayer.default, {
|
|
71
|
+
style: {
|
|
72
|
+
borderRadius: '4px'
|
|
73
|
+
},
|
|
74
|
+
url: downloadUrl,
|
|
75
|
+
className: "react-player",
|
|
76
|
+
playing: playing,
|
|
77
|
+
controls: true,
|
|
78
|
+
width: "100%",
|
|
79
|
+
height: "100%",
|
|
80
|
+
onPlay: () => setPlaying(true),
|
|
81
|
+
onPause: () => setPlaying(false)
|
|
82
|
+
})));
|
|
83
|
+
}));
|
|
84
|
+
|
|
85
|
+
var _default = VideoPlayer;
|
|
86
|
+
exports.default = _default;
|
|
@@ -69,17 +69,29 @@ const MenuButton = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
|
|
|
69
69
|
|
|
70
70
|
_react.default.useEffect(() => {
|
|
71
71
|
props.handle.api = api();
|
|
72
|
+
});
|
|
72
73
|
|
|
73
|
-
|
|
74
|
-
|
|
74
|
+
_react.default.useEffect(() => {
|
|
75
|
+
if (config) {
|
|
76
|
+
props.handle.api = api();
|
|
75
77
|
|
|
76
|
-
|
|
78
|
+
let parsedConfig = _Utils.default.parseConfig(config, props.viewId);
|
|
77
79
|
|
|
78
80
|
_Observable.default.addSubscriptions(parsedConfig.eventHandlingConfig, props.handle, props.viewId);
|
|
79
81
|
|
|
80
|
-
_Observable.default.addSystemSubscriptions(parsedConfig);
|
|
82
|
+
_Observable.default.addSystemSubscriptions(props.viewId, parsedConfig);
|
|
83
|
+
|
|
84
|
+
props.handle.api.refresh();
|
|
81
85
|
}
|
|
82
|
-
});
|
|
86
|
+
}, [config]);
|
|
87
|
+
|
|
88
|
+
_react.default.useEffect(() => {
|
|
89
|
+
var _props$tableRow$id;
|
|
90
|
+
|
|
91
|
+
setConfig(props.tableRow ? { ...props.config,
|
|
92
|
+
id: props.config.id + '_' + ((_props$tableRow$id = props.tableRow.id) === null || _props$tableRow$id === void 0 ? void 0 : _props$tableRow$id.replaceAll('-', ''))
|
|
93
|
+
} : props.config);
|
|
94
|
+
}, []);
|
|
83
95
|
|
|
84
96
|
const handleToggle = () => {
|
|
85
97
|
setOpen(prevOpen => !prevOpen);
|
|
@@ -103,7 +115,11 @@ const MenuButton = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
|
|
|
103
115
|
const api = () => {
|
|
104
116
|
return {
|
|
105
117
|
get id() {
|
|
106
|
-
return props.config.id;
|
|
118
|
+
return config ? config.id : props.config.id;
|
|
119
|
+
},
|
|
120
|
+
|
|
121
|
+
get tableRow() {
|
|
122
|
+
return props.tableRow;
|
|
107
123
|
},
|
|
108
124
|
|
|
109
125
|
getChildren: () => {
|