@azure/communication-react 1.9.0-alpha-202310260012 → 1.9.0-alpha-202310280012

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.
Files changed (53) hide show
  1. package/dist/communication-react.d.ts +11 -3
  2. package/dist/dist-cjs/communication-react/index.js +80 -60
  3. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  4. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  5. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  6. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.d.ts +1 -1
  7. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js.map +1 -1
  8. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.d.ts +1 -1
  9. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js.map +1 -1
  10. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.d.ts +1 -1
  11. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +10 -7
  12. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
  13. package/dist/dist-esm/react-components/src/components/ControlBarButton.d.ts +6 -0
  14. package/dist/dist-esm/react-components/src/components/ControlBarButton.js +1 -1
  15. package/dist/dist-esm/react-components/src/components/ControlBarButton.js.map +1 -1
  16. package/dist/dist-esm/react-components/src/components/FileDownloadCards.d.ts +2 -0
  17. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js.map +1 -1
  18. package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +1 -1
  19. package/dist/dist-esm/react-components/src/components/MessageThread.js +16 -7
  20. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  21. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +3 -3
  22. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  23. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.d.ts +1 -0
  24. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js +1 -1
  25. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js.map +1 -1
  26. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.d.ts +1 -0
  27. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js +1 -1
  28. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js.map +1 -1
  29. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +21 -22
  30. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  31. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.d.ts +1 -1
  32. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js +7 -4
  33. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js.map +1 -1
  34. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +1 -1
  35. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  36. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +1 -1
  37. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  38. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +1 -1
  39. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  40. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts +1 -1
  41. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  42. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +9 -6
  43. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  44. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +1 -1
  45. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +7 -4
  46. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  47. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +1 -1
  48. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  49. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +4 -4
  50. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -1
  51. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +1 -0
  52. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -1
  53. package/package.json +1 -1
@@ -242,9 +242,11 @@ export declare type AreParamEqual<A extends (props: any) => JSX.Element | undefi
242
242
  export declare type AreTypeEqual<A, B> = A extends B ? (B extends A ? true : false) : false;
243
243
 
244
244
  /**
245
+ * Meta Data of the attachment object returned by the ACS SDK.
245
246
  * @beta
246
247
  */
247
248
  export declare interface AttachmentDownloadResult {
249
+ attachmentId: string;
248
250
  blobUrl: string;
249
251
  }
250
252
 
@@ -2761,7 +2763,7 @@ export declare interface CallWithChatAdapterManagement {
2761
2763
  /** @beta */
2762
2764
  updateFileUploadMetadata: (id: string, metadata: FileMetadata) => void;
2763
2765
  downloadAttachments: (options: {
2764
- attachmentUrls: string[];
2766
+ attachmentUrls: Record<string, string>;
2765
2767
  }) => Promise<AttachmentDownloadResult[]>;
2766
2768
  /**
2767
2769
  * Puts the Call in a Localhold.
@@ -3904,7 +3906,7 @@ export declare interface ChatAdapterThreadManagement {
3904
3906
  */
3905
3907
  loadPreviousChatMessages(messagesToLoad: number): Promise<boolean>;
3906
3908
  downloadAttachments: (options: {
3907
- attachmentUrls: string[];
3909
+ attachmentUrls: Record<string, string>;
3908
3910
  }) => Promise<AttachmentDownloadResult[]>;
3909
3911
  }
3910
3912
 
