@azure/communication-react 1.19.0-alpha-202409110015 → 1.19.0-alpha-202409121837

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 (101) hide show
  1. package/dist/communication-react.d.ts +3 -74
  2. package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-DLvYhw86.js → ChatMessageComponentAsRichTextEditBox-Dw0YGI6f.js} +8 -9
  3. package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-DLvYhw86.js.map → ChatMessageComponentAsRichTextEditBox-Dw0YGI6f.js.map} +1 -1
  4. package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-c-0qdixQ.js → RichTextSendBoxWrapper-D_zW9xcg.js} +8 -9
  5. package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-c-0qdixQ.js.map → RichTextSendBoxWrapper-D_zW9xcg.js.map} +1 -1
  6. package/dist/dist-cjs/communication-react/{index-BHlN9wMI.js → index-B9oks9nv.js} +27305 -27474
  7. package/dist/dist-cjs/communication-react/index-B9oks9nv.js.map +1 -0
  8. package/dist/dist-cjs/communication-react/index.js +7 -12
  9. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  10. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  11. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  12. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +0 -1
  13. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  14. package/dist/dist-esm/calling-component-bindings/src/notificationStackSelector.js +2 -4
  15. package/dist/dist-esm/calling-component-bindings/src/notificationStackSelector.js.map +1 -1
  16. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  17. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +0 -3
  18. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  19. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +0 -3
  20. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  21. package/dist/dist-esm/calling-stateful-client/src/Converter.js +0 -1
  22. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  23. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  24. package/dist/dist-esm/communication-react/src/api-summary.d.ts +13 -0
  25. package/dist/dist-esm/communication-react/src/api-summary.js +16 -0
  26. package/dist/dist-esm/communication-react/src/api-summary.js.map +1 -0
  27. package/dist/dist-esm/communication-react/src/index.d.ts +0 -2
  28. package/dist/dist-esm/communication-react/src/index.js +0 -2
  29. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  30. package/dist/dist-esm/communication-react/src/javascript-loaders.d.ts +3 -0
  31. package/dist/dist-esm/communication-react/src/javascript-loaders.js +5 -0
  32. package/dist/dist-esm/communication-react/src/javascript-loaders.js.map +1 -0
  33. package/dist/dist-esm/react-components/src/components/CaptionsBanner.d.ts +3 -0
  34. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js +13 -7
  35. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js.map +1 -1
  36. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js +5 -1
  37. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js.map +1 -1
  38. package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
  39. package/dist/dist-esm/react-components/src/components/MeetingConferencePhoneInfo.js +0 -10
  40. package/dist/dist-esm/react-components/src/components/MeetingConferencePhoneInfo.js.map +1 -1
  41. package/dist/dist-esm/react-components/src/components/NotificationStack.js.map +1 -1
  42. package/dist/dist-esm/react-components/src/components/ParticipantItem.js +1 -1
  43. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  44. package/dist/dist-esm/react-components/src/components/VideoTile.js +2 -1
  45. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  46. package/dist/dist-esm/react-components/src/components/index.js +0 -2
  47. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  48. package/dist/dist-esm/react-components/src/components/styles/Captions.style.d.ts +9 -1
  49. package/dist/dist-esm/react-components/src/components/styles/Captions.style.js +20 -0
  50. package/dist/dist-esm/react-components/src/components/styles/Captions.style.js.map +1 -1
  51. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.d.ts +2 -2
  52. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js +3 -2
  53. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js.map +1 -1
  54. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.d.ts +1 -1
  55. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js +23 -18
  56. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js.map +1 -1
  57. package/dist/dist-esm/react-components/src/components/utils.js +0 -1
  58. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  59. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  60. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +3 -0
  61. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  62. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  63. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.d.ts +3 -0
  64. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +15 -26
  65. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  66. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +9 -1
  67. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  68. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.d.ts +3 -0
  69. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +10 -6
  70. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  71. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js +2 -15
  72. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js.map +1 -1
  73. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useMeetingPhoneInfo.js +0 -7
  74. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useMeetingPhoneInfo.js.map +1 -1
  75. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js +5 -5
  76. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js.map +1 -1
  77. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +3 -4
  78. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  79. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +0 -1
  80. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
  81. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js +2 -1
  82. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js.map +1 -1
  83. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +1 -1
  84. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  85. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.d.ts +3 -0
  86. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.js +9 -4
  87. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.js.map +1 -1
  88. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +10 -9
  89. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -1
  90. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js +0 -5
  91. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js.map +1 -1
  92. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +0 -4
  93. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -1
  94. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.js.map +1 -1
  95. package/dist/dist-esm/react-composites/src/composites/common/MeetingPhoneInfoPaneContent.js +0 -6
  96. package/dist/dist-esm/react-composites/src/composites/common/MeetingPhoneInfoPaneContent.js.map +1 -1
  97. package/dist/dist-esm/react-composites/src/composites/common/icons.js +0 -5
  98. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  99. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js.map +1 -1
  100. package/package.json +16 -2
  101. package/dist/dist-cjs/communication-react/index-BHlN9wMI.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"MoreDrawer.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/common/Drawer/MoreDrawer.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React, { useCallback } from 'react';\nimport { useState } from 'react';\nimport { useMemo } from 'react';\nimport {\n OptionsDevice,\n _DrawerMenu as DrawerMenu,\n _DrawerMenuItemProps as DrawerMenuItemProps,\n _DrawerMenuStyles,\n SpokenLanguageStrings,\n CaptionLanguageStrings\n} from '@internal/react-components';\nimport { _ReactionDrawerMenuItem } from '@internal/react-components';\nimport { ReactionResources } from '@internal/react-components';\nimport { VideoGalleryLayout } from '@internal/react-components';\nimport { _StartCaptionsButton, _CaptionsSettingsModal } from '@internal/react-components';\n\n/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\nimport { HoldButton } from '@internal/react-components';\nimport { RaiseHandButton, RaiseHandButtonProps } from '@internal/react-components';\nimport { AudioDeviceInfo } from '@azure/communication-calling';\nimport {\n CUSTOM_BUTTON_OPTIONS,\n generateCustomCallDrawerButtons,\n onFetchCustomButtonPropsTrampoline\n} from '../ControlBar/CustomButton';\nimport { usePropsFor } from '../../CallComposite/hooks/usePropsFor';\nimport { useLocale } from '../../localization';\nimport { isDisabled } from '../../CallComposite/utils';\nimport { CommonCallControlOptions } from '../types/CommonCallControlOptions';\nimport { Stack, Toggle, useTheme } from '@fluentui/react';\nimport { _pxToRem } from '@internal/acs-ui-common';\nimport { useAdaptedSelector } from '../../CallComposite/hooks/useAdaptedSelector';\nimport { _captionSettingsSelector, _startCaptionsButtonSelector } from '@internal/calling-component-bindings';\nimport { useHandlers } from '../../CallComposite/hooks/useHandlers';\nimport { CaptionLanguageSettingsDrawer } from './CaptionLanguageSettingsDrawer';\nimport { themedToggleButtonStyle } from './MoreDrawer.styles';\nimport { _spokenLanguageToCaptionLanguage } from '@internal/react-components';\nimport { useAdapter } from '../../CallComposite/adapter/CallAdapterProvider';\nimport { useSelector } from '../../CallComposite/hooks/useSelector';\nimport { getTargetCallees } from '../../CallComposite/selectors/baseSelectors';\n/* @conditional-compile-remove(teams-meeting-conference) */\nimport { getTeamsMeetingCoordinates, getIsTeamsMeeting } from '../../CallComposite/selectors/baseSelectors';\nimport { showDtmfDialer } from '../../CallComposite/utils/MediaGalleryUtils';\nimport { SpokenLanguageSettingsDrawer } from './SpokenLanguageSettingsDrawer';\n\n/** @private */\nexport interface MoreDrawerStrings {\n /**\n * Label for people drawerMenuItem.\n */\n peopleButtonLabel: string;\n /**\n * Label for audio device drawerMenuItem.\n *\n * @remarks This replaces the microphoneMenuTitle speakers can not be enumerated\n *\n */\n audioDeviceMenuTitle?: string;\n /**\n * Label for microphone drawerMenuItem.\n *\n * @remarks Only displayed when speakers can be enumerated otherwise audioDeviceMenuTitle is used\n *\n */\n microphoneMenuTitle: string;\n /**\n * Label for speaker drawerMenuItem.\n *\n * @remarks Only displayed when speakers can be enumerated\n *\n */\n speakerMenuTitle: string;\n /**\n * Label for captions drawerMenuItem\n *\n * @remarks Only displayed when in Teams call\n */\n captionsMenuTitle: string;\n /**\n * Label for spokenLanguage drawerMenuItem\n *\n * @remarks Only displayed when in Teams call, disabled until captions is on\n */\n spokenLanguageMenuTitle: string;\n\n /**\n * Label for captionLanguage drawerMenuItem\n *\n * @remarks Only displayed when in Teams call, disabled until captions is on\n */\n captionLanguageMenuTitle: string;\n\n /**\n * Label for gallery options drawerMenuItem\n */\n galleryOptionsMenuTitle: string;\n}\n\n/** @private */\nexport interface MoreDrawerDevicesMenuProps {\n /**\n * Available microphones for selection\n */\n microphones?: OptionsDevice[];\n /**\n * Available speakers for selection\n */\n speakers?: OptionsDevice[];\n /**\n * Microphone that is shown as currently selected\n */\n selectedMicrophone?: OptionsDevice;\n /**\n * Speaker that is shown as currently selected\n */\n selectedSpeaker?: OptionsDevice;\n /**\n * Speaker when a speaker is selected\n */\n onSelectSpeaker: (device: AudioDeviceInfo) => Promise<void>;\n /**\n * Callback when a microphone is selected\n */\n onSelectMicrophone: (device: AudioDeviceInfo) => Promise<void>;\n userSetGalleryLayout?: VideoGalleryLayout;\n /**\n * Callback for when the gallery layout is changed\n */\n onUserSetGalleryLayout?: (layout: VideoGalleryLayout) => void;\n /**\n * Callback to hide and show the dialpad in the more drawer\n */\n onSetDialpadPage?: () => void;\n /**\n * Whether the dialpad is present in the call\n */\n dtmfDialerPresent?: boolean;\n}\n\n/** @private */\nexport interface MoreDrawerProps extends MoreDrawerDevicesMenuProps {\n onLightDismiss: () => void;\n onPeopleButtonClicked: () => void;\n callControls?: boolean | CommonCallControlOptions;\n onClickShowDialpad?: () => void;\n isCaptionsSupported?: boolean;\n strings: MoreDrawerStrings;\n disableButtonsForHoldScreen?: boolean;\n useTeamsCaptions?: boolean;\n reactionResources?: ReactionResources;\n onReactionClick?: (reaction: string) => Promise<void>;\n /* @conditional-compile-remove(teams-meeting-conference) */\n onClickMeetingPhoneInfo?: () => void;\n /* @conditional-compile-remove(soft-mute) */\n onMuteAllRemoteParticipants?: () => void;\n}\n\nconst inferCallWithChatControlOptions = (\n callWithChatControls?: boolean | CommonCallControlOptions\n): CommonCallControlOptions | false => {\n if (callWithChatControls === false) {\n return false;\n }\n const options = callWithChatControls === true || callWithChatControls === undefined ? {} : callWithChatControls;\n return options;\n};\n\n/** @private */\nexport const MoreDrawer = (props: MoreDrawerProps): JSX.Element => {\n const theme = useTheme();\n const callAdapter = useAdapter();\n const drawerMenuItems: DrawerMenuItemProps[] = [];\n\n const { speakers, onSelectSpeaker, onLightDismiss } = props;\n\n const localeStrings = useLocale();\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\n const holdButtonProps = usePropsFor(HoldButton);\n\n const callees = useSelector(getTargetCallees);\n const allowDtmfDialer = showDtmfDialer(callees);\n const [dtmfDialerChecked, setDtmfDialerChecked] = useState<boolean>(props.dtmfDialerPresent ?? false);\n\n const raiseHandButtonProps = usePropsFor(RaiseHandButton) as RaiseHandButtonProps;\n\n const onSpeakerItemClick = useCallback(\n (\n _ev: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement> | undefined,\n itemKey: string | undefined\n ) => {\n const selected = speakers?.find((speaker) => speaker.id === itemKey);\n if (selected) {\n // This is unsafe - we're only passing in part of the argument to the handler.\n // But this is a known issue in our state.\n onSelectSpeaker(selected as AudioDeviceInfo);\n }\n onLightDismiss();\n },\n [speakers, onSelectSpeaker, onLightDismiss]\n );\n\n const drawerSelectionOptions = inferCallWithChatControlOptions(props.callControls);\n\n const showCaptionsButton =\n props.isCaptionsSupported &&\n /* @conditional-compile-remove(acs-close-captions) */ drawerSelectionOptions !== false &&\n /* @conditional-compile-remove(acs-close-captions) */ isEnabled(drawerSelectionOptions.captionsButton);\n\n if (props.reactionResources !== undefined) {\n drawerMenuItems.push({\n itemKey: 'reactions',\n onRendererContent: () => (\n <_ReactionDrawerMenuItem\n onReactionClick={async (reaction) => {\n props.onReactionClick?.(reaction);\n onLightDismiss();\n }}\n reactionResources={props.reactionResources}\n />\n )\n });\n }\n\n if (props.speakers && props.speakers.length > 0) {\n drawerMenuItems.push({\n itemKey: 'speakers',\n disabled: props.disableButtonsForHoldScreen,\n text: props.strings.speakerMenuTitle,\n iconProps: { iconName: 'MoreDrawerSpeakers' },\n subMenuProps: props.speakers.map((speaker) => ({\n itemKey: speaker.id,\n iconProps: {\n iconName: isDeviceSelected(speaker, props.selectedSpeaker)\n ? 'MoreDrawerSelectedSpeaker'\n : 'MoreDrawerSpeakers'\n },\n text: speaker.name,\n onItemClick: onSpeakerItemClick,\n secondaryIconProps: isDeviceSelected(speaker, props.selectedSpeaker) ? { iconName: 'Accept' } : undefined\n })),\n secondaryText: props.selectedSpeaker?.name\n });\n }\n\n const { microphones, onSelectMicrophone } = props;\n const onMicrophoneItemClick = useCallback(\n (\n _ev: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement> | undefined,\n itemKey: string | undefined\n ) => {\n const selected = microphones?.find((mic) => mic.id === itemKey);\n if (selected) {\n // This is unsafe - we're only passing in part of the argument to the handler.\n // But this is a known issue in our state.\n onSelectMicrophone(selected as AudioDeviceInfo);\n }\n onLightDismiss();\n },\n [microphones, onSelectMicrophone, onLightDismiss]\n );\n\n if (props.microphones && props.microphones.length > 0) {\n // Set props as Microphone if speakers can be enumerated else set as Audio Device\n const speakersAvailable = props.speakers && props.speakers.length > 0;\n const itemKey = speakersAvailable ? 'microphones' : 'audioDevices';\n const text = speakersAvailable ? props.strings.microphoneMenuTitle : props.strings.audioDeviceMenuTitle;\n const iconName = speakersAvailable ? 'MoreDrawerMicrophones' : 'MoreDrawerSpeakers';\n const selectedIconName = speakersAvailable ? 'MoreDrawerSelectedMicrophone' : 'MoreDrawerSelectedSpeaker';\n\n drawerMenuItems.push({\n itemKey: itemKey,\n disabled: props.disableButtonsForHoldScreen,\n text: text,\n iconProps: { iconName: iconName },\n subMenuProps: props.microphones.map((mic) => ({\n itemKey: mic.id,\n iconProps: {\n iconName: isDeviceSelected(mic, props.selectedMicrophone) ? selectedIconName : iconName\n },\n text: mic.name,\n onItemClick: onMicrophoneItemClick,\n secondaryIconProps: isDeviceSelected(mic, props.selectedMicrophone) ? { iconName: 'Accept' } : undefined,\n disabled: drawerSelectionOptions !== false ? isDisabled(drawerSelectionOptions.microphoneButton) : undefined\n })),\n secondaryText: props.selectedMicrophone?.name\n });\n }\n\n const dtmfDialerScreenOption = {\n itemKey: 'dtmfDialerScreenKey',\n text: !dtmfDialerChecked\n ? localeStrings.strings.call.dtmfDialerMoreButtonLabelOn\n : localeStrings.strings.call.dtmfDialerMoreButtonLabelOff,\n onItemClick: () => {\n if (props.onSetDialpadPage) {\n props.onSetDialpadPage();\n }\n setDtmfDialerChecked(!dtmfDialerChecked);\n onLightDismiss();\n },\n iconProps: {\n iconName: 'DtmfDialpadButton',\n styles: { root: { lineHeight: 0 } }\n }\n };\n /**\n * Only render the dtmf dialer if the dialpad for PSTN calls is not present\n */\n if (props.onSetDialpadPage && allowDtmfDialer) {\n drawerMenuItems.push(dtmfDialerScreenOption);\n }\n\n const galleryLayoutOptions = {\n itemKey: 'galleryPositionKey',\n iconProps: {\n iconName: 'GalleryOptions',\n styles: { root: { lineHeight: 0 } }\n },\n disabled: props.disableButtonsForHoldScreen,\n text: localeStrings.strings.call.moreButtonGalleryControlLabel,\n subMenuProps: [\n {\n itemKey: 'dynamicSelectionKey',\n text: localeStrings.strings.call.moreButtonGalleryFloatingLocalLayoutLabel,\n onItemClick: () => {\n props.onUserSetGalleryLayout && props.onUserSetGalleryLayout('floatingLocalVideo');\n onLightDismiss();\n },\n iconProps: {\n iconName: 'FloatingLocalVideoGalleryLayout',\n styles: { root: { lineHeight: 0 } }\n },\n secondaryIconProps: props.userSetGalleryLayout === 'floatingLocalVideo' ? { iconName: 'Accept' } : undefined\n },\n {\n itemKey: 'focusedContentSelectionKey',\n text: localeStrings.strings.call.moreButtonGalleryFocusedContentLayoutLabel,\n onItemClick: () => {\n props.onUserSetGalleryLayout && props.onUserSetGalleryLayout('focusedContent');\n onLightDismiss();\n },\n iconProps: {\n iconName: 'FocusedContentGalleryLayout',\n styles: { root: { lineHeight: 0 } }\n },\n secondaryIconProps: props.userSetGalleryLayout === 'focusedContent' ? { iconName: 'Accept' } : undefined\n }\n ]\n };\n\n /* @conditional-compile-remove(gallery-layout-composite) */\n const galleryOption = {\n itemKey: 'defaultSelectionKey',\n text: localeStrings.strings.call.moreButtonGalleryDefaultLayoutLabel,\n onItemClick: () => {\n props.onUserSetGalleryLayout && props.onUserSetGalleryLayout('default');\n onLightDismiss();\n },\n iconProps: {\n iconName: 'DefaultGalleryLayout',\n styles: { root: { lineHeight: 0 } }\n },\n secondaryIconProps: props.userSetGalleryLayout === 'default' ? { iconName: 'Accept' } : undefined\n };\n\n /* @conditional-compile-remove(gallery-layout-composite) */\n galleryLayoutOptions.subMenuProps?.push(galleryOption);\n\n drawerMenuItems.push(galleryLayoutOptions);\n\n if (drawerSelectionOptions !== false && isEnabled(drawerSelectionOptions?.peopleButton)) {\n drawerMenuItems.push({\n itemKey: 'people',\n id: 'call-composite-drawer-people-button',\n text: props.strings.peopleButtonLabel,\n iconProps: { iconName: 'MoreDrawerPeople' },\n onItemClick: props.onPeopleButtonClicked,\n disabled: isDisabled(drawerSelectionOptions.peopleButton) || props.disableButtonsForHoldScreen\n });\n }\n\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\n if (drawerSelectionOptions !== false && isEnabled(drawerSelectionOptions?.holdButton)) {\n drawerMenuItems.push({\n itemKey: 'holdButtonKey',\n disabled: props.disableButtonsForHoldScreen || isDisabled(drawerSelectionOptions.holdButton),\n text: localeStrings.component.strings.holdButton.tooltipOffContent,\n onItemClick: () => {\n holdButtonProps.onToggleHold();\n onLightDismiss();\n },\n iconProps: { iconName: 'HoldCallContextualMenuItem', styles: { root: { lineHeight: 0 } } }\n });\n }\n\n const role = callAdapter.getState().call?.role;\n const hideRaiseHandButtonInRoomsCall =\n callAdapter.getState().isRoomsCall && role && ['Consumer', 'Unknown'].includes(role);\n\n if (\n drawerSelectionOptions !== false &&\n isEnabled(drawerSelectionOptions?.raiseHandButton) &&\n !hideRaiseHandButtonInRoomsCall\n ) {\n const raiseHandIcon = raiseHandButtonProps.checked ? 'LowerHandContextualMenuItem' : 'RaiseHandContextualMenuItem';\n drawerMenuItems.push({\n itemKey: 'raiseHandButtonKey',\n disabled: props.disableButtonsForHoldScreen || isDisabled(drawerSelectionOptions.raiseHandButton),\n text: raiseHandButtonProps.checked\n ? localeStrings.component.strings.raiseHandButton.onLabel\n : localeStrings.component.strings.raiseHandButton.offLabel,\n onItemClick: () => {\n if (raiseHandButtonProps.onToggleRaiseHand) {\n raiseHandButtonProps.onToggleRaiseHand();\n }\n onLightDismiss();\n },\n iconProps: {\n iconName: raiseHandIcon,\n styles: { root: { lineHeight: 0 } }\n }\n });\n }\n\n /* @conditional-compile-remove(teams-meeting-conference) */\n const isTeamsMeeting = getIsTeamsMeeting(callAdapter.getState());\n /* @conditional-compile-remove(teams-meeting-conference) */\n const teamsMeetingCoordinates = getTeamsMeetingCoordinates(callAdapter.getState());\n\n /* @conditional-compile-remove(teams-meeting-conference) */\n if (\n drawerSelectionOptions !== false &&\n isEnabled(drawerSelectionOptions?.teamsMeetingPhoneCallButton) &&\n isTeamsMeeting &&\n teamsMeetingCoordinates\n ) {\n drawerMenuItems.push({\n itemKey: 'phoneCallInfoKey',\n disabled: isDisabled(drawerSelectionOptions.teamsMeetingPhoneCallButton),\n text: localeStrings.strings.call.phoneCallMoreButtonLabel,\n onItemClick: () => {\n props.onClickMeetingPhoneInfo?.();\n onLightDismiss();\n },\n iconProps: {\n iconName: 'PhoneNumberButton',\n styles: { root: { lineHeight: 0 } }\n }\n });\n }\n\n //Captions drawer menu\n const supportedSpokenLanguageStrings = useLocale().strings.call.spokenLanguageStrings;\n\n //Captions drawer menu\n const supportedCaptionLanguageStrings = useLocale().strings.call.captionLanguageStrings;\n\n const captionSettingsProp = useAdaptedSelector(_captionSettingsSelector);\n\n const startCaptionsButtonHandlers = useHandlers(_StartCaptionsButton);\n\n const captionSettingsHandlers = useHandlers(_CaptionsSettingsModal);\n\n const [isSpokenLanguageDrawerOpen, setIsSpokenLanguageDrawerOpen] = useState<boolean>(false);\n\n const [isCaptionLanguageDrawerOpen, setIsCaptionLanguageDrawerOpen] = useState<boolean>(false);\n\n const [currentSpokenLanguage, setCurrentSpokenLanguage] = useState<keyof SpokenLanguageStrings>(\n captionSettingsProp.currentSpokenLanguage ?? 'en-us'\n );\n\n const [currentCaptionLanguage, setCurrentCaptionLanguage] = useState<keyof CaptionLanguageStrings>(\n captionSettingsProp.currentCaptionLanguage ?? _spokenLanguageToCaptionLanguage[currentSpokenLanguage]\n );\n\n const onToggleChange = useCallback(async () => {\n if (!captionSettingsProp.isCaptionsFeatureActive) {\n await startCaptionsButtonHandlers.onStartCaptions({\n spokenLanguage: currentSpokenLanguage\n });\n } else {\n startCaptionsButtonHandlers.onStopCaptions();\n }\n }, [captionSettingsProp.isCaptionsFeatureActive, startCaptionsButtonHandlers, currentSpokenLanguage]);\n\n if (showCaptionsButton) {\n const captionsDrawerItems: DrawerMenuItemProps[] = [];\n\n const spokenLanguageString = supportedSpokenLanguageStrings\n ? supportedSpokenLanguageStrings[currentSpokenLanguage]\n : currentSpokenLanguage;\n\n drawerMenuItems.push({\n itemKey: 'captions',\n id: 'common-call-composite-captions-button',\n disabled: props.disableButtonsForHoldScreen,\n text: props.strings.captionsMenuTitle,\n iconProps: { iconName: 'CaptionsIcon' },\n subMenuProps: captionsDrawerItems\n });\n\n captionsDrawerItems.push({\n itemKey: 'ToggleCaptionsKey',\n text: captionSettingsProp.isCaptionsFeatureActive\n ? localeStrings.strings.call.startCaptionsButtonTooltipOnContent\n : localeStrings.strings.call.startCaptionsButtonTooltipOffContent,\n iconProps: {\n iconName: captionSettingsProp.isCaptionsFeatureActive ? 'CaptionsOffIcon' : 'CaptionsIcon',\n styles: { root: { lineHeight: 0 } }\n },\n onItemClick: onToggleChange,\n disabled: props.disableButtonsForHoldScreen,\n secondaryComponent: (\n <Stack verticalFill verticalAlign=\"center\">\n <Toggle\n id=\"common-call-composite-captions-toggle-button\"\n checked={captionSettingsProp.isCaptionsFeatureActive}\n styles={themedToggleButtonStyle(theme, captionSettingsProp.isCaptionsFeatureActive)}\n onChange={onToggleChange}\n />\n </Stack>\n )\n });\n\n captionsDrawerItems.push({\n itemKey: 'ChangeSpokenLanguage',\n text: props.strings.spokenLanguageMenuTitle,\n id: 'common-call-composite-captions-spoken-settings-button',\n secondaryText: spokenLanguageString,\n iconProps: {\n iconName: 'ChangeSpokenLanguageIcon',\n styles: { root: { lineHeight: 0 } }\n },\n disabled: props.disableButtonsForHoldScreen || !captionSettingsProp.isCaptionsFeatureActive,\n onItemClick: () => {\n setIsSpokenLanguageDrawerOpen(true);\n },\n secondaryIconProps: {\n iconName: 'ChevronRight',\n styles: { root: { lineHeight: 0 } }\n }\n });\n\n if (props.useTeamsCaptions) {\n const captionLanguageString = supportedCaptionLanguageStrings\n ? supportedCaptionLanguageStrings[currentCaptionLanguage]\n : currentCaptionLanguage;\n\n captionsDrawerItems.push({\n itemKey: 'ChangeCaptionLanguage',\n text: props.strings.captionLanguageMenuTitle,\n id: 'common-call-composite-captions-subtitle-settings-button',\n secondaryText: captionLanguageString,\n iconProps: {\n iconName: 'ChangeCaptionLanguageIcon',\n styles: { root: { lineHeight: 0 } }\n },\n disabled: props.disableButtonsForHoldScreen || !captionSettingsProp.isCaptionsFeatureActive,\n onItemClick: () => {\n setIsCaptionLanguageDrawerOpen(true);\n },\n secondaryIconProps: {\n iconName: 'ChevronRight',\n styles: { root: { lineHeight: 0 } }\n }\n });\n }\n }\n\n const customDrawerButtons = useMemo(\n () =>\n generateCustomCallDrawerButtons(\n onFetchCustomButtonPropsTrampoline(drawerSelectionOptions !== false ? drawerSelectionOptions : undefined),\n drawerSelectionOptions !== false ? drawerSelectionOptions?.displayType : undefined\n ),\n [drawerSelectionOptions]\n );\n\n customDrawerButtons['primary'].slice(CUSTOM_BUTTON_OPTIONS.MAX_PRIMARY_MOBILE_CUSTOM_BUTTONS).forEach((element) => {\n drawerMenuItems.push(element);\n });\n customDrawerButtons['secondary'].forEach((element) => {\n drawerMenuItems.push(element);\n });\n customDrawerButtons['overflow'].forEach((element) => {\n drawerMenuItems.push(element);\n });\n\n return (\n <>\n {isSpokenLanguageDrawerOpen && showCaptionsButton && (\n <SpokenLanguageSettingsDrawer\n onLightDismiss={props.onLightDismiss}\n selectLanguage={setCurrentSpokenLanguage}\n setCurrentLanguage={captionSettingsHandlers.onSetSpokenLanguage}\n currentLanguage={currentSpokenLanguage}\n strings={{ menuTitle: props.strings.spokenLanguageMenuTitle }}\n supportedLanguageStrings={supportedSpokenLanguageStrings}\n />\n )}\n {isCaptionLanguageDrawerOpen && showCaptionsButton && (\n <CaptionLanguageSettingsDrawer\n onLightDismiss={props.onLightDismiss}\n selectLanguage={setCurrentCaptionLanguage}\n setCurrentLanguage={captionSettingsHandlers.onSetCaptionLanguage}\n currentLanguage={currentCaptionLanguage}\n strings={{ menuTitle: props.strings.captionLanguageMenuTitle }}\n supportedLanguageStrings={supportedCaptionLanguageStrings}\n />\n )}\n {!isSpokenLanguageDrawerOpen && !isCaptionLanguageDrawerOpen && (\n <DrawerMenu items={drawerMenuItems} onLightDismiss={props.onLightDismiss} />\n )}\n </>\n );\n};\n\nconst isDeviceSelected = (speaker: OptionsDevice, selectedSpeaker?: OptionsDevice): boolean =>\n !!selectedSpeaker && speaker.id === selectedSpeaker.id;\n\nconst isEnabled = (option: unknown): boolean => option !== false;\n"]}
