@azure/communication-react 1.3.3-alpha-202210250024.0 → 1.3.3-alpha-202210270017.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 +3 -0
- package/dist/dist-cjs/communication-react/index.js +181 -24
- 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/acs-ui-common/src/telemetryVersion.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +6 -3
- package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts +1 -0
- package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +2 -0
- package/dist/dist-esm/react-components/src/components/MessageThread.js +7 -7
- package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.d.ts +2 -1
- package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js +24 -14
- package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js.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/VideoTile.styles.d.ts +1 -1
- package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js +4 -3
- package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +7 -3
- package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationpageErrorBar.d.ts +27 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationpageErrorBar.js +30 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationpageErrorBar.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.d.ts +5 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +25 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js +6 -1
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js.map +1 -1
- package/package.json +8 -8
@@ -6028,6 +6028,8 @@ export declare interface MessageThreadStyles extends BaseCustomStyles {
|
|
6028
6028
|
chatItemMessageContainer?: ComponentSlotStyle;
|
6029
6029
|
/** Styles for my chat message container. */
|
6030
6030
|
myChatMessageContainer?: ComponentSlotStyle;
|
6031
|
+
/** Styles for my chat message container in case of failure. */
|
6032
|
+
failedMyChatMessageContainer?: ComponentSlotStyle;
|
6031
6033
|
/** Styles for chat message container. */
|
6032
6034
|
chatMessageContainer?: ComponentSlotStyle;
|
6033
6035
|
/** Styles for system message container. */
|
@@ -7072,6 +7074,7 @@ export declare interface StatefulCallClient extends CallClient {
|
|
7072
7074
|
* @param stream - The LocalVideoStreamState or RemoteVideoStreamState to dispose.
|
7073
7075
|
*/
|
7074
7076
|
disposeView(callId: string | undefined, participantId: CommunicationIdentifier | undefined, stream: LocalVideoStreamState | RemoteVideoStreamState): void;
|
7077
|
+
/** @conditional-compile-remove(one-to-n-calling) */
|
7075
7078
|
/**
|
7076
7079
|
* The CallAgent is used to handle calls.
|
7077
7080
|
* To create the CallAgent, pass a CommunicationTokenCredential object provided from SDK.
|
@@ -202,7 +202,7 @@ const _toCommunicationIdentifier = (id) => {
|
|
202
202
|
// Copyright (c) Microsoft Corporation.
|
203
203
|
// Licensed under the MIT license.
|
204
204
|
// GENERATED FILE. DO NOT EDIT MANUALLY.
|
205
|
-
var telemetryVersion = '1.3.3-alpha-
|
205
|
+
var telemetryVersion = '1.3.3-alpha-202210270017.0';
|
206
206
|
|
207
207
|
// Copyright (c) Microsoft Corporation.
|
208
208
|
/**
|
@@ -525,14 +525,17 @@ const screenShareButtonSelector = reselect__namespace.createSelector([getIsScree
|
|
525
525
|
*/
|
526
526
|
const devicesButtonSelector = reselect__namespace.createSelector([getDeviceManager$1], (deviceManager) => {
|
527
527
|
return {
|
528
|
-
microphones: deviceManager.microphones,
|
529
|
-
speakers: deviceManager.speakers,
|
530
|
-
cameras: deviceManager.cameras,
|
528
|
+
microphones: removeBlankNameDevices(deviceManager.microphones),
|
529
|
+
speakers: removeBlankNameDevices(deviceManager.speakers),
|
530
|
+
cameras: removeBlankNameDevices(deviceManager.cameras),
|
531
531
|
selectedMicrophone: deviceManager.selectedMicrophone,
|
532
532
|
selectedSpeaker: deviceManager.selectedSpeaker,
|
533
533
|
selectedCamera: deviceManager.selectedCamera
|
534
534
|
};
|
535
535
|
});
|
536
|
+
function removeBlankNameDevices(devices) {
|
537
|
+
return devices.filter((device) => device.name !== '');
|
538
|
+
}
|
536
539
|
/* @conditional-compile-remove(PSTN-calls) */
|
537
540
|
/**
|
538
541
|
* Selector for the {@link HoldButton} component.
|
@@ -3923,7 +3926,7 @@ const DefaultSystemMessage = (props) => {
|
|
3923
3926
|
return React__default['default'].createElement(React__default['default'].Fragment, null);
|
3924
3927
|
};
|
3925
3928
|
const memoizeAllMessages = memoizeFnAll((_messageKey, message, showMessageDate, showMessageStatus, onRenderAvatar, shouldOverlapAvatarAndMessage, styles, onRenderMessageStatus, defaultStatusRenderer, defaultChatMessageRenderer, strings, _attached, statusToRender, participantCount, readCount, onRenderMessage, onUpdateMessage, onDeleteMessage, onSendMessage) => {
|
3926
|
-
var _a, _b, _c;
|
3929
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
3927
3930
|
const messageProps = {
|
3928
3931
|
message,
|
3929
3932
|
strings,
|
@@ -3934,10 +3937,10 @@ const memoizeAllMessages = memoizeFnAll((_messageKey, message, showMessageDate,
|
|
3934
3937
|
};
|
3935
3938
|
switch (message.messageType) {
|
3936
3939
|
case 'chat': {
|
3937
|
-
const myChatMessageStyle =
|
3938
|
-
? FailedMyChatMessageContainer
|
3939
|
-
: defaultMyChatMessageContainer;
|
3940
|
-
const chatMessageStyle = (styles === null || styles === void 0 ? void 0 : styles.chatMessageContainer)
|
3940
|
+
const myChatMessageStyle = message.status === 'failed'
|
3941
|
+
? (_b = (_a = styles === null || styles === void 0 ? void 0 : styles.failedMyChatMessageContainer) !== null && _a !== void 0 ? _a : styles === null || styles === void 0 ? void 0 : styles.myChatMessageContainer) !== null && _b !== void 0 ? _b : FailedMyChatMessageContainer
|
3942
|
+
: (_c = styles === null || styles === void 0 ? void 0 : styles.myChatMessageContainer) !== null && _c !== void 0 ? _c : defaultMyChatMessageContainer;
|
3943
|
+
const chatMessageStyle = (_d = styles === null || styles === void 0 ? void 0 : styles.chatMessageContainer) !== null && _d !== void 0 ? _d : defaultChatMessageContainer;
|
3941
3944
|
messageProps.messageContainerStyle = message.mine ? myChatMessageStyle : chatMessageStyle;
|
3942
3945
|
const chatMessageComponent = onRenderMessage === undefined
|
3943
3946
|
? defaultChatMessageRenderer(messageProps)
|
@@ -3954,14 +3957,14 @@ const memoizeAllMessages = memoizeFnAll((_messageKey, message, showMessageDate,
|
|
3954
3957
|
return {
|
3955
3958
|
gutter: {
|
3956
3959
|
styles: chatGutterStyles,
|
3957
|
-
content: message.mine ? ('') : onRenderAvatar ? (onRenderAvatar((
|
3960
|
+
content: message.mine ? ('') : onRenderAvatar ? (onRenderAvatar((_e = message.senderId) !== null && _e !== void 0 ? _e : '', personaOptions)) : (React__default['default'].createElement(react.Persona, Object.assign({}, personaOptions)))
|
3958
3961
|
},
|
3959
3962
|
contentPosition: message.mine ? 'end' : 'start',
|
3960
3963
|
message: {
|
3961
3964
|
styles: chatItemMessageStyle,
|
3962
3965
|
content: (React__default['default'].createElement(reactNorthstar.Flex, { hAlign: message.mine ? 'end' : undefined, vAlign: "end" },
|
3963
3966
|
chatMessageComponent,
|
3964
|
-
React__default['default'].createElement("div", { className: react.mergeStyles(messageStatusContainerStyle((
|
3967
|
+
React__default['default'].createElement("div", { className: react.mergeStyles(messageStatusContainerStyle((_f = message.mine) !== null && _f !== void 0 ? _f : false), (styles === null || styles === void 0 ? void 0 : styles.messageStatusContainer) ? styles.messageStatusContainer((_g = message.mine) !== null && _g !== void 0 ? _g : false) : '') }, showMessageStatus && statusToRender ? (onRenderMessageStatus ? (onRenderMessageStatus({ status: statusToRender })) : (defaultStatusRenderer(message, statusToRender, participantCount !== null && participantCount !== void 0 ? participantCount : 0, readCount !== null && readCount !== void 0 ? readCount : 0))) : (React__default['default'].createElement("div", { className: react.mergeStyles(noMessageStatusStyle) })))))
|
3965
3968
|
},
|
3966
3969
|
attached: message.attached,
|
3967
3970
|
key: _messageKey
|
@@ -4990,14 +4993,15 @@ const displayNameStyle = {
|
|
4990
4993
|
/**
|
4991
4994
|
* @private
|
4992
4995
|
*/
|
4993
|
-
const iconContainerStyle =
|
4996
|
+
const iconContainerStyle = {
|
4994
4997
|
margin: 'auto',
|
4995
4998
|
alignItems: 'center',
|
4996
4999
|
'& svg': {
|
4997
5000
|
display: 'block',
|
4998
|
-
color
|
5001
|
+
// Similar to text color, icon color will be inherited from parent container
|
5002
|
+
color: 'inherit'
|
4999
5003
|
}
|
5000
|
-
}
|
5004
|
+
};
|
5001
5005
|
/**
|
5002
5006
|
* @private
|
5003
5007
|
*/
|
@@ -5094,7 +5098,7 @@ const VideoTile = (props) => {
|
|
5094
5098
|
React__default['default'].createElement(react.Stack, { horizontal: true, className: tileInfoStyle },
|
5095
5099
|
canShowLabel && (React__default['default'].createElement(react.Text, { className: react.mergeStyles(displayNameStyle), title: displayName, style: { color: participantStateString ? theme.palette.neutralSecondary : 'inherit' } }, displayName)),
|
5096
5100
|
participantStateString && (React__default['default'].createElement(react.Text, { className: react.mergeStyles(participantStateStringStyles(theme)) }, bracketedParticipantString(participantStateString, !!canShowLabel))),
|
5097
|
-
showMuteIndicator && isMuted && (React__default['default'].createElement(react.Stack, { className: react.mergeStyles(iconContainerStyle
|
5101
|
+
showMuteIndicator && isMuted && (React__default['default'].createElement(react.Stack, { className: react.mergeStyles(iconContainerStyle) },
|
5098
5102
|
React__default['default'].createElement(react.Icon, { iconName: "VideoTileMicOff" })))))),
|
5099
5103
|
children && (React__default['default'].createElement(react.Stack, { className: react.mergeStyles(overlayContainerStyles, styles === null || styles === void 0 ? void 0 : styles.overlayContainer) }, children)))));
|
5100
5104
|
};
|
@@ -8345,6 +8349,102 @@ const UnsupportedBrowser = (props) => {
|
|
8345
8349
|
return React__default['default'].createElement(UnsupportedBrowserContainer, Object.assign({}, props, { strings: strings }));
|
8346
8350
|
};
|
8347
8351
|
|
8352
|
+
// Copyright (c) Microsoft Corporation.
|
8353
|
+
/**
|
8354
|
+
* @private
|
8355
|
+
*/
|
8356
|
+
const dismissButtonStyle = (theme) => ({
|
8357
|
+
root: {
|
8358
|
+
padding: '0.375rem 1.25rem',
|
8359
|
+
width: '3.75rem',
|
8360
|
+
height: '2rem',
|
8361
|
+
background: theme.palette.white,
|
8362
|
+
border: `1px solid ${theme.palette.neutralQuaternaryAlt}`,
|
8363
|
+
borderRadius: '0.063rem',
|
8364
|
+
color: theme.palette.black
|
8365
|
+
}
|
8366
|
+
});
|
8367
|
+
/**
|
8368
|
+
* @private
|
8369
|
+
*/
|
8370
|
+
const messageBarStyle = (theme, errorType) => ({
|
8371
|
+
innerText: {
|
8372
|
+
paddingTop: errorType === react.MessageBarType.warning ? '0.15rem' : '0.1rem',
|
8373
|
+
lineHeight: 'none',
|
8374
|
+
color: theme.palette.black,
|
8375
|
+
alignSelf: 'center',
|
8376
|
+
whiteSpace: 'normal'
|
8377
|
+
},
|
8378
|
+
icon: {
|
8379
|
+
marginTop: '0.375rem',
|
8380
|
+
marginBottom: '0.375rem'
|
8381
|
+
},
|
8382
|
+
content: {
|
8383
|
+
lineHeight: 'inherit'
|
8384
|
+
},
|
8385
|
+
dismissal: {
|
8386
|
+
height: 0,
|
8387
|
+
paddingTop: '0.8rem'
|
8388
|
+
}
|
8389
|
+
});
|
8390
|
+
/**
|
8391
|
+
* @private
|
8392
|
+
*/
|
8393
|
+
const linkStyle = (theme) => ({
|
8394
|
+
root: {
|
8395
|
+
span: {
|
8396
|
+
color: theme.palette.black
|
8397
|
+
}
|
8398
|
+
}
|
8399
|
+
});
|
8400
|
+
|
8401
|
+
// Copyright (c) Microsoft Corporation.
|
8402
|
+
/**
|
8403
|
+
* @internal
|
8404
|
+
* A component to show device Permission/network connection related errors, contains link that leads to further trouble shooting guide
|
8405
|
+
*/
|
8406
|
+
const _TroubleshootingGuideErrorBar = (props) => {
|
8407
|
+
var _a;
|
8408
|
+
const theme = react.useTheme();
|
8409
|
+
// error bar strings
|
8410
|
+
const localeStrings = useLocale$1().strings.errorBar;
|
8411
|
+
const strings = (_a = props.strings) !== null && _a !== void 0 ? _a : localeStrings;
|
8412
|
+
const [dismissedErrors, setDismissedErrors] = React.useState([]);
|
8413
|
+
const { onPermissionsTroubleshootingClick, onNetworkingTroubleshootingClick, permissionsState = {
|
8414
|
+
camera: 'denied',
|
8415
|
+
microphone: 'denied'
|
8416
|
+
}, troubleshootingGuideStrings } = props;
|
8417
|
+
// dropDismissalsForInactiveErrors only returns a new object if `dismissedErrors` actually changes.
|
8418
|
+
// Without this behaviour, this `useEffect` block would cause a render loop.
|
8419
|
+
React.useEffect(() => setDismissedErrors(dropDismissalsForInactiveErrors(props.activeErrorMessages, dismissedErrors)), [props.activeErrorMessages, dismissedErrors]);
|
8420
|
+
const toShow = errorsToShow(props.activeErrorMessages, dismissedErrors);
|
8421
|
+
return (React__default['default'].createElement(react.Stack, { "data-ui-id": "error-bar-stack" }, toShow.map((error) => {
|
8422
|
+
const devicePermissionErrorBar = (React__default['default'].createElement("div", null,
|
8423
|
+
strings[error.type],
|
8424
|
+
' ',
|
8425
|
+
onPermissionsTroubleshootingClick && (React__default['default'].createElement(react.Link, { styles: linkStyle(theme), onClick: () => {
|
8426
|
+
onPermissionsTroubleshootingClick(permissionsState);
|
8427
|
+
}, underline: true },
|
8428
|
+
React__default['default'].createElement("span", null, troubleshootingGuideStrings.devicePermissionLinkText)))));
|
8429
|
+
const networkErrorBar = (React__default['default'].createElement("div", null,
|
8430
|
+
strings[error.type],
|
8431
|
+
' ',
|
8432
|
+
onNetworkingTroubleshootingClick && (React__default['default'].createElement(react.Link, { styles: linkStyle(theme), onClick: onNetworkingTroubleshootingClick, underline: true },
|
8433
|
+
React__default['default'].createElement("span", null, troubleshootingGuideStrings.networkTroubleshootingLinkText)))));
|
8434
|
+
return (React__default['default'].createElement(react.MessageBar, Object.assign({}, props, { styles: messageBarStyle(theme, messageBarType(error.type)), key: error.type, messageBarType: messageBarType(error.type), messageBarIconProps: messageBarIconProps(error.type), actions: React__default['default'].createElement(react.MessageBarButton, { text: troubleshootingGuideStrings.dismissButtonText, styles: dismissButtonStyle(theme), onClick: () => {
|
8435
|
+
setDismissedErrors(dismissError(dismissedErrors, error));
|
8436
|
+
}, ariaLabel: strings.dismissButtonAriaLabel }), isMultiline: false }), showErrorBar(error.type, devicePermissionErrorBar, networkErrorBar)));
|
8437
|
+
})));
|
8438
|
+
};
|
8439
|
+
const showErrorBar = (errorType, devicePermissionErrorBar, networkErrorBar) => {
|
8440
|
+
if (errorType === 'callNetworkQualityLow') {
|
8441
|
+
return networkErrorBar;
|
8442
|
+
}
|
8443
|
+
else {
|
8444
|
+
return devicePermissionErrorBar;
|
8445
|
+
}
|
8446
|
+
};
|
8447
|
+
|
8348
8448
|
// Copyright (c) Microsoft Corporation.
|
8349
8449
|
/**
|
8350
8450
|
* A dropdown to trigger device permission prompt
|
@@ -15489,7 +15589,6 @@ const themedDialpadStyle$1 = (isMobile, theme) => ({
|
|
15489
15589
|
backgroundColor: theme.palette.white,
|
15490
15590
|
fontSize: theme.fonts.large.fontSize,
|
15491
15591
|
padding: '0 0.5rem ',
|
15492
|
-
direction: 'rtl',
|
15493
15592
|
textAlign: 'center',
|
15494
15593
|
':active': {
|
15495
15594
|
padding: '0 0.5rem'
|
@@ -15554,7 +15653,12 @@ const SendDtmfDialpad = (props) => {
|
|
15554
15653
|
};
|
15555
15654
|
const [textFieldValue, setTextFieldValue] = React.useState();
|
15556
15655
|
const onChange = (input) => {
|
15557
|
-
|
15656
|
+
if (input.length > 25) {
|
15657
|
+
setTextFieldValue(input.slice(1));
|
15658
|
+
}
|
15659
|
+
else {
|
15660
|
+
setTextFieldValue(input);
|
15661
|
+
}
|
15558
15662
|
};
|
15559
15663
|
const dialpadModalStyle = React.useMemo(() => themeddialpadModalStyle$1(theme), [theme]);
|
15560
15664
|
const dialpadStyle = React.useMemo(() => themedDialpadStyle$1(isMobile, theme), [theme, isMobile]);
|
@@ -16467,7 +16571,7 @@ const PeoplePaneContent = (props) => {
|
|
16467
16571
|
const setDrawerMenuItemsForParticipant = React.useMemo(() => {
|
16468
16572
|
return (participant) => {
|
16469
16573
|
if (participant) {
|
16470
|
-
let contextualMenuItems = createDefaultContextualMenuItems(participant, strings, removeButtonAllowed ? participantListDefaultProps.onRemoveParticipant : undefined, participantListDefaultProps.myUserId);
|
16574
|
+
let contextualMenuItems = createDefaultContextualMenuItems(participant, strings, removeButtonAllowed && participant.isRemovable ? participantListDefaultProps.onRemoveParticipant : undefined, participantListDefaultProps.myUserId);
|
16471
16575
|
if (onFetchParticipantMenuItems) {
|
16472
16576
|
contextualMenuItems = onFetchParticipantMenuItems(participant.userId, participantListDefaultProps.myUserId, contextualMenuItems);
|
16473
16577
|
}
|
@@ -17620,13 +17724,43 @@ const startCallButtonStyleMobile = react.mergeStyles({
|
|
17620
17724
|
maxWidth: 'unset'
|
17621
17725
|
});
|
17622
17726
|
|
17727
|
+
// Copyright (c) Microsoft Corporation.
|
17728
|
+
/**
|
17729
|
+
* @private
|
17730
|
+
*/
|
17731
|
+
const ConfigurationpageErrorBar = (props) => {
|
17732
|
+
const { errorBarProps,
|
17733
|
+
/* @conditional-compile-remove(call-readiness) */
|
17734
|
+
showTroubleShootingErrorBar = false,
|
17735
|
+
/* @conditional-compile-remove(call-readiness) */
|
17736
|
+
onPermissionsTroubleshootingClick,
|
17737
|
+
/* @conditional-compile-remove(call-readiness) */
|
17738
|
+
onNetworkingTroubleShootingClick,
|
17739
|
+
/* @conditional-compile-remove(call-readiness) */
|
17740
|
+
permissionsState } = props;
|
17741
|
+
/* @conditional-compile-remove(call-readiness) */
|
17742
|
+
const permissionTroubleshootingGuideStrings = {
|
17743
|
+
devicePermissionLinkText: 'Troubleshooting Camera and Microphone Permissions',
|
17744
|
+
networkTroubleshootingLinkText: 'Troubleshooting Network Connection',
|
17745
|
+
dismissButtonText: 'OK'
|
17746
|
+
};
|
17747
|
+
/* @conditional-compile-remove(call-readiness) */
|
17748
|
+
if (showTroubleShootingErrorBar) {
|
17749
|
+
return (React__default['default'].createElement(_TroubleshootingGuideErrorBar, Object.assign({ troubleshootingGuideStrings: permissionTroubleshootingGuideStrings, onPermissionsTroubleshootingClick: onPermissionsTroubleshootingClick, onNetworkingTroubleshootingClick: onNetworkingTroubleShootingClick, permissionsState: permissionsState }, errorBarProps)));
|
17750
|
+
}
|
17751
|
+
return React__default['default'].createElement(ErrorBar, Object.assign({}, errorBarProps));
|
17752
|
+
};
|
17753
|
+
|
17623
17754
|
// Copyright (c) Microsoft Corporation.
|
17624
17755
|
/**
|
17625
17756
|
* @private
|
17626
17757
|
*/
|
17627
17758
|
const ConfigurationPage = (props) => {
|
17628
17759
|
var _a, _b;
|
17629
|
-
const { startCallHandler, mobileView,
|
17760
|
+
const { startCallHandler, mobileView,
|
17761
|
+
/* @conditional-compile-remove(call-readiness) */ devicePermissions,
|
17762
|
+
/* @conditional-compile-remove(call-readiness) */ onPermissionsTroubleshootingClick,
|
17763
|
+
/* @conditional-compile-remove(call-readiness) */ onNetworkingTroubleShootingClick } = props;
|
17630
17764
|
const options = useAdaptedSelector(getSelector$1(DevicesButton));
|
17631
17765
|
const localDeviceSettingsHandlers = useHandlers();
|
17632
17766
|
const { video: cameraPermissionGranted, audio: microphonePermissionGranted } = useSelector$1(devicePermissionSelector);
|
@@ -17664,9 +17798,28 @@ const ConfigurationPage = (props) => {
|
|
17664
17798
|
let mobileWithPreview = mobileView;
|
17665
17799
|
/* @conditional-compile-remove(rooms) */
|
17666
17800
|
mobileWithPreview = mobileWithPreview && rolePermissions.cameraButton;
|
17801
|
+
/* @conditional-compile-remove(call-readiness) */
|
17802
|
+
const permissionsState = {
|
17803
|
+
camera: cameraPermissionGranted ? 'granted' : 'denied',
|
17804
|
+
microphone: microphonePermissionGranted ? 'granted' : 'denied'
|
17805
|
+
};
|
17806
|
+
/* @conditional-compile-remove(call-readiness) */
|
17807
|
+
const networkErrors = errorBarProps.activeErrorMessages.filter((message) => message.type === 'callNetworkQualityLow');
|
17667
17808
|
return (React__default['default'].createElement(react.Stack, { className: mobileView ? configurationContainerStyleMobile : configurationContainerStyleDesktop },
|
17668
17809
|
React__default['default'].createElement(react.Stack, { styles: bannerNotificationStyles },
|
17669
|
-
React__default['default'].createElement(
|
17810
|
+
React__default['default'].createElement(ConfigurationpageErrorBar
|
17811
|
+
/* @conditional-compile-remove(call-readiness) */
|
17812
|
+
// show trouble shooting error bar when encountering network error/ permission error
|
17813
|
+
, {
|
17814
|
+
/* @conditional-compile-remove(call-readiness) */
|
17815
|
+
// show trouble shooting error bar when encountering network error/ permission error
|
17816
|
+
showTroubleShootingErrorBar: !cameraPermissionGranted || !microphonePermissionGranted || networkErrors.length > 0,
|
17817
|
+
/* @conditional-compile-remove(call-readiness) */
|
17818
|
+
permissionsState: permissionsState,
|
17819
|
+
/* @conditional-compile-remove(call-readiness) */
|
17820
|
+
onNetworkingTroubleShootingClick: onNetworkingTroubleShootingClick,
|
17821
|
+
/* @conditional-compile-remove(call-readiness) */
|
17822
|
+
onPermissionsTroubleshootingClick: onPermissionsTroubleshootingClick, errorBarProps: errorBarProps })),
|
17670
17823
|
React__default['default'].createElement(react.Stack, { grow: true, horizontal: !mobileWithPreview, horizontalAlign: mobileWithPreview ? 'stretch' : 'center', verticalAlign: "center", tokens: mobileWithPreview ? configurationStackTokensMobile : configurationStackTokensDesktop },
|
17671
17824
|
mobileWithPreview && (React__default['default'].createElement(react.Stack.Item, null,
|
17672
17825
|
title,
|
@@ -17785,7 +17938,7 @@ const LobbyTile = (props) => {
|
|
17785
17938
|
const handlers = useHandlers();
|
17786
17939
|
return (React__default['default'].createElement(ExpandedLocalVideoTile, Object.assign({ localParticipantVideoStream: props.localParticipantVideoStream, overlayContent: props.overlayProps ? (React__default['default'].createElement(react.Stack, { verticalFill: true, horizontalAlign: "center", verticalAlign: "center", className: react.mergeStyles(overlayContainerStyle), "aria-atomic": true },
|
17787
17940
|
React__default['default'].createElement(react.Stack.Item, { className: react.mergeStyles(titleStyle(palette, isVideoReady)) }, props.overlayProps.overlayIcon),
|
17788
|
-
React__default['default'].createElement(react.Text, { className: react.mergeStyles(titleStyle(palette, isVideoReady)), "aria-live": "assertive" }, props.overlayProps.title),
|
17941
|
+
React__default['default'].createElement(react.Text, { className: react.mergeStyles(titleStyle(palette, isVideoReady)), "aria-live": "assertive", "data-ui-id": "lobbyScreenTitle" }, props.overlayProps.title),
|
17789
17942
|
props.overlayProps.moreDetails && (React__default['default'].createElement(react.Text, { className: react.mergeStyles(moreDetailsStyle(palette, isVideoReady)), "aria-live": "assertive" }, props.overlayProps.moreDetails)))) : undefined }, handlers)));
|
17790
17943
|
};
|
17791
17944
|
|
@@ -18077,7 +18230,7 @@ var __awaiter$5 = (window && window.__awaiter) || function (thisArg, _arguments,
|
|
18077
18230
|
});
|
18078
18231
|
};
|
18079
18232
|
const MainScreen = (props) => {
|
18080
|
-
var _a, _b;
|
18233
|
+
var _a, _b, _c, _d;
|
18081
18234
|
const { callInvitationUrl, onRenderAvatar, onFetchAvatarPersonaData, onFetchParticipantMenuItems } = props;
|
18082
18235
|
const page = useSelector$1(getPage);
|
18083
18236
|
const adapter = useAdapter();
|
@@ -18098,7 +18251,11 @@ const MainScreen = (props) => {
|
|
18098
18251
|
adapter.joinCall();
|
18099
18252
|
},
|
18100
18253
|
/* @conditional-compile-remove(call-readiness) */
|
18101
|
-
devicePermissions: (_a = props.options) === null || _a === void 0 ? void 0 : _a.devicePermissions
|
18254
|
+
devicePermissions: (_a = props.options) === null || _a === void 0 ? void 0 : _a.devicePermissions,
|
18255
|
+
/* @conditional-compile-remove(call-readiness) */
|
18256
|
+
onPermissionsTroubleshootingClick: (_b = props.options) === null || _b === void 0 ? void 0 : _b.onPermissionsTroubleshootingClick,
|
18257
|
+
/* @conditional-compile-remove(call-readiness) */
|
18258
|
+
onNetworkingTroubleShootingClick: (_c = props.options) === null || _c === void 0 ? void 0 : _c.onNetworkingTroubleShootingClick }));
|
18102
18259
|
break;
|
18103
18260
|
case 'accessDeniedTeamsMeeting':
|
18104
18261
|
pageElement = (React__default['default'].createElement(NoticePage, { iconName: "NoticePageAccessDeniedTeamsMeeting", title: locale.strings.call.failedToJoinTeamsMeetingReasonAccessDeniedTitle, moreDetails: locale.strings.call.failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails, dataUiId: 'access-denied-teams-meeting-page' }));
|
@@ -18130,7 +18287,7 @@ const MainScreen = (props) => {
|
|
18130
18287
|
case unsupportedEnvironmentPageTrampoline():
|
18131
18288
|
pageElement = (React__default['default'].createElement(React__default['default'].Fragment, null,
|
18132
18289
|
/* @conditional-compile-remove(unsupported-browser) */
|
18133
|
-
React__default['default'].createElement(UnsupportedBrowserPage, { onTroubleshootingClick: (
|
18290
|
+
React__default['default'].createElement(UnsupportedBrowserPage, { onTroubleshootingClick: (_d = props.options) === null || _d === void 0 ? void 0 : _d.onEnvironmentInfoTroubleshootingClick })));
|
18134
18291
|
}
|
18135
18292
|
if (!pageElement) {
|
18136
18293
|
throw new Error('Invalid call composite page');
|