@@ -5123,6 +5125,12 @@ export declare interface ControlBarButtonProps extends IButtonProps {
5123
5125
  * Key to use for the Label component
5124
5126
  */
5125
5127
  labelKey?: string;
5128
+ /**
5129
+ * Disable tooltip.
5130
+ *
5131
+ * @defaultValue 'false'
5132
+ */
5133
+ disableTooltip?: boolean;
5126
5134
  /**
5127
5135
  * Id to use for the tooltip host.
5128
5136
  *
@@ -7549,7 +7557,7 @@ export declare type MessageThreadProps = {
7549
7557
  * @param attachment - FileMetadata object we want to render
7550
7558
  * @beta
7551
7559
  */
7552
- onFetchAttachments?: (attachment: FileMetadata) => Promise<AttachmentDownloadResult[]>;
7560
+ onFetchAttachments?: (attachments: FileMetadata[]) => Promise<AttachmentDownloadResult[]>;
7553
7561
  /**
7554
7562
  * Optional callback to edit a message.
7555
7563
  *
@@ -177,7 +177,7 @@ const _isValidIdentifier = (identifier) => {
177
177
  // Copyright (c) Microsoft Corporation.
178
178
  // Licensed under the MIT License.
179
179
  // GENERATED FILE. DO NOT EDIT MANUALLY.
180
- var telemetryVersion = '1.9.0-alpha-202310260012';
180
+ var telemetryVersion = '1.9.0-alpha-202310280012';
181
181
 
182
182
  // Copyright (c) Microsoft Corporation.
183
183
  /**
@@ -9523,14 +9523,17 @@ const MessageContentAsRichTextHTML = (props) => {
9523
9523
  /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
9524
9524
  React.useEffect(() => {
9525
9525
  var _a;
9526
- (_a = props.message.attachedFilesMetadata) === null || _a === void 0 ? void 0 : _a.map((fileMetadata) => {
9527
- if (props.onFetchAttachment &&
9528
- props.attachmentsMap &&
9529
- fileMetadata.attachmentType === 'inlineImage' &&
9530
- props.attachmentsMap[fileMetadata.id] === undefined) {
9531
- props.onFetchAttachment(fileMetadata);
9532
- }
9526
+ const attachments = (_a = props.message.attachedFilesMetadata) === null || _a === void 0 ? void 0 : _a.filter((fileMetadata) => {
9527
+ return fileMetadata.attachmentType === 'inlineImage';
9533
9528
  });
9529
+ if (props.attachmentsMap && attachments) {
9530
+ attachments.forEach((fileMetadata) => {
9531
+ if (props.onFetchAttachment && props.attachmentsMap && props.attachmentsMap[fileMetadata.id] === undefined) {
9532
+ props.onFetchAttachment([fileMetadata], props.message.messageId);
9533
+ return;
9534
+ }
9535
+ });
9536
+ }
9534
9537
  }, [props]);
9535
9538
  return (React__default["default"].createElement(MessageContentWithLiveAria, { message: props.message, liveMessage: generateLiveMessage(props), ariaLabel: messageContentAriaText(props), content: processHtmlToReact(props) }));
9536
9539
  };
@@ -10840,14 +10843,18 @@ const MessageThreadWrapper = (props) => {
10840
10843
  /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
10841
10844
  const [inlineAttachments, setInlineAttachments] = React.useState({});
10842
10845
  /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
10843
- const onFetchInlineAttachment = React.useCallback((attachment) => __awaiter$v(void 0, void 0, void 0, function* () {
10844
- if (!onFetchAttachments || attachment.attachmentType !== 'inlineImage' || attachment.id in inlineAttachments) {
10846
+ const onFetchInlineAttachment = React.useCallback((attachments, messageId) => __awaiter$v(void 0, void 0, void 0, function* () {
10847
+ if (!onFetchAttachments) {
10845
10848
  return;
10846
10849
  }
10847
- setInlineAttachments((prev) => (Object.assign(Object.assign({}, prev), { [attachment.id]: '' })));
10848
- const attachmentDownloadResult = yield onFetchAttachments(attachment);
10849
- if (attachmentDownloadResult[0]) {
10850
- setInlineAttachments((prev) => (Object.assign(Object.assign({}, prev), { [attachment.id]: attachmentDownloadResult[0].blobUrl })));
10850
+ const attachmentDownloadResult = yield onFetchAttachments(attachments);
10851
+ const listOfAttachments = inlineAttachments[messageId];
10852
+ for (const result of attachmentDownloadResult) {
10853
+ const { attachmentId, blobUrl } = result;
10854
+ listOfAttachments[attachmentId] = blobUrl;
10855
+ }
10856
+ if (Object.keys(listOfAttachments).length > 0) {
10857
+ setInlineAttachments((prev) => (Object.assign(Object.assign({}, prev), { [messageId]: listOfAttachments })));
10851
10858
  }
10852
10859
  }), [inlineAttachments, onFetchAttachments]);
10853
10860
  const isAllChatMessagesLoadedRef = React.useRef(false);
@@ -11058,6 +11065,11 @@ const MessageThreadWrapper = (props) => {
11058
11065
  const strings = React.useMemo(() => (Object.assign(Object.assign({}, localeStrings), props.strings)), [localeStrings, props.strings]);
11059
11066
  // To rerender the defaultChatMessageRenderer if app running across days(every new day chat time stamp need to be regenerated)
11060
11067
  const defaultChatMessageRenderer = React.useCallback((messageProps) => {
11068
+ var _a;
11069
+ /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
11070
+ if (inlineAttachments[messageProps.message.messageId] === undefined) {
11071
+ setInlineAttachments((prev) => (Object.assign(Object.assign({}, prev), { [messageProps.message.messageId]: {} })));
11072
+ }
11061
11073
  if (messageProps.message.messageType === 'chat' ||
11062
11074
  /* @conditional-compile-remove(data-loss-prevention) */ messageProps.message.messageType === 'blocked') {
11063
11075
  return (React__default["default"].createElement(ChatMessageComponent, Object.assign({}, messageProps, { onRenderFileDownloads: onRenderFileDownloads,
@@ -11070,7 +11082,7 @@ const MessageThreadWrapper = (props) => {
11070
11082
  /* @conditional-compile-remove(image-gallery) */
11071
11083
  onInlineImageClicked: onInlineImageClicked,
11072
11084
  /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
11073
- attachmentsMap: inlineAttachments,
11085
+ attachmentsMap: (_a = inlineAttachments[messageProps.message.messageId]) !== null && _a !== void 0 ? _a : {},
11074
11086
  /* @conditional-compile-remove(mention) */
11075
11087
  mentionOptions: mentionOptions })));
11076
11088
  }
@@ -15774,7 +15786,7 @@ const ControlBarButton = (props) => {
15774
15786
  ? (_k = props === null || props === void 0 ? void 0 : props.strings) === null || _k === void 0 ? void 0 : _k.tooltipOnContent
15775
15787
  : (_l = props === null || props === void 0 ? void 0 : props.strings) === null || _l === void 0 ? void 0 : _l.tooltipOffContent);
15776
15788
  const tooltipId = ((_m = props.tooltipId) !== null && _m !== void 0 ? _m : props.labelKey) ? props.labelKey + '-tooltip' : undefined;
15777
- return (React__default["default"].createElement(ControlButtonTooltip, { content: tooltipContent, id: tooltipId },
15789
+ return (React__default["default"].createElement(ControlButtonTooltip, { hidden: props.disableTooltip, content: tooltipContent, id: tooltipId },
15778
15790
  React__default["default"].createElement(react.DefaultButton, Object.assign({}, props, { styles: componentStyles, onRenderText: props.showLabel && props.onRenderText ? props.onRenderText : undefined, onRenderIcon: (_o = props.onRenderIcon) !== null && _o !== void 0 ? _o : DefaultRenderIcon, ariaLabel: (_r = (_q = (_p = props.splitButtonAriaLabel) !== null && _p !== void 0 ? _p : props.ariaLabel) !== null && _q !== void 0 ? _q : tooltipContent) !== null && _r !== void 0 ? _r : labelText, allowDisabledFocus: (_s = props.allowDisabledFocus) !== null && _s !== void 0 ? _s : true, menuTriggerKeyCode: react.KeyCodes.down, text: undefined }), props.showLabel ? labelText : React__default["default"].createElement(React__default["default"].Fragment, null))));
15779
15791
  };
15780
15792
 
@@ -21611,10 +21623,13 @@ class AzureCommunicationChatAdapter {
21611
21623
  }
21612
21624
  });