1
+ {"version":3,"file":"MoreDrawer.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/common/Drawer/MoreDrawer.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;AAElC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAEL,WAAW,IAAI,UAAU,EAK1B,4CAAmC;AACpC,OAAO,EAAE,uBAAuB,EAAE,4CAAmC;AAGrE,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,4CAAmC;AAE1F,6CAA6C,CAAC,mDAAmD;AACjG,OAAO,EAAE,UAAU,EAAE,4CAAmC;AACxD,OAAO,EAAE,eAAe,EAAwB,4CAAmC;AAEnF,OAAO,EACL,qBAAqB,EACrB,+BAA+B,EAC/B,kCAAkC,EACnC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,wBAAwB,EAAgC,sDAA6C;AAC9G,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,gCAAgC,EAAE,4CAAmC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,iDAAiD,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAC5G,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAC7E,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAkH9E,MAAM,+BAA+B,GAAG,CACtC,oBAAyD,EACvB,EAAE;IACpC,IAAI,oBAAoB,KAAK,KAAK,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,OAAO,GAAG,oBAAoB,KAAK,IAAI,IAAI,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC;IAChH,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,eAAe;AACf,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAsB,EAAe,EAAE;;IAChE,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,WAAW,GAAG,UAAU,EAAE,CAAC;IACjC,MAAM,eAAe,GAA0B,EAAE,CAAC;IAElD,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;IAE5D,MAAM,aAAa,GAAG,SAAS,EAAE,CAAC;IAClC,6CAA6C,CAAC,mDAAmD;IACjG,MAAM,eAAe,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IAEhD,MAAM,OAAO,GAAG,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAC9C,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAU,MAAA,KAAK,CAAC,iBAAiB,mCAAI,KAAK,CAAC,CAAC;IAEtG,MAAM,oBAAoB,GAAG,WAAW,CAAC,eAAe,CAAyB,CAAC;IAElF,MAAM,kBAAkB,GAAG,WAAW,CACpC,CACE,GAAiF,EACjF,OAA2B,EAC3B,EAAE;QACF,MAAM,QAAQ,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;QACrE,IAAI,QAAQ,EAAE,CAAC;YACb,8EAA8E;YAC9E,0CAA0C;YAC1C,eAAe,CAAC,QAA2B,CAAC,CAAC;QAC/C,CAAC;QACD,cAAc,EAAE,CAAC;IACnB,CAAC,EACD,CAAC,QAAQ,EAAE,eAAe,EAAE,cAAc,CAAC,CAC5C,CAAC;IAEF,MAAM,sBAAsB,GAAG,+BAA+B,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAEnF,MAAM,kBAAkB,GACtB,KAAK,CAAC,mBAAmB;QACzB,qDAAqD,CAAC,sBAAsB,KAAK,KAAK;QACtF,qDAAqD,CAAC,SAAS,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;IAEzG,IAAI,KAAK,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAC1C,eAAe,CAAC,IAAI,CAAC;YACnB,OAAO,EAAE,WAAW;YACpB,iBAAiB,EAAE,GAAG,EAAE,CAAC,CACvB,oBAAC,uBAAuB,IACtB,eAAe,EAAE,CAAO,QAAQ,EAAE,EAAE;;oBAClC,MAAA,KAAK,CAAC,eAAe,sDAAG,QAAQ,CAAC,CAAC;oBAClC,cAAc,EAAE,CAAC;gBACnB,CAAC,CAAA,EACD,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,GAC1C,CACH;SACF,CAAC,CAAC;IACL,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChD,eAAe,CAAC,IAAI,CAAC;YACnB,OAAO,EAAE,UAAU;YACnB,QAAQ,EAAE,KAAK,CAAC,2BAA2B;YAC3C,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,gBAAgB;YACpC,SAAS,EAAE,EAAE,QAAQ,EAAE,oBAAoB,EAAE;YAC7C,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBAC7C,OAAO,EAAE,OAAO,CAAC,EAAE;gBACnB,SAAS,EAAE;oBACT,QAAQ,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,eAAe,CAAC;wBACxD,CAAC,CAAC,2BAA2B;wBAC7B,CAAC,CAAC,oBAAoB;iBACzB;gBACD,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,WAAW,EAAE,kBAAkB;gBAC/B,kBAAkB,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;aAC1G,CAAC,CAAC;YACH,aAAa,EAAE,MAAA,KAAK,CAAC,eAAe,0CAAE,IAAI;SAC3C,CAAC,CAAC;IACL,CAAC;IAED,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,KAAK,CAAC;IAClD,MAAM,qBAAqB,GAAG,WAAW,CACvC,CACE,GAAiF,EACjF,OAA2B,EAC3B,EAAE;QACF,MAAM,QAAQ,GAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;QAChE,IAAI,QAAQ,EAAE,CAAC;YACb,8EAA8E;YAC9E,0CAA0C;YAC1C,kBAAkB,CAAC,QAA2B,CAAC,CAAC;QAClD,CAAC;QACD,cAAc,EAAE,CAAC;IACnB,CAAC,EACD,CAAC,WAAW,EAAE,kBAAkB,EAAE,cAAc,CAAC,CAClD,CAAC;IAEF,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtD,iFAAiF;QACjF,MAAM,iBAAiB,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QACtE,MAAM,OAAO,GAAG,iBAAiB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC;QACnE,MAAM,IAAI,GAAG,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACxG,MAAM,QAAQ,GAAG,iBAAiB,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,oBAAoB,CAAC;QACpF,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,2BAA2B,CAAC;QAE1G,eAAe,CAAC,IAAI,CAAC;YACnB,OAAO,EAAE,OAAO;YAChB,QAAQ,EAAE,KAAK,CAAC,2BAA2B;YAC3C,IAAI,EAAE,IAAI;YACV,SAAS,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE;YACjC,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC5C,OAAO,EAAE,GAAG,CAAC,EAAE;gBACf,SAAS,EAAE;oBACT,QAAQ,EAAE,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ;iBACxF;gBACD,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,WAAW,EAAE,qBAAqB;gBAClC,kBAAkB,EAAE,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;gBACxG,QAAQ,EAAE,sBAAsB,KAAK,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS;aAC7G,CAAC,CAAC;YACH,aAAa,EAAE,MAAA,KAAK,CAAC,kBAAkB,0CAAE,IAAI;SAC9C,CAAC,CAAC;IACL,CAAC;IAED,MAAM,sBAAsB,GAAG;QAC7B,OAAO,EAAE,qBAAqB;QAC9B,IAAI,EAAE,CAAC,iBAAiB;YACtB,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,2BAA2B;YACxD,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,4BAA4B;QAC3D,WAAW,EAAE,GAAG,EAAE;YAChB,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;gBAC3B,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC3B,CAAC;YACD,oBAAoB,CAAC,CAAC,iBAAiB,CAAC,CAAC;YACzC,cAAc,EAAE,CAAC;QACnB,CAAC;QACD,SAAS,EAAE;YACT,QAAQ,EAAE,mBAAmB;YAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE;SACpC;KACF,CAAC;IACF;;OAEG;IACH,IAAI,KAAK,CAAC,gBAAgB,IAAI,eAAe,EAAE,CAAC;QAC9C,eAAe,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,oBAAoB,GAAG;QAC3B,OAAO,EAAE,oBAAoB;QAC7B,SAAS,EAAE;YACT,QAAQ,EAAE,gBAAgB;YAC1B,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE;SACpC;QACD,QAAQ,EAAE,KAAK,CAAC,2BAA2B;QAC3C,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,6BAA6B;QAC9D,YAAY,EAAE;YACZ;gBACE,OAAO,EAAE,qBAAqB;gBAC9B,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,yCAAyC;gBAC1E,WAAW,EAAE,GAAG,EAAE;oBAChB,KAAK,CAAC,sBAAsB,IAAI,KAAK,CAAC,sBAAsB,CAAC,oBAAoB,CAAC,CAAC;oBACnF,cAAc,EAAE,CAAC;gBACnB,CAAC;gBACD,SAAS,EAAE;oBACT,QAAQ,EAAE,iCAAiC;oBAC3C,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE;iBACpC;gBACD,kBAAkB,EAAE,KAAK,CAAC,oBAAoB,KAAK,oBAAoB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;aAC7G;YACD;gBACE,OAAO,EAAE,4BAA4B;gBACrC,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,0CAA0C;gBAC3E,WAAW,EAAE,GAAG,EAAE;oBAChB,KAAK,CAAC,sBAAsB,IAAI,KAAK,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;oBAC/E,cAAc,EAAE,CAAC;gBACnB,CAAC;gBACD,SAAS,EAAE;oBACT,QAAQ,EAAE,6BAA6B;oBACvC,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE;iBACpC;gBACD,kBAAkB,EAAE,KAAK,CAAC,oBAAoB,KAAK,gBAAgB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;aACzG;SACF;KACF,CAAC;IAEF,2DAA2D;IAC3D,MAAM,aAAa,GAAG;QACpB,OAAO,EAAE,qBAAqB;QAC9B,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,mCAAmC;QACpE,WAAW,EAAE,GAAG,EAAE;YAChB,KAAK,CAAC,sBAAsB,IAAI,KAAK,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;YACxE,cAAc,EAAE,CAAC;QACnB,CAAC;QACD,SAAS,EAAE;YACT,QAAQ,EAAE,sBAAsB;YAChC,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE;SACpC;QACD,kBAAkB,EAAE,KAAK,CAAC,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;KAClG,CAAC;IAEF,2DAA2D;IAC3D,MAAA,oBAAoB,CAAC,YAAY,0CAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IAEvD,eAAe,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAE3C,IAAI,sBAAsB,KAAK,KAAK,IAAI,SAAS,CAAC,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,YAAY,CAAC,EAAE,CAAC;QACxF,eAAe,CAAC,IAAI,CAAC;YACnB,OAAO,EAAE,QAAQ;YACjB,EAAE,EAAE,qCAAqC;YACzC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,iBAAiB;YACrC,SAAS,EAAE,EAAE,QAAQ,EAAE,kBAAkB,EAAE;YAC3C,WAAW,EAAE,KAAK,CAAC,qBAAqB;YACxC,QAAQ,EAAE,UAAU,CAAC,sBAAsB,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,2BAA2B;SAC/F,CAAC,CAAC;IACL,CAAC;IAED,6CAA6C,CAAC,mDAAmD;IACjG,IAAI,sBAAsB,KAAK,KAAK,IAAI,SAAS,CAAC,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,UAAU,CAAC,EAAE,CAAC;QACtF,eAAe,CAAC,IAAI,CAAC;YACnB,OAAO,EAAE,eAAe;YACxB,QAAQ,EAAE,KAAK,CAAC,2BAA2B,IAAI,UAAU,CAAC,sBAAsB,CAAC,UAAU,CAAC;YAC5F,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB;YAClE,WAAW,EAAE,GAAG,EAAE;gBAChB,eAAe,CAAC,YAAY,EAAE,CAAC;gBAC/B,cAAc,EAAE,CAAC;YACnB,CAAC;YACD,SAAS,EAAE,EAAE,QAAQ,EAAE,4BAA4B,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE;SAC3F,CAAC,CAAC;IACL,CAAC;IAED,MAAM,IAAI,GAAG,MAAA,WAAW,CAAC,QAAQ,EAAE,CAAC,IAAI,0CAAE,IAAI,CAAC;IAC/C,MAAM,8BAA8B,GAClC,WAAW,CAAC,QAAQ,EAAE,CAAC,WAAW,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEvF,IACE,sBAAsB,KAAK,KAAK;QAChC,SAAS,CAAC,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,eAAe,CAAC;QAClD,CAAC,8BAA8B,EAC/B,CAAC;QACD,MAAM,aAAa,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,6BAA6B,CAAC;QACnH,eAAe,CAAC,IAAI,CAAC;YACnB,OAAO,EAAE,oBAAoB;YAC7B,QAAQ,EAAE,KAAK,CAAC,2BAA2B,IAAI,UAAU,CAAC,sBAAsB,CAAC,eAAe,CAAC;YACjG,IAAI,EAAE,oBAAoB,CAAC,OAAO;gBAChC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO;gBACzD,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ;YAC5D,WAAW,EAAE,GAAG,EAAE;gBAChB,IAAI,oBAAoB,CAAC,iBAAiB,EAAE,CAAC;oBAC3C,oBAAoB,CAAC,iBAAiB,EAAE,CAAC;gBAC3C,CAAC;gBACD,cAAc,EAAE,CAAC;YACnB,CAAC;YACD,SAAS,EAAE;gBACT,QAAQ,EAAE,aAAa;gBACvB,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE;aACpC;SACF,CAAC,CAAC;IACL,CAAC;IAED,MAAM,cAAc,GAAG,iBAAiB,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;IAEjE,MAAM,uBAAuB,GAAG,0BAA0B,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;IAEnF,IACE,sBAAsB,KAAK,KAAK;QAChC,SAAS,CAAC,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,2BAA2B,CAAC;QAC9D,cAAc;QACd,uBAAuB,EACvB,CAAC;QACD,eAAe,CAAC,IAAI,CAAC;YACnB,OAAO,EAAE,kBAAkB;YAC3B,QAAQ,EAAE,UAAU,CAAC,sBAAsB,CAAC,2BAA2B,CAAC;YACxE,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,wBAAwB;YACzD,WAAW,EAAE,GAAG,EAAE;;gBAChB,MAAA,KAAK,CAAC,uBAAuB,qDAAI,CAAC;gBAClC,cAAc,EAAE,CAAC;YACnB,CAAC;YACD,SAAS,EAAE;gBACT,QAAQ,EAAE,mBAAmB;gBAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE;aACpC;SACF,CAAC,CAAC;IACL,CAAC;IAED,sBAAsB;IACtB,MAAM,8BAA8B,GAAG,SAAS,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC;IAEtF,sBAAsB;IACtB,MAAM,+BAA+B,GAAG,SAAS,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC;IAExF,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,wBAAwB,CAAC,CAAC;IAEzE,MAAM,2BAA2B,GAAG,WAAW,CAAC,oBAAoB,CAAC,CAAC;IAEtE,MAAM,uBAAuB,GAAG,WAAW,CAAC,sBAAsB,CAAC,CAAC;IAEpE,MAAM,CAAC,0BAA0B,EAAE,6BAA6B,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IAE7F,MAAM,CAAC,2BAA2B,EAAE,8BAA8B,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IAE/F,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,CAChE,MAAA,mBAAmB,CAAC,qBAAqB,mCAAI,OAAO,CACrD,CAAC;IAEF,MAAM,CAAC,sBAAsB,EAAE,yBAAyB,CAAC,GAAG,QAAQ,CAClE,MAAA,mBAAmB,CAAC,sBAAsB,mCAAI,gCAAgC,CAAC,qBAAqB,CAAC,CACtG,CAAC;IAEF,MAAM,cAAc,GAAG,WAAW,CAAC,GAAS,EAAE;QAC5C,IAAI,CAAC,mBAAmB,CAAC,uBAAuB,EAAE,CAAC;YACjD,MAAM,2BAA2B,CAAC,eAAe,CAAC;gBAChD,cAAc,EAAE,qBAAqB;aACtC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,2BAA2B,CAAC,cAAc,EAAE,CAAC;QAC/C,CAAC;IACH,CAAC,CAAA,EAAE,CAAC,mBAAmB,CAAC,uBAAuB,EAAE,2BAA2B,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAEtG,IAAI,kBAAkB,EAAE,CAAC;QACvB,MAAM,mBAAmB,GAA0B,EAAE,CAAC;QAEtD,MAAM,oBAAoB,GAAG,8BAA8B;YACzD,CAAC,CAAC,8BAA8B,CAAC,qBAAqB,CAAC;YACvD,CAAC,CAAC,qBAAqB,CAAC;QAE1B,eAAe,CAAC,IAAI,CAAC;YACnB,OAAO,EAAE,UAAU;YACnB,EAAE,EAAE,uCAAuC;YAC3C,QAAQ,EAAE,KAAK,CAAC,2BAA2B;YAC3C,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,iBAAiB;YACrC,SAAS,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE;YACvC,YAAY,EAAE,mBAAmB;SAClC,CAAC,CAAC;QAEH,mBAAmB,CAAC,IAAI,CAAC;YACvB,OAAO,EAAE,mBAAmB;YAC5B,IAAI,EAAE,mBAAmB,CAAC,uBAAuB;gBAC/C,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,mCAAmC;gBAChE,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,oCAAoC;YACnE,SAAS,EAAE;gBACT,QAAQ,EAAE,mBAAmB,CAAC,uBAAuB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,cAAc;gBAC1F,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE;aACpC;YACD,WAAW,EAAE,cAAc;YAC3B,QAAQ,EAAE,KAAK,CAAC,2BAA2B;YAC3C,kBAAkB,EAAE,CAClB,oBAAC,KAAK,IAAC,YAAY,QAAC,aAAa,EAAC,QAAQ;gBACxC,oBAAC,MAAM,IACL,EAAE,EAAC,8CAA8C,EACjD,OAAO,EAAE,mBAAmB,CAAC,uBAAuB,EACpD,MAAM,EAAE,uBAAuB,CAAC,KAAK,EAAE,mBAAmB,CAAC,uBAAuB,CAAC,EACnF,QAAQ,EAAE,cAAc,GACxB,CACI,CACT;SACF,CAAC,CAAC;QAEH,mBAAmB,CAAC,IAAI,CAAC;YACvB,OAAO,EAAE,sBAAsB;YAC/B,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,uBAAuB;YAC3C,EAAE,EAAE,uDAAuD;YAC3D,aAAa,EAAE,oBAAoB;YACnC,SAAS,EAAE;gBACT,QAAQ,EAAE,0BAA0B;gBACpC,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE;aACpC;YACD,QAAQ,EAAE,KAAK,CAAC,2BAA2B,IAAI,CAAC,mBAAmB,CAAC,uBAAuB;YAC3F,WAAW,EAAE,GAAG,EAAE;gBAChB,6BAA6B,CAAC,IAAI,CAAC,CAAC;YACtC,CAAC;YACD,kBAAkB,EAAE;gBAClB,QAAQ,EAAE,cAAc;gBACxB,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE;aACpC;SACF,CAAC,CAAC;QAEH,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC3B,MAAM,qBAAqB,GAAG,+BAA+B;gBAC3D,CAAC,CAAC,+BAA+B,CAAC,sBAAsB,CAAC;gBACzD,CAAC,CAAC,sBAAsB,CAAC;YAE3B,mBAAmB,CAAC,IAAI,CAAC;gBACvB,OAAO,EAAE,uBAAuB;gBAChC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,wBAAwB;gBAC5C,EAAE,EAAE,yDAAyD;gBAC7D,aAAa,EAAE,qBAAqB;gBACpC,SAAS,EAAE;oBACT,QAAQ,EAAE,2BAA2B;oBACrC,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE;iBACpC;gBACD,QAAQ,EAAE,KAAK,CAAC,2BAA2B,IAAI,CAAC,mBAAmB,CAAC,uBAAuB;gBAC3F,WAAW,EAAE,GAAG,EAAE;oBAChB,8BAA8B,CAAC,IAAI,CAAC,CAAC;gBACvC,CAAC;gBACD,kBAAkB,EAAE;oBAClB,QAAQ,EAAE,cAAc;oBACxB,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE;iBACpC;aACF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,mBAAmB,GAAG,OAAO,CACjC,GAAG,EAAE,CACH,+BAA+B,CAC7B,kCAAkC,CAAC,sBAAsB,KAAK,KAAK,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,SAAS,CAAC,EACzG,sBAAsB,KAAK,KAAK,CAAC,CAAC,CAAC,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,WAAW,CAAC,CAAC,CAAC,SAAS,CACnF,EACH,CAAC,sBAAsB,CAAC,CACzB,CAAC;IAEF,mBAAmB,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,iCAAiC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAChH,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;IACH,mBAAmB,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QACnD,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;IACH,mBAAmB,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAClD,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,OAAO,CACL;QACG,0BAA0B,IAAI,kBAAkB,IAAI,CACnD,oBAAC,4BAA4B,IAC3B,cAAc,EAAE,KAAK,CAAC,cAAc,EACpC,cAAc,EAAE,wBAAwB,EACxC,kBAAkB,EAAE,uBAAuB,CAAC,mBAAmB,EAC/D,eAAe,EAAE,qBAAqB,EACtC,OAAO,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAC7D,wBAAwB,EAAE,8BAA8B,GACxD,CACH;QACA,2BAA2B,IAAI,kBAAkB,IAAI,CACpD,oBAAC,6BAA6B,IAC5B,cAAc,EAAE,KAAK,CAAC,cAAc,EACpC,cAAc,EAAE,yBAAyB,EACzC,kBAAkB,EAAE,uBAAuB,CAAC,oBAAoB,EAChE,eAAe,EAAE,sBAAsB,EACvC,OAAO,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAC9D,wBAAwB,EAAE,+BAA+B,GACzD,CACH;QACA,CAAC,0BAA0B,IAAI,CAAC,2BAA2B,IAAI,CAC9D,oBAAC,UAAU,IAAC,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,GAAI,CAC7E,CACA,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,OAAsB,EAAE,eAA+B,EAAW,EAAE,CAC5F,CAAC,CAAC,eAAe,IAAI,OAAO,CAAC,EAAE,KAAK,eAAe,CAAC,EAAE,CAAC;AAEzD,MAAM,SAAS,GAAG,CAAC,MAAe,EAAW,EAAE,CAAC,MAAM,KAAK,KAAK,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React, { useCallback } from 'react';\nimport { useState } from 'react';\nimport { useMemo } from 'react';\nimport {\n OptionsDevice,\n _DrawerMenu as DrawerMenu,\n _DrawerMenuItemProps as DrawerMenuItemProps,\n _DrawerMenuStyles,\n SpokenLanguageStrings,\n CaptionLanguageStrings\n} from '@internal/react-components';\nimport { _ReactionDrawerMenuItem } from '@internal/react-components';\nimport { ReactionResources } from '@internal/react-components';\nimport { VideoGalleryLayout } from '@internal/react-components';\nimport { _StartCaptionsButton, _CaptionsSettingsModal } from '@internal/react-components';\n\n/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\nimport { HoldButton } from '@internal/react-components';\nimport { RaiseHandButton, RaiseHandButtonProps } from '@internal/react-components';\nimport { AudioDeviceInfo } from '@azure/communication-calling';\nimport {\n CUSTOM_BUTTON_OPTIONS,\n generateCustomCallDrawerButtons,\n onFetchCustomButtonPropsTrampoline\n} from '../ControlBar/CustomButton';\nimport { usePropsFor } from '../../CallComposite/hooks/usePropsFor';\nimport { useLocale } from '../../localization';\nimport { isDisabled } from '../../CallComposite/utils';\nimport { CommonCallControlOptions } from '../types/CommonCallControlOptions';\nimport { Stack, Toggle, useTheme } from '@fluentui/react';\nimport { _pxToRem } from '@internal/acs-ui-common';\nimport { useAdaptedSelector } from '../../CallComposite/hooks/useAdaptedSelector';\nimport { _captionSettingsSelector, _startCaptionsButtonSelector } from '@internal/calling-component-bindings';\nimport { useHandlers } from '../../CallComposite/hooks/useHandlers';\nimport { CaptionLanguageSettingsDrawer } from './CaptionLanguageSettingsDrawer';\nimport { themedToggleButtonStyle } from './MoreDrawer.styles';\nimport { _spokenLanguageToCaptionLanguage } from '@internal/react-components';\nimport { useAdapter } from '../../CallComposite/adapter/CallAdapterProvider';\nimport { useSelector } from '../../CallComposite/hooks/useSelector';\nimport { getTargetCallees } from '../../CallComposite/selectors/baseSelectors';\nimport { getTeamsMeetingCoordinates, getIsTeamsMeeting } from '../../CallComposite/selectors/baseSelectors';\nimport { showDtmfDialer } from '../../CallComposite/utils/MediaGalleryUtils';\nimport { SpokenLanguageSettingsDrawer } from './SpokenLanguageSettingsDrawer';\n\n/** @private */\nexport interface MoreDrawerStrings {\n /**\n * Label for people drawerMenuItem.\n */\n peopleButtonLabel: string;\n /**\n * Label for audio device drawerMenuItem.\n *\n * @remarks This replaces the microphoneMenuTitle speakers can not be enumerated\n *\n */\n audioDeviceMenuTitle?: string;\n /**\n * Label for microphone drawerMenuItem.\n *\n * @remarks Only displayed when speakers can be enumerated otherwise audioDeviceMenuTitle is used\n *\n */\n microphoneMenuTitle: string;\n /**\n * Label for speaker drawerMenuItem.\n *\n * @remarks Only displayed when speakers can be enumerated\n *\n */\n speakerMenuTitle: string;\n /**\n * Label for captions drawerMenuItem\n *\n * @remarks Only displayed when in Teams call\n */\n captionsMenuTitle: string;\n /**\n * Label for spokenLanguage drawerMenuItem\n *\n * @remarks Only displayed when in Teams call, disabled until captions is on\n */\n spokenLanguageMenuTitle: string;\n\n /**\n * Label for captionLanguage drawerMenuItem\n *\n * @remarks Only displayed when in Teams call, disabled until captions is on\n */\n captionLanguageMenuTitle: string;\n\n /**\n * Label for gallery options drawerMenuItem\n */\n galleryOptionsMenuTitle: string;\n}\n\n/** @private */\nexport interface MoreDrawerDevicesMenuProps {\n /**\n * Available microphones for selection\n */\n microphones?: OptionsDevice[];\n /**\n * Available speakers for selection\n */\n speakers?: OptionsDevice[];\n /**\n * Microphone that is shown as currently selected\n */\n selectedMicrophone?: OptionsDevice;\n /**\n * Speaker that is shown as currently selected\n */\n selectedSpeaker?: OptionsDevice;\n /**\n * Speaker when a speaker is selected\n */\n onSelectSpeaker: (device: AudioDeviceInfo) => Promise<void>;\n /**\n * Callback when a microphone is selected\n */\n onSelectMicrophone: (device: AudioDeviceInfo) => Promise<void>;\n userSetGalleryLayout?: VideoGalleryLayout;\n /**\n * Callback for when the gallery layout is changed\n */\n onUserSetGalleryLayout?: (layout: VideoGalleryLayout) => void;\n /**\n * Callback to hide and show the dialpad in the more drawer\n */\n onSetDialpadPage?: () => void;\n /**\n * Whether the dialpad is present in the call\n */\n dtmfDialerPresent?: boolean;\n}\n\n/** @private */\nexport interface MoreDrawerProps extends MoreDrawerDevicesMenuProps {\n onLightDismiss: () => void;\n onPeopleButtonClicked: () => void;\n callControls?: boolean | CommonCallControlOptions;\n onClickShowDialpad?: () => void;\n isCaptionsSupported?: boolean;\n strings: MoreDrawerStrings;\n disableButtonsForHoldScreen?: boolean;\n useTeamsCaptions?: boolean;\n reactionResources?: ReactionResources;\n onReactionClick?: (reaction: string) => Promise<void>;\n\n onClickMeetingPhoneInfo?: () => void;\n /* @conditional-compile-remove(soft-mute) */\n onMuteAllRemoteParticipants?: () => void;\n}\n\nconst inferCallWithChatControlOptions = (\n callWithChatControls?: boolean | CommonCallControlOptions\n): CommonCallControlOptions | false => {\n if (callWithChatControls === false) {\n return false;\n }\n const options = callWithChatControls === true || callWithChatControls === undefined ? {} : callWithChatControls;\n return options;\n};\n\n/** @private */\nexport const MoreDrawer = (props: MoreDrawerProps): JSX.Element => {\n const theme = useTheme();\n const callAdapter = useAdapter();\n const drawerMenuItems: DrawerMenuItemProps[] = [];\n\n const { speakers, onSelectSpeaker, onLightDismiss } = props;\n\n const localeStrings = useLocale();\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\n const holdButtonProps = usePropsFor(HoldButton);\n\n const callees = useSelector(getTargetCallees);\n const allowDtmfDialer = showDtmfDialer(callees);\n const [dtmfDialerChecked, setDtmfDialerChecked] = useState<boolean>(props.dtmfDialerPresent ?? false);\n\n const raiseHandButtonProps = usePropsFor(RaiseHandButton) as RaiseHandButtonProps;\n\n const onSpeakerItemClick = useCallback(\n (\n _ev: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement> | undefined,\n itemKey: string | undefined\n ) => {\n const selected = speakers?.find((speaker) => speaker.id === itemKey);\n if (selected) {\n // This is unsafe - we're only passing in part of the argument to the handler.\n // But this is a known issue in our state.\n onSelectSpeaker(selected as AudioDeviceInfo);\n }\n onLightDismiss();\n },\n [speakers, onSelectSpeaker, onLightDismiss]\n );\n\n const drawerSelectionOptions = inferCallWithChatControlOptions(props.callControls);\n\n const showCaptionsButton =\n props.isCaptionsSupported &&\n /* @conditional-compile-remove(acs-close-captions) */ drawerSelectionOptions !== false &&\n /* @conditional-compile-remove(acs-close-captions) */ isEnabled(drawerSelectionOptions.captionsButton);\n\n if (props.reactionResources !== undefined) {\n drawerMenuItems.push({\n itemKey: 'reactions',\n onRendererContent: () => (\n <_ReactionDrawerMenuItem\n onReactionClick={async (reaction) => {\n props.onReactionClick?.(reaction);\n onLightDismiss();\n }}\n reactionResources={props.reactionResources}\n />\n )\n });\n }\n\n if (props.speakers && props.speakers.length > 0) {\n drawerMenuItems.push({\n itemKey: 'speakers',\n disabled: props.disableButtonsForHoldScreen,\n text: props.strings.speakerMenuTitle,\n iconProps: { iconName: 'MoreDrawerSpeakers' },\n subMenuProps: props.speakers.map((speaker) => ({\n itemKey: speaker.id,\n iconProps: {\n iconName: isDeviceSelected(speaker, props.selectedSpeaker)\n ? 'MoreDrawerSelectedSpeaker'\n : 'MoreDrawerSpeakers'\n },\n text: speaker.name,\n onItemClick: onSpeakerItemClick,\n secondaryIconProps: isDeviceSelected(speaker, props.selectedSpeaker) ? { iconName: 'Accept' } : undefined\n })),\n secondaryText: props.selectedSpeaker?.name\n });\n }\n\n const { microphones, onSelectMicrophone } = props;\n const onMicrophoneItemClick = useCallback(\n (\n _ev: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement> | undefined,\n itemKey: string | undefined\n ) => {\n const selected = microphones?.find((mic) => mic.id === itemKey);\n if (selected) {\n // This is unsafe - we're only passing in part of the argument to the handler.\n // But this is a known issue in our state.\n onSelectMicrophone(selected as AudioDeviceInfo);\n }\n onLightDismiss();\n },\n [microphones, onSelectMicrophone, onLightDismiss]\n );\n\n if (props.microphones && props.microphones.length > 0) {\n // Set props as Microphone if speakers can be enumerated else set as Audio Device\n const speakersAvailable = props.speakers && props.speakers.length > 0;\n const itemKey = speakersAvailable ? 'microphones' : 'audioDevices';\n const text = speakersAvailable ? props.strings.microphoneMenuTitle : props.strings.audioDeviceMenuTitle;\n const iconName = speakersAvailable ? 'MoreDrawerMicrophones' : 'MoreDrawerSpeakers';\n const selectedIconName = speakersAvailable ? 'MoreDrawerSelectedMicrophone' : 'MoreDrawerSelectedSpeaker';\n\n drawerMenuItems.push({\n itemKey: itemKey,\n disabled: props.disableButtonsForHoldScreen,\n text: text,\n iconProps: { iconName: iconName },\n subMenuProps: props.microphones.map((mic) => ({\n itemKey: mic.id,\n iconProps: {\n iconName: isDeviceSelected(mic, props.selectedMicrophone) ? selectedIconName : iconName\n },\n text: mic.name,\n onItemClick: onMicrophoneItemClick,\n secondaryIconProps: isDeviceSelected(mic, props.selectedMicrophone) ? { iconName: 'Accept' } : undefined,\n disabled: drawerSelectionOptions !== false ? isDisabled(drawerSelectionOptions.microphoneButton) : undefined\n })),\n secondaryText: props.selectedMicrophone?.name\n });\n }\n\n const dtmfDialerScreenOption = {\n itemKey: 'dtmfDialerScreenKey',\n text: !dtmfDialerChecked\n ? localeStrings.strings.call.dtmfDialerMoreButtonLabelOn\n : localeStrings.strings.call.dtmfDialerMoreButtonLabelOff,\n onItemClick: () => {\n if (props.onSetDialpadPage) {\n props.onSetDialpadPage();\n }\n setDtmfDialerChecked(!dtmfDialerChecked);\n onLightDismiss();\n },\n iconProps: {\n iconName: 'DtmfDialpadButton',\n styles: { root: { lineHeight: 0 } }\n }\n };\n /**\n * Only render the dtmf dialer if the dialpad for PSTN calls is not present\n */\n if (props.onSetDialpadPage && allowDtmfDialer) {\n drawerMenuItems.push(dtmfDialerScreenOption);\n }\n\n const galleryLayoutOptions = {\n itemKey: 'galleryPositionKey',\n iconProps: {\n iconName: 'GalleryOptions',\n styles: { root: { lineHeight: 0 } }\n },\n disabled: props.disableButtonsForHoldScreen,\n text: localeStrings.strings.call.moreButtonGalleryControlLabel,\n subMenuProps: [\n {\n itemKey: 'dynamicSelectionKey',\n text: localeStrings.strings.call.moreButtonGalleryFloatingLocalLayoutLabel,\n onItemClick: () => {\n props.onUserSetGalleryLayout && props.onUserSetGalleryLayout('floatingLocalVideo');\n onLightDismiss();\n },\n iconProps: {\n iconName: 'FloatingLocalVideoGalleryLayout',\n styles: { root: { lineHeight: 0 } }\n },\n secondaryIconProps: props.userSetGalleryLayout === 'floatingLocalVideo' ? { iconName: 'Accept' } : undefined\n },\n {\n itemKey: 'focusedContentSelectionKey',\n text: localeStrings.strings.call.moreButtonGalleryFocusedContentLayoutLabel,\n onItemClick: () => {\n props.onUserSetGalleryLayout && props.onUserSetGalleryLayout('focusedContent');\n onLightDismiss();\n },\n iconProps: {\n iconName: 'FocusedContentGalleryLayout',\n styles: { root: { lineHeight: 0 } }\n },\n secondaryIconProps: props.userSetGalleryLayout === 'focusedContent' ? { iconName: 'Accept' } : undefined\n }\n ]\n };\n\n /* @conditional-compile-remove(gallery-layout-composite) */\n const galleryOption = {\n itemKey: 'defaultSelectionKey',\n text: localeStrings.strings.call.moreButtonGalleryDefaultLayoutLabel,\n onItemClick: () => {\n props.onUserSetGalleryLayout && props.onUserSetGalleryLayout('default');\n onLightDismiss();\n },\n iconProps: {\n iconName: 'DefaultGalleryLayout',\n styles: { root: { lineHeight: 0 } }\n },\n secondaryIconProps: props.userSetGalleryLayout === 'default' ? { iconName: 'Accept' } : undefined\n };\n\n /* @conditional-compile-remove(gallery-layout-composite) */\n galleryLayoutOptions.subMenuProps?.push(galleryOption);\n\n drawerMenuItems.push(galleryLayoutOptions);\n\n if (drawerSelectionOptions !== false && isEnabled(drawerSelectionOptions?.peopleButton)) {\n drawerMenuItems.push({\n itemKey: 'people',\n id: 'call-composite-drawer-people-button',\n text: props.strings.peopleButtonLabel,\n iconProps: { iconName: 'MoreDrawerPeople' },\n onItemClick: props.onPeopleButtonClicked,\n disabled: isDisabled(drawerSelectionOptions.peopleButton) || props.disableButtonsForHoldScreen\n });\n }\n\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\n if (drawerSelectionOptions !== false && isEnabled(drawerSelectionOptions?.holdButton)) {\n drawerMenuItems.push({\n itemKey: 'holdButtonKey',\n disabled: props.disableButtonsForHoldScreen || isDisabled(drawerSelectionOptions.holdButton),\n text: localeStrings.component.strings.holdButton.tooltipOffContent,\n onItemClick: () => {\n holdButtonProps.onToggleHold();\n onLightDismiss();\n },\n iconProps: { iconName: 'HoldCallContextualMenuItem', styles: { root: { lineHeight: 0 } } }\n });\n }\n\n const role = callAdapter.getState().call?.role;\n const hideRaiseHandButtonInRoomsCall =\n callAdapter.getState().isRoomsCall && role && ['Consumer', 'Unknown'].includes(role);\n\n if (\n drawerSelectionOptions !== false &&\n isEnabled(drawerSelectionOptions?.raiseHandButton) &&\n !hideRaiseHandButtonInRoomsCall\n ) {\n const raiseHandIcon = raiseHandButtonProps.checked ? 'LowerHandContextualMenuItem' : 'RaiseHandContextualMenuItem';\n drawerMenuItems.push({\n itemKey: 'raiseHandButtonKey',\n disabled: props.disableButtonsForHoldScreen || isDisabled(drawerSelectionOptions.raiseHandButton),\n text: raiseHandButtonProps.checked\n ? localeStrings.component.strings.raiseHandButton.onLabel\n : localeStrings.component.strings.raiseHandButton.offLabel,\n onItemClick: () => {\n if (raiseHandButtonProps.onToggleRaiseHand) {\n raiseHandButtonProps.onToggleRaiseHand();\n }\n onLightDismiss();\n },\n iconProps: {\n iconName: raiseHandIcon,\n styles: { root: { lineHeight: 0 } }\n }\n });\n }\n\n const isTeamsMeeting = getIsTeamsMeeting(callAdapter.getState());\n\n const teamsMeetingCoordinates = getTeamsMeetingCoordinates(callAdapter.getState());\n\n if (\n drawerSelectionOptions !== false &&\n isEnabled(drawerSelectionOptions?.teamsMeetingPhoneCallButton) &&\n isTeamsMeeting &&\n teamsMeetingCoordinates\n ) {\n drawerMenuItems.push({\n itemKey: 'phoneCallInfoKey',\n disabled: isDisabled(drawerSelectionOptions.teamsMeetingPhoneCallButton),\n text: localeStrings.strings.call.phoneCallMoreButtonLabel,\n onItemClick: () => {\n props.onClickMeetingPhoneInfo?.();\n onLightDismiss();\n },\n iconProps: {\n iconName: 'PhoneNumberButton',\n styles: { root: { lineHeight: 0 } }\n }\n });\n }\n\n //Captions drawer menu\n const supportedSpokenLanguageStrings = useLocale().strings.call.spokenLanguageStrings;\n\n //Captions drawer menu\n const supportedCaptionLanguageStrings = useLocale().strings.call.captionLanguageStrings;\n\n const captionSettingsProp = useAdaptedSelector(_captionSettingsSelector);\n\n const startCaptionsButtonHandlers = useHandlers(_StartCaptionsButton);\n\n const captionSettingsHandlers = useHandlers(_CaptionsSettingsModal);\n\n const [isSpokenLanguageDrawerOpen, setIsSpokenLanguageDrawerOpen] = useState<boolean>(false);\n\n const [isCaptionLanguageDrawerOpen, setIsCaptionLanguageDrawerOpen] = useState<boolean>(false);\n\n const [currentSpokenLanguage, setCurrentSpokenLanguage] = useState<keyof SpokenLanguageStrings>(\n captionSettingsProp.currentSpokenLanguage ?? 'en-us'\n );\n\n const [currentCaptionLanguage, setCurrentCaptionLanguage] = useState<keyof CaptionLanguageStrings>(\n captionSettingsProp.currentCaptionLanguage ?? _spokenLanguageToCaptionLanguage[currentSpokenLanguage]\n );\n\n const onToggleChange = useCallback(async () => {\n if (!captionSettingsProp.isCaptionsFeatureActive) {\n await startCaptionsButtonHandlers.onStartCaptions({\n spokenLanguage: currentSpokenLanguage\n });\n } else {\n startCaptionsButtonHandlers.onStopCaptions();\n }\n }, [captionSettingsProp.isCaptionsFeatureActive, startCaptionsButtonHandlers, currentSpokenLanguage]);\n\n if (showCaptionsButton) {\n const captionsDrawerItems: DrawerMenuItemProps[] = [];\n\n const spokenLanguageString = supportedSpokenLanguageStrings\n ? supportedSpokenLanguageStrings[currentSpokenLanguage]\n : currentSpokenLanguage;\n\n drawerMenuItems.push({\n itemKey: 'captions',\n id: 'common-call-composite-captions-button',\n disabled: props.disableButtonsForHoldScreen,\n text: props.strings.captionsMenuTitle,\n iconProps: { iconName: 'CaptionsIcon' },\n subMenuProps: captionsDrawerItems\n });\n\n captionsDrawerItems.push({\n itemKey: 'ToggleCaptionsKey',\n text: captionSettingsProp.isCaptionsFeatureActive\n ? localeStrings.strings.call.startCaptionsButtonTooltipOnContent\n : localeStrings.strings.call.startCaptionsButtonTooltipOffContent,\n iconProps: {\n iconName: captionSettingsProp.isCaptionsFeatureActive ? 'CaptionsOffIcon' : 'CaptionsIcon',\n styles: { root: { lineHeight: 0 } }\n },\n onItemClick: onToggleChange,\n disabled: props.disableButtonsForHoldScreen,\n secondaryComponent: (\n <Stack verticalFill verticalAlign=\"center\">\n <Toggle\n id=\"common-call-composite-captions-toggle-button\"\n checked={captionSettingsProp.isCaptionsFeatureActive}\n styles={themedToggleButtonStyle(theme, captionSettingsProp.isCaptionsFeatureActive)}\n onChange={onToggleChange}\n />\n </Stack>\n )\n });\n\n captionsDrawerItems.push({\n itemKey: 'ChangeSpokenLanguage',\n text: props.strings.spokenLanguageMenuTitle,\n id: 'common-call-composite-captions-spoken-settings-button',\n secondaryText: spokenLanguageString,\n iconProps: {\n iconName: 'ChangeSpokenLanguageIcon',\n styles: { root: { lineHeight: 0 } }\n },\n disabled: props.disableButtonsForHoldScreen || !captionSettingsProp.isCaptionsFeatureActive,\n onItemClick: () => {\n setIsSpokenLanguageDrawerOpen(true);\n },\n secondaryIconProps: {\n iconName: 'ChevronRight',\n styles: { root: { lineHeight: 0 } }\n }\n });\n\n if (props.useTeamsCaptions) {\n const captionLanguageString = supportedCaptionLanguageStrings\n ? supportedCaptionLanguageStrings[currentCaptionLanguage]\n : currentCaptionLanguage;\n\n captionsDrawerItems.push({\n itemKey: 'ChangeCaptionLanguage',\n text: props.strings.captionLanguageMenuTitle,\n id: 'common-call-composite-captions-subtitle-settings-button',\n secondaryText: captionLanguageString,\n iconProps: {\n iconName: 'ChangeCaptionLanguageIcon',\n styles: { root: { lineHeight: 0 } }\n },\n disabled: props.disableButtonsForHoldScreen || !captionSettingsProp.isCaptionsFeatureActive,\n onItemClick: () => {\n setIsCaptionLanguageDrawerOpen(true);\n },\n secondaryIconProps: {\n iconName: 'ChevronRight',\n styles: { root: { lineHeight: 0 } }\n }\n });\n }\n }\n\n const customDrawerButtons = useMemo(\n () =>\n generateCustomCallDrawerButtons(\n onFetchCustomButtonPropsTrampoline(drawerSelectionOptions !== false ? drawerSelectionOptions : undefined),\n drawerSelectionOptions !== false ? drawerSelectionOptions?.displayType : undefined\n ),\n [drawerSelectionOptions]\n );\n\n customDrawerButtons['primary'].slice(CUSTOM_BUTTON_OPTIONS.MAX_PRIMARY_MOBILE_CUSTOM_BUTTONS).forEach((element) => {\n drawerMenuItems.push(element);\n });\n customDrawerButtons['secondary'].forEach((element) => {\n drawerMenuItems.push(element);\n });\n customDrawerButtons['overflow'].forEach((element) => {\n drawerMenuItems.push(element);\n });\n\n return (\n <>\n {isSpokenLanguageDrawerOpen && showCaptionsButton && (\n <SpokenLanguageSettingsDrawer\n onLightDismiss={props.onLightDismiss}\n selectLanguage={setCurrentSpokenLanguage}\n setCurrentLanguage={captionSettingsHandlers.onSetSpokenLanguage}\n currentLanguage={currentSpokenLanguage}\n strings={{ menuTitle: props.strings.spokenLanguageMenuTitle }}\n supportedLanguageStrings={supportedSpokenLanguageStrings}\n />\n )}\n {isCaptionLanguageDrawerOpen && showCaptionsButton && (\n <CaptionLanguageSettingsDrawer\n onLightDismiss={props.onLightDismiss}\n selectLanguage={setCurrentCaptionLanguage}\n setCurrentLanguage={captionSettingsHandlers.onSetCaptionLanguage}\n currentLanguage={currentCaptionLanguage}\n strings={{ menuTitle: props.strings.captionLanguageMenuTitle }}\n supportedLanguageStrings={supportedCaptionLanguageStrings}\n />\n )}\n {!isSpokenLanguageDrawerOpen && !isCaptionLanguageDrawerOpen && (\n <DrawerMenu items={drawerMenuItems} onLightDismiss={props.onLightDismiss} />\n )}\n </>\n );\n};\n\nconst isDeviceSelected = (speaker: OptionsDevice, selectedSpeaker?: OptionsDevice): boolean =>\n !!selectedSpeaker && speaker.id === selectedSpeaker.id;\n\nconst isEnabled = (option: unknown): boolean => option !== false;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"PreparedMoreDrawer.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/common/Drawer/PreparedMoreDrawer.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,+BAA+B,EAAE,MAAM,mEAAmE,CAAC;AACpH,OAAO,EAAE,UAAU,EAAqB,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0DAA0D,CAAC;AAC9F,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAyBpE,eAAe;AACf,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAA8B,EAAe,EAAE;IAChF,MAAM,OAAO,GAAG,+BAA+B,EAAE,CAAC;IAClD,MAAM,iBAAiB,GAAsB,OAAO,CAClD,GAAG,EAAE,CAAC,CAAC;QACL,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;QAC5C,oBAAoB,EAAE,OAAO,CAAC,8BAA8B;QAC5D,mBAAmB,EAAE,OAAO,CAAC,6BAA6B;QAC1D,gBAAgB,EAAE,OAAO,CAAC,0BAA0B;QACpD,iBAAiB,EAAE,OAAO,CAAC,2BAA2B;QACtD,uBAAuB,EAAE,OAAO,CAAC,iCAAiC;QAClE,wBAAwB,EAAE,OAAO,CAAC,kCAAkC;QAEpE,uBAAuB,EAAE,OAAO,CAAC,iCAAiC;KACnE,CAAC,EACF,CAAC,OAAO,CAAC,CACV,CAAC;IACF,MAAM,WAAW,GAAG,WAAW,CAAC,kBAAkB,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IAE7C,OAAO,oBAAC,UAAU,oBAAK,KAAK,EAAM,WAAW,EAAM,YAAY,IAAE,OAAO,EAAE,iBAAiB,IAAI,CAAC;AAClG,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React, { useMemo } from 'react';\nimport { useCallWithChatCompositeStrings } from '../../CallWithChatComposite/hooks/useCallWithChatCompositeStrings';\nimport { MoreDrawer, MoreDrawerStrings } from './MoreDrawer';\nimport { moreDrawerSelector } from '../../CallWithChatComposite/selectors/moreDrawerSelector';\nimport { useSelector } from '../../CallComposite/hooks/useSelector';\nimport { useHandlers } from '../../CallComposite/hooks/useHandlers';\nimport { CommonCallControlOptions } from '../types/CommonCallControlOptions';\n/* @condtional-compile-remove(gallery-options) */\nimport { VideoGalleryLayout } from '@internal/react-components';\nimport { ReactionResources } from '@internal/react-components';\n\n/** @private */\nexport interface PreparedMoreDrawerProps {\n onLightDismiss: () => void;\n onPeopleButtonClicked: () => void;\n callControls?: boolean | CommonCallControlOptions;\n /* @conditional-compile-remove(PSTN-calls) */\n onClickShowDialpad?: () => void;\n isCaptionsSupported?: boolean;\n disableButtonsForHoldScreen?: boolean;\n onUserSetGalleryLayout?: (layout: VideoGalleryLayout) => void;\n userSetGalleryLayout?: VideoGalleryLayout;\n onSetDialpadPage?: () => void;\n dtmfDialerPresent?: boolean;\n useTeamsCaptions?: boolean;\n reactionResources?: ReactionResources;\n /* @conditional-compile-remove(teams-meeting-conference) */\n onClickMeetingPhoneInfo?: () => void;\n}\n\n/** @private */\nexport const PreparedMoreDrawer = (props: PreparedMoreDrawerProps): JSX.Element => {\n const strings = useCallWithChatCompositeStrings();\n const moreDrawerStrings: MoreDrawerStrings = useMemo(\n () => ({\n peopleButtonLabel: strings.peopleButtonLabel,\n audioDeviceMenuTitle: strings.moreDrawerAudioDeviceMenuTitle,\n microphoneMenuTitle: strings.moreDrawerMicrophoneMenuTitle,\n speakerMenuTitle: strings.moreDrawerSpeakerMenuTitle,\n captionsMenuTitle: strings.moreDrawerCaptionsMenuTitle,\n spokenLanguageMenuTitle: strings.moreDrawerSpokenLanguageMenuTitle,\n captionLanguageMenuTitle: strings.moreDrawerCaptionLanguageMenuTitle,\n\n galleryOptionsMenuTitle: strings.moreDrawerGalleryOptionsMenuTitle\n }),\n [strings]\n );\n const deviceProps = useSelector(moreDrawerSelector);\n const callHandlers = useHandlers(MoreDrawer);\n\n return <MoreDrawer {...props} {...deviceProps} {...callHandlers} strings={moreDrawerStrings} />;\n};\n"]}
1
+ {"version":3,"file":"PreparedMoreDrawer.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/common/Drawer/PreparedMoreDrawer.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,+BAA+B,EAAE,MAAM,mEAAmE,CAAC;AACpH,OAAO,EAAE,UAAU,EAAqB,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0DAA0D,CAAC;AAC9F,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAwBpE,eAAe;AACf,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAA8B,EAAe,EAAE;IAChF,MAAM,OAAO,GAAG,+BAA+B,EAAE,CAAC;IAClD,MAAM,iBAAiB,GAAsB,OAAO,CAClD,GAAG,EAAE,CAAC,CAAC;QACL,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;QAC5C,oBAAoB,EAAE,OAAO,CAAC,8BAA8B;QAC5D,mBAAmB,EAAE,OAAO,CAAC,6BAA6B;QAC1D,gBAAgB,EAAE,OAAO,CAAC,0BAA0B;QACpD,iBAAiB,EAAE,OAAO,CAAC,2BAA2B;QACtD,uBAAuB,EAAE,OAAO,CAAC,iCAAiC;QAClE,wBAAwB,EAAE,OAAO,CAAC,kCAAkC;QAEpE,uBAAuB,EAAE,OAAO,CAAC,iCAAiC;KACnE,CAAC,EACF,CAAC,OAAO,CAAC,CACV,CAAC;IACF,MAAM,WAAW,GAAG,WAAW,CAAC,kBAAkB,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IAE7C,OAAO,oBAAC,UAAU,oBAAK,KAAK,EAAM,WAAW,EAAM,YAAY,IAAE,OAAO,EAAE,iBAAiB,IAAI,CAAC;AAClG,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React, { useMemo } from 'react';\nimport { useCallWithChatCompositeStrings } from '../../CallWithChatComposite/hooks/useCallWithChatCompositeStrings';\nimport { MoreDrawer, MoreDrawerStrings } from './MoreDrawer';\nimport { moreDrawerSelector } from '../../CallWithChatComposite/selectors/moreDrawerSelector';\nimport { useSelector } from '../../CallComposite/hooks/useSelector';\nimport { useHandlers } from '../../CallComposite/hooks/useHandlers';\nimport { CommonCallControlOptions } from '../types/CommonCallControlOptions';\n/* @condtional-compile-remove(gallery-options) */\nimport { VideoGalleryLayout } from '@internal/react-components';\nimport { ReactionResources } from '@internal/react-components';\n\n/** @private */\nexport interface PreparedMoreDrawerProps {\n onLightDismiss: () => void;\n onPeopleButtonClicked: () => void;\n callControls?: boolean | CommonCallControlOptions;\n /* @conditional-compile-remove(PSTN-calls) */\n onClickShowDialpad?: () => void;\n isCaptionsSupported?: boolean;\n disableButtonsForHoldScreen?: boolean;\n onUserSetGalleryLayout?: (layout: VideoGalleryLayout) => void;\n userSetGalleryLayout?: VideoGalleryLayout;\n onSetDialpadPage?: () => void;\n dtmfDialerPresent?: boolean;\n useTeamsCaptions?: boolean;\n reactionResources?: ReactionResources;\n onClickMeetingPhoneInfo?: () => void;\n}\n\n/** @private */\nexport const PreparedMoreDrawer = (props: PreparedMoreDrawerProps): JSX.Element => {\n const strings = useCallWithChatCompositeStrings();\n const moreDrawerStrings: MoreDrawerStrings = useMemo(\n () => ({\n peopleButtonLabel: strings.peopleButtonLabel,\n audioDeviceMenuTitle: strings.moreDrawerAudioDeviceMenuTitle,\n microphoneMenuTitle: strings.moreDrawerMicrophoneMenuTitle,\n speakerMenuTitle: strings.moreDrawerSpeakerMenuTitle,\n captionsMenuTitle: strings.moreDrawerCaptionsMenuTitle,\n spokenLanguageMenuTitle: strings.moreDrawerSpokenLanguageMenuTitle,\n captionLanguageMenuTitle: strings.moreDrawerCaptionLanguageMenuTitle,\n\n galleryOptionsMenuTitle: strings.moreDrawerGalleryOptionsMenuTitle\n }),\n [strings]\n );\n const deviceProps = useSelector(moreDrawerSelector);\n const callHandlers = useHandlers(MoreDrawer);\n\n return <MoreDrawer {...props} {...deviceProps} {...callHandlers} strings={moreDrawerStrings} />;\n};\n"]}
@@ -1,17 +1,11 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT License.
3
- /* @conditional-compile-remove(teams-meeting-conference) */
4
3
  // eslint-disable-next-line no-restricted-imports
