@azure/communication-react 1.2.3-alpha-202206140015.0 → 1.2.3-alpha-202206170013.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/communication-react.d.ts +50 -4
- package/dist/dist-cjs/communication-react/index.js +198 -103
- package/dist/dist-cjs/communication-react/index.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.d.ts +17 -1
- package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.d.ts.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js +22 -5
- package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.d.ts +22 -0
- package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.d.ts.map +1 -0
- package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js +49 -0
- package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js.map +1 -0
- package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts +13 -0
- package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/index.d.ts +2 -0
- package/dist/dist-esm/calling-stateful-client/src/index.d.ts.map +1 -1
- package/dist/dist-esm/communication-react/src/index.d.ts +1 -0
- package/dist/dist-esm/communication-react/src/index.d.ts.map +1 -1
- package/dist/dist-esm/communication-react/src/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js +1 -0
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.d.ts +6 -1
- package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +13 -3
- package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/MessageThread.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/MessageThread.js +2 -1
- package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts +2 -0
- package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantItem.js +3 -2
- package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantList.d.ts +2 -0
- package/dist/dist-esm/react-components/src/components/ParticipantList.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantList.js +4 -4
- package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantsButton.d.ts +2 -0
- package/dist/dist-esm/react-components/src/components/ParticipantsButton.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantsButton.js +4 -3
- package/dist/dist-esm/react-components/src/components/ParticipantsButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoTile.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoTile.js +1 -1
- package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js +11 -5
- package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +12 -3
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.d.ts +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.d.ts +1 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js +2 -2
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js +4 -2
- package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
- package/package.json +7 -7
@@ -191,7 +191,7 @@ const fromFlatCommunicationIdentifier = (id) => {
|
|
191
191
|
// Copyright (c) Microsoft Corporation.
|
192
192
|
// Licensed under the MIT license.
|
193
193
|
// GENERATED FILE. DO NOT EDIT MANUALLY.
|
194
|
-
var telemetryVersion = '1.2.3-alpha-
|
194
|
+
var telemetryVersion = '1.2.3-alpha-202206170013.0';
|
195
195
|
|
196
196
|
// Copyright (c) Microsoft Corporation.
|
197
197
|
/**
|
@@ -364,7 +364,7 @@ const getCallState = (state, props) => { var _a; return (_a = state.calls[props.
|
|
364
364
|
|
365
365
|
// Copyright (c) Microsoft Corporation.
|
366
366
|
// Licensed under the MIT license.
|
367
|
-
var __awaiter$
|
367
|
+
var __awaiter$s = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
|
368
368
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
369
369
|
return new (P || (P = Promise))(function (resolve, reject) {
|
370
370
|
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
@@ -402,7 +402,7 @@ const _isPreviewOn = (deviceManager) => {
|
|
402
402
|
*
|
403
403
|
* @private
|
404
404
|
*/
|
405
|
-
const disposeAllLocalPreviewViews = (callClient) => __awaiter$
|
405
|
+
const disposeAllLocalPreviewViews = (callClient) => __awaiter$s(void 0, void 0, void 0, function* () {
|
406
406
|
const unparentedViews = callClient.getState().deviceManager.unparentedViews;
|
407
407
|
for (const view of unparentedViews) {
|
408
408
|
yield callClient.disposeView(undefined, undefined, view);
|
@@ -506,7 +506,7 @@ const holdButtonSelector = reselect__namespace.createSelector([getCallState], (c
|
|
506
506
|
|
507
507
|
// Copyright (c) Microsoft Corporation.
|
508
508
|
// Licensed under the MIT license.
|
509
|
-
var __awaiter$
|
509
|
+
var __awaiter$r = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
|
510
510
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
511
511
|
return new (P || (P = Promise))(function (resolve, reject) {
|
512
512
|
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
@@ -530,7 +530,7 @@ const areStreamsEqual = (prevStream, newStream) => {
|
|
530
530
|
* @public
|
531
531
|
*/
|
532
532
|
const createDefaultCallingHandlers = memoizeOne__default['default']((callClient, callAgent, deviceManager, call) => {
|
533
|
-
const onStartLocalVideo = () => __awaiter$
|
533
|
+
const onStartLocalVideo = () => __awaiter$r(void 0, void 0, void 0, function* () {
|
534
534
|
// Before the call object creates a stream, dispose of any local preview streams.
|
535
535
|
// @TODO: is there any way to parent the unparented view to the call object instead
|
536
536
|
// of disposing and creating a new stream?
|
@@ -550,7 +550,7 @@ const createDefaultCallingHandlers = memoizeOne__default['default']((callClient,
|
|
550
550
|
yield call.startVideo(stream);
|
551
551
|
}
|
552
552
|
});
|
553
|
-
const onStopLocalVideo = (stream) => __awaiter$
|
553
|
+
const onStopLocalVideo = (stream) => __awaiter$r(void 0, void 0, void 0, function* () {
|
554
554
|
const callId = call === null || call === void 0 ? void 0 : call.id;
|
555
555
|
if (!callId) {
|
556
556
|
return;
|
@@ -563,7 +563,7 @@ const createDefaultCallingHandlers = memoizeOne__default['default']((callClient,
|
|
563
563
|
});
|
564
564
|
}
|
565
565
|
});
|
566
|
-
const onToggleCamera = (options) => __awaiter$
|
566
|
+
const onToggleCamera = (options) => __awaiter$r(void 0, void 0, void 0, function* () {
|
567
567
|
if (call && _isInCall(call.state)) {
|
568
568
|
const stream = call.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video');
|
569
569
|
if (stream) {
|
@@ -593,19 +593,19 @@ const createDefaultCallingHandlers = memoizeOne__default['default']((callClient,
|
|
593
593
|
const onStartCall = (participants, options) => {
|
594
594
|
return callAgent ? callAgent.startCall(participants, options) : undefined;
|
595
595
|
};
|
596
|
-
const onSelectMicrophone = (device) => __awaiter$
|
596
|
+
const onSelectMicrophone = (device) => __awaiter$r(void 0, void 0, void 0, function* () {
|
597
597
|
if (!deviceManager) {
|
598
598
|
return;
|
599
599
|
}
|
600
600
|
return deviceManager.selectMicrophone(device);
|
601
601
|
});
|
602
|
-
const onSelectSpeaker = (device) => __awaiter$
|
602
|
+
const onSelectSpeaker = (device) => __awaiter$r(void 0, void 0, void 0, function* () {
|
603
603
|
if (!deviceManager) {
|
604
604
|
return;
|
605
605
|
}
|
606
606
|
return deviceManager.selectSpeaker(device);
|
607
607
|
});
|
608
|
-
const onSelectCamera = (device, options) => __awaiter$
|
608
|
+
const onSelectCamera = (device, options) => __awaiter$r(void 0, void 0, void 0, function* () {
|
609
609
|
if (!deviceManager) {
|
610
610
|
return;
|
611
611
|
}
|
@@ -628,19 +628,19 @@ const createDefaultCallingHandlers = memoizeOne__default['default']((callClient,
|
|
628
628
|
}, options);
|
629
629
|
}
|
630
630
|
});
|
631
|
-
const onToggleMicrophone = () => __awaiter$
|
631
|
+
const onToggleMicrophone = () => __awaiter$r(void 0, void 0, void 0, function* () {
|
632
632
|
if (!call || !_isInCall(call.state)) {
|
633
633
|
throw new Error(`Please invoke onToggleMicrophone after call is started`);
|
634
634
|
}
|
635
635
|
return call.isMuted ? yield call.unmute() : yield call.mute();
|
636
636
|
});
|
637
|
-
const onStartScreenShare = () => __awaiter$
|
638
|
-
const onStopScreenShare = () => __awaiter$
|
639
|
-
const onToggleScreenShare = () => __awaiter$
|
640
|
-
const onHangUp = () => __awaiter$
|
637
|
+
const onStartScreenShare = () => __awaiter$r(void 0, void 0, void 0, function* () { return yield (call === null || call === void 0 ? void 0 : call.startScreenSharing()); });
|
638
|
+
const onStopScreenShare = () => __awaiter$r(void 0, void 0, void 0, function* () { return yield (call === null || call === void 0 ? void 0 : call.stopScreenSharing()); });
|
639
|
+
const onToggleScreenShare = () => __awaiter$r(void 0, void 0, void 0, function* () { return (call === null || call === void 0 ? void 0 : call.isScreenSharingOn) ? yield onStopScreenShare() : yield onStartScreenShare(); });
|
640
|
+
const onHangUp = () => __awaiter$r(void 0, void 0, void 0, function* () { return yield (call === null || call === void 0 ? void 0 : call.hangUp()); });
|
641
641
|
/* @conditional-compile-remove(PSTN-calls) */
|
642
|
-
const onToggleHold = () => __awaiter$
|
643
|
-
const onCreateLocalStreamView = (options = { scalingMode: 'Crop', isMirrored: true }) => __awaiter$
|
642
|
+
const onToggleHold = () => __awaiter$r(void 0, void 0, void 0, function* () { return (call === null || call === void 0 ? void 0 : call.state) === 'LocalHold' ? yield (call === null || call === void 0 ? void 0 : call.resume()) : yield (call === null || call === void 0 ? void 0 : call.hold()); });
|
643
|
+
const onCreateLocalStreamView = (options = { scalingMode: 'Crop', isMirrored: true }) => __awaiter$r(void 0, void 0, void 0, function* () {
|
644
644
|
var _a;
|
645
645
|
if (!call || call.localVideoStreams.length === 0) {
|
646
646
|
return;
|
@@ -656,7 +656,7 @@ const createDefaultCallingHandlers = memoizeOne__default['default']((callClient,
|
|
656
656
|
const { view } = (_a = (yield callClient.createView(call.id, undefined, localStream, options))) !== null && _a !== void 0 ? _a : {};
|
657
657
|
return view ? { view } : undefined;
|
658
658
|
});
|
659
|
-
const onCreateRemoteStreamView = (userId, options = { scalingMode: 'Crop' }) => __awaiter$
|
659
|
+
const onCreateRemoteStreamView = (userId, options = { scalingMode: 'Crop' }) => __awaiter$r(void 0, void 0, void 0, function* () {
|
660
660
|
if (!call) {
|
661
661
|
return;
|
662
662
|
}
|
@@ -684,7 +684,7 @@ const createDefaultCallingHandlers = memoizeOne__default['default']((callClient,
|
|
684
684
|
}
|
685
685
|
return (createViewResult === null || createViewResult === void 0 ? void 0 : createViewResult.view) ? { view: createViewResult === null || createViewResult === void 0 ? void 0 : createViewResult.view } : undefined;
|
686
686
|
});
|
687
|
-
const onDisposeRemoteStreamView = (userId) => __awaiter$
|
687
|
+
const onDisposeRemoteStreamView = (userId) => __awaiter$r(void 0, void 0, void 0, function* () {
|
688
688
|
if (!call) {
|
689
689
|
return;
|
690
690
|
}
|
@@ -705,7 +705,7 @@ const createDefaultCallingHandlers = memoizeOne__default['default']((callClient,
|
|
705
705
|
callClient.disposeView(call.id, participant.identifier, screenShareStream);
|
706
706
|
}
|
707
707
|
});
|
708
|
-
const onDisposeLocalStreamView = () => __awaiter$
|
708
|
+
const onDisposeLocalStreamView = () => __awaiter$r(void 0, void 0, void 0, function* () {
|
709
709
|
// If the user is currently in a call, dispose of the local stream view attached to that call.
|
710
710
|
const callState = call && callClient.getState().calls[call.id];
|
711
711
|
const localStream = callState === null || callState === void 0 ? void 0 : callState.localVideoStreams.find((item) => item.mediaStreamType === 'Video');
|
@@ -717,11 +717,11 @@ const createDefaultCallingHandlers = memoizeOne__default['default']((callClient,
|
|
717
717
|
// TODO: we need to remember which LocalVideoStream was used for LocalPreview and dispose that one.
|
718
718
|
yield disposeAllLocalPreviewViews(callClient);
|
719
719
|
});
|
720
|
-
const onRemoveParticipant = (userId) => __awaiter$
|
720
|
+
const onRemoveParticipant = (userId) => __awaiter$r(void 0, void 0, void 0, function* () {
|
721
721
|
yield (call === null || call === void 0 ? void 0 : call.removeParticipant(fromFlatCommunicationIdentifier(userId)));
|
722
722
|
});
|
723
723
|
/* @conditional-compile-remove(PSTN-calls) */
|
724
|
-
const onAddParticipant = (participant, options) => __awaiter$
|
724
|
+
const onAddParticipant = (participant, options) => __awaiter$r(void 0, void 0, void 0, function* () {
|
725
725
|
if (communicationCommon.isPhoneNumberIdentifier(participant)) {
|
726
726
|
yield (call === null || call === void 0 ? void 0 : call.addParticipant(participant, options));
|
727
727
|
}
|
@@ -730,7 +730,7 @@ const createDefaultCallingHandlers = memoizeOne__default['default']((callClient,
|
|
730
730
|
}
|
731
731
|
});
|
732
732
|
/* @conditional-compile-remove(dialpad) */
|
733
|
-
const onSendDtmfTone = (dtmfTone) => __awaiter$
|
733
|
+
const onSendDtmfTone = (dtmfTone) => __awaiter$r(void 0, void 0, void 0, function* () { return yield (call === null || call === void 0 ? void 0 : call.sendDtmf(dtmfTone)); });
|
734
734
|
return {
|
735
735
|
onHangUp,
|
736
736
|
/* @conditional-compile-remove(PSTN-calls) */
|
@@ -2990,6 +2990,7 @@ const ChatMessageActionFlyout = (props) => {
|
|
2990
2990
|
hidePersonaDetails: true,
|
2991
2991
|
size: react.PersonaSize.size24,
|
2992
2992
|
text: person.displayName,
|
2993
|
+
showOverflowTooltip: false,
|
2993
2994
|
styles: {
|
2994
2995
|
root: {
|
2995
2996
|
margin: '0.25rem'
|
@@ -3209,7 +3210,7 @@ const chatMessageActionMenuProps = (menuProps) => {
|
|
3209
3210
|
return actionMenuProps;
|
3210
3211
|
};
|
3211
3212
|
|
3212
|
-
var __awaiter$
|
3213
|
+
var __awaiter$q = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3213
3214
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
3214
3215
|
return new (P || (P = Promise))(function (resolve, reject) {
|
3215
3216
|
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
@@ -3228,7 +3229,7 @@ const actionIconStyle = { height: '1rem' };
|
|
3228
3229
|
const _FileDownloadCards = (props) => {
|
3229
3230
|
const { userId, fileMetadata } = props;
|
3230
3231
|
const [showSpinner, setShowSpinner] = React.useState(false);
|
3231
|
-
const fileDownloadHandler = React.useCallback((userId, file) => __awaiter$
|
3232
|
+
const fileDownloadHandler = React.useCallback((userId, file) => __awaiter$q(void 0, void 0, void 0, function* () {
|
3232
3233
|
if (!props.downloadHandler) {
|
3233
3234
|
window.open(file.url, '_blank', 'noopener,noreferrer');
|
3234
3235
|
}
|
@@ -3348,7 +3349,7 @@ const ChatMessageComponentAsMessageBubble = React__default['default'].memo(Messa
|
|
3348
3349
|
|
3349
3350
|
// Copyright (c) Microsoft Corporation.
|
3350
3351
|
// Licensed under the MIT license.
|
3351
|
-
var __awaiter$
|
3352
|
+
var __awaiter$p = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3352
3353
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
3353
3354
|
return new (P || (P = Promise))(function (resolve, reject) {
|
3354
3355
|
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
@@ -3382,7 +3383,7 @@ const ChatMessageComponent = (props) => {
|
|
3382
3383
|
return React__default['default'].createElement(React__default['default'].Fragment, null);
|
3383
3384
|
}
|
3384
3385
|
else if (isEditing) {
|
3385
|
-
return (React__default['default'].createElement(ChatMessageComponentAsEditBox, { message: message, inlineEditButtons: props.inlineAcceptRejectEditButtons, strings: props.strings, onSubmit: (text, metadata, options) => __awaiter$
|
3386
|
+
return (React__default['default'].createElement(ChatMessageComponentAsEditBox, { message: message, inlineEditButtons: props.inlineAcceptRejectEditButtons, strings: props.strings, onSubmit: (text, metadata, options) => __awaiter$p(void 0, void 0, void 0, function* () {
|
3386
3387
|
props.onUpdateMessage &&
|
3387
3388
|
props.message.messageId &&
|
3388
3389
|
(yield props.onUpdateMessage(props.message.messageId, text, metadata, options));
|
@@ -3492,7 +3493,7 @@ const getParticipantsWhoHaveReadMessage = (message, readReceiptsBySenderId) => {
|
|
3492
3493
|
|
3493
3494
|
// Copyright (c) Microsoft Corporation.
|
3494
3495
|
// Licensed under the MIT license.
|
3495
|
-
var __awaiter$
|
3496
|
+
var __awaiter$o = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
|
3496
3497
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
3497
3498
|
return new (P || (P = Promise))(function (resolve, reject) {
|
3498
3499
|
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
@@ -3610,7 +3611,8 @@ const memoizeAllMessages = memoizeFnAll((_messageKey, message, showMessageDate,
|
|
3610
3611
|
const personaOptions = {
|
3611
3612
|
hidePersonaDetails: true,
|
3612
3613
|
size: react.PersonaSize.size32,
|
3613
|
-
text: message.senderDisplayName
|
3614
|
+
text: message.senderDisplayName,
|
3615
|
+
showOverflowTooltip: false
|
3614
3616
|
};
|
3615
3617
|
const chatItemMessageStyle = (message.mine ? styles === null || styles === void 0 ? void 0 : styles.myChatItemMessageContainer : styles === null || styles === void 0 ? void 0 : styles.chatItemMessageContainer) ||
|
3616
3618
|
defaultChatItemMessageContainer(shouldOverlapAvatarAndMessage);
|
@@ -3718,7 +3720,7 @@ const MessageThread = (props) => {
|
|
3718
3720
|
setChatMessagesInitialized(chatMessagesInitialized);
|
3719
3721
|
};
|
3720
3722
|
// we try to only send those message status if user is scrolled to the bottom.
|
3721
|
-
const sendMessageStatusIfAtBottom = React.useCallback(() => __awaiter$
|
3723
|
+
const sendMessageStatusIfAtBottom = React.useCallback(() => __awaiter$o(void 0, void 0, void 0, function* () {
|
3722
3724
|
if (!isAtBottomOfScrollRef.current ||
|
3723
3725
|
!document.hasFocus() ||
|
3724
3726
|
!messagesRef.current ||
|
@@ -3769,7 +3771,7 @@ const MessageThread = (props) => {
|
|
3769
3771
|
setIsAtBottomOfScrollRef(atBottom);
|
3770
3772
|
}, [scrollToBottom, sendMessageStatusIfAtBottom]);
|
3771
3773
|
// Infinite scrolling + threadInitialize function
|
3772
|
-
const fetchNewMessageWhenAtTop = React.useCallback(() => __awaiter$
|
3774
|
+
const fetchNewMessageWhenAtTop = React.useCallback(() => __awaiter$o(void 0, void 0, void 0, function* () {
|
3773
3775
|
if (chatScrollDivRef.current && !isLoadingChatMessagesRef.current) {
|
3774
3776
|
if (onLoadPreviousChatMessages) {
|
3775
3777
|
isLoadingChatMessagesRef.current = true;
|
@@ -4009,8 +4011,6 @@ const linkStyles = (theme) => {
|
|
4009
4011
|
};
|
4010
4012
|
|
4011
4013
|
// Copyright (c) Microsoft Corporation.
|
4012
|
-
// Height and width of the loading spinner
|
4013
|
-
const LOADING_SPINNER_SIZE_REM = 5;
|
4014
4014
|
/**
|
4015
4015
|
* @private
|
4016
4016
|
*/
|
@@ -4022,8 +4022,7 @@ const container = () => react.mergeStyles({
|
|
4022
4022
|
* @private
|
4023
4023
|
*/
|
4024
4024
|
const loadingSpinnerContainer = () => react.mergeStyles({
|
4025
|
-
|
4026
|
-
height: `${LOADING_SPINNER_SIZE_REM}rem`,
|
4025
|
+
// Position centrally on top of content. Parent must have position: relative.
|
4027
4026
|
position: 'absolute',
|
4028
4027
|
top: '50%',
|
4029
4028
|
bottom: '0',
|
@@ -4035,7 +4034,16 @@ const loadingSpinnerContainer = () => react.mergeStyles({
|
|
4035
4034
|
* @private
|
4036
4035
|
*/
|
4037
4036
|
const loadSpinnerStyles = {
|
4038
|
-
|
4037
|
+
root: {
|
4038
|
+
height: '100%' // ensure height fills container
|
4039
|
+
},
|
4040
|
+
circle: {
|
4041
|
+
maxHeight: '5rem',
|
4042
|
+
height: '50%',
|
4043
|
+
width: 'unset',
|
4044
|
+
aspectRatio: '1 / 1',
|
4045
|
+
borderWidth: '0.25em'
|
4046
|
+
}
|
4039
4047
|
};
|
4040
4048
|
/**
|
4041
4049
|
* @private
|
@@ -4166,7 +4174,7 @@ const meContainerStyle = {
|
|
4166
4174
|
*/
|
4167
4175
|
const ParticipantItem = (props) => {
|
4168
4176
|
var _a, _b, _c, _d;
|
4169
|
-
const { userId, displayName, onRenderAvatar, menuItems, onRenderIcon, presence, styles, me, onClick } = props;
|
4177
|
+
const { userId, displayName, onRenderAvatar, menuItems, onRenderIcon, presence, styles, me, onClick, showParticipantOverflowTooltip } = props;
|
4170
4178
|
const [itemHovered, setItemHovered] = React.useState(false);
|
4171
4179
|
const [menuHidden, setMenuHidden] = React.useState(true);
|
4172
4180
|
const containerRef = React.useRef(null);
|
@@ -4179,7 +4187,8 @@ const ParticipantItem = (props) => {
|
|
4179
4187
|
text: displayName,
|
4180
4188
|
size: react.PersonaSize.size32,
|
4181
4189
|
presence: presence,
|
4182
|
-
initialsTextColor: 'white'
|
4190
|
+
initialsTextColor: 'white',
|
4191
|
+
showOverflowTooltip: showParticipantOverflowTooltip
|
4183
4192
|
};
|
4184
4193
|
const avatar = onRenderAvatar ? (onRenderAvatar(userId !== null && userId !== void 0 ? userId : '', avatarOptions)) : (React__default['default'].createElement(react.Persona, Object.assign({ className: react.mergeStyles({
|
4185
4194
|
// Prevents persona text from being vertically truncated if a global line height is less than 1.15.
|
@@ -4248,7 +4257,7 @@ const iconStyles$1 = react.mergeStyles({
|
|
4248
4257
|
});
|
4249
4258
|
|
4250
4259
|
// Copyright (c) Microsoft Corporation.
|
4251
|
-
const onRenderParticipantDefault = (participant, strings, myUserId, onRenderAvatar, createParticipantMenuItems, styles, onParticipantClick) => {
|
4260
|
+
const onRenderParticipantDefault = (participant, strings, myUserId, onRenderAvatar, createParticipantMenuItems, styles, onParticipantClick, showParticipantOverflowTooltip) => {
|
4252
4261
|
const callingParticipant = participant;
|
4253
4262
|
let presence = undefined;
|
4254
4263
|
if (callingParticipant) {
|
@@ -4266,7 +4275,7 @@ const onRenderParticipantDefault = (participant, strings, myUserId, onRenderAvat
|
|
4266
4275
|
callingParticipant.isMuted && (React__default['default'].createElement(react.Icon, { iconName: "ParticipantItemMicOff", className: iconStyles$1, ariaLabel: strings.mutedIconLabel }))))
|
4267
4276
|
: () => null;
|
4268
4277
|
const displayName = !participant.displayName ? strings.displayNamePlaceholder : participant.displayName;
|
4269
|
-
return (React__default['default'].createElement(ParticipantItem, { styles: styles, key: participant.userId, userId: participant.userId, displayName: displayName, me: myUserId ? participant.userId === myUserId : false, menuItems: menuItems, presence: presence, onRenderIcon: onRenderIcon, onRenderAvatar: onRenderAvatar, onClick: () => onParticipantClick === null || onParticipantClick === void 0 ? void 0 : onParticipantClick(participant) }));
|
4278
|
+
return (React__default['default'].createElement(ParticipantItem, { styles: styles, key: participant.userId, userId: participant.userId, displayName: displayName, me: myUserId ? participant.userId === myUserId : false, menuItems: menuItems, presence: presence, onRenderIcon: onRenderIcon, onRenderAvatar: onRenderAvatar, onClick: () => onParticipantClick === null || onParticipantClick === void 0 ? void 0 : onParticipantClick(participant), showParticipantOverflowTooltip: showParticipantOverflowTooltip }));
|
4270
4279
|
};
|
4271
4280
|
const getParticipantsForDefaultRender = (participants, excludeMe, myUserId) => {
|
4272
4281
|
if (!excludeMe || !myUserId) {
|
@@ -4289,7 +4298,7 @@ const getParticipantsForDefaultRender = (participants, excludeMe, myUserId) => {
|
|
4289
4298
|
*/
|
4290
4299
|
const ParticipantList = (props) => {
|
4291
4300
|
var _a, _b;
|
4292
|
-
const { excludeMe = false, myUserId, participants, onRemoveParticipant, onRenderAvatar, onRenderParticipant, onFetchParticipantMenuItems } = props;
|
4301
|
+
const { excludeMe = false, myUserId, participants, onRemoveParticipant, onRenderAvatar, onRenderParticipant, onFetchParticipantMenuItems, showParticipantOverflowTooltip } = props;
|
4293
4302
|
const ids = useIdentifiers();
|
4294
4303
|
const strings = useLocale$1().strings.participantItem;
|
4295
4304
|
const displayedParticipants = React.useMemo(() => {
|
@@ -4318,7 +4327,7 @@ const ParticipantList = (props) => {
|
|
4318
4327
|
const participantItemStyles = react.merge(participantListItemStyle, (_a = props.styles) === null || _a === void 0 ? void 0 : _a.participantItemStyles);
|
4319
4328
|
return (React__default['default'].createElement(react.Stack, { "data-ui-id": ids.participantList, className: react.mergeStyles(participantListStyle$1, (_b = props.styles) === null || _b === void 0 ? void 0 : _b.root) }, displayedParticipants.map((participant) => onRenderParticipant
|
4320
4329
|
? onRenderParticipant(participant)
|
4321
|
-
: onRenderParticipantDefault(participant, strings, myUserId, onRenderAvatar, createParticipantMenuItems, participantItemStyles, props.onParticipantClick))));
|
4330
|
+
: onRenderParticipantDefault(participant, strings, myUserId, onRenderAvatar, createParticipantMenuItems, participantItemStyles, props.onParticipantClick, showParticipantOverflowTooltip))));
|
4322
4331
|
};
|
4323
4332
|
|
4324
4333
|
/**
|
@@ -4574,7 +4583,7 @@ const DEFAULT_PERSONA_MIN_SIZE_PX = 32;
|
|
4574
4583
|
const DefaultPlaceholder = (props) => {
|
4575
4584
|
const { text, noVideoAvailableAriaLabel, coinSize, styles, hidePersonaDetails } = props;
|
4576
4585
|
return (React__default['default'].createElement(react.Stack, { className: react.mergeStyles({ position: 'absolute', height: '100%', width: '100%' }) },
|
4577
|
-
React__default['default'].createElement(react.Persona, { styles: styles, coinSize: coinSize, hidePersonaDetails: hidePersonaDetails, text: text !== null && text !== void 0 ? text : '', initialsTextColor: "white", "aria-label": noVideoAvailableAriaLabel !== null && noVideoAvailableAriaLabel !== void 0 ? noVideoAvailableAriaLabel : '' })));
|
4586
|
+
React__default['default'].createElement(react.Persona, { styles: styles, coinSize: coinSize, hidePersonaDetails: hidePersonaDetails, text: text !== null && text !== void 0 ? text : '', initialsTextColor: "white", "aria-label": noVideoAvailableAriaLabel !== null && noVideoAvailableAriaLabel !== void 0 ? noVideoAvailableAriaLabel : '', showOverflowTooltip: false })));
|
4578
4587
|
};
|
4579
4588
|
const defaultPersonaStyles = { root: { margin: 'auto', maxHeight: '100%' } };
|
4580
4589
|
/**
|
@@ -6418,7 +6427,7 @@ const announcerStyles = {
|
|
6418
6427
|
|
6419
6428
|
// Copyright (c) Microsoft Corporation.
|
6420
6429
|
// Licensed under the MIT license.
|
6421
|
-
var __awaiter$
|
6430
|
+
var __awaiter$n = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
|
6422
6431
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
6423
6432
|
return new (P || (P = Promise))(function (resolve, reject) {
|
6424
6433
|
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
@@ -6455,7 +6464,7 @@ const CameraButton = (props) => {
|
|
6455
6464
|
const toggleAnnouncerString = React.useCallback((isCameraOn) => {
|
6456
6465
|
setAnnouncerString(!isCameraOn ? strings.cameraActionTurnedOffAnnouncement : strings.cameraActionTurnedOnAnnouncement);
|
6457
6466
|
}, [strings.cameraActionTurnedOffAnnouncement, strings.cameraActionTurnedOnAnnouncement]);
|
6458
|
-
const onToggleClick = React.useCallback(() => __awaiter$
|
6467
|
+
const onToggleClick = React.useCallback(() => __awaiter$n(void 0, void 0, void 0, function* () {
|
6459
6468
|
// Throttle click on camera, need to await onToggleCamera then allow another click
|
6460
6469
|
if (onToggleCamera) {
|
6461
6470
|
setWaitForCamera(true);
|
@@ -6587,7 +6596,7 @@ const lightThemeCallButtonStyles = {
|
|
6587
6596
|
|
6588
6597
|
// Copyright (c) Microsoft Corporation.
|
6589
6598
|
// Licensed under the MIT license.
|
6590
|
-
var __awaiter$
|
6599
|
+
var __awaiter$m = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
|
6591
6600
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
6592
6601
|
return new (P || (P = Promise))(function (resolve, reject) {
|
6593
6602
|
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
@@ -6620,7 +6629,7 @@ const MicrophoneButton = (props) => {
|
|
6620
6629
|
const toggleAnnouncerString = React.useCallback((isMicOn) => {
|
6621
6630
|
setAnnouncerString(!isMicOn ? strings.microphoneActionTurnedOffAnnouncement : strings.microphoneActionTurnedOnAnnouncement);
|
6622
6631
|
}, [strings.microphoneActionTurnedOffAnnouncement, strings.microphoneActionTurnedOnAnnouncement]);
|
6623
|
-
const onToggleClick = React.useCallback(() => __awaiter$
|
6632
|
+
const onToggleClick = React.useCallback(() => __awaiter$m(void 0, void 0, void 0, function* () {
|
6624
6633
|
if (onToggleMicrophone) {
|
6625
6634
|
try {
|
6626
6635
|
yield onToggleMicrophone();
|
@@ -6653,7 +6662,7 @@ const MicrophoneButton = (props) => {
|
|
6653
6662
|
*/
|
6654
6663
|
const ParticipantsButton = (props) => {
|
6655
6664
|
var _a, _b, _c, _d;
|
6656
|
-
const { callInvitationURL, styles, onMuteAll, onRenderIcon, onRenderParticipantList, participants, myUserId, excludeMe, onRenderParticipant, onRenderAvatar, onRemoveParticipant, onFetchParticipantMenuItems } = props;
|
6665
|
+
const { callInvitationURL, styles, onMuteAll, onRenderIcon, onRenderParticipantList, participants, myUserId, excludeMe, onRenderParticipant, onRenderAvatar, onRemoveParticipant, onFetchParticipantMenuItems, showParticipantOverflowTooltip } = props;
|
6657
6666
|
const onRenderPeopleIcon = () => (React__default['default'].createElement(HighContrastAwareIcon, { disabled: props.disabled, iconName: "ControlButtonParticipants" }));
|
6658
6667
|
const ids = useIdentifiers();
|
6659
6668
|
const onMuteAllCallback = React.useCallback(() => {
|
@@ -6663,7 +6672,7 @@ const ParticipantsButton = (props) => {
|
|
6663
6672
|
}, [onMuteAll]);
|
6664
6673
|
const defaultParticipantList = React.useCallback(() => {
|
6665
6674
|
var _a;
|
6666
|
-
return (React__default['default'].createElement(ParticipantList, { participants: participants, myUserId: myUserId, excludeMe: excludeMe, onRenderParticipant: onRenderParticipant, onRenderAvatar: onRenderAvatar, onRemoveParticipant: onRemoveParticipant, onFetchParticipantMenuItems: onFetchParticipantMenuItems, styles: react.merge(defaultParticipantListContainerStyle, (_a = styles === null || styles === void 0 ? void 0 : styles.menuStyles) === null || _a === void 0 ? void 0 : _a.participantListStyles) }));
|
6675
|
+
return (React__default['default'].createElement(ParticipantList, { participants: participants, myUserId: myUserId, excludeMe: excludeMe, onRenderParticipant: onRenderParticipant, onRenderAvatar: onRenderAvatar, onRemoveParticipant: onRemoveParticipant, onFetchParticipantMenuItems: onFetchParticipantMenuItems, styles: react.merge(defaultParticipantListContainerStyle, (_a = styles === null || styles === void 0 ? void 0 : styles.menuStyles) === null || _a === void 0 ? void 0 : _a.participantListStyles), showParticipantOverflowTooltip: showParticipantOverflowTooltip }));
|
6667
6676
|
}, [
|
6668
6677
|
excludeMe,
|
6669
6678
|
myUserId,
|
@@ -6672,7 +6681,8 @@ const ParticipantsButton = (props) => {
|
|
6672
6681
|
onRenderParticipant,
|
6673
6682
|
participants,
|
6674
6683
|
(_a = styles === null || styles === void 0 ? void 0 : styles.menuStyles) === null || _a === void 0 ? void 0 : _a.participantListStyles,
|
6675
|
-
onFetchParticipantMenuItems
|
6684
|
+
onFetchParticipantMenuItems,
|
6685
|
+
showParticipantOverflowTooltip
|
6676
6686
|
]);
|
6677
6687
|
const onCopyCallback = React.useCallback(() => {
|
6678
6688
|
if (callInvitationURL) {
|
@@ -7472,14 +7482,17 @@ const DialpadContainer = (props) => {
|
|
7472
7482
|
var _a, _b;
|
7473
7483
|
const theme = react.useTheme();
|
7474
7484
|
const [textValue, setTextValue] = React.useState('');
|
7475
|
-
const { onSendDtmfTone, onClickDialpadButton, onDisplayDialpadInput } = props;
|
7485
|
+
const { onSendDtmfTone, onClickDialpadButton, onDisplayDialpadInput, onChange } = props;
|
7476
7486
|
const onClickDialpad = (input, index) => {
|
7477
7487
|
setTextValue(textValue + input);
|
7478
7488
|
if (onSendDtmfTone) {
|
7479
7489
|
onSendDtmfTone(DtmfTones[index]);
|
7480
7490
|
}
|
7481
7491
|
if (onClickDialpadButton) {
|
7482
|
-
onClickDialpadButton();
|
7492
|
+
onClickDialpadButton(input, index);
|
7493
|
+
}
|
7494
|
+
if (onChange) {
|
7495
|
+
onChange(onDisplayDialpadInput ? onDisplayDialpadInput(textValue + input) : formatPhoneNumber(textValue + input));
|
7483
7496
|
}
|
7484
7497
|
};
|
7485
7498
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
@@ -7489,7 +7502,14 @@ const DialpadContainer = (props) => {
|
|
7489
7502
|
// comment out the following line for now to disable customization for dialpad content
|
7490
7503
|
// const dialpadButtonsContent = props.dialpadButtons ?? dialPadButtonsDefault;
|
7491
7504
|
return (React__default['default'].createElement("div", { className: react.mergeStyles(containerStyles$1(theme), (_a = props.styles) === null || _a === void 0 ? void 0 : _a.root), "data-test-id": "dialpadContainer" },
|
7492
|
-
React__default['default'].createElement(react.TextField, { styles: react.concatStyleSets(textFieldStyles(theme), (_b = props.styles) === null || _b === void 0 ? void 0 : _b.textField), value: onDisplayDialpadInput ? onDisplayDialpadInput(textValue) : formatPhoneNumber(textValue),
|
7505
|
+
React__default['default'].createElement(react.TextField, { styles: react.concatStyleSets(textFieldStyles(theme), (_b = props.styles) === null || _b === void 0 ? void 0 : _b.textField), value: onDisplayDialpadInput ? onDisplayDialpadInput(textValue) : formatPhoneNumber(textValue),
|
7506
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
7507
|
+
onChange: (e) => {
|
7508
|
+
setText(e);
|
7509
|
+
if (onChange) {
|
7510
|
+
onChange(onDisplayDialpadInput ? onDisplayDialpadInput(e.target.value) : formatPhoneNumber(e.target.value));
|
7511
|
+
}
|
7512
|
+
}, placeholder: props.placeholderText, "data-test-id": "dialpad-input" }),
|
7493
7513
|
React__default['default'].createElement(react.FocusZone, null, dialPadButtonsDefault.map((rows, rowIndex) => {
|
7494
7514
|
return (React__default['default'].createElement(react.Stack, { horizontal: true, key: `row_${rowIndex}`, horizontalAlign: "stretch" }, rows.map((button, columnIndex) => (React__default['default'].createElement(DialpadButton, { key: `button_${columnIndex}`,
|
7495
7515
|
/* row index = 0
|
@@ -7969,7 +7989,7 @@ const findConditionalCompiledSelector = (component) => {
|
|
7969
7989
|
|
7970
7990
|
// Copyright (c) Microsoft Corporation.
|
7971
7991
|
// Licensed under the MIT license.
|
7972
|
-
var __awaiter$
|
7992
|
+
var __awaiter$l = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
|
7973
7993
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
7974
7994
|
return new (P || (P = Promise))(function (resolve, reject) {
|
7975
7995
|
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
@@ -7992,35 +8012,35 @@ const createDefaultChatHandlers = memoizeOne__default['default']((chatClient, ch
|
|
7992
8012
|
let messageIterator = undefined;
|
7993
8013
|
let readReceiptIterator = undefined;
|
7994
8014
|
return {
|
7995
|
-
onSendMessage: (content, options) => __awaiter$
|
8015
|
+
onSendMessage: (content, options) => __awaiter$l(void 0, void 0, void 0, function* () {
|
7996
8016
|
const sendMessageRequest = {
|
7997
8017
|
content,
|
7998
8018
|
senderDisplayName: chatClient.getState().displayName
|
7999
8019
|
};
|
8000
8020
|
yield chatThreadClient.sendMessage(sendMessageRequest, options);
|
8001
8021
|
}),
|
8002
|
-
onUpdateMessage: (messageId, content, metadata, options) => __awaiter$
|
8022
|
+
onUpdateMessage: (messageId, content, metadata, options) => __awaiter$l(void 0, void 0, void 0, function* () {
|
8003
8023
|
const updatedMetadata = metadata ? Object.assign({}, metadata) : {};
|
8004
8024
|
updatedMetadata['fileSharingMetadata'] = JSON.stringify((options === null || options === void 0 ? void 0 : options.attachedFilesMetadata) || []);
|
8005
8025
|
yield chatThreadClient.updateMessage(messageId, { content, metadata: updatedMetadata });
|
8006
8026
|
}),
|
8007
|
-
onDeleteMessage: (messageId) => __awaiter$
|
8027
|
+
onDeleteMessage: (messageId) => __awaiter$l(void 0, void 0, void 0, function* () {
|
8008
8028
|
yield chatThreadClient.deleteMessage(messageId);
|
8009
8029
|
}),
|
8010
8030
|
// This handler is designed for chatThread to consume
|
8011
|
-
onMessageSeen: (chatMessageId) => __awaiter$
|
8031
|
+
onMessageSeen: (chatMessageId) => __awaiter$l(void 0, void 0, void 0, function* () {
|
8012
8032
|
yield chatThreadClient.sendReadReceipt({ chatMessageId });
|
8013
8033
|
}),
|
8014
|
-
onTyping: () => __awaiter$
|
8034
|
+
onTyping: () => __awaiter$l(void 0, void 0, void 0, function* () {
|
8015
8035
|
yield chatThreadClient.sendTypingNotification();
|
8016
8036
|
}),
|
8017
|
-
onRemoveParticipant: (userId) => __awaiter$
|
8037
|
+
onRemoveParticipant: (userId) => __awaiter$l(void 0, void 0, void 0, function* () {
|
8018
8038
|
yield chatThreadClient.removeParticipant(fromFlatCommunicationIdentifier(userId));
|
8019
8039
|
}),
|
8020
|
-
updateThreadTopicName: (topicName) => __awaiter$
|
8040
|
+
updateThreadTopicName: (topicName) => __awaiter$l(void 0, void 0, void 0, function* () {
|
8021
8041
|
yield chatThreadClient.updateTopic(topicName);
|
8022
8042
|
}),
|
8023
|
-
onLoadPreviousChatMessages: (messagesToLoad) => __awaiter$
|
8043
|
+
onLoadPreviousChatMessages: (messagesToLoad) => __awaiter$l(void 0, void 0, void 0, function* () {
|
8024
8044
|
var _a, _b, _c;
|
8025
8045
|
if (messageIterator === undefined) {
|
8026
8046
|
// Lazy definition so that errors in the method call are reported correctly.
|
@@ -8711,7 +8731,7 @@ const findSelector = (component) => {
|
|
8711
8731
|
|
8712
8732
|
// Copyright (c) Microsoft Corporation.
|
8713
8733
|
// Licensed under the MIT license.
|
8714
|
-
var __awaiter$
|
8734
|
+
var __awaiter$k = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
|
8715
8735
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
8716
8736
|
return new (P || (P = Promise))(function (resolve, reject) {
|
8717
8737
|
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
@@ -8760,10 +8780,10 @@ class ProxyDeviceManager {
|
|
8760
8780
|
this.selectCamera = (videoDeviceInfo) => {
|
8761
8781
|
this._context.setDeviceManagerSelectedCamera(videoDeviceInfo);
|
8762
8782
|
};
|
8763
|
-
this.videoDevicesUpdated = () => __awaiter$
|
8783
|
+
this.videoDevicesUpdated = () => __awaiter$k(this, void 0, void 0, function* () {
|
8764
8784
|
this._context.setDeviceManagerCameras(dedupeById(yield this._deviceManager.getCameras()));
|
8765
8785
|
});
|
8766
|
-
this.audioDevicesUpdated = () => __awaiter$
|
8786
|
+
this.audioDevicesUpdated = () => __awaiter$k(this, void 0, void 0, function* () {
|
8767
8787
|
this._context.setDeviceManagerMicrophones(dedupeById(yield this._deviceManager.getMicrophones()));
|
8768
8788
|
this._context.setDeviceManagerSpeakers(dedupeById(yield this._deviceManager.getSpeakers()));
|
8769
8789
|
});
|
@@ -8960,7 +8980,7 @@ class CallIdHistory {
|
|
8960
8980
|
|
8961
8981
|
// Copyright (c) Microsoft Corporation.
|
8962
8982
|
// Licensed under the MIT license.
|
8963
|
-
var __awaiter$
|
8983
|
+
var __awaiter$j = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
|
8964
8984
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
8965
8985
|
return new (P || (P = Promise))(function (resolve, reject) {
|
8966
8986
|
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
@@ -9443,7 +9463,7 @@ class CallContext$1 {
|
|
9443
9463
|
* @throws CallError. Exceptions thrown from `f` are tagged with the failed `target.
|
9444
9464
|
*/
|
9445
9465
|
withAsyncErrorTeedToState(action, target) {
|
9446
|
-
return (...args) => __awaiter$
|
9466
|
+
return (...args) => __awaiter$j(this, void 0, void 0, function* () {
|
9447
9467
|
try {
|
9448
9468
|
return yield action(...args);
|
9449
9469
|
}
|
@@ -9507,7 +9527,7 @@ const findOldestCallEnded = (calls) => {
|
|
9507
9527
|
|
9508
9528
|
// Copyright (c) Microsoft Corporation.
|
9509
9529
|
// Licensed under the MIT license.
|
9510
|
-
var __awaiter$
|
9530
|
+
var __awaiter$i = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
|
9511
9531
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
9512
9532
|
return new (P || (P = Promise))(function (resolve, reject) {
|
9513
9533
|
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
@@ -9527,63 +9547,63 @@ class ProxyCall {
|
|
9527
9547
|
switch (prop) {
|
9528
9548
|
case 'mute': {
|
9529
9549
|
return this._context.withAsyncErrorTeedToState(function (...args) {
|
9530
|
-
return __awaiter$
|
9550
|
+
return __awaiter$i(this, void 0, void 0, function* () {
|
9531
9551
|
return yield target.mute(...args);
|
9532
9552
|
});
|
9533
9553
|
}, 'Call.mute');
|
9534
9554
|
}
|
9535
9555
|
case 'unmute': {
|
9536
9556
|
return this._context.withAsyncErrorTeedToState(function (...args) {
|
9537
|
-
return __awaiter$
|
9557
|
+
return __awaiter$i(this, void 0, void 0, function* () {
|
9538
9558
|
return yield target.unmute(...args);
|
9539
9559
|
});
|
9540
9560
|
}, 'Call.unmute');
|
9541
9561
|
}
|
9542
9562
|
case 'startVideo': {
|
9543
9563
|
return this._context.withAsyncErrorTeedToState(function (...args) {
|
9544
|
-
return __awaiter$
|
9564
|
+
return __awaiter$i(this, void 0, void 0, function* () {
|
9545
9565
|
return yield target.startVideo(...args);
|
9546
9566
|
});
|
9547
9567
|
}, 'Call.startVideo');
|
9548
9568
|
}
|
9549
9569
|
case 'stopVideo': {
|
9550
9570
|
return this._context.withAsyncErrorTeedToState(function (...args) {
|
9551
|
-
return __awaiter$
|
9571
|
+
return __awaiter$i(this, void 0, void 0, function* () {
|
9552
9572
|
return yield target.stopVideo(...args);
|
9553
9573
|
});
|
9554
9574
|
}, 'Call.stopVideo');
|
9555
9575
|
}
|
9556
9576
|
case 'startScreenSharing': {
|
9557
9577
|
return this._context.withAsyncErrorTeedToState(function (...args) {
|
9558
|
-
return __awaiter$
|
9578
|
+
return __awaiter$i(this, void 0, void 0, function* () {
|
9559
9579
|
return yield target.startScreenSharing(...args);
|
9560
9580
|
});
|
9561
9581
|
}, 'Call.startScreenSharing');
|
9562
9582
|
}
|
9563
9583
|
case 'stopScreenSharing': {
|
9564
9584
|
return this._context.withAsyncErrorTeedToState(function (...args) {
|
9565
|
-
return __awaiter$
|
9585
|
+
return __awaiter$i(this, void 0, void 0, function* () {
|
9566
9586
|
return yield target.stopScreenSharing(...args);
|
9567
9587
|
});
|
9568
9588
|
}, 'Call.stopScreenSharing');
|
9569
9589
|
}
|
9570
9590
|
case 'hold': {
|
9571
9591
|
return this._context.withAsyncErrorTeedToState(function (...args) {
|
9572
|
-
return __awaiter$
|
9592
|
+
return __awaiter$i(this, void 0, void 0, function* () {
|
9573
9593
|
return yield target.hold(...args);
|
9574
9594
|
});
|
9575
9595
|
}, 'Call.hold');
|
9576
9596
|
}
|
9577
9597
|
case 'resume': {
|
9578
9598
|
return this._context.withAsyncErrorTeedToState(function (...args) {
|
9579
|
-
return __awaiter$
|
9599
|
+
return __awaiter$i(this, void 0, void 0, function* () {
|
9580
9600
|
return yield target.resume(...args);
|
9581
9601
|
});
|
9582
9602
|
}, 'Call.resume');
|
9583
9603
|
}
|
9584
9604
|
case 'addParticipant': {
|
9585
9605
|
return this._context.withAsyncErrorTeedToState(function (...args) {
|
9586
|
-
return __awaiter$
|
9606
|
+
return __awaiter$i(this, void 0, void 0, function* () {
|
9587
9607
|
return yield target.addParticipant(...args);
|
9588
9608
|
});
|
9589
9609
|
}, 'Call.addParticipant');
|
@@ -9791,7 +9811,7 @@ class RemoteVideoStreamSubscriber {
|
|
9791
9811
|
|
9792
9812
|
// Copyright (c) Microsoft Corporation.
|
9793
9813
|
// Licensed under the MIT license.
|
9794
|
-
var __awaiter$
|
9814
|
+
var __awaiter$h = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
|
9795
9815
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
9796
9816
|
return new (P || (P = Promise))(function (resolve, reject) {
|
9797
9817
|
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
@@ -9801,7 +9821,7 @@ var __awaiter$g = (window && window.__awaiter) || function (thisArg, _arguments,
|
|
9801
9821
|
});
|
9802
9822
|
};
|
9803
9823
|
function createViewRemoteVideo(context, internalContext, callId, participantId, stream, options) {
|
9804
|
-
return __awaiter$
|
9824
|
+
return __awaiter$h(this, void 0, void 0, function* () {
|
9805
9825
|
// Render RemoteVideoStream that is part of a Call
|
9806
9826
|
const streamId = stream.id;
|
9807
9827
|
let participantKey;
|
@@ -9909,7 +9929,7 @@ function createViewRemoteVideo(context, internalContext, callId, participantId,
|
|
9909
9929
|
});
|
9910
9930
|
}
|
9911
9931
|
function createViewLocalVideo(context, internalContext, callId, options) {
|
9912
|
-
return __awaiter$
|
9932
|
+
return __awaiter$h(this, void 0, void 0, function* () {
|
9913
9933
|
_logEvent(callingStatefulLogger, {
|
9914
9934
|
name: EventNames.START_LOCAL_STREAM_RENDERING,
|
9915
9935
|
level: 'info',
|
@@ -10025,7 +10045,7 @@ function createViewLocalVideo(context, internalContext, callId, options) {
|
|
10025
10045
|
});
|
10026
10046
|
}
|
10027
10047
|
function createViewUnparentedVideo(context, internalContext, stream, options) {
|
10028
|
-
return __awaiter$
|
10048
|
+
return __awaiter$h(this, void 0, void 0, function* () {
|
10029
10049
|
const renderInfo = internalContext.getUnparentedRenderInfo(stream);
|
10030
10050
|
if (renderInfo && renderInfo.status === 'Rendered') {
|
10031
10051
|
console.warn('Unparented LocalVideoStream is already rendered');
|
@@ -10583,6 +10603,55 @@ class CallSubscriber {
|
|
10583
10603
|
}
|
10584
10604
|
}
|
10585
10605
|
|
10606
|
+
// Copyright (c) Microsoft Corporation.
|
10607
|
+
// Licensed under the MIT license.
|
10608
|
+
var __awaiter$g = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
|
10609
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
10610
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
10611
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
10612
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
10613
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
10614
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
10615
|
+
});
|
10616
|
+
};
|
10617
|
+
/**
|
10618
|
+
* @private
|
10619
|
+
*/
|
10620
|
+
class ProxyIncomingCall {
|
10621
|
+
constructor(context) {
|
10622
|
+
this._context = context;
|
10623
|
+
}
|
10624
|
+
get(target, prop) {
|
10625
|
+
switch (prop) {
|
10626
|
+
case 'accept': {
|
10627
|
+
return this._context.withAsyncErrorTeedToState(function (...args) {
|
10628
|
+
return __awaiter$g(this, void 0, void 0, function* () {
|
10629
|
+
return yield target.accept(...args);
|
10630
|
+
});
|
10631
|
+
}, 'IncomingCall.accept');
|
10632
|
+
}
|
10633
|
+
case 'reject': {
|
10634
|
+
return this._context.withAsyncErrorTeedToState(function (...args) {
|
10635
|
+
return __awaiter$g(this, void 0, void 0, function* () {
|
10636
|
+
return yield target.reject(...args);
|
10637
|
+
});
|
10638
|
+
}, 'IncomingCall.reject');
|
10639
|
+
}
|
10640
|
+
default:
|
10641
|
+
return Reflect.get(target, prop);
|
10642
|
+
}
|
10643
|
+
}
|
10644
|
+
}
|
10645
|
+
/**
|
10646
|
+
* Creates a declarative Incoming Call by proxying IncomingCall using ProxyIncomingCall.
|
10647
|
+
* @param incomingCall - IncomingCall from SDK
|
10648
|
+
* @returns proxied IncomingCall
|
10649
|
+
*/
|
10650
|
+
const incomingCallDeclaratify = (incomingCall, context) => {
|
10651
|
+
const proxyIncomingCall = new ProxyIncomingCall(context);
|
10652
|
+
return new Proxy(incomingCall, proxyIncomingCall);
|
10653
|
+
};
|
10654
|
+
|
10586
10655
|
// Copyright (c) Microsoft Corporation.
|
10587
10656
|
// Licensed under the MIT license.
|
10588
10657
|
/**
|
@@ -10640,6 +10709,7 @@ class ProxyCallAgent {
|
|
10640
10709
|
incomingCallSubscriber.unsubscribe();
|
10641
10710
|
}
|
10642
10711
|
this._incomingCallSubscribers.clear();
|
10712
|
+
this._declarativeIncomingCalls.clear();
|
10643
10713
|
for (const [_, declarativeCall] of this._declarativeCalls.entries()) {
|
10644
10714
|
declarativeCall.unsubscribe();
|
10645
10715
|
}
|
@@ -10680,14 +10750,16 @@ class ProxyCallAgent {
|
|
10680
10750
|
incomingCallSubscriber.unsubscribe();
|
10681
10751
|
this._incomingCallSubscribers.delete(incomingCallId);
|
10682
10752
|
}
|
10753
|
+
this._declarativeIncomingCalls.delete(incomingCallId);
|
10683
10754
|
this._context.setIncomingCallEnded(incomingCallId, callEndReason);
|
10684
10755
|
};
|
10685
|
-
this.incomingCall = (
|
10756
|
+
this.incomingCall = ({ incomingCall }) => {
|
10686
10757
|
// Make sure to not subscribe to the incoming call if we are already subscribed to it.
|
10687
|
-
if (!this._incomingCallSubscribers.has(
|
10688
|
-
this._incomingCallSubscribers.set(
|
10758
|
+
if (!this._incomingCallSubscribers.has(incomingCall.id)) {
|
10759
|
+
this._incomingCallSubscribers.set(incomingCall.id, new IncomingCallSubscriber(incomingCall, this.setIncomingCallEnded));
|
10689
10760
|
}
|
10690
|
-
this.
|
10761
|
+
this._declarativeIncomingCalls.set(incomingCall.id, incomingCallDeclaratify(incomingCall, this._context));
|
10762
|
+
this._context.setIncomingCall(convertSdkIncomingCallToDeclarativeIncomingCall(incomingCall));
|
10691
10763
|
};
|
10692
10764
|
this.addCall = (call) => {
|
10693
10765
|
var _a;
|
@@ -10712,6 +10784,7 @@ class ProxyCallAgent {
|
|
10712
10784
|
this._internalContext = internalContext;
|
10713
10785
|
this._callSubscribers = new Map();
|
10714
10786
|
this._incomingCallSubscribers = new Map();
|
10787
|
+
this._declarativeIncomingCalls = new Map();
|
10715
10788
|
this._declarativeCalls = new Map();
|
10716
10789
|
this._externalCallsUpdatedListeners = new Set();
|
10717
10790
|
this.subscribe();
|
@@ -10766,6 +10839,18 @@ class ProxyCallAgent {
|
|
10766
10839
|
});
|
10767
10840
|
};
|
10768
10841
|
}
|
10842
|
+
/**
|
10843
|
+
* This attribute is a special case and doesn't exist on the CallAgent interface.
|
10844
|
+
* We need this to be able to return a declarative incoming call object using the call agent.
|
10845
|
+
* In a standard headless SDK usage, the right way to get an incoming call is to use the `incomingCall` event.
|
10846
|
+
* However, using the declarative layer, the ideal usage would be to:
|
10847
|
+
* 1. subscribe to the `onStateChange` event
|
10848
|
+
* 2. Get the incoming call from the new state and it's ID
|
10849
|
+
* 3. Use `callAgent.incomingCalls` and filter an incoming call ID to get a declarative incoming call object
|
10850
|
+
*/
|
10851
|
+
case 'incomingCalls': {
|
10852
|
+
return this._declarativeIncomingCalls;
|
10853
|
+
}
|
10769
10854
|
default:
|
10770
10855
|
return Reflect.get(target, prop);
|
10771
10856
|
}
|
@@ -13209,12 +13294,14 @@ const avatarDeepDifferenceCheck = (currentData, newData) => {
|
|
13209
13294
|
*/
|
13210
13295
|
const AvatarPersona = (props) => {
|
13211
13296
|
var _a, _b, _c, _d, _e, _f;
|
13212
|
-
const { userId, dataProvider, text, imageUrl, imageInitials, initialsColor, initialsTextColor } = props;
|
13297
|
+
const { userId, dataProvider, text, imageUrl, imageInitials, initialsColor, initialsTextColor, showOverflowTooltip } = props;
|
13213
13298
|
const userIds = React.useMemo(() => {
|
13214
13299
|
return [userId];
|
13215
13300
|
}, [userId]);
|
13216
13301
|
const [data] = useCustomAvatarPersonaData(userIds, dataProvider);
|
13217
|
-
return (React__default['default'].createElement(react.Persona, Object.assign({}, props, { text: (_a = data === null || data === void 0 ? void 0 : data.text) !== null && _a !== void 0 ? _a : text, imageUrl: (_b = data === null || data === void 0 ? void 0 : data.imageUrl) !== null && _b !== void 0 ? _b : imageUrl, imageInitials: (_c = data === null || data === void 0 ? void 0 : data.imageInitials) !== null && _c !== void 0 ? _c : imageInitials, initialsColor: (_d = data === null || data === void 0 ? void 0 : data.initialsColor) !== null && _d !== void 0 ? _d : initialsColor, initialsTextColor: (_f = (_e = data === null || data === void 0 ? void 0 : data.initialsTextColor) !== null && _e !== void 0 ? _e : initialsTextColor) !== null && _f !== void 0 ? _f : 'white'
|
13302
|
+
return (React__default['default'].createElement(react.Persona, Object.assign({}, props, { text: (_a = data === null || data === void 0 ? void 0 : data.text) !== null && _a !== void 0 ? _a : text, imageUrl: (_b = data === null || data === void 0 ? void 0 : data.imageUrl) !== null && _b !== void 0 ? _b : imageUrl, imageInitials: (_c = data === null || data === void 0 ? void 0 : data.imageInitials) !== null && _c !== void 0 ? _c : imageInitials, initialsColor: (_d = data === null || data === void 0 ? void 0 : data.initialsColor) !== null && _d !== void 0 ? _d : initialsColor, initialsTextColor: (_f = (_e = data === null || data === void 0 ? void 0 : data.initialsTextColor) !== null && _e !== void 0 ? _e : initialsTextColor) !== null && _f !== void 0 ? _f : 'white',
|
13303
|
+
// default disable tooltip unless specified
|
13304
|
+
showOverflowTooltip: showOverflowTooltip !== null && showOverflowTooltip !== void 0 ? showOverflowTooltip : false })));
|
13218
13305
|
};
|
13219
13306
|
|
13220
13307
|
// Copyright (c) Microsoft Corporation.
|
@@ -13475,7 +13562,7 @@ const ParticipantListWithHeading = (props) => {
|
|
13475
13562
|
return (React__default['default'].createElement(react.Stack, { className: participantListStack },
|
13476
13563
|
React__default['default'].createElement(react.Stack.Item, { styles: subheadingStyleThemed }, title),
|
13477
13564
|
React__default['default'].createElement(react.FocusZone, { className: participantListContainerStyle },
|
13478
|
-
React__default['default'].createElement(ParticipantList, Object.assign({}, participantListProps, { styles: props.isMobile ? participantListMobileStyle : participantListStyle, onRenderAvatar: (userId, options) => (React__default['default'].createElement(AvatarPersona, Object.assign({ "data-ui-id": "chat-composite-participant-custom-avatar", userId: userId }, options, { dataProvider: onFetchAvatarPersonaData }))), onFetchParticipantMenuItems: onFetchParticipantMenuItems })))));
|
13565
|
+
React__default['default'].createElement(ParticipantList, Object.assign({}, participantListProps, { styles: props.isMobile ? participantListMobileStyle : participantListStyle, onRenderAvatar: (userId, options) => (React__default['default'].createElement(AvatarPersona, Object.assign({ "data-ui-id": "chat-composite-participant-custom-avatar", userId: userId }, options, { dataProvider: onFetchAvatarPersonaData }))), onFetchParticipantMenuItems: onFetchParticipantMenuItems, showParticipantOverflowTooltip: !props.isMobile })))));
|
13479
13566
|
};
|
13480
13567
|
|
13481
13568
|
// Copyright (c) Microsoft Corporation.
|
@@ -13483,11 +13570,11 @@ const ParticipantListWithHeading = (props) => {
|
|
13483
13570
|
* @private
|
13484
13571
|
*/
|
13485
13572
|
const ChatScreenPeoplePane = (props) => {
|
13486
|
-
const { onFetchAvatarPersonaData, onFetchParticipantMenuItems } = props;
|
13573
|
+
const { onFetchAvatarPersonaData, onFetchParticipantMenuItems, isMobile } = props;
|
13487
13574
|
const locale = useLocale();
|
13488
13575
|
const chatListHeader = locale.strings.chat.chatListHeader;
|
13489
13576
|
const participantListProps = usePropsFor$2(ParticipantList);
|
13490
|
-
return (React__default['default'].createElement(ParticipantContainer, { participantListProps: participantListProps, title: chatListHeader, onFetchAvatarPersonaData: onFetchAvatarPersonaData, onFetchParticipantMenuItems: onFetchParticipantMenuItems }));
|
13577
|
+
return (React__default['default'].createElement(ParticipantContainer, { participantListProps: participantListProps, title: chatListHeader, onFetchAvatarPersonaData: onFetchAvatarPersonaData, onFetchParticipantMenuItems: onFetchParticipantMenuItems, isMobile: isMobile }));
|
13491
13578
|
};
|
13492
13579
|
|
13493
13580
|
/**
|
@@ -13607,7 +13694,7 @@ const ChatScreen = (props) => {
|
|
13607
13694
|
onCancelFileUpload: adapter.cancelFileUpload }))),
|
13608
13695
|
formFactor !== 'mobile' && React__default['default'].createElement(AttachFileButton, null)))),
|
13609
13696
|
/* @conditional-compile-remove(chat-composite-participant-pane) */
|
13610
|
-
(options === null || options === void 0 ? void 0 : options.participantPane) === true && (React__default['default'].createElement(ChatScreenPeoplePane, { onFetchAvatarPersonaData: onFetchAvatarPersonaData, onFetchParticipantMenuItems: props.onFetchParticipantMenuItems })))));
|
13697
|
+
(options === null || options === void 0 ? void 0 : options.participantPane) === true && (React__default['default'].createElement(ChatScreenPeoplePane, { onFetchAvatarPersonaData: onFetchAvatarPersonaData, onFetchParticipantMenuItems: props.onFetchParticipantMenuItems, isMobile: formFactor === 'mobile' })))));
|
13611
13698
|
};
|
13612
13699
|
|
13613
13700
|
// Copyright (c) Microsoft Corporation.
|
@@ -13901,9 +13988,9 @@ const createCompositeHandlers = memoizeOne__default['default']((adapter) => ({
|
|
13901
13988
|
onSelectSpeaker: (deviceInfo) => __awaiter$7(void 0, void 0, void 0, function* () {
|
13902
13989
|
yield adapter.setSpeaker(deviceInfo);
|
13903
13990
|
}),
|
13904
|
-
onStartCall: (participants) => {
|
13991
|
+
onStartCall: (participants, options) => {
|
13905
13992
|
const rawIds = participants.map((participant) => toFlatCommunicationIdentifier(participant));
|
13906
|
-
return adapter.startCall(rawIds);
|
13993
|
+
return adapter.startCall(rawIds, options);
|
13907
13994
|
},
|
13908
13995
|
onStartScreenShare: () => __awaiter$7(void 0, void 0, void 0, function* () {
|
13909
13996
|
yield adapter.startScreenShare();
|
@@ -14212,7 +14299,7 @@ const Participants = (props) => {
|
|
14212
14299
|
var _a;
|
14213
14300
|
return concatButtonBaseStyles(props.increaseFlyoutItemSize ? participantButtonWithIncreasedTouchTargets : {}, (_a = props.styles) !== null && _a !== void 0 ? _a : {});
|
14214
14301
|
}, [props.increaseFlyoutItemSize, props.styles]);
|
14215
|
-
return (React__default['default'].createElement(ParticipantsButton, Object.assign({ "data-ui-id": "call-composite-participants-button" }, participantsButtonProps, { showLabel: props.displayType !== 'compact', callInvitationURL: props.callInvitationURL, onFetchParticipantMenuItems: props.onFetchParticipantMenuItems, disabled: isDisabled$1(props.option), styles: participantsButtonStyles })));
|
14302
|
+
return (React__default['default'].createElement(ParticipantsButton, Object.assign({ "data-ui-id": "call-composite-participants-button" }, participantsButtonProps, { showLabel: props.displayType !== 'compact', callInvitationURL: props.callInvitationURL, onFetchParticipantMenuItems: props.onFetchParticipantMenuItems, disabled: isDisabled$1(props.option), styles: participantsButtonStyles, showParticipantOverflowTooltip: !props.isMobile })));
|
14216
14303
|
};
|
14217
14304
|
const isDisabled$1 = (option) => {
|
14218
14305
|
if (option === undefined || option === true || option === false) {
|
@@ -14253,7 +14340,7 @@ const CallControls = (props) => {
|
|
14253
14340
|
isEnabled$2(options === null || options === void 0 ? void 0 : options.microphoneButton) && React__default['default'].createElement(Microphone, { displayType: options === null || options === void 0 ? void 0 : options.displayType }),
|
14254
14341
|
isEnabled$2(options === null || options === void 0 ? void 0 : options.cameraButton) && React__default['default'].createElement(Camera, { displayType: options === null || options === void 0 ? void 0 : options.displayType }),
|
14255
14342
|
isEnabled$2(options === null || options === void 0 ? void 0 : options.screenShareButton) && (React__default['default'].createElement(ScreenShare, { option: options === null || options === void 0 ? void 0 : options.screenShareButton, displayType: options === null || options === void 0 ? void 0 : options.displayType })),
|
14256
|
-
isEnabled$2(options === null || options === void 0 ? void 0 : options.participantsButton) && (React__default['default'].createElement(Participants, { option: options === null || options === void 0 ? void 0 : options.participantsButton, callInvitationURL: props.callInvitationURL, onFetchParticipantMenuItems: props.onFetchParticipantMenuItems, displayType: options === null || options === void 0 ? void 0 : options.displayType, increaseFlyoutItemSize: props.increaseFlyoutItemSize })),
|
14343
|
+
isEnabled$2(options === null || options === void 0 ? void 0 : options.participantsButton) && (React__default['default'].createElement(Participants, { option: options === null || options === void 0 ? void 0 : options.participantsButton, callInvitationURL: props.callInvitationURL, onFetchParticipantMenuItems: props.onFetchParticipantMenuItems, displayType: options === null || options === void 0 ? void 0 : options.displayType, increaseFlyoutItemSize: props.increaseFlyoutItemSize, isMobile: props.isMobile })),
|
14257
14344
|
isEnabled$2(options === null || options === void 0 ? void 0 : options.devicesButton) && (React__default['default'].createElement(Devices, { displayType: options === null || options === void 0 ? void 0 : options.displayType, increaseFlyoutItemSize: props.increaseFlyoutItemSize })),
|
14258
14345
|
customButtons['primary'],
|
14259
14346
|
isEnabled$2(options === null || options === void 0 ? void 0 : options.endCallButton) && React__default['default'].createElement(EndCall, { displayType: options === null || options === void 0 ? void 0 : options.displayType })))));
|
@@ -14401,7 +14488,7 @@ const CallArrangement = (props) => {
|
|
14401
14488
|
!!props.mutedNotificationProps && React__default['default'].createElement(MutedNotification, Object.assign({}, props.mutedNotificationProps))),
|
14402
14489
|
React__default['default'].createElement(react.Stack.Item, { styles: callGalleryStyles, grow: true }, props.onRenderGalleryContent && (React__default['default'].createElement(react.Stack, { verticalFill: true, styles: mediaGalleryContainerStyles }, props.onRenderGalleryContent()))),
|
14403
14490
|
((_a = props.callControlProps) === null || _a === void 0 ? void 0 : _a.options) !== false && (React__default['default'].createElement(react.Stack.Item, { className: callControlsContainerStyles },
|
14404
|
-
React__default['default'].createElement(CallControls, Object.assign({}, props.callControlProps, { containerWidth: containerWidth, containerHeight: containerHeight })))))));
|
14491
|
+
React__default['default'].createElement(CallControls, Object.assign({}, props.callControlProps, { containerWidth: containerWidth, containerHeight: containerHeight, isMobile: props.mobileView })))))));
|
14405
14492
|
};
|
14406
14493
|
|
14407
14494
|
// Copyright (c) Microsoft Corporation.
|
@@ -15801,8 +15888,7 @@ class AzureCommunicationCallAdapter {
|
|
15801
15888
|
}));
|
15802
15889
|
});
|
15803
15890
|
}
|
15804
|
-
|
15805
|
-
startCall(participants) {
|
15891
|
+
startCall(participants, options) {
|
15806
15892
|
var _a, _b;
|
15807
15893
|
if (_isInCall((_b = (_a = this.getState().call) === null || _a === void 0 ? void 0 : _a.state) !== null && _b !== void 0 ? _b : 'None')) {
|
15808
15894
|
throw new Error('You are already in the call.');
|
@@ -15811,9 +15897,18 @@ class AzureCommunicationCallAdapter {
|
|
15811
15897
|
// FIXME: `onStartCall` does not allow a Teams user.
|
15812
15898
|
// Need some way to return an error if a Teams user is provided.
|
15813
15899
|
const backendId = fromFlatCommunicationIdentifier(participant);
|
15900
|
+
if (communicationCommon.isPhoneNumberIdentifier(backendId)) {
|
15901
|
+
if ((options === null || options === void 0 ? void 0 : options.alternateCallerId) === undefined) {
|
15902
|
+
throw new Error('unable to start call, PSTN user present with no alternativeCallerID.');
|
15903
|
+
}
|
15904
|
+
return backendId;
|
15905
|
+
}
|
15906
|
+
else if (communicationCommon.isCommunicationUserIdentifier(backendId)) {
|
15907
|
+
return backendId;
|
15908
|
+
}
|
15814
15909
|
return backendId;
|
15815
15910
|
});
|
15816
|
-
const call = this.handlers.onStartCall(idsToAdd);
|
15911
|
+
const call = this.handlers.onStartCall(idsToAdd, options);
|
15817
15912
|
if (!call) {
|
15818
15913
|
throw new Error('Unable to start call.');
|
15819
15914
|
}
|
@@ -16577,8 +16672,8 @@ class CallWithChatBackedCallAdapter {
|
|
16577
16672
|
return this.callWithChatAdapter.joinCall(microphoneOn);
|
16578
16673
|
};
|
16579
16674
|
this.leaveCall = () => __awaiter$3(this, void 0, void 0, function* () { return yield this.callWithChatAdapter.leaveCall(); });
|
16580
|
-
this.startCall = (participants) => {
|
16581
|
-
return this.callWithChatAdapter.startCall(participants);
|
16675
|
+
this.startCall = (participants, options) => {
|
16676
|
+
return this.callWithChatAdapter.startCall(participants, options);
|
16582
16677
|
};
|
16583
16678
|
this.setCamera = (sourceId, options) => __awaiter$3(this, void 0, void 0, function* () { return yield this.callWithChatAdapter.setCamera(sourceId, options); });
|
16584
16679
|
this.setMicrophone = (sourceId) => __awaiter$3(this, void 0, void 0, function* () { return yield this.callWithChatAdapter.setMicrophone(sourceId); });
|
@@ -17726,8 +17821,8 @@ class AzureCommunicationCallWithChatAdapter {
|
|
17726
17821
|
});
|
17727
17822
|
}
|
17728
17823
|
/** Start a new Call. */
|
17729
|
-
startCall(participants) {
|
17730
|
-
return this.callAdapter.startCall(participants);
|
17824
|
+
startCall(participants, options) {
|
17825
|
+
return this.callAdapter.startCall(participants, options);
|
17731
17826
|
}
|
17732
17827
|
/**
|
17733
17828
|
* Subscribe to state change events.
|