21613
21625
  }
21614
- const attachmentUrl = options.attachmentUrls[0];
21615
- const response = yield fetchWithAuthentication(attachmentUrl, accessToken);
21616
- const blob = yield response.blob();
21617
- return [{ blobUrl: URL.createObjectURL(blob) }];
21626
+ const attachmentDownloadResults = [];
21627
+ for (const id in options.attachmentUrls) {
21628
+ const response = yield fetchWithAuthentication(options.attachmentUrls[id], accessToken);
21629
+ const blob = yield response.blob();
21630
+ attachmentDownloadResults.push({ attachmentId: id, blobUrl: URL.createObjectURL(blob) });
21631
+ }
21632
+ return attachmentDownloadResults;
21618
21633
  });
21619
21634
  }
21620
21635
  messageReceivedListener(event) {
@@ -22509,11 +22524,14 @@ const ChatScreen = (props) => {
22509
22524
  } })), [fileSharing === null || fileSharing === void 0 ? void 0 : fileSharing.downloadHandler]);
22510
22525
  /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
22511
22526
  const onRenderInlineAttachment = React.useCallback((attachment) => __awaiter$i(void 0, void 0, void 0, function* () {
22512
- if (attachment.attachmentType === 'inlineImage' && attachment.previewUrl) {
22513
- const blob = yield adapter.downloadAttachments({ attachmentUrls: [attachment.previewUrl] });
22514
- return blob;
22515
- }
22516
- return [{ blobUrl: '' }];
22527
+ const entry = {};
22528
+ attachment.forEach((target) => {
22529
+ if (target.attachmentType === 'inlineImage' && target.previewUrl) {
22530
+ entry[target.id] = target.previewUrl;
22531
+ }
22532
+ });
22533
+ const blob = yield adapter.downloadAttachments({ attachmentUrls: entry });
22534
+ return blob;
22517
22535
  }), [adapter]);