5
4
  import { Stack, Text, useTheme, Icon, Link } from '@fluentui/react';
6
- /* @conditional-compile-remove(teams-meeting-conference) */
7
5
  import React from 'react';
8
- /* @conditional-compile-remove(teams-meeting-conference) */
9
6
  import { formatPhoneNumberInfo, _formatPhoneNumber, formatPhoneNumberLink } from "../../../../react-components/src";
10
- /* @conditional-compile-remove(teams-meeting-conference) */
11
7
  import { phoneInfoTextStyle, phoneInfoIcon, phoneInfoInstructionLine, phoneInfoStep, phoneInfoIconStyle, phoneInfoLabelStyle, phoneInfoContainerTokens, phoneInfoContainerStyle } from './styles/TeamsMeetingConferenceInfo.style';
12
- /* @conditional-compile-remove(teams-meeting-conference) */
13
8
  import { useLocale } from '../localization';
14
- /* @conditional-compile-remove(teams-meeting-conference) */
15
9
  /**
16
10
  * @private
17
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"MeetingPhoneInfoPaneContent.js","sourceRoot":"","sources":["../../../../../../../react-composites/src/composites/common/MeetingPhoneInfoPaneContent.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/* @conditional-compile-remove(teams-meeting-conference) */\n// eslint-disable-next-line no-restricted-imports\nimport { Stack, Text, useTheme, Icon, Link } from '@fluentui/react';\n/* @conditional-compile-remove(teams-meeting-conference) */\nimport { _DrawerMenuItemProps } from '@internal/react-components';\n/* @conditional-compile-remove(teams-meeting-conference) */\nimport React from 'react';\n/* @conditional-compile-remove(teams-meeting-conference) */\nimport {\n ConferencePhoneInfo,\n formatPhoneNumberInfo,\n _formatPhoneNumber,\n formatPhoneNumberLink\n} from '@internal/react-components';\n/* @conditional-compile-remove(teams-meeting-conference) */\nimport {\n phoneInfoTextStyle,\n phoneInfoIcon,\n phoneInfoInstructionLine,\n phoneInfoStep,\n phoneInfoIconStyle,\n phoneInfoLabelStyle,\n phoneInfoContainerTokens,\n phoneInfoContainerStyle\n} from './styles/TeamsMeetingConferenceInfo.style';\n/* @conditional-compile-remove(teams-meeting-conference) */\nimport { useLocale } from '../localization';\n\n/* @conditional-compile-remove(teams-meeting-conference) */\n/**\n * @private\n */\nexport const MeetingPhoneInfoPaneContent = (props: {\n mobileView?: boolean;\n conferencePhoneInfoList?: ConferencePhoneInfo[];\n}): JSX.Element => {\n const { conferencePhoneInfoList } = props;\n const theme = useTheme();\n const localeStrings = useLocale().component.strings.meetingConferencePhoneInfo;\n\n if (props.mobileView) {\n return (\n <Stack\n verticalFill\n styles={phoneInfoContainerStyle}\n tokens={phoneInfoContainerTokens}\n data-ui-id=\"phone-info-pane-content\"\n >\n {(conferencePhoneInfoList === undefined || conferencePhoneInfoList.length === 0) && (\n <Stack horizontal>\n <Text className={phoneInfoTextStyle}>{localeStrings.meetingConferencePhoneInfoModalNoPhoneAvailable}</Text>\n </Stack>\n )}\n {conferencePhoneInfoList && conferencePhoneInfoList.length > 0 && (\n <Stack>\n <Stack horizontal horizontalAlign=\"space-between\" className={phoneInfoInstructionLine}>\n <Stack.Item>\n <Stack horizontal className={phoneInfoStep}>\n <Stack.Item className={phoneInfoIcon(theme)}>\n <Stack verticalAlign=\"center\" horizontalAlign=\"center\">\n <Icon iconName=\"JoinByPhoneDialStepIcon\" className={phoneInfoIconStyle(theme)} />\n </Stack>\n </Stack.Item>\n <Stack.Item>\n <Text className={phoneInfoLabelStyle}>{localeStrings.meetingConferencePhoneInfoModalDialIn}</Text>\n </Stack.Item>\n </Stack>\n </Stack.Item>\n <Stack.Item className={phoneInfoStep}>\n {conferencePhoneInfoList.map((phoneNumber, index) => (\n <Stack.Item key={index}>\n <Link className={phoneInfoTextStyle} href={formatPhoneNumberLink(phoneNumber)}>\n {_formatPhoneNumber(phoneNumber.phoneNumber, true)}\n </Link>\n <Text className={phoneInfoTextStyle}>\n {' '}\n {phoneNumber.isTollFree\n ? localeStrings.meetingConferencePhoneInfoModalTollFree\n : localeStrings.meetingConferencePhoneInfoModalToll}\n </Text>\n <br />\n <Text className={phoneInfoTextStyle}> {formatPhoneNumberInfo(phoneNumber, localeStrings)}</Text>\n </Stack.Item>\n ))}\n </Stack.Item>\n </Stack>\n <Stack\n horizontal\n horizontalAlign=\"space-between\"\n verticalAlign=\"center\"\n className={phoneInfoInstructionLine}\n >\n <Stack.Item>\n <Stack horizontal>\n <Stack.Item className={phoneInfoIcon(theme)}>\n <Icon iconName=\"JoinByPhoneConferenceIdIcon\" className={phoneInfoIconStyle(theme)} />\n </Stack.Item>\n <Stack.Item>\n <Text className={phoneInfoLabelStyle}>\n {localeStrings.meetingConferencePhoneInfoModalMeetingId}\n </Text>\n </Stack.Item>\n </Stack>\n </Stack.Item>\n <Text className={phoneInfoTextStyle}>{conferencePhoneInfoList[0].conferenceId}#</Text>\n </Stack>\n <Stack\n horizontal\n horizontalAlign=\"space-between\"\n verticalAlign=\"center\"\n className={phoneInfoInstructionLine}\n >\n <Stack horizontal>\n <Stack.Item className={phoneInfoIcon(theme)}>\n <Icon iconName=\"JoinByPhoneWaitToBeAdmittedIcon\" className={phoneInfoIconStyle(theme)} />\n </Stack.Item>\n <Stack.Item>\n <Text className={phoneInfoLabelStyle}>{localeStrings.meetingConferencePhoneInfoModalWait}</Text>\n </Stack.Item>\n </Stack>\n </Stack>\n </Stack>\n )}\n </Stack>\n );\n }\n\n return (\n <Stack\n verticalFill\n styles={phoneInfoContainerStyle}\n tokens={phoneInfoContainerTokens}\n data-ui-id=\"phone-info-pane-content\"\n ></Stack>\n );\n};\n"]}
1
+ {"version":3,"file":"MeetingPhoneInfoPaneContent.js","sourceRoot":"","sources":["../../../../../../../react-composites/src/composites/common/MeetingPhoneInfoPaneContent.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,iDAAiD;AACjD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEpE,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAEL,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACtB,yCAAmC;AACpC,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,wBAAwB,EACxB,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,EACxB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,KAG3C,EAAe,EAAE;IAChB,MAAM,EAAE,uBAAuB,EAAE,GAAG,KAAK,CAAC;IAC1C,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,aAAa,GAAG,SAAS,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,0BAA0B,CAAC;IAE/E,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QACrB,OAAO,CACL,oBAAC,KAAK,IACJ,YAAY,QACZ,MAAM,EAAE,uBAAuB,EAC/B,MAAM,EAAE,wBAAwB,gBACrB,yBAAyB;YAEnC,CAAC,uBAAuB,KAAK,SAAS,IAAI,uBAAuB,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,CAClF,oBAAC,KAAK,IAAC,UAAU;gBACf,oBAAC,IAAI,IAAC,SAAS,EAAE,kBAAkB,IAAG,aAAa,CAAC,+CAA+C,CAAQ,CACrG,CACT;YACA,uBAAuB,IAAI,uBAAuB,CAAC,MAAM,GAAG,CAAC,IAAI,CAChE,oBAAC,KAAK;gBACJ,oBAAC,KAAK,IAAC,UAAU,QAAC,eAAe,EAAC,eAAe,EAAC,SAAS,EAAE,wBAAwB;oBACnF,oBAAC,KAAK,CAAC,IAAI;wBACT,oBAAC,KAAK,IAAC,UAAU,QAAC,SAAS,EAAE,aAAa;4BACxC,oBAAC,KAAK,CAAC,IAAI,IAAC,SAAS,EAAE,aAAa,CAAC,KAAK,CAAC;gCACzC,oBAAC,KAAK,IAAC,aAAa,EAAC,QAAQ,EAAC,eAAe,EAAC,QAAQ;oCACpD,oBAAC,IAAI,IAAC,QAAQ,EAAC,yBAAyB,EAAC,SAAS,EAAE,kBAAkB,CAAC,KAAK,CAAC,GAAI,CAC3E,CACG;4BACb,oBAAC,KAAK,CAAC,IAAI;gCACT,oBAAC,IAAI,IAAC,SAAS,EAAE,mBAAmB,IAAG,aAAa,CAAC,qCAAqC,CAAQ,CACvF,CACP,CACG;oBACb,oBAAC,KAAK,CAAC,IAAI,IAAC,SAAS,EAAE,aAAa,IACjC,uBAAuB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC,CACnD,oBAAC,KAAK,CAAC,IAAI,IAAC,GAAG,EAAE,KAAK;wBACpB,oBAAC,IAAI,IAAC,SAAS,EAAE,kBAAkB,EAAE,IAAI,EAAE,qBAAqB,CAAC,WAAW,CAAC,IAC1E,kBAAkB,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAC7C;wBACP,oBAAC,IAAI,IAAC,SAAS,EAAE,kBAAkB;4BAChC,GAAG;4BACH,WAAW,CAAC,UAAU;gCACrB,CAAC,CAAC,aAAa,CAAC,uCAAuC;gCACvD,CAAC,CAAC,aAAa,CAAC,mCAAmC,CAChD;wBACP,+BAAM;wBACN,oBAAC,IAAI,IAAC,SAAS,EAAE,kBAAkB;;4BAAI,qBAAqB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAQ,CACrF,CACd,CAAC,CACS,CACP;gBACR,oBAAC,KAAK,IACJ,UAAU,QACV,eAAe,EAAC,eAAe,EAC/B,aAAa,EAAC,QAAQ,EACtB,SAAS,EAAE,wBAAwB;oBAEnC,oBAAC,KAAK,CAAC,IAAI;wBACT,oBAAC,KAAK,IAAC,UAAU;4BACf,oBAAC,KAAK,CAAC,IAAI,IAAC,SAAS,EAAE,aAAa,CAAC,KAAK,CAAC;gCACzC,oBAAC,IAAI,IAAC,QAAQ,EAAC,6BAA6B,EAAC,SAAS,EAAE,kBAAkB,CAAC,KAAK,CAAC,GAAI,CAC1E;4BACb,oBAAC,KAAK,CAAC,IAAI;gCACT,oBAAC,IAAI,IAAC,SAAS,EAAE,mBAAmB,IACjC,aAAa,CAAC,wCAAwC,CAClD,CACI,CACP,CACG;oBACb,oBAAC,IAAI,IAAC,SAAS,EAAE,kBAAkB;wBAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC,YAAY;4BAAS,CAChF;gBACR,oBAAC,KAAK,IACJ,UAAU,QACV,eAAe,EAAC,eAAe,EAC/B,aAAa,EAAC,QAAQ,EACtB,SAAS,EAAE,wBAAwB;oBAEnC,oBAAC,KAAK,IAAC,UAAU;wBACf,oBAAC,KAAK,CAAC,IAAI,IAAC,SAAS,EAAE,aAAa,CAAC,KAAK,CAAC;4BACzC,oBAAC,IAAI,IAAC,QAAQ,EAAC,iCAAiC,EAAC,SAAS,EAAE,kBAAkB,CAAC,KAAK,CAAC,GAAI,CAC9E;wBACb,oBAAC,KAAK,CAAC,IAAI;4BACT,oBAAC,IAAI,IAAC,SAAS,EAAE,mBAAmB,IAAG,aAAa,CAAC,mCAAmC,CAAQ,CACrF,CACP,CACF,CACF,CACT,CACK,CACT,CAAC;IACJ,CAAC;IAED,OAAO,CACL,oBAAC,KAAK,IACJ,YAAY,QACZ,MAAM,EAAE,uBAAuB,EAC/B,MAAM,EAAE,wBAAwB,gBACrB,yBAAyB,GAC7B,CACV,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n// eslint-disable-next-line no-restricted-imports\nimport { Stack, Text, useTheme, Icon, Link } from '@fluentui/react';\nimport { _DrawerMenuItemProps } from '@internal/react-components';\nimport React from 'react';\nimport {\n ConferencePhoneInfo,\n formatPhoneNumberInfo,\n _formatPhoneNumber,\n formatPhoneNumberLink\n} from '@internal/react-components';\nimport {\n phoneInfoTextStyle,\n phoneInfoIcon,\n phoneInfoInstructionLine,\n phoneInfoStep,\n phoneInfoIconStyle,\n phoneInfoLabelStyle,\n phoneInfoContainerTokens,\n phoneInfoContainerStyle\n} from './styles/TeamsMeetingConferenceInfo.style';\nimport { useLocale } from '../localization';\n\n/**\n * @private\n */\nexport const MeetingPhoneInfoPaneContent = (props: {\n mobileView?: boolean;\n conferencePhoneInfoList?: ConferencePhoneInfo[];\n}): JSX.Element => {\n const { conferencePhoneInfoList } = props;\n const theme = useTheme();\n const localeStrings = useLocale().component.strings.meetingConferencePhoneInfo;\n\n if (props.mobileView) {\n return (\n <Stack\n verticalFill\n styles={phoneInfoContainerStyle}\n tokens={phoneInfoContainerTokens}\n data-ui-id=\"phone-info-pane-content\"\n >\n {(conferencePhoneInfoList === undefined || conferencePhoneInfoList.length === 0) && (\n <Stack horizontal>\n <Text className={phoneInfoTextStyle}>{localeStrings.meetingConferencePhoneInfoModalNoPhoneAvailable}</Text>\n </Stack>\n )}\n {conferencePhoneInfoList && conferencePhoneInfoList.length > 0 && (\n <Stack>\n <Stack horizontal horizontalAlign=\"space-between\" className={phoneInfoInstructionLine}>\n <Stack.Item>\n <Stack horizontal className={phoneInfoStep}>\n <Stack.Item className={phoneInfoIcon(theme)}>\n <Stack verticalAlign=\"center\" horizontalAlign=\"center\">\n <Icon iconName=\"JoinByPhoneDialStepIcon\" className={phoneInfoIconStyle(theme)} />\n </Stack>\n </Stack.Item>\n <Stack.Item>\n <Text className={phoneInfoLabelStyle}>{localeStrings.meetingConferencePhoneInfoModalDialIn}</Text>\n </Stack.Item>\n </Stack>\n </Stack.Item>\n <Stack.Item className={phoneInfoStep}>\n {conferencePhoneInfoList.map((phoneNumber, index) => (\n <Stack.Item key={index}>\n <Link className={phoneInfoTextStyle} href={formatPhoneNumberLink(phoneNumber)}>\n {_formatPhoneNumber(phoneNumber.phoneNumber, true)}\n </Link>\n <Text className={phoneInfoTextStyle}>\n {' '}\n {phoneNumber.isTollFree\n ? localeStrings.meetingConferencePhoneInfoModalTollFree\n : localeStrings.meetingConferencePhoneInfoModalToll}\n </Text>\n <br />\n <Text className={phoneInfoTextStyle}> {formatPhoneNumberInfo(phoneNumber, localeStrings)}</Text>\n </Stack.Item>\n ))}\n </Stack.Item>\n </Stack>\n <Stack\n horizontal\n horizontalAlign=\"space-between\"\n verticalAlign=\"center\"\n className={phoneInfoInstructionLine}\n >\n <Stack.Item>\n <Stack horizontal>\n <Stack.Item className={phoneInfoIcon(theme)}>\n <Icon iconName=\"JoinByPhoneConferenceIdIcon\" className={phoneInfoIconStyle(theme)} />\n </Stack.Item>\n <Stack.Item>\n <Text className={phoneInfoLabelStyle}>\n {localeStrings.meetingConferencePhoneInfoModalMeetingId}\n </Text>\n </Stack.Item>\n </Stack>\n </Stack.Item>\n <Text className={phoneInfoTextStyle}>{conferencePhoneInfoList[0].conferenceId}#</Text>\n </Stack>\n <Stack\n horizontal\n horizontalAlign=\"space-between\"\n verticalAlign=\"center\"\n className={phoneInfoInstructionLine}\n >\n <Stack horizontal>\n <Stack.Item className={phoneInfoIcon(theme)}>\n <Icon iconName=\"JoinByPhoneWaitToBeAdmittedIcon\" className={phoneInfoIconStyle(theme)} />\n </Stack.Item>\n <Stack.Item>\n <Text className={phoneInfoLabelStyle}>{localeStrings.meetingConferencePhoneInfoModalWait}</Text>\n </Stack.Item>\n </Stack>\n </Stack>\n </Stack>\n )}\n </Stack>\n );\n }\n\n return (\n <Stack\n verticalFill\n styles={phoneInfoContainerStyle}\n tokens={phoneInfoContainerTokens}\n data-ui-id=\"phone-info-pane-content\"\n ></Stack>\n );\n};\n"]}
@@ -1,7 +1,6 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT License.
3
3
  import { CallEnd20Filled, CallMissed20Filled, CameraSwitch24Regular, Chat20Filled, Chat20Regular, Info20Filled, MicOff20Filled, Mic20Filled, Mic20Regular, People20Regular, PersonDelete20Filled, Speaker220Filled, Speaker220Regular, Video20Filled, VideoOff20Filled, WifiWarning20Filled, Circle20Regular } from '@fluentui/react-icons';