22518
22536
  /* @conditional-compile-remove(image-gallery) */
22519
22537
  const onInlineImageClicked = React.useCallback((attachmentId, messageId) => __awaiter$i(void 0, void 0, void 0, function* () {
@@ -22554,7 +22572,7 @@ const ChatScreen = (props) => {
22554
22572
  return;
22555
22573
  }
22556
22574
  if (attachment.attachmentType === 'inlineImage' && attachment.url) {
22557
- const blob = yield adapter.downloadAttachments({ attachmentUrls: [attachment.url] });
22575
+ const blob = yield adapter.downloadAttachments({ attachmentUrls: { [attachment.id]: attachment.url } });
22558
22576
  if (blob[0]) {
22559
22577
  const blobUrl = blob[0].blobUrl;
22560
22578
  setFullSizeAttachments((prev) => (Object.assign(Object.assign({}, prev), { [attachment.id]: blobUrl })));
@@ -23623,7 +23641,7 @@ const Camera = (props) => {
23623
23641
  const isRoomsCall = adapter.getState().isRoomsCall;
23624
23642
  /* @conditional-compile-remove(capabilities) */
23625
23643
  const turnVideoOnCapability = (_b = (_a = adapter.getState().call) === null || _a === void 0 ? void 0 : _a.capabilitiesFeature) === null || _b === void 0 ? void 0 : _b.capabilities.turnVideoOn;
23626
- return (React__default["default"].createElement(CameraButton, Object.assign({ "data-ui-id": "call-composite-camera-button" }, cameraButtonProps, { showLabel: props.displayType !== 'compact', styles: styles, enableDeviceSelectionMenu: props.splitButtonsForDeviceSelection, disabled: cameraButtonProps.disabled ||
23644
+ return (React__default["default"].createElement(CameraButton, Object.assign({ "data-ui-id": "call-composite-camera-button" }, cameraButtonProps, { showLabel: props.displayType !== 'compact', styles: styles, enableDeviceSelectionMenu: props.splitButtonsForDeviceSelection, disableTooltip: props.disableTooltip, disabled: cameraButtonProps.disabled ||
23627
23645
  props.disabled ||
23628
23646
  /* @conditional-compile-remove(rooms) */ (isRoomsCall && ((_c = adapter.getState().call) === null || _c === void 0 ? void 0 : _c.role) === 'Unknown'),
23629
23647
  /* @conditional-compile-remove(capabilities) */
@@ -23844,7 +23862,7 @@ const Microphone = (props) => {
23844
23862
  : {};
23845
23863
  const styles = React.useMemo(() => { var _a; return concatButtonBaseStyles((_a = props.styles) !== null && _a !== void 0 ? _a : {}); }, [props.styles]);
23846
23864
  // tab focus on MicrophoneButton on page load
23847
- return (React__default["default"].createElement(MicrophoneButton, Object.assign({ "data-ui-id": "call-composite-microphone-button" }, microphoneButtonProps, { showLabel: props.displayType !== 'compact', styles: styles }, microphoneButtonStrings, { enableDeviceSelectionMenu: props.splitButtonsForDeviceSelection, disabled: microphoneButtonProps.disabled ||
23865
+ return (React__default["default"].createElement(MicrophoneButton, Object.assign({ "data-ui-id": "call-composite-microphone-button" }, microphoneButtonProps, { showLabel: props.displayType !== 'compact', disableTooltip: props.disableTooltip, styles: styles }, microphoneButtonStrings, { enableDeviceSelectionMenu: props.splitButtonsForDeviceSelection, disabled: microphoneButtonProps.disabled ||
23848
23866
  props.disabled ||
23849
23867
  /* @conditional-compile-remove(rooms) */ (isRoomsCall && ((_c = adapter.getState().call) === null || _c === void 0 ? void 0 : _c.role) === 'Unknown'),
23850
23868
  /* @conditional-compile-remove(capabilities) */
@@ -24442,17 +24460,17 @@ const CallControls = (props) => {
24442
24460
  screenShareButtonIsEnabled && (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, disabled: isDisabled$3(options === null || options === void 0 ? void 0 : options.screenShareButton) })),
24443
24461
  showParticipantsButtonInControlBar && (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, disabled: isDisabled$3(options === null || options === void 0 ? void 0 : options.participantsButton) })) && (
24444
24462
  /* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(PSTN-calls) */
24445
- React__default["default"].createElement(People, { checked: props.peopleButtonChecked, ariaLabel: peopleButtonStrings === null || peopleButtonStrings === void 0 ? void 0 : peopleButtonStrings.label, showLabel: (options === null || options === void 0 ? void 0 : options.displayType) !== 'compact', onClick: props.onPeopleButtonClicked, "data-ui-id": "call-composite-people-button", strings: peopleButtonStrings, disabled: isDisabled$3(options === null || options === void 0 ? void 0 : options.participantsButton) })),
24463
+ React__default["default"].createElement(People, { checked: props.peopleButtonChecked, ariaLabel: peopleButtonStrings === null || peopleButtonStrings === void 0 ? void 0 : peopleButtonStrings.label, showLabel: (options === null || options === void 0 ? void 0 : options.displayType) !== 'compact', onClick: props.onPeopleButtonClicked, "data-ui-id": "call-composite-people-button", strings: peopleButtonStrings, disabled: isDisabled$3(options === null || options === void 0 ? void 0 : options.participantsButton), disableTooltip: props.isMobile })),
24446
24464
  showDevicesButtonInControlBar && (React__default["default"].createElement(Devices, { displayType: options === null || options === void 0 ? void 0 : options.displayType, increaseFlyoutItemSize: props.increaseFlyoutItemSize, disabled: isDisabled$3(options === null || options === void 0 ? void 0 : options.devicesButton) })), (_a = customButtons['primary']) === null || _a === void 0 ? void 0 :
24447
24465
  _a.slice(0, props.isMobile
24448
24466
  ? CUSTOM_BUTTON_OPTIONS.MAX_PRIMARY_MOBILE_CUSTOM_BUTTONS
24449
24467
  : CUSTOM_BUTTON_OPTIONS.MAX_PRIMARY_DESKTOP_CUSTOM_BUTTONS).map((CustomButton, i) => {
24450
24468
  return (React__default["default"].createElement(CustomButton, { key: `primary-custom-button-${i}`,
24451
24469
  // styles={commonButtonStyles}
24452
- showLabel: (options === null || options === void 0 ? void 0 : options.displayType) !== 'compact' }));
24470
+ showLabel: (options === null || options === void 0 ? void 0 : options.displayType) !== 'compact', disableTooltip: props.isMobile }));
24453
24471
  }),
24454
24472
  /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(close-captions) */ /* @conditional-compile-remove(raise-hand) */
24455
- showMoreButton && (React__default["default"].createElement(MoreButton, { "data-ui-id": "common-call-composite-more-button", strings: moreButtonStrings, menuIconProps: { hidden: true }, menuProps: { items: moreButtonMenuItems }, showLabel: (options === null || options === void 0 ? void 0 : options.displayType) !== 'compact' })),
24473
+ showMoreButton && (React__default["default"].createElement(MoreButton, { disableTooltip: props.isMobile, "data-ui-id": "common-call-composite-more-button", strings: moreButtonStrings, menuIconProps: { hidden: true }, menuProps: { items: moreButtonMenuItems }, showLabel: (options === null || options === void 0 ? void 0 : options.displayType) !== 'compact' })),
24456
24474
  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 })))));
24457
24475
  };
24458
24476
  const isEnabled$2 = (option) => option !== false;
@@ -24982,12 +25000,12 @@ const CommonCallControlBar = (props) => {
24982
25000
  React__default["default"].createElement(ControlBar, { layout: props.displayVertical ? 'vertical' : 'horizontal', styles: centerContainerStyles },
24983
25001
  microphoneButtonIsEnabled && (React__default["default"].createElement(Microphone, { displayType: options.displayType, styles: commonButtonStyles, splitButtonsForDeviceSelection: !props.mobileView,
24984
25002
  /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
24985
- disabled: props.disableButtonsForHoldScreen || isDisabled$3(options.microphoneButton) })),
25003
+ disabled: props.disableButtonsForHoldScreen || isDisabled$3(options.microphoneButton), disableTooltip: props.mobileView })),
24986
25004
  cameraButtonIsEnabled && (React__default["default"].createElement(Camera, { displayType: options.displayType, styles: commonButtonStyles, splitButtonsForDeviceSelection: !props.mobileView,
24987
25005
  /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
24988
25006
  disabled: props.disableButtonsForHoldScreen || isDisabled$3(options.cameraButton),
24989
25007
  /* @conditional-compile-remove(video-background-effects) */
24990
- onClickVideoEffects: props.onClickVideoEffects, componentRef: props.cameraButtonRef })),
25008
+ onClickVideoEffects: props.onClickVideoEffects, componentRef: props.cameraButtonRef, disableTooltip: props.mobileView })),
24991
25009
  /* @conditional-compile-remove(raise-hand) */ !props.mobileView &&
24992
25010
  isEnabled$1(options.raiseHandButton) && (React__default["default"].createElement(RaiseHand, { displayType: options.displayType, styles: commonButtonStyles,
24993
25011
  /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
@@ -24998,9 +25016,9 @@ const CommonCallControlBar = (props) => {
24998
25016
  _a.slice(0, props.mobileView
24999
25017
  ? CUSTOM_BUTTON_OPTIONS.MAX_PRIMARY_MOBILE_CUSTOM_BUTTONS
25000
25018
  : CUSTOM_BUTTON_OPTIONS.MAX_PRIMARY_DESKTOP_CUSTOM_BUTTONS).map((CustomButton, i) => {
25001
- return (React__default["default"].createElement(CustomButton, { key: `primary-custom-button-${i}`, styles: commonButtonStyles, showLabel: options.displayType !== 'compact' }));
25019
+ return (React__default["default"].createElement(CustomButton, { key: `primary-custom-button-${i}`, styles: commonButtonStyles, showLabel: options.displayType !== 'compact', disableTooltip: props.mobileView }));
25002
25020
  }),
25003
- props.mobileView && (React__default["default"].createElement(MoreButton, { "data-ui-id": "common-call-composite-more-button", strings: moreButtonStrings, onClick: props.onMoreButtonClicked, disabled: props.disableButtonsForLobbyPage })),
25021
+ props.mobileView && (React__default["default"].createElement(MoreButton, { "data-ui-id": "common-call-composite-more-button", strings: moreButtonStrings, onClick: props.onMoreButtonClicked, disabled: props.disableButtonsForLobbyPage, disableTooltip: props.mobileView })),
25004
25022
  !props.mobileView && showDesktopMoreButton && (React__default["default"].createElement(DesktopMoreButton, { disableButtonsForHoldScreen: props.disableButtonsForHoldScreen, styles: commonButtonStyles,
25005
25023
  /*@conditional-compile-remove(PSTN-calls) */
25006
25024
  onClickShowDialpad: props.onClickShowDialpad,
@@ -25463,6 +25481,7 @@ const MoreDrawer = (props) => {
25463
25481
  text: localeStrings.strings.callWithChat.openDtmfDialpadLabel,
25464
25482
  onItemClick: () => {
25465
25483
  props.onClickShowDialpad && props.onClickShowDialpad();
25484
+ onLightDismiss();
25466
25485
  },
25467
25486
  iconProps: { iconName: 'Dialpad', styles: { root: { lineHeight: 0 } } }
25468
25487
  });
@@ -27819,7 +27838,7 @@ const ConfigurationPageMicDropdown = (props) => {
27819
27838
  * @private
27820
27839
  */
27821
27840
  const configurationStackTokensDesktop = {
27822
- childrenGap: '2rem'
27841
+ childrenGap: '1rem'
27823
27842
  };
27824
27843
  /**
27825
27844
  * @private
@@ -27845,7 +27864,7 @@ const configurationContainerStyleMobile = react.mergeStyles(Object.assign(Object
27845
27864
  * @private
27846
27865
  */
27847
27866
  const selectionContainerStyle = react.mergeStyles({
27848
- width: '50%',
27867
+ width: '100%',
27849
27868
  minWidth: '11rem',
27850
27869
  maxWidth: '18.75rem',
27851
27870
  padding: '0.5rem'
@@ -27870,9 +27889,11 @@ const titleContainerStyleMobile = react.mergeStyles({
27870
27889
  /**
27871
27890
  * @private
27872
27891
  */
27873
- const callDetailsContainerStylesDesktop = {
27892
+ const callDetailsContainerStyles = {
27874
27893
  root: {
27875
- marginBottom: '1.563rem'
27894
+ textAlign: 'center',
27895
+ maxWidth: _pxToRem(700),
27896
+ alignSelf: 'center'
27876
27897
  }
27877
27898
  };
27878
27899
  const callDetailsStyle = {
@@ -28669,27 +28690,26 @@ const ConfigurationPage = (props) => {
28669
28690
  /* @conditional-compile-remove(unsupported-browser) */
28670
28691
  environmentInfo: environmentInfo, setIsPermissionsModalDismissed: setIsPermissionsModalDismissed, onPermissionsTroubleshootingClick: onPermissionsTroubleshootingClick })),
28671
28692
  React__default["default"].createElement(react.Stack, { verticalFill: true, grow: true, horizontal: true, className: fillWidth },
28672
- React__default["default"].createElement(react.Stack, { className: fillWidth, horizontal: !mobileWithPreview, horizontalAlign: mobileWithPreview ? 'stretch' : 'center', verticalAlign: "center", tokens: mobileWithPreview ? configurationStackTokensMobile : configurationStackTokensDesktop },
28673
- mobileWithPreview && (React__default["default"].createElement(react.Stack.Item, null,
28693
+ React__default["default"].createElement(react.Stack, { className: fillWidth, verticalAlign: "center", verticalFill: mobileWithPreview, tokens: mobileWithPreview ? configurationStackTokensMobile : configurationStackTokensDesktop },
28694
+ React__default["default"].createElement(react.Stack.Item, { styles: callDetailsContainerStyles },
28674
28695
  title,
28675
- callDescription)),
28676
- localPreviewTrampoline(mobileWithPreview, /* @conditional-compile-remove(rooms) */ !!(role === 'Consumer')),
28677
- React__default["default"].createElement(react.Stack, { className: mobileView ? undefined : selectionContainerStyle },
28678
- !mobileWithPreview && (React__default["default"].createElement(React__default["default"].Fragment, null,
28679
- React__default["default"].createElement(react.Stack.Item, { styles: callDetailsContainerStylesDesktop },
28680
- title,
28681
- callDescription),
28682
- React__default["default"].createElement(LocalDeviceSettings, Object.assign({}, options, localDeviceSettingsHandlers, { cameraPermissionGranted: cameraPermissionGrantedTrampoline(cameraPermissionGranted,
28683
- /* @conditional-compile-remove(call-readiness) */ videoState), microphonePermissionGranted: micPermissionGrantedTrampoline(microphonePermissionGranted,
28684
- /* @conditional-compile-remove(call-readiness) */ audioState),
28685
- /* @conditional-compile-remove(call-readiness) */
28686
- onClickEnableDevicePermission: () => {
28687
- setIsPermissionsModalDismissed(true);
28688
- },
28689
- /* @conditional-compile-remove(video-background-effects) */
28690
- onClickVideoEffects: toggleVideoEffectsPane })))),
28691
- React__default["default"].createElement(react.Stack, { styles: mobileWithPreview ? startCallButtonContainerStyleMobile : startCallButtonContainerStyleDesktop },
28692
- React__default["default"].createElement(StartCallButton, { className: mobileWithPreview ? startCallButtonStyleMobile : startCallButtonStyleDesktop, onClick: startCall, disabled: disableStartCallButton })))),
28696
+ callDescription),
28697
+ React__default["default"].createElement(react.Stack, { horizontal: !mobileWithPreview, horizontalAlign: mobileWithPreview ? 'stretch' : 'center', verticalFill: mobileWithPreview, tokens: mobileWithPreview ? configurationStackTokensMobile : undefined },
28698
+ localPreviewTrampoline(mobileWithPreview,
28699
+ /* @conditional-compile-remove(rooms) */ !!(role === 'Consumer')),
28700
+ React__default["default"].createElement(react.Stack, { className: mobileView ? undefined : selectionContainerStyle },
28701
+ !mobileWithPreview && (React__default["default"].createElement(React__default["default"].Fragment, null,
28702
+ React__default["default"].createElement(LocalDeviceSettings, Object.assign({}, options, localDeviceSettingsHandlers, { cameraPermissionGranted: cameraPermissionGrantedTrampoline(cameraPermissionGranted,
28703
+ /* @conditional-compile-remove(call-readiness) */ videoState), microphonePermissionGranted: micPermissionGrantedTrampoline(microphonePermissionGranted,
28704
+ /* @conditional-compile-remove(call-readiness) */ audioState),
28705
+ /* @conditional-compile-remove(call-readiness) */
28706
+ onClickEnableDevicePermission: () => {
28707
+ setIsPermissionsModalDismissed(true);
28708
+ },
28709
+ /* @conditional-compile-remove(video-background-effects) */
28710
+ onClickVideoEffects: toggleVideoEffectsPane })))),
28711
+ React__default["default"].createElement(react.Stack, { styles: mobileWithPreview ? startCallButtonContainerStyleMobile : startCallButtonContainerStyleDesktop },
28712
+ React__default["default"].createElement(StartCallButton, { className: mobileWithPreview ? startCallButtonStyleMobile : startCallButtonStyleDesktop, onClick: startCall, disabled: disableStartCallButton }))))),
28693
28713
  React__default["default"].createElement(react.Panel
28694
28714
  /* @conditional-compile-remove(video-background-effects) */
28695
28715
  , {
@@ -31589,7 +31609,7 @@ const CallWithChatScreen = (props) => {
31589
31609
  placement: mobileView ? 'primary' : 'secondary',
31590
31610
  onRenderButton: () => (React__default["default"].createElement(ChatButtonWithUnreadMessagesBadge, { checked: isChatOpen, showLabel: args.displayType !== 'compact', onClick: toggleChat, disabled: chatButtonDisabled, strings: chatButtonStrings, styles: commonButtonStyles, newMessageLabel: callWithChatStrings.chatButtonNewMessageNotificationLabel, unreadChatMessagesCount: unreadChatMessagesCount,
31591
31611
  // As chat is disabled when on hold, we don't want to show the unread badge when on hold
31592
- hideUnreadChatMessagesBadge: isOnHold }))
31612
+ hideUnreadChatMessagesBadge: isOnHold, disableTooltip: mobileView }))
31593
31613
  }), [
31594
31614
  callWithChatStrings.chatButtonNewMessageNotificationLabel,
31595
31615
  chatButtonStrings,