4
- /* @conditional-compile-remove(teams-meeting-conference) */
5
4
  import { PersonCall20Regular, Clock20Filled } from '@fluentui/react-icons';
6
5
  import { MoreHorizontal20Filled, VideoPersonStarOff20Filled } from '@fluentui/react-icons';
7
6
  import { MicProhibited20Filled, VideoProhibited20Filled } from '@fluentui/react-icons';
@@ -75,13 +74,9 @@ export const COMPOSITE_ONLY_ICONS = {
75
74
  LargeGalleryLayout: React.createElement(Table20Regular, null),
76
75
  DefaultCustomButton: React.createElement(Circle20Regular, null),
77
76
  DtmfDialpadButton: React.createElement(Dialpad20Regular, null),
78
- /* @conditional-compile-remove(teams-meeting-conference) */
79
77
  PhoneNumberButton: React.createElement(PersonCall20Regular, null),
80
- /* @conditional-compile-remove(teams-meeting-conference) */
81
78
  JoinByPhoneDialStepIcon: React.createElement(PersonCall20Regular, null),
82
- /* @conditional-compile-remove(teams-meeting-conference) */
83
79
  JoinByPhoneConferenceIdIcon: React.createElement(Dialpad20Regular, null),
84
- /* @conditional-compile-remove(teams-meeting-conference) */
85
80
  JoinByPhoneWaitToBeAdmittedIcon: React.createElement(Clock20Filled, null),
86
81
  PeoplePaneMoreButton: React.createElement(MoreHorizontal20Filled, null),
87
82
  StopAllSpotlightMenuButton: React.createElement(VideoPersonStarOff20Filled, null)
@@ -1 +1 @@
1
- {"version":3,"file":"icons.js","sourceRoot":"","sources":["../../../../../../../react-composites/src/composites/common/icons.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n CallEnd20Filled,\n CallMissed20Filled,\n CameraSwitch24Regular,\n Chat20Filled,\n Chat20Regular,\n Info20Filled,\n MicOff20Filled,\n Mic20Filled,\n Mic20Regular,\n People20Regular,\n PersonDelete20Filled,\n Speaker220Filled,\n Speaker220Regular,\n Video20Filled,\n VideoOff20Filled,\n WifiWarning20Filled,\n Circle20Regular\n} from '@fluentui/react-icons';\n/* @conditional-compile-remove(teams-meeting-conference) */\nimport { PersonCall20Regular, Clock20Filled } from '@fluentui/react-icons';\nimport { MoreHorizontal20Filled, VideoPersonStarOff20Filled } from '@fluentui/react-icons';\nimport { MicProhibited20Filled, VideoProhibited20Filled } from '@fluentui/react-icons';\nimport { Grid20Regular } from '@fluentui/react-icons';\n/* @conditional-compile-remove(PSTN-calls) */\nimport { PersonAdd20Regular, Call20Regular } from '@fluentui/react-icons';\nimport { Dialpad20Regular } from '@fluentui/react-icons';\nimport { DEFAULT_COMPONENT_ICONS } from '@internal/react-components';\nimport React from 'react';\n// eslint-disable-next-line no-restricted-imports\nimport { FontIcon, IIconProps, Spinner, SpinnerSize } from '@fluentui/react';\n/* @conditional-compile-remove(file-sharing-acs) */\nimport { Attach20Regular } from '@fluentui/react-icons';\n\nimport { VideoBackgroundEffect20Regular, VideoPerson20Filled } from '@fluentui/react-icons';\nimport {\n PersonSquare20Regular,\n WindowHeaderHorizontal20Regular,\n TableSimple20Regular,\n BoardSplit20Regular,\n ContentView20Regular,\n Table20Regular\n} from '@fluentui/react-icons';\n\nconst SpinnerIcon = (): JSX.Element => <Spinner size={SpinnerSize.large} />;\n\n/**\n * The default set of icons used by the composites directly (i.e. not via the components defined in this library).\n *\n * @public\n */\nexport const COMPOSITE_ONLY_ICONS: CompositeIcons = {\n ChevronLeft: undefined,\n Link: undefined,\n LobbyScreenConnectingToCall: <SpinnerIcon />,\n LobbyScreenWaitingToBeAdmitted: <SpinnerIcon />,\n LocalDeviceSettingsCamera: <Video20Filled />,\n LocalDeviceSettingsMic: <Mic20Filled />,\n LocalDeviceSettingsSpeaker: <Speaker220Filled />,\n LocalPreviewPlaceholder: <VideoOff20Filled />,\n LocalCameraSwitch: <CameraSwitch24Regular />,\n ControlBarChatButtonActive: <Chat20Filled />,\n ControlBarChatButtonInactive: <Chat20Regular />,\n\n ControlButtonCameraProhibited: <VideoProhibited20Filled />,\n\n ControlButtonMicProhibited: <MicProhibited20Filled />,\n ControlButtonExitSpotlight: <VideoPersonStarOff20Filled />,\n ControlBarPeopleButton: <People20Regular />,\n MoreDrawerMicrophones: <Mic20Regular />,\n MoreDrawerPeople: <People20Regular />,\n MoreDrawerSpeakers: <Speaker220Regular />,\n MoreDrawerSelectedMicrophone: <Mic20Filled />,\n MoreDrawerSelectedSpeaker: <Speaker220Filled />,\n Muted: <MicOff20Filled />,\n NetworkReconnectIcon: <CallMissed20Filled />,\n NoticePageAccessDeniedTeamsMeeting: <PersonDelete20Filled />,\n NoticePageJoinCallFailedDueToNoNetwork: <WifiWarning20Filled />,\n NoticePageLeftCall: <CallEnd20Filled />,\n NoticePageRemovedFromCall: <Info20Filled />,\n NoticePageNotInvitedToRoom: <Info20Filled />,\n NoticePageRoomNotFound: <Info20Filled />,\n NoticePageRoomNotValid: <Info20Filled />,\n NoticePageCallRejected: <Info20Filled />,\n NoticePageCallTimeout: <Info20Filled />,\n /* @conditional-compile-remove(file-sharing-acs) */\n SendBoxAttachFile: <Attach20Regular />,\n /* @conditional-compile-remove(PSTN-calls) */\n PeoplePaneAddPerson: <PersonAdd20Regular />,\n /* @conditional-compile-remove(PSTN-calls) */\n PeoplePaneOpenDialpad: <Dialpad20Regular />,\n /* @conditional-compile-remove(PSTN-calls) */\n DialpadStartCall: <Call20Regular />,\n NoticePageInviteToRoomRemoved: <Info20Filled />,\n\n BlurVideoBackground: <VideoBackgroundEffect20Regular />,\n\n RemoveVideoBackgroundEffect: <VideoPerson20Filled />,\n GalleryOptions: <Grid20Regular />,\n OverflowGalleryTop: <WindowHeaderHorizontal20Regular />,\n SpeakerGalleryLayout: <PersonSquare20Regular />,\n DefaultGalleryLayout: <TableSimple20Regular />,\n FloatingLocalVideoGalleryLayout: <BoardSplit20Regular />,\n FocusedContentGalleryLayout: <ContentView20Regular />,\n LargeGalleryLayout: <Table20Regular />,\n DefaultCustomButton: <Circle20Regular />,\n DtmfDialpadButton: <Dialpad20Regular />,\n /* @conditional-compile-remove(teams-meeting-conference) */\n PhoneNumberButton: <PersonCall20Regular />,\n /* @conditional-compile-remove(teams-meeting-conference) */\n JoinByPhoneDialStepIcon: <PersonCall20Regular />,\n /* @conditional-compile-remove(teams-meeting-conference) */\n JoinByPhoneConferenceIdIcon: <Dialpad20Regular />,\n /* @conditional-compile-remove(teams-meeting-conference) */\n JoinByPhoneWaitToBeAdmittedIcon: <Clock20Filled />,\n PeoplePaneMoreButton: <MoreHorizontal20Filled />,\n StopAllSpotlightMenuButton: <VideoPersonStarOff20Filled />\n};\n\n/**\n * The default set of icons that are available to used in the Composites.\n *\n * @public\n */\nexport const DEFAULT_COMPOSITE_ICONS = {\n ...DEFAULT_COMPONENT_ICONS,\n ...COMPOSITE_ONLY_ICONS\n};\n\n/** @private */\nexport type CompositeIconProps<Icons> = IIconProps & { iconName: keyof Icons };\n\n/**\n * Icons that can be overridden for {@link ChatComposite}.\n *\n * @public\n */\nexport type ChatCompositeIcons = {\n EditBoxCancel?: JSX.Element;\n EditBoxSubmit?: JSX.Element;\n MessageDelivered?: JSX.Element;\n MessageEdit?: JSX.Element;\n MessageFailed?: JSX.Element;\n MessageRemove?: JSX.Element;\n MessageSeen?: JSX.Element;\n MessageSending?: JSX.Element;\n ParticipantItemOptions?: JSX.Element;\n ParticipantItemOptionsHovered?: JSX.Element;\n SendBoxSend?: JSX.Element;\n SendBoxSendHovered?: JSX.Element;\n /* @conditional-compile-remove(file-sharing-acs) */\n SendBoxAttachFile?: JSX.Element;\n};\n\n/**\n * Icon wrapper to use when including customizable icons inside the ChatComposite.\n * This wrapper ensures the icon name is being type-checked helping ensure no typos\n * and ensure that icon is customizable through the composite API.\n *\n * @private\n */\nexport const ChatCompositeIcon = (props: CompositeIconProps<ChatCompositeIcons>): JSX.Element => (\n <FontIcon {...props} />\n);\n\n/**\n * Icons that can be overridden for {@link CallComposite}.\n *\n * @public\n */\nexport type CallCompositeIcons = {\n ControlBarPeopleButton?: JSX.Element;\n ControlButtonCameraOff?: JSX.Element;\n ControlButtonCameraOn?: JSX.Element;\n ControlButtonEndCall?: JSX.Element;\n ControlButtonMicOff?: JSX.Element;\n ControlButtonMicOn?: JSX.Element;\n ControlButtonOptions?: JSX.Element;\n ControlButtonParticipants?: JSX.Element;\n ControlButtonScreenShareStart?: JSX.Element;\n ControlButtonScreenShareStop?: JSX.Element;\n\n ControlButtonCameraProhibited?: JSX.Element;\n\n ControlButtonMicProhibited?: JSX.Element;\n ControlButtonRaiseHand?: JSX.Element;\n ControlButtonLowerHand?: JSX.Element;\n ControlButtonExitSpotlight?: JSX.Element;\n RaiseHandContextualMenuItem?: JSX.Element;\n ReactionContextualMenuItem?: JSX.Element;\n LowerHandContextualMenuItem?: JSX.Element;\n ReactionButtonIcon?: JSX.Element;\n ErrorBarCallCameraAccessDenied?: JSX.Element;\n ErrorBarCallCameraAlreadyInUse?: JSX.Element;\n ErrorBarCallLocalVideoFreeze?: JSX.Element;\n ErrorBarCallMacOsCameraAccessDenied?: JSX.Element;\n ErrorBarCallMacOsMicrophoneAccessDenied?: JSX.Element;\n ErrorBarCallMicrophoneAccessDenied?: JSX.Element;\n ErrorBarCallMicrophoneMutedBySystem?: JSX.Element;\n ErrorBarCallMicrophoneUnmutedBySystem?: JSX.Element;\n ErrorBarCallNetworkQualityLow?: JSX.Element;\n ErrorBarCallNoMicrophoneFound?: JSX.Element;\n ErrorBarCallNoSpeakerFound?: JSX.Element;\n ErrorBarClear?: JSX.Element;\n HorizontalGalleryLeftButton?: JSX.Element;\n HorizontalGalleryRightButton?: JSX.Element;\n LobbyScreenConnectingToCall?: JSX.Element;\n LobbyScreenWaitingToBeAdmitted?: JSX.Element;\n LocalDeviceSettingsCamera?: JSX.Element;\n LocalDeviceSettingsMic?: JSX.Element;\n LocalDeviceSettingsSpeaker?: JSX.Element;\n LocalPreviewPlaceholder?: JSX.Element;\n Muted?: JSX.Element;\n NetworkReconnectIcon?: JSX.Element;\n NoticePageAccessDeniedTeamsMeeting?: JSX.Element;\n NoticePageJoinCallFailedDueToNoNetwork?: JSX.Element;\n NoticePageLeftCall?: JSX.Element;\n NoticePageRemovedFromCall?: JSX.Element;\n NoticePageCallRejected?: JSX.Element;\n NoticePageNotInvitedToRoom?: JSX.Element;\n NoticePageRoomNotFound?: JSX.Element;\n NoticePageRoomNotValid?: JSX.Element;\n NoticePageCallTimeout?: JSX.Element;\n OptionsCamera?: JSX.Element;\n OptionsMic?: JSX.Element;\n OptionsSpeaker?: JSX.Element;\n ParticipantItemMicOff?: JSX.Element;\n ParticipantItemOptions?: JSX.Element;\n ParticipantItemOptionsHovered?: JSX.Element;\n ParticipantItemScreenShareStart?: JSX.Element;\n VideoTileMicOff?: JSX.Element;\n LocalCameraSwitch?: JSX.Element;\n /* @conditional-compile-remove(PSTN-calls) */\n PeoplePaneAddPerson?: JSX.Element;\n /* @conditional-compile-remove(PSTN-calls) */\n PeoplePaneOpenDialpad?: JSX.Element;\n /* @conditional-compile-remove(PSTN-calls) */\n DialpadStartCall?: JSX.Element;\n NoticePageInviteToRoomRemoved?: JSX.Element;\n\n BlurVideoBackground?: JSX.Element;\n\n RemoveVideoBackgroundEffect?: JSX.Element;\n GalleryOptions?: JSX.Element;\n SpeakerGalleryLayout?: JSX.Element;\n FloatingLocalVideoGalleryLayout?: JSX.Element;\n DefaultGalleryLayout?: JSX.Element;\n FocusedContentGalleryLayout?: JSX.Element;\n OverflowGalleryTop?: JSX.Element;\n LargeGalleryLayout?: JSX.Element;\n DefaultCustomButton?: JSX.Element;\n DtmfDialpadButton?: JSX.Element;\n /* @conditional-compile-remove(teams-meeting-conference) */\n PhoneNumberButton?: JSX.Element;\n /* @conditional-compile-remove(teams-meeting-conference) */\n JoinByPhoneDialStepIcon?: JSX.Element;\n /* @conditional-compile-remove(teams-meeting-conference) */\n JoinByPhoneConferenceIdIcon?: JSX.Element;\n /* @conditional-compile-remove(teams-meeting-conference) */\n JoinByPhoneWaitToBeAdmittedIcon?: JSX.Element;\n PeoplePaneMoreButton?: JSX.Element;\n StopAllSpotlightMenuButton?: JSX.Element;\n};\n\n/**\n * Icon wrapper to use when including customizable icons inside the CallComposite.\n * This wrapper ensures the icon name is being type-checked helping ensure no typos\n * and ensure that icon is customizable through the composite API.\n *\n * @private\n */\nexport const CallCompositeIcon = (props: CompositeIconProps<CallCompositeIcons>): JSX.Element => (\n <FontIcon {...props} />\n);\n\n/**\n * Icons that can be overridden for {@link CallWithChatComposite}.\n *\n * @public\n */\nexport type CallWithChatCompositeIcons = {\n // CallWithChat Specific Icons\n ChevronLeft?: JSX.Element;\n ControlBarChatButtonActive?: JSX.Element;\n ControlBarChatButtonInactive?: JSX.Element;\n ControlBarPeopleButton?: JSX.Element;\n Link?: JSX.Element;\n MoreDrawerMicrophones?: JSX.Element;\n MoreDrawerPeople?: JSX.Element;\n MoreDrawerSelectedMicrophone?: JSX.Element;\n MoreDrawerSelectedSpeaker?: JSX.Element;\n MoreDrawerSpeakers?: JSX.Element;\n\n // Call icons\n ControlButtonCameraOff?: JSX.Element;\n ControlButtonCameraOn?: JSX.Element;\n ControlButtonEndCall?: JSX.Element;\n ControlButtonMicOff?: JSX.Element;\n ControlButtonMicOn?: JSX.Element;\n ControlButtonOptions?: JSX.Element;\n ControlButtonScreenShareStart?: JSX.Element;\n ControlButtonScreenShareStop?: JSX.Element;\n\n ControlButtonCameraProhibited?: JSX.Element;\n\n ControlButtonMicProhibited?: JSX.Element;\n ErrorBarCallCameraAccessDenied?: JSX.Element;\n ErrorBarCallCameraAlreadyInUse?: JSX.Element;\n ErrorBarCallLocalVideoFreeze?: JSX.Element;\n ErrorBarCallMacOsCameraAccessDenied?: JSX.Element;\n ErrorBarCallMacOsMicrophoneAccessDenied?: JSX.Element;\n ErrorBarCallMicrophoneAccessDenied?: JSX.Element;\n ErrorBarCallMicrophoneMutedBySystem?: JSX.Element;\n ErrorBarCallMicrophoneUnmutedBySystem?: JSX.Element;\n ErrorBarCallNetworkQualityLow?: JSX.Element;\n ErrorBarCallNoMicrophoneFound?: JSX.Element;\n ErrorBarCallNoSpeakerFound?: JSX.Element;\n ErrorBarClear?: JSX.Element;\n HorizontalGalleryLeftButton?: JSX.Element;\n HorizontalGalleryRightButton?: JSX.Element;\n LobbyScreenConnectingToCall?: JSX.Element;\n LobbyScreenWaitingToBeAdmitted?: JSX.Element;\n LocalDeviceSettingsCamera?: JSX.Element;\n LocalDeviceSettingsMic?: JSX.Element;\n LocalDeviceSettingsSpeaker?: JSX.Element;\n LocalPreviewPlaceholder?: JSX.Element;\n Muted?: JSX.Element;\n NetworkReconnectIcon?: JSX.Element;\n NoticePageAccessDeniedTeamsMeeting?: JSX.Element;\n NoticePageJoinCallFailedDueToNoNetwork?: JSX.Element;\n NoticePageLeftCall?: JSX.Element;\n NoticePageRemovedFromCall?: JSX.Element;\n OptionsCamera?: JSX.Element;\n OptionsMic?: JSX.Element;\n OptionsSpeaker?: JSX.Element;\n ParticipantItemMicOff?: JSX.Element;\n ParticipantItemScreenShareStart?: JSX.Element;\n VideoTileMicOff?: JSX.Element;\n LocalCameraSwitch?: JSX.Element;\n /* @conditional-compile-remove(PSTN-calls) */\n PeoplePaneAddPerson?: JSX.Element;\n /* @conditional-compile-remove(PSTN-calls) */\n PeoplePaneOpenDialpad?: JSX.Element;\n /* @conditional-compile-remove(PSTN-calls) */\n DialpadStartCall?: JSX.Element;\n DefaultCustomButton?: JSX.Element;\n DtmfDialpadButton?: JSX.Element;\n\n // Chat icons\n EditBoxCancel?: JSX.Element;\n EditBoxSubmit?: JSX.Element;\n MessageDelivered?: JSX.Element;\n MessageEdit?: JSX.Element;\n MessageFailed?: JSX.Element;\n MessageRemove?: JSX.Element;\n MessageSeen?: JSX.Element;\n MessageSending?: JSX.Element;\n SendBoxSend?: JSX.Element;\n SendBoxSendHovered?: JSX.Element;\n SendBoxAttachFile?: JSX.Element;\n\n // Icons common to Call and Chat.\n ParticipantItemOptions?: JSX.Element;\n ParticipantItemOptionsHovered?: JSX.Element;\n PeoplePaneMoreButton?: JSX.Element;\n StopAllSpotlightMenuButton?: JSX.Element;\n};\n\n/**\n * Icon wrapper to use when including customizable icons inside the CallWithChatComposite.\n * This wrapper ensures the icon name is being type-checked helping ensure no typos\n * and ensure that icon is customizable through the composite API.\n *\n * @private\n */\nexport const CallWithChatCompositeIcon = (props: CompositeIconProps<CallWithChatCompositeIcons>): JSX.Element => (\n <FontIcon {...props} />\n);\n\n/**\n * Icons that can be overridden in one of the composites exported by this library.\n *\n * See {@link ChatCompositeIcons}, {@link CallCompositeIcons} and {@link CallWithChatCompositeIcons} for more targeted types.\n *\n * @public\n */\nexport type CompositeIcons = ChatCompositeIcons & CallCompositeIcons & CallWithChatCompositeIcons;\n"]}
1
+ {"version":3,"file":"icons.js","sourceRoot":"","sources":["../../../../../../../react-composites/src/composites/common/icons.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n CallEnd20Filled,\n CallMissed20Filled,\n CameraSwitch24Regular,\n Chat20Filled,\n Chat20Regular,\n Info20Filled,\n MicOff20Filled,\n Mic20Filled,\n Mic20Regular,\n People20Regular,\n PersonDelete20Filled,\n Speaker220Filled,\n Speaker220Regular,\n Video20Filled,\n VideoOff20Filled,\n WifiWarning20Filled,\n Circle20Regular\n} from '@fluentui/react-icons';\nimport { PersonCall20Regular, Clock20Filled } from '@fluentui/react-icons';\nimport { MoreHorizontal20Filled, VideoPersonStarOff20Filled } from '@fluentui/react-icons';\nimport { MicProhibited20Filled, VideoProhibited20Filled } from '@fluentui/react-icons';\nimport { Grid20Regular } from '@fluentui/react-icons';\n/* @conditional-compile-remove(PSTN-calls) */\nimport { PersonAdd20Regular, Call20Regular } from '@fluentui/react-icons';\nimport { Dialpad20Regular } from '@fluentui/react-icons';\nimport { DEFAULT_COMPONENT_ICONS } from '@internal/react-components';\nimport React from 'react';\n// eslint-disable-next-line no-restricted-imports\nimport { FontIcon, IIconProps, Spinner, SpinnerSize } from '@fluentui/react';\n/* @conditional-compile-remove(file-sharing-acs) */\nimport { Attach20Regular } from '@fluentui/react-icons';\n\nimport { VideoBackgroundEffect20Regular, VideoPerson20Filled } from '@fluentui/react-icons';\nimport {\n PersonSquare20Regular,\n WindowHeaderHorizontal20Regular,\n TableSimple20Regular,\n BoardSplit20Regular,\n ContentView20Regular,\n Table20Regular\n} from '@fluentui/react-icons';\n\nconst SpinnerIcon = (): JSX.Element => <Spinner size={SpinnerSize.large} />;\n\n/**\n * The default set of icons used by the composites directly (i.e. not via the components defined in this library).\n *\n * @public\n */\nexport const COMPOSITE_ONLY_ICONS: CompositeIcons = {\n ChevronLeft: undefined,\n Link: undefined,\n LobbyScreenConnectingToCall: <SpinnerIcon />,\n LobbyScreenWaitingToBeAdmitted: <SpinnerIcon />,\n LocalDeviceSettingsCamera: <Video20Filled />,\n LocalDeviceSettingsMic: <Mic20Filled />,\n LocalDeviceSettingsSpeaker: <Speaker220Filled />,\n LocalPreviewPlaceholder: <VideoOff20Filled />,\n LocalCameraSwitch: <CameraSwitch24Regular />,\n ControlBarChatButtonActive: <Chat20Filled />,\n ControlBarChatButtonInactive: <Chat20Regular />,\n\n ControlButtonCameraProhibited: <VideoProhibited20Filled />,\n\n ControlButtonMicProhibited: <MicProhibited20Filled />,\n ControlButtonExitSpotlight: <VideoPersonStarOff20Filled />,\n ControlBarPeopleButton: <People20Regular />,\n MoreDrawerMicrophones: <Mic20Regular />,\n MoreDrawerPeople: <People20Regular />,\n MoreDrawerSpeakers: <Speaker220Regular />,\n MoreDrawerSelectedMicrophone: <Mic20Filled />,\n MoreDrawerSelectedSpeaker: <Speaker220Filled />,\n Muted: <MicOff20Filled />,\n NetworkReconnectIcon: <CallMissed20Filled />,\n NoticePageAccessDeniedTeamsMeeting: <PersonDelete20Filled />,\n NoticePageJoinCallFailedDueToNoNetwork: <WifiWarning20Filled />,\n NoticePageLeftCall: <CallEnd20Filled />,\n NoticePageRemovedFromCall: <Info20Filled />,\n NoticePageNotInvitedToRoom: <Info20Filled />,\n NoticePageRoomNotFound: <Info20Filled />,\n NoticePageRoomNotValid: <Info20Filled />,\n NoticePageCallRejected: <Info20Filled />,\n NoticePageCallTimeout: <Info20Filled />,\n /* @conditional-compile-remove(file-sharing-acs) */\n SendBoxAttachFile: <Attach20Regular />,\n /* @conditional-compile-remove(PSTN-calls) */\n PeoplePaneAddPerson: <PersonAdd20Regular />,\n /* @conditional-compile-remove(PSTN-calls) */\n PeoplePaneOpenDialpad: <Dialpad20Regular />,\n /* @conditional-compile-remove(PSTN-calls) */\n DialpadStartCall: <Call20Regular />,\n NoticePageInviteToRoomRemoved: <Info20Filled />,\n\n BlurVideoBackground: <VideoBackgroundEffect20Regular />,\n\n RemoveVideoBackgroundEffect: <VideoPerson20Filled />,\n GalleryOptions: <Grid20Regular />,\n OverflowGalleryTop: <WindowHeaderHorizontal20Regular />,\n SpeakerGalleryLayout: <PersonSquare20Regular />,\n DefaultGalleryLayout: <TableSimple20Regular />,\n FloatingLocalVideoGalleryLayout: <BoardSplit20Regular />,\n FocusedContentGalleryLayout: <ContentView20Regular />,\n LargeGalleryLayout: <Table20Regular />,\n DefaultCustomButton: <Circle20Regular />,\n DtmfDialpadButton: <Dialpad20Regular />,\n PhoneNumberButton: <PersonCall20Regular />,\n JoinByPhoneDialStepIcon: <PersonCall20Regular />,\n JoinByPhoneConferenceIdIcon: <Dialpad20Regular />,\n JoinByPhoneWaitToBeAdmittedIcon: <Clock20Filled />,\n PeoplePaneMoreButton: <MoreHorizontal20Filled />,\n StopAllSpotlightMenuButton: <VideoPersonStarOff20Filled />\n};\n\n/**\n * The default set of icons that are available to used in the Composites.\n *\n * @public\n */\nexport const DEFAULT_COMPOSITE_ICONS = {\n ...DEFAULT_COMPONENT_ICONS,\n ...COMPOSITE_ONLY_ICONS\n};\n\n/** @private */\nexport type CompositeIconProps<Icons> = IIconProps & { iconName: keyof Icons };\n\n/**\n * Icons that can be overridden for {@link ChatComposite}.\n *\n * @public\n */\nexport type ChatCompositeIcons = {\n EditBoxCancel?: JSX.Element;\n EditBoxSubmit?: JSX.Element;\n MessageDelivered?: JSX.Element;\n MessageEdit?: JSX.Element;\n MessageFailed?: JSX.Element;\n MessageRemove?: JSX.Element;\n MessageSeen?: JSX.Element;\n MessageSending?: JSX.Element;\n ParticipantItemOptions?: JSX.Element;\n ParticipantItemOptionsHovered?: JSX.Element;\n SendBoxSend?: JSX.Element;\n SendBoxSendHovered?: JSX.Element;\n /* @conditional-compile-remove(file-sharing-acs) */\n SendBoxAttachFile?: JSX.Element;\n};\n\n/**\n * Icon wrapper to use when including customizable icons inside the ChatComposite.\n * This wrapper ensures the icon name is being type-checked helping ensure no typos\n * and ensure that icon is customizable through the composite API.\n *\n * @private\n */\nexport const ChatCompositeIcon = (props: CompositeIconProps<ChatCompositeIcons>): JSX.Element => (\n <FontIcon {...props} />\n);\n\n/**\n * Icons that can be overridden for {@link CallComposite}.\n *\n * @public\n */\nexport type CallCompositeIcons = {\n ControlBarPeopleButton?: JSX.Element;\n ControlButtonCameraOff?: JSX.Element;\n ControlButtonCameraOn?: JSX.Element;\n ControlButtonEndCall?: JSX.Element;\n ControlButtonMicOff?: JSX.Element;\n ControlButtonMicOn?: JSX.Element;\n ControlButtonOptions?: JSX.Element;\n ControlButtonParticipants?: JSX.Element;\n ControlButtonScreenShareStart?: JSX.Element;\n ControlButtonScreenShareStop?: JSX.Element;\n\n ControlButtonCameraProhibited?: JSX.Element;\n\n ControlButtonMicProhibited?: JSX.Element;\n ControlButtonRaiseHand?: JSX.Element;\n ControlButtonLowerHand?: JSX.Element;\n ControlButtonExitSpotlight?: JSX.Element;\n RaiseHandContextualMenuItem?: JSX.Element;\n ReactionContextualMenuItem?: JSX.Element;\n LowerHandContextualMenuItem?: JSX.Element;\n ReactionButtonIcon?: JSX.Element;\n ErrorBarCallCameraAccessDenied?: JSX.Element;\n ErrorBarCallCameraAlreadyInUse?: JSX.Element;\n ErrorBarCallLocalVideoFreeze?: JSX.Element;\n ErrorBarCallMacOsCameraAccessDenied?: JSX.Element;\n ErrorBarCallMacOsMicrophoneAccessDenied?: JSX.Element;\n ErrorBarCallMicrophoneAccessDenied?: JSX.Element;\n ErrorBarCallMicrophoneMutedBySystem?: JSX.Element;\n ErrorBarCallMicrophoneUnmutedBySystem?: JSX.Element;\n ErrorBarCallNetworkQualityLow?: JSX.Element;\n ErrorBarCallNoMicrophoneFound?: JSX.Element;\n ErrorBarCallNoSpeakerFound?: JSX.Element;\n ErrorBarClear?: JSX.Element;\n HorizontalGalleryLeftButton?: JSX.Element;\n HorizontalGalleryRightButton?: JSX.Element;\n LobbyScreenConnectingToCall?: JSX.Element;\n LobbyScreenWaitingToBeAdmitted?: JSX.Element;\n LocalDeviceSettingsCamera?: JSX.Element;\n LocalDeviceSettingsMic?: JSX.Element;\n LocalDeviceSettingsSpeaker?: JSX.Element;\n LocalPreviewPlaceholder?: JSX.Element;\n Muted?: JSX.Element;\n NetworkReconnectIcon?: JSX.Element;\n NoticePageAccessDeniedTeamsMeeting?: JSX.Element;\n NoticePageJoinCallFailedDueToNoNetwork?: JSX.Element;\n NoticePageLeftCall?: JSX.Element;\n NoticePageRemovedFromCall?: JSX.Element;\n NoticePageCallRejected?: JSX.Element;\n NoticePageNotInvitedToRoom?: JSX.Element;\n NoticePageRoomNotFound?: JSX.Element;\n NoticePageRoomNotValid?: JSX.Element;\n NoticePageCallTimeout?: JSX.Element;\n OptionsCamera?: JSX.Element;\n OptionsMic?: JSX.Element;\n OptionsSpeaker?: JSX.Element;\n ParticipantItemMicOff?: JSX.Element;\n ParticipantItemOptions?: JSX.Element;\n ParticipantItemOptionsHovered?: JSX.Element;\n ParticipantItemScreenShareStart?: JSX.Element;\n VideoTileMicOff?: JSX.Element;\n LocalCameraSwitch?: JSX.Element;\n /* @conditional-compile-remove(PSTN-calls) */\n PeoplePaneAddPerson?: JSX.Element;\n /* @conditional-compile-remove(PSTN-calls) */\n PeoplePaneOpenDialpad?: JSX.Element;\n /* @conditional-compile-remove(PSTN-calls) */\n DialpadStartCall?: JSX.Element;\n NoticePageInviteToRoomRemoved?: JSX.Element;\n\n BlurVideoBackground?: JSX.Element;\n\n RemoveVideoBackgroundEffect?: JSX.Element;\n GalleryOptions?: JSX.Element;\n SpeakerGalleryLayout?: JSX.Element;\n FloatingLocalVideoGalleryLayout?: JSX.Element;\n DefaultGalleryLayout?: JSX.Element;\n FocusedContentGalleryLayout?: JSX.Element;\n OverflowGalleryTop?: JSX.Element;\n LargeGalleryLayout?: JSX.Element;\n DefaultCustomButton?: JSX.Element;\n DtmfDialpadButton?: JSX.Element;\n PhoneNumberButton?: JSX.Element;\n JoinByPhoneDialStepIcon?: JSX.Element;\n JoinByPhoneConferenceIdIcon?: JSX.Element;\n JoinByPhoneWaitToBeAdmittedIcon?: JSX.Element;\n PeoplePaneMoreButton?: JSX.Element;\n StopAllSpotlightMenuButton?: JSX.Element;\n};\n\n/**\n * Icon wrapper to use when including customizable icons inside the CallComposite.\n * This wrapper ensures the icon name is being type-checked helping ensure no typos\n * and ensure that icon is customizable through the composite API.\n *\n * @private\n */\nexport const CallCompositeIcon = (props: CompositeIconProps<CallCompositeIcons>): JSX.Element => (\n <FontIcon {...props} />\n);\n\n/**\n * Icons that can be overridden for {@link CallWithChatComposite}.\n *\n * @public\n */\nexport type CallWithChatCompositeIcons = {\n // CallWithChat Specific Icons\n ChevronLeft?: JSX.Element;\n ControlBarChatButtonActive?: JSX.Element;\n ControlBarChatButtonInactive?: JSX.Element;\n ControlBarPeopleButton?: JSX.Element;\n Link?: JSX.Element;\n MoreDrawerMicrophones?: JSX.Element;\n MoreDrawerPeople?: JSX.Element;\n MoreDrawerSelectedMicrophone?: JSX.Element;\n MoreDrawerSelectedSpeaker?: JSX.Element;\n MoreDrawerSpeakers?: JSX.Element;\n\n // Call icons\n ControlButtonCameraOff?: JSX.Element;\n ControlButtonCameraOn?: JSX.Element;\n ControlButtonEndCall?: JSX.Element;\n ControlButtonMicOff?: JSX.Element;\n ControlButtonMicOn?: JSX.Element;\n ControlButtonOptions?: JSX.Element;\n ControlButtonScreenShareStart?: JSX.Element;\n ControlButtonScreenShareStop?: JSX.Element;\n\n ControlButtonCameraProhibited?: JSX.Element;\n\n ControlButtonMicProhibited?: JSX.Element;\n ErrorBarCallCameraAccessDenied?: JSX.Element;\n ErrorBarCallCameraAlreadyInUse?: JSX.Element;\n ErrorBarCallLocalVideoFreeze?: JSX.Element;\n ErrorBarCallMacOsCameraAccessDenied?: JSX.Element;\n ErrorBarCallMacOsMicrophoneAccessDenied?: JSX.Element;\n ErrorBarCallMicrophoneAccessDenied?: JSX.Element;\n ErrorBarCallMicrophoneMutedBySystem?: JSX.Element;\n ErrorBarCallMicrophoneUnmutedBySystem?: JSX.Element;\n ErrorBarCallNetworkQualityLow?: JSX.Element;\n ErrorBarCallNoMicrophoneFound?: JSX.Element;\n ErrorBarCallNoSpeakerFound?: JSX.Element;\n ErrorBarClear?: JSX.Element;\n HorizontalGalleryLeftButton?: JSX.Element;\n HorizontalGalleryRightButton?: JSX.Element;\n LobbyScreenConnectingToCall?: JSX.Element;\n LobbyScreenWaitingToBeAdmitted?: JSX.Element;\n LocalDeviceSettingsCamera?: JSX.Element;\n LocalDeviceSettingsMic?: JSX.Element;\n LocalDeviceSettingsSpeaker?: JSX.Element;\n LocalPreviewPlaceholder?: JSX.Element;\n Muted?: JSX.Element;\n NetworkReconnectIcon?: JSX.Element;\n NoticePageAccessDeniedTeamsMeeting?: JSX.Element;\n NoticePageJoinCallFailedDueToNoNetwork?: JSX.Element;\n NoticePageLeftCall?: JSX.Element;\n NoticePageRemovedFromCall?: JSX.Element;\n OptionsCamera?: JSX.Element;\n OptionsMic?: JSX.Element;\n OptionsSpeaker?: JSX.Element;\n ParticipantItemMicOff?: JSX.Element;\n ParticipantItemScreenShareStart?: JSX.Element;\n VideoTileMicOff?: JSX.Element;\n LocalCameraSwitch?: JSX.Element;\n /* @conditional-compile-remove(PSTN-calls) */\n PeoplePaneAddPerson?: JSX.Element;\n /* @conditional-compile-remove(PSTN-calls) */\n PeoplePaneOpenDialpad?: JSX.Element;\n /* @conditional-compile-remove(PSTN-calls) */\n DialpadStartCall?: JSX.Element;\n DefaultCustomButton?: JSX.Element;\n DtmfDialpadButton?: JSX.Element;\n\n // Chat icons\n EditBoxCancel?: JSX.Element;\n EditBoxSubmit?: JSX.Element;\n MessageDelivered?: JSX.Element;\n MessageEdit?: JSX.Element;\n MessageFailed?: JSX.Element;\n MessageRemove?: JSX.Element;\n MessageSeen?: JSX.Element;\n MessageSending?: JSX.Element;\n SendBoxSend?: JSX.Element;\n SendBoxSendHovered?: JSX.Element;\n SendBoxAttachFile?: JSX.Element;\n\n // Icons common to Call and Chat.\n ParticipantItemOptions?: JSX.Element;\n ParticipantItemOptionsHovered?: JSX.Element;\n PeoplePaneMoreButton?: JSX.Element;\n StopAllSpotlightMenuButton?: JSX.Element;\n};\n\n/**\n * Icon wrapper to use when including customizable icons inside the CallWithChatComposite.\n * This wrapper ensures the icon name is being type-checked helping ensure no typos\n * and ensure that icon is customizable through the composite API.\n *\n * @private\n */\nexport const CallWithChatCompositeIcon = (props: CompositeIconProps<CallWithChatCompositeIcons>): JSX.Element => (\n <FontIcon {...props} />\n);\n\n/**\n * Icons that can be overridden in one of the composites exported by this library.\n *\n * See {@link ChatCompositeIcons}, {@link CallCompositeIcons} and {@link CallWithChatCompositeIcons} for more targeted types.\n *\n * @public\n */\nexport type CompositeIcons = ChatCompositeIcons & CallCompositeIcons & CallWithChatCompositeIcons;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"CommonCallControlOptions.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/common/types/CommonCallControlOptions.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { CustomCallControlButtonCallback } from '../ControlBar/CustomButton';\n\n/**\n * Control bar display type for {@link CallComposite}.\n *\n * @public\n */\nexport type CallControlDisplayType = 'default' | 'compact';\n\n/**\n * Customization options for the control bar in calling experience.\n *\n * @public\n */\nexport type CommonCallControlOptions = {\n /**\n * {@link CallControlDisplayType} to change how the call controls are displayed.\n * `'compact'` display type will decreases the size of buttons and hide the labels.\n *\n * @remarks\n * If the composite `formFactor` is set to `'mobile'`, the control bar will always use compact view.\n *\n * @defaultValue 'default'\n */\n displayType?: CallControlDisplayType;\n /**\n * Show or Hide Camera Button during a call\n * @defaultValue true\n */\n cameraButton?:\n | boolean\n | /* @conditional-compile-remove(PSTN-calls) */ {\n disabled: boolean;\n };\n /**\n * Show or Hide EndCall button during a call.\n * @defaultValue true\n */\n endCallButton?:\n | boolean\n | /* @conditional-compile-remove(end-call-options) */ {\n /**\n * whether to make end call button to trigger a menu, which will enable end call for everybody functionality.\n * @defaultValue false\n */\n hangUpForEveryone?: false | 'endCallOptions';\n /**\n * Wether to disable the end call confirmation modal.\n */\n disableEndCallModal?: boolean;\n };\n /**\n * Show or Hide Microphone button during a call.\n * @defaultValue true\n */\n microphoneButton?:\n | boolean\n | /* @conditional-compile-remove(PSTN-calls) */ {\n disabled: boolean;\n };\n /**\n * Show or Hide Devices button during a call.\n * @defaultValue true\n */\n devicesButton?:\n | boolean\n | /* @conditional-compile-remove(PSTN-calls) */ {\n disabled: boolean;\n };\n /**\n * Show, Hide or Disable participants button during a call.\n * @defaultValue true\n */\n participantsButton?: boolean | { disabled: boolean };\n /**\n * Show, Hide or Disable the screen share button during a call.\n * @defaultValue true\n */\n screenShareButton?: boolean | { disabled: boolean };\n /**\n * Show, Hide or disable the more button during a call.\n * @defaultValue true\n */\n moreButton?: boolean;\n /**\n * Show, Hide or Disable the screen share button during a call.\n * @defaultValue true\n */\n raiseHandButton?: boolean | { disabled: boolean };\n /**\n * Show, Hide or Disable the reaction button during a call.\n * @defaultValue true\n */\n reactionButton?: boolean | { disabled: boolean };\n /**\n * Inject custom buttons in the call controls.\n */\n onFetchCustomButtonProps?: CustomCallControlButtonCallback[];\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\n holdButton?: boolean | { disabled: boolean };\n /**\n * Show or hide the people button in the composite control bar.\n * @defaultValue true\n */\n peopleButton?: boolean | /* @conditional-compile-remove(PSTN-calls) */ { disabled: boolean };\n /**\n * Show or hide the dialpad button in the composite control bar.\n */\n dtmfDialerButton?: boolean | { disabled: boolean };\n /**\n * Show or hide the exit spotlight button in the composite control bar when local participant is spotlighted.\n */\n exitSpotlightButton?: boolean;\n /* @conditional-compile-remove(acs-close-captions) */\n /**\n * Show, Hide or Disable captions during a call.\n * @defaultValue true\n */\n captionsButton?: boolean;\n /* @conditional-compile-remove(teams-meeting-conference) */\n /**\n * Show, meeting conference phone information.\n * @defaultValue true\n */\n teamsMeetingPhoneCallButton?: boolean;\n};\n"]}
1
+ {"version":3,"file":"CommonCallControlOptions.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/common/types/CommonCallControlOptions.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { CustomCallControlButtonCallback } from '../ControlBar/CustomButton';\n\n/**\n * Control bar display type for {@link CallComposite}.\n *\n * @public\n */\nexport type CallControlDisplayType = 'default' | 'compact';\n\n/**\n * Customization options for the control bar in calling experience.\n *\n * @public\n */\nexport type CommonCallControlOptions = {\n /**\n * {@link CallControlDisplayType} to change how the call controls are displayed.\n * `'compact'` display type will decreases the size of buttons and hide the labels.\n *\n * @remarks\n * If the composite `formFactor` is set to `'mobile'`, the control bar will always use compact view.\n *\n * @defaultValue 'default'\n */\n displayType?: CallControlDisplayType;\n /**\n * Show or Hide Camera Button during a call\n * @defaultValue true\n */\n cameraButton?:\n | boolean\n | /* @conditional-compile-remove(PSTN-calls) */ {\n disabled: boolean;\n };\n /**\n * Show or Hide EndCall button during a call.\n * @defaultValue true\n */\n endCallButton?:\n | boolean\n | /* @conditional-compile-remove(end-call-options) */ {\n /**\n * whether to make end call button to trigger a menu, which will enable end call for everybody functionality.\n * @defaultValue false\n */\n hangUpForEveryone?: false | 'endCallOptions';\n /**\n * Wether to disable the end call confirmation modal.\n */\n disableEndCallModal?: boolean;\n };\n /**\n * Show or Hide Microphone button during a call.\n * @defaultValue true\n */\n microphoneButton?:\n | boolean\n | /* @conditional-compile-remove(PSTN-calls) */ {\n disabled: boolean;\n };\n /**\n * Show or Hide Devices button during a call.\n * @defaultValue true\n */\n devicesButton?:\n | boolean\n | /* @conditional-compile-remove(PSTN-calls) */ {\n disabled: boolean;\n };\n /**\n * Show, Hide or Disable participants button during a call.\n * @defaultValue true\n */\n participantsButton?: boolean | { disabled: boolean };\n /**\n * Show, Hide or Disable the screen share button during a call.\n * @defaultValue true\n */\n screenShareButton?: boolean | { disabled: boolean };\n /**\n * Show, Hide or disable the more button during a call.\n * @defaultValue true\n */\n moreButton?: boolean;\n /**\n * Show, Hide or Disable the screen share button during a call.\n * @defaultValue true\n */\n raiseHandButton?: boolean | { disabled: boolean };\n /**\n * Show, Hide or Disable the reaction button during a call.\n * @defaultValue true\n */\n reactionButton?: boolean | { disabled: boolean };\n /**\n * Inject custom buttons in the call controls.\n */\n onFetchCustomButtonProps?: CustomCallControlButtonCallback[];\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\n holdButton?: boolean | { disabled: boolean };\n /**\n * Show or hide the people button in the composite control bar.\n * @defaultValue true\n */\n peopleButton?: boolean | /* @conditional-compile-remove(PSTN-calls) */ { disabled: boolean };\n /**\n * Show or hide the dialpad button in the composite control bar.\n */\n dtmfDialerButton?: boolean | { disabled: boolean };\n /**\n * Show or hide the exit spotlight button in the composite control bar when local participant is spotlighted.\n */\n exitSpotlightButton?: boolean;\n /* @conditional-compile-remove(acs-close-captions) */\n /**\n * Show, Hide or Disable captions during a call.\n * @defaultValue true\n */\n captionsButton?: boolean;\n /**\n * Show, meeting conference phone information.\n * @defaultValue true\n */\n teamsMeetingPhoneCallButton?: boolean;\n};\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@azure/communication-react",
3
- "version": "1.19.0-alpha-202409110015",
3
+ "version": "1.19.0-alpha-202409121837",
4
4
  "sideEffects": false,
5
5
  "description": "React library for building modern communication user experiences utilizing Azure Communication Services",
6
6
  "keywords": [
@@ -55,7 +55,7 @@
55
55
  "uuid": "^9.0.0"
56
56
  },
57
57
  "peerDependencies": {
58
- "@azure/communication-calling": "1.29.1-beta.1",
58
+ "@azure/communication-calling": "1.29.1-beta.2",
59
59
  "@azure/communication-calling-effects": "1.0.1",
60
60
  "@azure/communication-chat": "1.6.0-beta.3",
61
61
  "@types/react": ">=16.8.0 <19.0.0",
@@ -65,6 +65,17 @@
65
65
  },
66
66
  "main": "./dist/dist-cjs/communication-react/index.js",
67
67
  "module": "./dist/dist-esm/communication-react/src/index.js",
68
+ "exports": {
69
+ ".": {
70
+ "main": "./dist/dist-cjs/communication-react/index.js",
71
+ "module": "./dist/dist-esm/communication-react/src/index.js",
72
+ "types": "./dist/communication-react.d.ts"
73
+ },
74
+ "./javascript-loaders": {
75
+ "module": "./dist/dist-esm/communication-react/src/javascript-loaders.js",
76
+ "types": "./dist/dist-esm/communication-react/src/javascript-loaders.d.ts"
77
+ }
78
+ },
68
79
  "scripts": {
69
80
  "copy-original": "cpx \"../*/src/**\" ./preprocess-dist && renamer --find src --replace preprocessed ./preprocess-dist/**/*",
70
81
  "preprocess": "babel ../*/src --out-dir ../preprocessed --extensions \".ts,.tsx\" --keep-file-extension --config-file ./.babelrc.js --relative && rimraf ../preprocessed",
@@ -74,12 +85,14 @@
74
85
  "build:cjs": "rollup -c --silent",
75
86
  "build:esm": "npm run _if-preprocess && rushx copy-original && rushx preprocess && rushx copy-preprocess && tspc -project tsconfig.preprocess.json || (if-env COMMUNICATION_REACT_FLAVOR=beta && tspc)",
76
87
  "build:watch": "",
88
+ "build:api": "rushx _by-flavor \"rushx _api-extractor:complete:by-flavor\"",
77
89
  "clean": "rimraf dist && rimraf ../**/preprocessed && rimraf ../**/preprocess-dist",
78
90
  "test": "",
79
91
  "test:ci-coverage": "",
80
92
  "test:coverage": "",
81
93
  "check-deps": "node scripts/verifyDependencies",
82
94
  "api-extractor": "rushx _by-flavor \"rushx build:esm && rushx _api-extractor:by-flavor\"",
95
+ "api-extractor:complete": "rushx _by-flavor \"rushx build:esm && rushx api-extractor:complete:by-falvor\"",
83
96
  "generate-doc": "api-documenter markdown -i temp -o docGen",
84
97
  "prettier": "prettier --no-error-on-unmatched-pattern --write --config ../../.prettierrc --ignore-path=../../.prettierignore \"**/*.js\" \"**/*.jsx\" \"**/*.ts\" \"**/*.tsx\"",
85
98
  "prettier:check": "prettier --no-error-on-unmatched-pattern --check --config ../../.prettierrc --ignore-path=../../.prettierignore \"**/*.js\" \"**/*.jsx\" \"**/*.ts\" \"**/*.tsx\"",
@@ -92,6 +105,7 @@
92
105
  "_if-preprocess": "if-env COMMUNICATION_REACT_FLAVOR=stable || if-env COMMUNICATION_REACT_FLAVOR=beta-release",
93
106
  "_if-beta": "if-env COMMUNICATION_REACT_FLAVOR=beta || if-env COMMUNICATION_REACT_FLAVOR=beta-release",
94
107
  "_api-extractor:by-flavor": "if-env COMMUNICATION_REACT_FLAVOR=stable && api-extractor run -c api-extractor.stable.json --local || (rushx _if-beta && api-extractor run --local)",
108
+ "_api-extractor:complete:by-flavor": "if-env COMMUNICATION_REACT_FLAVOR=stable && api-extractor run -c api-extractor-complete.stable.json --local || (rushx _if-beta && api-extractor run -c api-extractor-complete.json --local)",
95
109
  "_build:by-flavor": "rushx clean && rushx build:esm && rushx build:cjs && rushx _api-extractor:by-flavor",
96
110
  "_current-flavor": "echo You are running under COMMUNICATION_REACT_FLAVOR: && env-cmd -f ../../common/config/env/.env node -p process.env.COMMUNICATION_REACT_FLAVOR",
97
111
  "_by-flavor": "rushx _current-flavor && env-cmd -f ../../common/config/env/.env --use-shell"