@azure/communication-react 1.24.0-alpha-202501310016 → 1.24.0-alpha-202502040016

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 (129) hide show
  1. package/dist/communication-react.d.ts +25 -2
  2. package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-CAFpQ8Yk.js → ChatMessageComponentAsRichTextEditBox-AkTSmAsd.js} +2 -2
  3. package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-CAFpQ8Yk.js.map → ChatMessageComponentAsRichTextEditBox-AkTSmAsd.js.map} +1 -1
  4. package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-DTWPl1yi.js → RichTextSendBoxWrapper-B3Xe7mdR.js} +2 -2
  5. package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-DTWPl1yi.js.map → RichTextSendBoxWrapper-B3Xe7mdR.js.map} +1 -1
  6. package/dist/dist-cjs/communication-react/{index-B8uYcMR8.js → index-CNpitKVB.js} +279 -524
  7. package/dist/dist-cjs/communication-react/index-CNpitKVB.js.map +1 -0
  8. package/dist/dist-cjs/communication-react/index.js +1 -1
  9. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  10. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  11. package/dist/dist-esm/communication-react/src/index.d.ts +1 -2
  12. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  13. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js +2 -7
  14. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
  15. package/dist/dist-esm/react-components/src/components/NotificationStack.js.map +1 -1
  16. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  17. package/dist/dist-esm/react-components/src/components/ParticipantList.js +11 -23
  18. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  19. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +6 -18
  20. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  21. package/dist/dist-esm/react-components/src/components/TogetherModeOverlay.js +24 -40
  22. package/dist/dist-esm/react-components/src/components/TogetherModeOverlay.js.map +1 -1
  23. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js +1 -3
  24. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js.map +1 -1
  25. package/dist/dist-esm/react-components/src/components/VideoGallery/TogetherModeLayout.d.ts +3 -2
  26. package/dist/dist-esm/react-components/src/components/VideoGallery/TogetherModeLayout.js +4 -72
  27. package/dist/dist-esm/react-components/src/components/VideoGallery/TogetherModeLayout.js.map +1 -1
  28. package/dist/dist-esm/react-components/src/components/VideoGallery/TogetherModeStream.d.ts +0 -1
  29. package/dist/dist-esm/react-components/src/components/VideoGallery/TogetherModeStream.js.map +1 -1
  30. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js +4 -17
  31. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js.map +1 -1
  32. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js +1 -20
  33. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js.map +1 -1
  34. package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts +26 -3
  35. package/dist/dist-esm/react-components/src/components/VideoGallery.js +11 -36
  36. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  37. package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +1 -2
  38. package/dist/dist-esm/react-components/src/components/VideoTile.js +6 -39
  39. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  40. package/dist/dist-esm/react-components/src/components/styles/TogetherMode.styles.d.ts +10 -1
  41. package/dist/dist-esm/react-components/src/components/styles/TogetherMode.styles.js +34 -5
  42. package/dist/dist-esm/react-components/src/components/styles/TogetherMode.styles.js.map +1 -1
  43. package/dist/dist-esm/react-components/src/components/utils.js +1 -13
  44. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  45. package/dist/dist-esm/react-components/src/index.d.ts +1 -1
  46. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  47. package/dist/dist-esm/react-components/src/localization/locales/ar-SA/strings.json +45 -22
  48. package/dist/dist-esm/react-components/src/localization/locales/cs-CZ/strings.json +45 -22
  49. package/dist/dist-esm/react-components/src/localization/locales/cy-GB/strings.json +44 -21
  50. package/dist/dist-esm/react-components/src/localization/locales/de-DE/strings.json +44 -21
  51. package/dist/dist-esm/react-components/src/localization/locales/en-GB/strings.json +43 -20
  52. package/dist/dist-esm/react-components/src/localization/locales/es-ES/strings.json +44 -21
  53. package/dist/dist-esm/react-components/src/localization/locales/es-MX/strings.json +44 -21
  54. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/strings.json +44 -21
  55. package/dist/dist-esm/react-components/src/localization/locales/fr-CA/strings.json +44 -21
  56. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/strings.json +45 -22
  57. package/dist/dist-esm/react-components/src/localization/locales/he-IL/strings.json +44 -21
  58. package/dist/dist-esm/react-components/src/localization/locales/it-IT/strings.json +44 -21
  59. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/strings.json +44 -21
  60. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/strings.json +44 -21
  61. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/strings.json +45 -22
  62. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/strings.json +44 -21
  63. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/strings.json +44 -21
  64. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/strings.json +44 -21
  65. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/strings.json +44 -21
  66. package/dist/dist-esm/react-components/src/localization/locales/sv-SE/strings.json +44 -21
  67. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/strings.json +44 -21
  68. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/strings.json +44 -21
  69. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/strings.json +44 -21
  70. package/dist/dist-esm/react-components/src/theming/icons.js +0 -6
  71. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  72. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js.map +1 -1
  73. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
  74. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  75. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +2 -3
  76. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +0 -21
  77. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  78. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  79. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +24 -38
  80. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  81. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js +5 -23
  82. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js.map +1 -1
  83. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.d.ts +1 -2
  84. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js +1 -85
  85. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js.map +1 -1
  86. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js +0 -1
  87. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js.map +1 -1
  88. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +0 -8
  89. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  90. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.d.ts +16 -2
  91. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +16 -1
  92. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
  93. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +2 -2
  94. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +0 -8
  95. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  96. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  97. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +2 -2
  98. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +0 -8
  99. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  100. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js +39 -5
  101. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js.map +1 -1
  102. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +38 -8
  103. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -1
  104. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  105. package/dist/dist-esm/react-composites/src/composites/localization/locales/ar-SA/strings.json +19 -0
  106. package/dist/dist-esm/react-composites/src/composites/localization/locales/cs-CZ/strings.json +19 -0
  107. package/dist/dist-esm/react-composites/src/composites/localization/locales/cy-GB/strings.json +19 -0
  108. package/dist/dist-esm/react-composites/src/composites/localization/locales/de-DE/strings.json +19 -0
  109. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-GB/strings.json +19 -0
  110. package/dist/dist-esm/react-composites/src/composites/localization/locales/es-ES/strings.json +19 -0
  111. package/dist/dist-esm/react-composites/src/composites/localization/locales/es-MX/strings.json +19 -0
  112. package/dist/dist-esm/react-composites/src/composites/localization/locales/fi-FI/strings.json +19 -0
  113. package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-CA/strings.json +19 -0
  114. package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-FR/strings.json +19 -0
  115. package/dist/dist-esm/react-composites/src/composites/localization/locales/he-IL/strings.json +19 -0
  116. package/dist/dist-esm/react-composites/src/composites/localization/locales/it-IT/strings.json +19 -0
  117. package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/strings.json +19 -0
  118. package/dist/dist-esm/react-composites/src/composites/localization/locales/ko-KR/strings.json +19 -0
  119. package/dist/dist-esm/react-composites/src/composites/localization/locales/nb-NO/strings.json +19 -0
  120. package/dist/dist-esm/react-composites/src/composites/localization/locales/nl-NL/strings.json +19 -0
  121. package/dist/dist-esm/react-composites/src/composites/localization/locales/pl-PL/strings.json +19 -0
  122. package/dist/dist-esm/react-composites/src/composites/localization/locales/pt-BR/strings.json +19 -0
  123. package/dist/dist-esm/react-composites/src/composites/localization/locales/ru-RU/strings.json +19 -0
  124. package/dist/dist-esm/react-composites/src/composites/localization/locales/sv-SE/strings.json +19 -0
  125. package/dist/dist-esm/react-composites/src/composites/localization/locales/tr-TR/strings.json +19 -0
  126. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-CN/strings.json +19 -0
  127. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-TW/strings.json +19 -0
  128. package/package.json +4 -4
  129. package/dist/dist-cjs/communication-react/index-B8uYcMR8.js.map +0 -1
@@ -11,25 +11,7 @@ import { Prompt } from '../Prompt';
11
11
  const PEOPLE_SIDE_PANE_ID = 'people';
12
12
  /** @private */
13
13
  export const usePeoplePane = (props) => {
14
- const { updateSidePaneRenderer, inviteLink, onFetchAvatarPersonaData, onFetchParticipantMenuItems, setDrawerMenuItems, mobileView, peopleButtonRef, setParticipantActioned, spotlightedParticipantUserIds, onStartLocalSpotlight, onStopLocalSpotlight, onStartRemoteSpotlight, onStopRemoteSpotlight, onStopAllSpotlight, maxParticipantsToSpotlight, onMuteParticipant, pinnedParticipants, onPinParticipant, onUnpinParticipant, disablePinMenuItem, onMuteAllRemoteParticipants,
15
- /* @conditional-compile-remove(media-access) */
16
- onForbidAudio,
17
- /* @conditional-compile-remove(media-access) */
18
- onPermitAudio,
19
- /* @conditional-compile-remove(media-access) */
20
- onForbidOthersAudio,
21
- /* @conditional-compile-remove(media-access) */
22
- onPermitOthersAudio,
23
- /* @conditional-compile-remove(media-access) */
24
- onForbidVideo,
25
- /* @conditional-compile-remove(media-access) */
26
- onPermitVideo,
27
- /* @conditional-compile-remove(media-access) */
28
- onForbidOthersVideo,
29
- /* @conditional-compile-remove(media-access) */
30
- onPermitOthersVideo,
31
- /* @conditional-compile-remove(media-access) */
32
- meetingMediaAccess, sidePaneDismissButtonRef, chatButtonPresent } = props;
14
+ const { updateSidePaneRenderer, inviteLink, onFetchAvatarPersonaData, onFetchParticipantMenuItems, setDrawerMenuItems, mobileView, peopleButtonRef, setParticipantActioned, spotlightedParticipantUserIds, onStartLocalSpotlight, onStopLocalSpotlight, onStartRemoteSpotlight, onStopRemoteSpotlight, onStopAllSpotlight, maxParticipantsToSpotlight, onMuteParticipant, pinnedParticipants, onPinParticipant, onUnpinParticipant, disablePinMenuItem, onMuteAllRemoteParticipants, onForbidAudio, onPermitAudio, onForbidOthersAudio, onPermitOthersAudio, onForbidVideo, onPermitVideo, onForbidOthersVideo, onPermitOthersVideo, meetingMediaAccess, sidePaneDismissButtonRef, chatButtonPresent } = props;
33
15
  const closePane = useCallback(() => {
34
16
  var _a;
35
17
  updateSidePaneRenderer(undefined);
@@ -53,30 +35,22 @@ export const usePeoplePane = (props) => {
53
35
  onMuteAllRemoteParticipants && onMuteAllRemoteParticipants();
54
36
  setShowMuteAllPrompt(false);
55
37
  }, [onMuteAllRemoteParticipants, setShowMuteAllPrompt]);
56
- /* @conditional-compile-remove(media-access) */
57
38
  const [showForbidOthersAudioPrompt, setShowForbidOthersAudioPrompt] = useState(false);
58
- /* @conditional-compile-remove(media-access) */
59
39
  const [showPermitOthersAudioPrompt, setShowPermitOthersAudioPrompt] = useState(false);
60
- /* @conditional-compile-remove(media-access) */
61
40
  const [showForbidOthersVideoPrompt, setShowForbidOthersVideoPrompt] = useState(false);
62
- /* @conditional-compile-remove(media-access) */
63
41
  const [showPermitOthersVideoPrompt, setShowPermitOthersVideoPrompt] = useState(false);
64
- /* @conditional-compile-remove(media-access) */
65
42
  const onForbidAllAttendeesPromptConfirm = useCallback(() => {
66
43
  onForbidOthersAudio && onForbidOthersAudio();
67
44
  setShowForbidOthersAudioPrompt(false);
68
45
  }, [onForbidOthersAudio, setShowForbidOthersAudioPrompt]);
69
- /* @conditional-compile-remove(media-access) */
70
46
  const onPermitAllAttendeesPromptConfirm = useCallback(() => {
71
47
  onPermitOthersAudio && onPermitOthersAudio();
72
48
  setShowPermitOthersAudioPrompt(false);
73
49
  }, [onPermitOthersAudio, setShowPermitOthersAudioPrompt]);
74
- /* @conditional-compile-remove(media-access) */
75
50
  const onForbidOthersVideoPromptConfirm = useCallback(() => {
76
51
  onForbidOthersVideo && onForbidOthersVideo();
77
52
  setShowForbidOthersVideoPrompt(false);
78
53
  }, [onForbidOthersVideo, setShowForbidOthersVideoPrompt]);
79
- /* @conditional-compile-remove(media-access) */
80
54
  const onPermitOthersVideoPromptConfirm = useCallback(() => {
81
55
  onPermitOthersVideo && onPermitOthersVideo();
82
56
  setShowPermitOthersVideoPrompt(false);
@@ -108,9 +82,7 @@ export const usePeoplePane = (props) => {
108
82
  disabled: isAllMuted
109
83
  });
110
84
  }
111
- /* @conditional-compile-remove(media-access) */
112
85
  let hasAttendee = false;
113
- /* @conditional-compile-remove(media-access) */
114
86
  if (remoteParticipants) {
115
87
  for (const participant of Object.values(remoteParticipants)) {
116
88
  if (participant.role && participant.role === 'Attendee') {
@@ -119,11 +91,8 @@ export const usePeoplePane = (props) => {
119
91
  }
120
92
  }
121
93
  }
122
- /* @conditional-compile-remove(media-access) */
123
94
  const isMeetingAudioPermitted = meetingMediaAccess ? meetingMediaAccess.isAudioPermitted : true;
124
- /* @conditional-compile-remove(media-access) */
125
95
  const isMeetingVideoPermitted = meetingMediaAccess ? meetingMediaAccess.isVideoPermitted : true;
126
- /* @conditional-compile-remove(media-access) */
127
96
  if (onForbidOthersAudio && remoteParticipants) {
128
97
  hasAttendee &&
129
98
  isMeetingAudioPermitted &&
@@ -142,7 +111,6 @@ export const usePeoplePane = (props) => {
142
111
  disabled: !hasAttendee
143
112
  });
144
113
  }
145
- /* @conditional-compile-remove(media-access) */
146
114
  if (onPermitOthersAudio && remoteParticipants) {
147
115
  hasAttendee &&
148
116
  !isMeetingAudioPermitted &&
@@ -161,7 +129,6 @@ export const usePeoplePane = (props) => {
161
129
  disabled: !hasAttendee
162
130
  });
163
131
  }
164
- /* @conditional-compile-remove(media-access) */
165
132
  if (onForbidOthersVideo && remoteParticipants) {
166
133
  hasAttendee &&
167
134
  isMeetingVideoPermitted &&
@@ -180,7 +147,6 @@ export const usePeoplePane = (props) => {
180
147
  disabled: !hasAttendee
181
148
  });
182
149
  }
183
- /* @conditional-compile-remove(media-access) */
184
150
  if (onPermitOthersVideo && remoteParticipants) {
185
151
  hasAttendee &&
186
152
  !isMeetingVideoPermitted &&
@@ -216,26 +182,17 @@ export const usePeoplePane = (props) => {
216
182
  }, [
217
183
  onMuteAllRemoteParticipants,
218
184
  remoteParticipants,
219
- /* @conditional-compile-remove(media-access) */
220
185
  meetingMediaAccess,
221
- /* @conditional-compile-remove(media-access) */
222
186
  onForbidOthersAudio,
223
- /* @conditional-compile-remove(media-access) */
224
187
  onPermitOthersAudio,
225
- /* @conditional-compile-remove(media-access) */
226
188
  onForbidOthersVideo,
227
- /* @conditional-compile-remove(media-access) */
228
189
  onPermitOthersVideo,
229
190
  onStopAllSpotlight,
230
191
  spotlightedParticipantUserIds,
231
192
  localeStrings.muteAllMenuLabel,
232
- /* @conditional-compile-remove(media-access) */
233
193
  localeStrings.forbidOthersAudioMenuLabel,
234
- /* @conditional-compile-remove(media-access) */
235
194
  localeStrings.permitOthersAudioMenuLabel,
236
- /* @conditional-compile-remove(media-access) */
237
195
  localeStrings.forbidOthersVideoMenuLabel,
238
- /* @conditional-compile-remove(media-access) */
239
196
  localeStrings.permitOthersVideoMenuLabel,
240
197
  localeStrings.stopAllSpotlightMenuLabel
241
198
  ]);
@@ -273,9 +230,7 @@ export const usePeoplePane = (props) => {
273
230
  disabled: isMuted
274
231
  });
275
232
  }
276
- /* @conditional-compile-remove(media-access) */
277
233
  const remoteParticipant = remoteParticipants === null || remoteParticipants === void 0 ? void 0 : remoteParticipants[participantId];
278
- /* @conditional-compile-remove(media-access) */
279
234
  if ((remoteParticipant === null || remoteParticipant === void 0 ? void 0 : remoteParticipant.mediaAccess) &&
280
235
  !remoteParticipant.mediaAccess.isAudioPermitted &&
281
236
  (remoteParticipant === null || remoteParticipant === void 0 ? void 0 : remoteParticipant.role) === 'Attendee' &&
@@ -294,7 +249,6 @@ export const usePeoplePane = (props) => {
294
249
  ariaLabel: localeStrings.permitAudioMenuLabel
295
250
  });
296
251
  }
297
- /* @conditional-compile-remove(media-access) */
298
252
  if (((_a = remoteParticipant === null || remoteParticipant === void 0 ? void 0 : remoteParticipant.mediaAccess) === null || _a === void 0 ? void 0 : _a.isAudioPermitted) && (remoteParticipant === null || remoteParticipant === void 0 ? void 0 : remoteParticipant.role) === 'Attendee' && onForbidAudio) {
299
253
  _defaultMenuItems.push({
300
254
  key: 'forbid-audio',
@@ -310,7 +264,6 @@ export const usePeoplePane = (props) => {
310
264
  ariaLabel: localeStrings.forbidAudioMenuLabel
311
265
  });
312
266
  }
313
- /* @conditional-compile-remove(media-access) */
314
267
  if ((remoteParticipant === null || remoteParticipant === void 0 ? void 0 : remoteParticipant.mediaAccess) &&
315
268
  !remoteParticipant.mediaAccess.isVideoPermitted &&
316
269
  (remoteParticipant === null || remoteParticipant === void 0 ? void 0 : remoteParticipant.role) === 'Attendee' &&
@@ -329,7 +282,6 @@ export const usePeoplePane = (props) => {
329
282
  ariaLabel: localeStrings.permitVideoMenuLabel
330
283
  });
331
284
  }
332
- /* @conditional-compile-remove(media-access) */
333
285
  if (((_b = remoteParticipant === null || remoteParticipant === void 0 ? void 0 : remoteParticipant.mediaAccess) === null || _b === void 0 ? void 0 : _b.isVideoPermitted) && (remoteParticipant === null || remoteParticipant === void 0 ? void 0 : remoteParticipant.role) === 'Attendee' && onForbidVideo) {
334
286
  _defaultMenuItems.push({
335
287
  key: 'forbid-video',
@@ -446,22 +398,14 @@ export const usePeoplePane = (props) => {
446
398
  spotlightedParticipantUserIds,
447
399
  onMuteParticipant,
448
400
  remoteParticipants,
449
- /* @conditional-compile-remove(media-access) */
450
401
  onPermitAudio,
451
- /* @conditional-compile-remove(media-access) */
452
402
  onForbidAudio,
453
- /* @conditional-compile-remove(media-access) */
454
403
  onPermitVideo,
455
- /* @conditional-compile-remove(media-access) */
456
404
  onForbidVideo,
457
405
  onFetchParticipantMenuItems,
458
- /* @conditional-compile-remove(media-access) */
459
406
  localeStrings.permitAudioMenuLabel,
460
- /* @conditional-compile-remove(media-access) */
461
407
  localeStrings.forbidAudioMenuLabel,
462
- /* @conditional-compile-remove(media-access) */
463
408
  localeStrings.permitVideoMenuLabel,
464
- /* @conditional-compile-remove(media-access) */
465
409
  localeStrings.forbidVideoMenuLabel,
466
410
  localeStrings.stopSpotlightOnSelfMenuLabel,
467
411
  localeStrings.stopSpotlightMenuLabel,
@@ -487,57 +431,33 @@ export const usePeoplePane = (props) => {
487
431
  const onRenderContent = useCallback(() => {
488
432
  return (React.createElement(React.Fragment, null,
489
433
  React.createElement(Prompt, Object.assign({}, muteAllPromptLabels, { styles: { main: { minWidth: '22.5rem', padding: '1.5rem' } }, onConfirm: () => onMuteAllPromptConfirm(), isOpen: showMuteAllPrompt, onCancel: () => setShowMuteAllPrompt(false) })),
490
- /* @conditional-compile-remove(media-access) */
491
434
  React.createElement(Prompt, { heading: localeStrings.forbidOthersAudioDialogTitle, text: localeStrings.forbidOthersAudioDialogContent, confirmButtonLabel: localeStrings.forbidOthersAudioConfirmButtonLabel, cancelButtonLabel: localeStrings.forbidOthersAudioCancelButtonLabel, styles: { main: { minWidth: '22.5rem', padding: '1.5rem' } }, onConfirm: () => onForbidAllAttendeesPromptConfirm(), isOpen: showForbidOthersAudioPrompt, onCancel: () => setShowForbidOthersAudioPrompt(false) }),
492
- /* @conditional-compile-remove(media-access) */
493
435
  React.createElement(Prompt, { heading: localeStrings.permitOthersAudioDialogTitle, text: localeStrings.permitOthersAudioDialogContent, confirmButtonLabel: localeStrings.permitOthersAudioConfirmButtonLabel, cancelButtonLabel: localeStrings.permitOthersAudioCancelButtonLabel, styles: { main: { minWidth: '22.5rem', padding: '1.5rem' } }, onConfirm: () => onPermitAllAttendeesPromptConfirm(), isOpen: showPermitOthersAudioPrompt, onCancel: () => setShowForbidOthersAudioPrompt(false) }),
494
- /* @conditional-compile-remove(media-access) */
495
436
  React.createElement(Prompt, { heading: localeStrings.forbidOthersVideoDialogTitle, text: localeStrings.forbidOthersVideoDialogContent, confirmButtonLabel: localeStrings.forbidOthersVideoConfirmButtonLabel, cancelButtonLabel: localeStrings.forbidOthersVideoCancelButtonLabel, styles: { main: { minWidth: '22.5rem', padding: '1.5rem' } }, onConfirm: () => onForbidOthersVideoPromptConfirm(), isOpen: showForbidOthersVideoPrompt, onCancel: () => setShowForbidOthersVideoPrompt(false) }),
496
- /* @conditional-compile-remove(media-access) */
497
437
  React.createElement(Prompt, { heading: localeStrings.permitOthersVideoDialogTitle, text: localeStrings.permitOthersVideoDialogContent, confirmButtonLabel: localeStrings.permitOthersVideoConfirmButtonLabel, cancelButtonLabel: localeStrings.permitOthersVideoCancelButtonLabel, styles: { main: { minWidth: '22.5rem', padding: '1.5rem' } }, onConfirm: () => onPermitOthersVideoPromptConfirm(), isOpen: showPermitOthersVideoPrompt, onCancel: () => setShowForbidOthersVideoPrompt(false) }),
498
438
  React.createElement(PeoplePaneContent, { inviteLink: inviteLink, onFetchAvatarPersonaData: onFetchAvatarPersonaData, onFetchParticipantMenuItems: onFetchParticipantMenuItemsForCallComposite, setDrawerMenuItems: setDrawerMenuItems, mobileView: mobileView, setParticipantActioned: setParticipantActioned, participantListHeadingMoreButtonProps: sidePaneHeaderMenuProps, pinnedParticipants: pinnedParticipants, role: role, alternateCallerId: alternateCallerId })));
499
439
  }, [
500
440
  muteAllPromptLabels,
501
441
  showMuteAllPrompt,
502
- /* @conditional-compile-remove(media-access) */
503
442
  localeStrings.forbidOthersAudioDialogTitle,
504
- /* @conditional-compile-remove(media-access) */
505
443
  localeStrings.forbidOthersAudioDialogContent,
506
- /* @conditional-compile-remove(media-access) */
507
444
  localeStrings.forbidOthersAudioConfirmButtonLabel,
508
- /* @conditional-compile-remove(media-access) */
509
445
  localeStrings.forbidOthersAudioCancelButtonLabel,
510
- /* @conditional-compile-remove(media-access) */
511
446
  localeStrings.permitOthersAudioDialogTitle,
512
- /* @conditional-compile-remove(media-access) */
513
447
  localeStrings.permitOthersAudioDialogContent,
514
- /* @conditional-compile-remove(media-access) */
515
448
  localeStrings.permitOthersAudioConfirmButtonLabel,
516
- /* @conditional-compile-remove(media-access) */
517
449
  localeStrings.permitOthersAudioCancelButtonLabel,
518
- /* @conditional-compile-remove(media-access) */
519
450
  localeStrings.forbidOthersVideoDialogTitle,
520
- /* @conditional-compile-remove(media-access) */
521
451
  localeStrings.forbidOthersVideoDialogContent,
522
- /* @conditional-compile-remove(media-access) */
523
452
  localeStrings.forbidOthersVideoConfirmButtonLabel,
524
- /* @conditional-compile-remove(media-access) */
525
453
  localeStrings.forbidOthersVideoCancelButtonLabel,
526
- /* @conditional-compile-remove(media-access) */
527
454
  localeStrings.permitOthersVideoDialogTitle,
528
- /* @conditional-compile-remove(media-access) */
529
455
  localeStrings.permitOthersVideoDialogContent,
530
- /* @conditional-compile-remove(media-access) */
531
456
  localeStrings.permitOthersVideoConfirmButtonLabel,
532
- /* @conditional-compile-remove(media-access) */
533
457
  localeStrings.permitOthersVideoCancelButtonLabel,
534
- /* @conditional-compile-remove(media-access) */
535
458
  showForbidOthersAudioPrompt,
536
- /* @conditional-compile-remove(media-access) */
537
459
  showPermitOthersAudioPrompt,
538
- /* @conditional-compile-remove(media-access) */
539
460
  showForbidOthersVideoPrompt,
540
- /* @conditional-compile-remove(media-access) */
541
461
  showPermitOthersVideoPrompt,
542
462
  inviteLink,
543
463
  onFetchAvatarPersonaData,
@@ -550,13 +470,9 @@ export const usePeoplePane = (props) => {
550
470
  role,
551
471
  alternateCallerId,
552
472
  onMuteAllPromptConfirm,
553
- /* @conditional-compile-remove(media-access) */
554
473
  onForbidAllAttendeesPromptConfirm,
555
- /* @conditional-compile-remove(media-access) */
556
474
  onPermitAllAttendeesPromptConfirm,
557
- /* @conditional-compile-remove(media-access) */
558
475
  onForbidOthersVideoPromptConfirm,
559
- /* @conditional-compile-remove(media-access) */
560
476
  onPermitOthersVideoPromptConfirm
561
477
  ]);
562
478
  const sidePaneRenderer = useMemo(() => ({
@@ -1 +1 @@
1
- {"version":3,"file":"usePeoplePane.js","sourceRoot":"","sources":["../../../../../../../../../react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React, { RefObject, useCallback, useEffect, useMemo, useState } from 'react';\nimport { SidePaneRenderer, useIsParticularSidePaneOpen } from './SidePaneProvider';\nimport { SidePaneHeader } from '../../../common/SidePaneHeader';\nimport { PeoplePaneContent } from '../../../common/PeoplePaneContent';\nimport { useLocale } from '../../../localization';\nimport { ParticipantMenuItemsCallback, _DrawerMenuItemProps } from '@internal/react-components';\nimport { AvatarPersonaDataCallback } from '../../../common/AvatarPersona';\nimport { IButton, IContextualMenuProps, IContextualMenuItem } from '@fluentui/react';\nimport { useSelector } from '../../hooks/useSelector';\nimport { getAlternateCallerId, getRemoteParticipants, getRole } from '../../selectors/baseSelectors';\nimport { Prompt } from '../Prompt';\n/* @conditional-compile-remove(media-access) */\nimport { MediaAccess } from '@internal/react-components';\n\nconst PEOPLE_SIDE_PANE_ID = 'people';\n\n/** @private */\nexport const usePeoplePane = (props: {\n updateSidePaneRenderer: (renderer: SidePaneRenderer | undefined) => void;\n setDrawerMenuItems: (items: _DrawerMenuItemProps[]) => void;\n inviteLink?: string;\n onFetchAvatarPersonaData?: AvatarPersonaDataCallback;\n onFetchParticipantMenuItems?: ParticipantMenuItemsCallback;\n mobileView?: boolean;\n peopleButtonRef?: RefObject<IButton>;\n setParticipantActioned?: (userId: string) => void;\n spotlightedParticipantUserIds?: string[];\n onStartLocalSpotlight?: () => Promise<void>;\n onStopLocalSpotlight?: () => Promise<void>;\n onStartRemoteSpotlight?: (userIds: string[]) => Promise<void>;\n onStopRemoteSpotlight?: (userIds: string[]) => Promise<void>;\n onStopAllSpotlight?: () => Promise<void>;\n maxParticipantsToSpotlight?: number;\n onMuteParticipant?: (userId: string) => Promise<void>;\n onMuteAllRemoteParticipants?: () => Promise<void>;\n pinnedParticipants?: string[];\n onPinParticipant?: (userId: string) => void;\n onUnpinParticipant?: (userId: string) => void;\n disablePinMenuItem?: boolean;\n /* @conditional-compile-remove(media-access) */\n onForbidAudio?: (userIds: string[]) => Promise<void>;\n /* @conditional-compile-remove(media-access) */\n onPermitAudio?: (userIds: string[]) => Promise<void>;\n /* @conditional-compile-remove(media-access) */\n onForbidOthersAudio?: () => Promise<void>;\n /* @conditional-compile-remove(media-access) */\n onPermitOthersAudio?: () => Promise<void>;\n /* @conditional-compile-remove(media-access) */\n onForbidVideo?: (userIds: string[]) => Promise<void>;\n /* @conditional-compile-remove(media-access) */\n onPermitVideo?: (userIds: string[]) => Promise<void>;\n /* @conditional-compile-remove(media-access) */\n onForbidOthersVideo?: () => Promise<void>;\n /* @conditional-compile-remove(media-access) */\n onPermitOthersVideo?: () => Promise<void>;\n /* @conditional-compile-remove(media-access) */\n meetingMediaAccess?: MediaAccess;\n sidePaneDismissButtonRef?: RefObject<IButton>;\n chatButtonPresent?: boolean;\n}): {\n openPeoplePane: () => void;\n closePeoplePane: () => void;\n isPeoplePaneOpen: boolean;\n} => {\n const {\n updateSidePaneRenderer,\n inviteLink,\n onFetchAvatarPersonaData,\n onFetchParticipantMenuItems,\n setDrawerMenuItems,\n mobileView,\n peopleButtonRef,\n setParticipantActioned,\n spotlightedParticipantUserIds,\n onStartLocalSpotlight,\n onStopLocalSpotlight,\n onStartRemoteSpotlight,\n onStopRemoteSpotlight,\n onStopAllSpotlight,\n maxParticipantsToSpotlight,\n onMuteParticipant,\n pinnedParticipants,\n onPinParticipant,\n onUnpinParticipant,\n disablePinMenuItem,\n onMuteAllRemoteParticipants,\n /* @conditional-compile-remove(media-access) */\n onForbidAudio,\n /* @conditional-compile-remove(media-access) */\n onPermitAudio,\n /* @conditional-compile-remove(media-access) */\n onForbidOthersAudio,\n /* @conditional-compile-remove(media-access) */\n onPermitOthersAudio,\n /* @conditional-compile-remove(media-access) */\n onForbidVideo,\n /* @conditional-compile-remove(media-access) */\n onPermitVideo,\n /* @conditional-compile-remove(media-access) */\n onForbidOthersVideo,\n /* @conditional-compile-remove(media-access) */\n onPermitOthersVideo,\n /* @conditional-compile-remove(media-access) */\n meetingMediaAccess,\n sidePaneDismissButtonRef,\n chatButtonPresent\n } = props;\n\n const closePane = useCallback(() => {\n updateSidePaneRenderer(undefined);\n peopleButtonRef?.current?.focus();\n }, [peopleButtonRef, updateSidePaneRenderer]);\n\n const localeStrings = useLocale().strings.call;\n const remoteParticipants = useSelector(getRemoteParticipants);\n const [showMuteAllPrompt, setShowMuteAllPrompt] = useState(false);\n const muteAllPromptLabels = useMemo(\n () => ({\n confirmButtonLabel: localeStrings.muteAllConfirmButtonLabel,\n heading: localeStrings.muteAllDialogTitle,\n text: localeStrings.muteAllDialogContent,\n cancelButtonLabel: localeStrings.muteAllCancelButtonLabel\n }),\n [\n localeStrings.muteAllConfirmButtonLabel,\n localeStrings.muteAllDialogTitle,\n localeStrings.muteAllDialogContent,\n localeStrings.muteAllCancelButtonLabel\n ]\n );\n\n const onMuteAllPromptConfirm = useCallback(() => {\n onMuteAllRemoteParticipants && onMuteAllRemoteParticipants();\n setShowMuteAllPrompt(false);\n }, [onMuteAllRemoteParticipants, setShowMuteAllPrompt]);\n\n /* @conditional-compile-remove(media-access) */\n const [showForbidOthersAudioPrompt, setShowForbidOthersAudioPrompt] = useState(false);\n /* @conditional-compile-remove(media-access) */\n const [showPermitOthersAudioPrompt, setShowPermitOthersAudioPrompt] = useState(false);\n /* @conditional-compile-remove(media-access) */\n const [showForbidOthersVideoPrompt, setShowForbidOthersVideoPrompt] = useState(false);\n /* @conditional-compile-remove(media-access) */\n const [showPermitOthersVideoPrompt, setShowPermitOthersVideoPrompt] = useState(false);\n\n /* @conditional-compile-remove(media-access) */\n const onForbidAllAttendeesPromptConfirm = useCallback(() => {\n onForbidOthersAudio && onForbidOthersAudio();\n setShowForbidOthersAudioPrompt(false);\n }, [onForbidOthersAudio, setShowForbidOthersAudioPrompt]);\n /* @conditional-compile-remove(media-access) */\n const onPermitAllAttendeesPromptConfirm = useCallback(() => {\n onPermitOthersAudio && onPermitOthersAudio();\n setShowPermitOthersAudioPrompt(false);\n }, [onPermitOthersAudio, setShowPermitOthersAudioPrompt]);\n /* @conditional-compile-remove(media-access) */\n const onForbidOthersVideoPromptConfirm = useCallback(() => {\n onForbidOthersVideo && onForbidOthersVideo();\n setShowForbidOthersVideoPrompt(false);\n }, [onForbidOthersVideo, setShowForbidOthersVideoPrompt]);\n /* @conditional-compile-remove(media-access) */\n const onPermitOthersVideoPromptConfirm = useCallback(() => {\n onPermitOthersVideo && onPermitOthersVideo();\n setShowPermitOthersVideoPrompt(false);\n }, [onPermitOthersVideo, setShowPermitOthersVideoPrompt]);\n\n const sidePaneHeaderMenuProps: IContextualMenuProps = useMemo(() => {\n const menuItems: IContextualMenuItem[] = [];\n if (onMuteAllRemoteParticipants && remoteParticipants) {\n let isAllMuted = true;\n if (remoteParticipants) {\n for (const participant of Object.values(remoteParticipants)) {\n if (!participant.isMuted) {\n isAllMuted = false;\n break;\n }\n }\n }\n menuItems.push({\n ['data-ui-id']: 'people-pane-mute-all-remote-participants',\n key: 'muteAllRemoteParticipants',\n text: localeStrings.muteAllMenuLabel,\n iconProps: {\n iconName: 'ContextualMenuMicMutedIcon',\n styles: { root: { lineHeight: 0 } }\n },\n onClick: () => {\n setShowMuteAllPrompt(true);\n },\n ariaLabel: localeStrings.muteAllMenuLabel,\n disabled: isAllMuted\n });\n }\n\n /* @conditional-compile-remove(media-access) */\n let hasAttendee = false;\n /* @conditional-compile-remove(media-access) */\n if (remoteParticipants) {\n for (const participant of Object.values(remoteParticipants)) {\n if (participant.role && participant.role === 'Attendee') {\n hasAttendee = true;\n break;\n }\n }\n }\n /* @conditional-compile-remove(media-access) */\n const isMeetingAudioPermitted = meetingMediaAccess ? meetingMediaAccess.isAudioPermitted : true;\n /* @conditional-compile-remove(media-access) */\n const isMeetingVideoPermitted = meetingMediaAccess ? meetingMediaAccess.isVideoPermitted : true;\n /* @conditional-compile-remove(media-access) */\n if (onForbidOthersAudio && remoteParticipants) {\n hasAttendee &&\n isMeetingAudioPermitted &&\n menuItems.push({\n ['data-ui-id']: 'people-pane-forbid-all-attendees-audio',\n key: 'forbidOthersAudio',\n text: localeStrings.forbidOthersAudioMenuLabel,\n iconProps: {\n iconName: 'ControlButtonMicProhibited',\n styles: { root: { lineHeight: 0 } }\n },\n onClick: () => {\n setShowForbidOthersAudioPrompt(true);\n },\n ariaLabel: localeStrings.forbidOthersAudioMenuLabel,\n disabled: !hasAttendee\n });\n }\n /* @conditional-compile-remove(media-access) */\n if (onPermitOthersAudio && remoteParticipants) {\n hasAttendee &&\n !isMeetingAudioPermitted &&\n menuItems.push({\n ['data-ui-id']: 'people-pane-permit-all-attendees-audio',\n key: 'permitOthersAudio',\n text: localeStrings.permitOthersAudioMenuLabel,\n iconProps: {\n iconName: 'ControlButtonMicOn',\n styles: { root: { lineHeight: 0 } }\n },\n onClick: () => {\n setShowPermitOthersAudioPrompt(true);\n },\n ariaLabel: localeStrings.permitOthersAudioMenuLabel,\n disabled: !hasAttendee\n });\n }\n\n /* @conditional-compile-remove(media-access) */\n if (onForbidOthersVideo && remoteParticipants) {\n hasAttendee &&\n isMeetingVideoPermitted &&\n menuItems.push({\n ['data-ui-id']: 'people-pane-forbid-all-attendees-video',\n key: 'forbidOthersVideo',\n text: localeStrings.forbidOthersVideoMenuLabel,\n iconProps: {\n iconName: 'ControlButtonCameraProhibitedSmall',\n styles: { root: { lineHeight: 0 } }\n },\n onClick: () => {\n setShowForbidOthersVideoPrompt(true);\n },\n ariaLabel: localeStrings.forbidOthersVideoMenuLabel,\n disabled: !hasAttendee\n });\n }\n /* @conditional-compile-remove(media-access) */\n if (onPermitOthersVideo && remoteParticipants) {\n hasAttendee &&\n !isMeetingVideoPermitted &&\n menuItems.push({\n ['data-ui-id']: 'people-pane-permit-all-attendees-video',\n key: 'permitOthersVideo',\n text: localeStrings.permitOthersVideoMenuLabel,\n iconProps: {\n iconName: 'ControlButtonCameraOn',\n styles: { root: { lineHeight: 0 } }\n },\n onClick: () => {\n setShowPermitOthersVideoPrompt(true);\n },\n ariaLabel: localeStrings.permitOthersVideoMenuLabel,\n disabled: !hasAttendee\n });\n }\n\n if (onStopAllSpotlight && spotlightedParticipantUserIds && spotlightedParticipantUserIds.length > 0) {\n menuItems.push({\n key: 'stopAllSpotlightKey',\n text: localeStrings.stopAllSpotlightMenuLabel,\n iconProps: { iconName: 'StopAllSpotlightMenuButton', styles: { root: { lineHeight: 0 } } },\n onClick: () => {\n onStopAllSpotlight();\n },\n ariaLabel: localeStrings.stopAllSpotlightMenuLabel\n });\n }\n return {\n items: menuItems\n };\n }, [\n onMuteAllRemoteParticipants,\n remoteParticipants,\n /* @conditional-compile-remove(media-access) */\n meetingMediaAccess,\n /* @conditional-compile-remove(media-access) */\n onForbidOthersAudio,\n /* @conditional-compile-remove(media-access) */\n onPermitOthersAudio,\n /* @conditional-compile-remove(media-access) */\n onForbidOthersVideo,\n /* @conditional-compile-remove(media-access) */\n onPermitOthersVideo,\n onStopAllSpotlight,\n spotlightedParticipantUserIds,\n localeStrings.muteAllMenuLabel,\n /* @conditional-compile-remove(media-access) */\n localeStrings.forbidOthersAudioMenuLabel,\n /* @conditional-compile-remove(media-access) */\n localeStrings.permitOthersAudioMenuLabel,\n /* @conditional-compile-remove(media-access) */\n localeStrings.forbidOthersVideoMenuLabel,\n /* @conditional-compile-remove(media-access) */\n localeStrings.permitOthersVideoMenuLabel,\n localeStrings.stopAllSpotlightMenuLabel\n ]);\n\n const onRenderHeader = useCallback(\n () => (\n <SidePaneHeader\n onClose={closePane}\n paneOpenerButton={peopleButtonRef}\n headingText={localeStrings.peoplePaneTitle}\n dismissSidePaneButtonAriaLabel={localeStrings.dismissSidePaneButtonLabel}\n mobileView={mobileView ?? false}\n dismissButtonComponentRef={sidePaneDismissButtonRef}\n chatButtonPresent={chatButtonPresent}\n />\n ),\n [\n closePane,\n peopleButtonRef,\n localeStrings.peoplePaneTitle,\n localeStrings.dismissSidePaneButtonLabel,\n mobileView,\n sidePaneDismissButtonRef,\n chatButtonPresent\n ]\n );\n\n const onFetchParticipantMenuItemsForCallComposite = useCallback(\n (participantId: string, myUserId?: string, defaultMenuItems?: IContextualMenuItem[]): IContextualMenuItem[] => {\n let isPinned = pinnedParticipants?.includes(participantId);\n const _defaultMenuItems: IContextualMenuItem[] = [];\n const isSpotlighted = spotlightedParticipantUserIds?.includes(participantId);\n const isMe = myUserId === participantId;\n isPinned = isSpotlighted ? false : isPinned;\n if (onMuteParticipant && !isMe && remoteParticipants && remoteParticipants[participantId]) {\n const participant = remoteParticipants[participantId];\n const isMuted = !!participant?.isMuted;\n _defaultMenuItems.push({\n key: 'mute',\n text: 'Mute',\n iconProps: {\n iconName: 'ContextualMenuMicMutedIcon',\n styles: { root: { lineHeight: 0 } }\n },\n onClick: () => {\n onMuteParticipant(participantId);\n },\n 'data-ui-id': 'participant-item-mute-participant',\n ariaLabel: 'Mute',\n disabled: isMuted\n });\n }\n\n /* @conditional-compile-remove(media-access) */\n const remoteParticipant = remoteParticipants?.[participantId];\n /* @conditional-compile-remove(media-access) */\n if (\n remoteParticipant?.mediaAccess &&\n !remoteParticipant.mediaAccess.isAudioPermitted &&\n remoteParticipant?.role === 'Attendee' &&\n onPermitAudio\n ) {\n _defaultMenuItems.push({\n key: 'permit-audio',\n text: localeStrings.permitAudioMenuLabel,\n iconProps: {\n iconName: 'ControlButtonMicOn',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => {\n onPermitAudio([participantId]);\n },\n 'data-ui-id': 'participant-item-permit-microphone-button',\n ariaLabel: localeStrings.permitAudioMenuLabel\n });\n }\n /* @conditional-compile-remove(media-access) */\n if (remoteParticipant?.mediaAccess?.isAudioPermitted && remoteParticipant?.role === 'Attendee' && onForbidAudio) {\n _defaultMenuItems.push({\n key: 'forbid-audio',\n text: localeStrings.forbidAudioMenuLabel,\n iconProps: {\n iconName: 'ControlButtonMicProhibited',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => {\n onForbidAudio([participantId]);\n },\n 'data-ui-id': 'participant-item-forbid-microphone-button',\n ariaLabel: localeStrings.forbidAudioMenuLabel\n });\n }\n /* @conditional-compile-remove(media-access) */\n if (\n remoteParticipant?.mediaAccess &&\n !remoteParticipant.mediaAccess.isVideoPermitted &&\n remoteParticipant?.role === 'Attendee' &&\n onPermitVideo\n ) {\n _defaultMenuItems.push({\n key: 'permit-video',\n text: localeStrings.permitVideoMenuLabel,\n iconProps: {\n iconName: 'ControlButtonCameraOn',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => {\n onPermitVideo([participantId]);\n },\n 'data-ui-id': 'participant-item-permit-camera-button',\n ariaLabel: localeStrings.permitVideoMenuLabel\n });\n }\n /* @conditional-compile-remove(media-access) */\n if (remoteParticipant?.mediaAccess?.isVideoPermitted && remoteParticipant?.role === 'Attendee' && onForbidVideo) {\n _defaultMenuItems.push({\n key: 'forbid-video',\n text: localeStrings.forbidVideoMenuLabel,\n iconProps: {\n iconName: 'ControlButtonCameraProhibitedSmall',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => {\n onForbidVideo([participantId]);\n },\n 'data-ui-id': 'participant-item-forbid-camera-button',\n ariaLabel: localeStrings.forbidVideoMenuLabel\n });\n }\n\n if (isSpotlighted) {\n const stopSpotlightMenuText = isMe\n ? localeStrings.stopSpotlightOnSelfMenuLabel\n : localeStrings.stopSpotlightMenuLabel;\n const onStopSpotlight = isMe\n ? onStopLocalSpotlight\n : onStopRemoteSpotlight\n ? () => {\n onStopRemoteSpotlight([participantId]);\n }\n : undefined;\n if (onStopSpotlight && stopSpotlightMenuText) {\n _defaultMenuItems.push({\n key: 'stop-spotlight',\n text: stopSpotlightMenuText,\n onClick: onStopSpotlight,\n iconProps: {\n iconName: 'StopSpotlightContextualMenuItem',\n styles: { root: { lineHeight: 0 } }\n },\n ariaLabel: stopSpotlightMenuText\n });\n }\n } else {\n const startSpotlightMenuText =\n spotlightedParticipantUserIds && spotlightedParticipantUserIds.length > 0\n ? localeStrings.addSpotlightMenuLabel\n : localeStrings.startSpotlightMenuLabel;\n const maxSpotlightedParticipantsReached = maxParticipantsToSpotlight\n ? spotlightedParticipantUserIds\n ? spotlightedParticipantUserIds.length >= maxParticipantsToSpotlight\n : false\n : false;\n const onStartSpotlight = isMe\n ? onStartLocalSpotlight\n : onStartRemoteSpotlight\n ? () => {\n onStartRemoteSpotlight([participantId]);\n }\n : undefined;\n if (onStartSpotlight && startSpotlightMenuText) {\n _defaultMenuItems.push({\n key: 'start-spotlight',\n text: startSpotlightMenuText,\n onClick: onStartSpotlight,\n iconProps: {\n iconName: 'StartSpotlightContextualMenuItem',\n styles: { root: { lineHeight: 0 } }\n },\n ariaLabel: startSpotlightMenuText,\n disabled: maxSpotlightedParticipantsReached,\n title: maxSpotlightedParticipantsReached ? localeStrings.spotlightLimitReachedMenuTitle : undefined\n });\n }\n }\n if (!isMe && isPinned !== undefined) {\n if (isPinned && onUnpinParticipant && localeStrings?.unpinParticipantMenuLabel) {\n _defaultMenuItems.push({\n key: 'unpin',\n text: localeStrings?.unpinParticipantMenuLabel,\n iconProps: {\n iconName: 'UnpinParticipant',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => {\n onUnpinParticipant?.(participantId);\n },\n 'data-ui-id': 'participant-item-unpin-participant-button',\n ariaLabel: localeStrings.unpinParticipantMenuItemAriaLabel\n });\n }\n if (!isPinned && onPinParticipant && localeStrings?.pinParticipantMenuLabel) {\n _defaultMenuItems.push({\n key: 'pin',\n text: disablePinMenuItem\n ? localeStrings.pinParticipantLimitReachedMenuLabel\n : localeStrings.pinParticipantMenuLabel,\n iconProps: {\n iconName: 'PinParticipant',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => {\n onPinParticipant(participantId);\n },\n 'data-ui-id': 'participant-item-pin-participant-button',\n disabled: disablePinMenuItem || isSpotlighted,\n ariaLabel: localeStrings.pinParticipantMenuItemAriaLabel\n });\n }\n }\n if (defaultMenuItems) {\n _defaultMenuItems.push(...defaultMenuItems);\n }\n return onFetchParticipantMenuItems\n ? onFetchParticipantMenuItems(participantId, myUserId, _defaultMenuItems)\n : _defaultMenuItems;\n },\n [\n pinnedParticipants,\n spotlightedParticipantUserIds,\n onMuteParticipant,\n remoteParticipants,\n /* @conditional-compile-remove(media-access) */\n onPermitAudio,\n /* @conditional-compile-remove(media-access) */\n onForbidAudio,\n /* @conditional-compile-remove(media-access) */\n onPermitVideo,\n /* @conditional-compile-remove(media-access) */\n onForbidVideo,\n onFetchParticipantMenuItems,\n /* @conditional-compile-remove(media-access) */\n localeStrings.permitAudioMenuLabel,\n /* @conditional-compile-remove(media-access) */\n localeStrings.forbidAudioMenuLabel,\n /* @conditional-compile-remove(media-access) */\n localeStrings.permitVideoMenuLabel,\n /* @conditional-compile-remove(media-access) */\n localeStrings.forbidVideoMenuLabel,\n localeStrings.stopSpotlightOnSelfMenuLabel,\n localeStrings.stopSpotlightMenuLabel,\n localeStrings.addSpotlightMenuLabel,\n localeStrings.startSpotlightMenuLabel,\n localeStrings.spotlightLimitReachedMenuTitle,\n localeStrings?.unpinParticipantMenuLabel,\n localeStrings.pinParticipantMenuLabel,\n localeStrings.unpinParticipantMenuItemAriaLabel,\n localeStrings.pinParticipantLimitReachedMenuLabel,\n localeStrings.pinParticipantMenuItemAriaLabel,\n onStopLocalSpotlight,\n onStopRemoteSpotlight,\n maxParticipantsToSpotlight,\n onStartLocalSpotlight,\n onStartRemoteSpotlight,\n onUnpinParticipant,\n onPinParticipant,\n disablePinMenuItem\n ]\n );\n\n const role = useSelector(getRole);\n const alternateCallerId = useSelector(getAlternateCallerId);\n\n const onRenderContent = useCallback((): JSX.Element => {\n return (\n <>\n {\n <Prompt\n {...muteAllPromptLabels}\n styles={{ main: { minWidth: '22.5rem', padding: '1.5rem' } }}\n onConfirm={() => onMuteAllPromptConfirm()}\n isOpen={showMuteAllPrompt}\n onCancel={() => setShowMuteAllPrompt(false)}\n />\n }\n {\n /* @conditional-compile-remove(media-access) */\n <Prompt\n heading={localeStrings.forbidOthersAudioDialogTitle}\n text={localeStrings.forbidOthersAudioDialogContent}\n confirmButtonLabel={localeStrings.forbidOthersAudioConfirmButtonLabel}\n cancelButtonLabel={localeStrings.forbidOthersAudioCancelButtonLabel}\n styles={{ main: { minWidth: '22.5rem', padding: '1.5rem' } }}\n onConfirm={() => onForbidAllAttendeesPromptConfirm()}\n isOpen={showForbidOthersAudioPrompt}\n onCancel={() => setShowForbidOthersAudioPrompt(false)}\n />\n }\n {\n /* @conditional-compile-remove(media-access) */\n <Prompt\n heading={localeStrings.permitOthersAudioDialogTitle}\n text={localeStrings.permitOthersAudioDialogContent}\n confirmButtonLabel={localeStrings.permitOthersAudioConfirmButtonLabel}\n cancelButtonLabel={localeStrings.permitOthersAudioCancelButtonLabel}\n styles={{ main: { minWidth: '22.5rem', padding: '1.5rem' } }}\n onConfirm={() => onPermitAllAttendeesPromptConfirm()}\n isOpen={showPermitOthersAudioPrompt}\n onCancel={() => setShowForbidOthersAudioPrompt(false)}\n />\n }\n {\n /* @conditional-compile-remove(media-access) */\n <Prompt\n heading={localeStrings.forbidOthersVideoDialogTitle}\n text={localeStrings.forbidOthersVideoDialogContent}\n confirmButtonLabel={localeStrings.forbidOthersVideoConfirmButtonLabel}\n cancelButtonLabel={localeStrings.forbidOthersVideoCancelButtonLabel}\n styles={{ main: { minWidth: '22.5rem', padding: '1.5rem' } }}\n onConfirm={() => onForbidOthersVideoPromptConfirm()}\n isOpen={showForbidOthersVideoPrompt}\n onCancel={() => setShowForbidOthersVideoPrompt(false)}\n />\n }\n {\n /* @conditional-compile-remove(media-access) */\n <Prompt\n heading={localeStrings.permitOthersVideoDialogTitle}\n text={localeStrings.permitOthersVideoDialogContent}\n confirmButtonLabel={localeStrings.permitOthersVideoConfirmButtonLabel}\n cancelButtonLabel={localeStrings.permitOthersVideoCancelButtonLabel}\n styles={{ main: { minWidth: '22.5rem', padding: '1.5rem' } }}\n onConfirm={() => onPermitOthersVideoPromptConfirm()}\n isOpen={showPermitOthersVideoPrompt}\n onCancel={() => setShowForbidOthersVideoPrompt(false)}\n />\n }\n\n <PeoplePaneContent\n inviteLink={inviteLink}\n onFetchAvatarPersonaData={onFetchAvatarPersonaData}\n onFetchParticipantMenuItems={onFetchParticipantMenuItemsForCallComposite}\n setDrawerMenuItems={setDrawerMenuItems}\n mobileView={mobileView}\n setParticipantActioned={setParticipantActioned}\n participantListHeadingMoreButtonProps={sidePaneHeaderMenuProps}\n pinnedParticipants={pinnedParticipants}\n role={role}\n alternateCallerId={alternateCallerId}\n />\n </>\n );\n }, [\n muteAllPromptLabels,\n showMuteAllPrompt,\n /* @conditional-compile-remove(media-access) */\n localeStrings.forbidOthersAudioDialogTitle,\n /* @conditional-compile-remove(media-access) */\n localeStrings.forbidOthersAudioDialogContent,\n /* @conditional-compile-remove(media-access) */\n localeStrings.forbidOthersAudioConfirmButtonLabel,\n /* @conditional-compile-remove(media-access) */\n localeStrings.forbidOthersAudioCancelButtonLabel,\n /* @conditional-compile-remove(media-access) */\n localeStrings.permitOthersAudioDialogTitle,\n /* @conditional-compile-remove(media-access) */\n localeStrings.permitOthersAudioDialogContent,\n /* @conditional-compile-remove(media-access) */\n localeStrings.permitOthersAudioConfirmButtonLabel,\n /* @conditional-compile-remove(media-access) */\n localeStrings.permitOthersAudioCancelButtonLabel,\n /* @conditional-compile-remove(media-access) */\n localeStrings.forbidOthersVideoDialogTitle,\n /* @conditional-compile-remove(media-access) */\n localeStrings.forbidOthersVideoDialogContent,\n /* @conditional-compile-remove(media-access) */\n localeStrings.forbidOthersVideoConfirmButtonLabel,\n /* @conditional-compile-remove(media-access) */\n localeStrings.forbidOthersVideoCancelButtonLabel,\n /* @conditional-compile-remove(media-access) */\n localeStrings.permitOthersVideoDialogTitle,\n /* @conditional-compile-remove(media-access) */\n localeStrings.permitOthersVideoDialogContent,\n /* @conditional-compile-remove(media-access) */\n localeStrings.permitOthersVideoConfirmButtonLabel,\n /* @conditional-compile-remove(media-access) */\n localeStrings.permitOthersVideoCancelButtonLabel,\n /* @conditional-compile-remove(media-access) */\n showForbidOthersAudioPrompt,\n /* @conditional-compile-remove(media-access) */\n showPermitOthersAudioPrompt,\n /* @conditional-compile-remove(media-access) */\n showForbidOthersVideoPrompt,\n /* @conditional-compile-remove(media-access) */\n showPermitOthersVideoPrompt,\n inviteLink,\n onFetchAvatarPersonaData,\n onFetchParticipantMenuItemsForCallComposite,\n setDrawerMenuItems,\n mobileView,\n setParticipantActioned,\n sidePaneHeaderMenuProps,\n pinnedParticipants,\n role,\n alternateCallerId,\n onMuteAllPromptConfirm,\n /* @conditional-compile-remove(media-access) */\n onForbidAllAttendeesPromptConfirm,\n /* @conditional-compile-remove(media-access) */\n onPermitAllAttendeesPromptConfirm,\n /* @conditional-compile-remove(media-access) */\n onForbidOthersVideoPromptConfirm,\n /* @conditional-compile-remove(media-access) */\n onPermitOthersVideoPromptConfirm\n ]);\n\n const sidePaneRenderer: SidePaneRenderer = useMemo(\n () => ({\n headerRenderer: onRenderHeader,\n contentRenderer: onRenderContent,\n id: PEOPLE_SIDE_PANE_ID\n }),\n [onRenderContent, onRenderHeader]\n );\n\n const openPane = useCallback(() => {\n updateSidePaneRenderer(sidePaneRenderer);\n }, [sidePaneRenderer, updateSidePaneRenderer]);\n\n const isOpen = useIsParticularSidePaneOpen(PEOPLE_SIDE_PANE_ID);\n\n // Update pane renderer if it is open and the openPane dep changes\n useEffect(() => {\n if (isOpen) {\n openPane();\n }\n }, [isOpen, openPane]);\n\n return { openPeoplePane: openPane, closePeoplePane: closePane, isPeoplePaneOpen: isOpen };\n};\n"]}
1
+ {"version":3,"file":"usePeoplePane.js","sourceRoot":"","sources":["../../../../../../../../../react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React, { RefObject, useCallback, useEffect, useMemo, useState } from 'react';\nimport { SidePaneRenderer, useIsParticularSidePaneOpen } from './SidePaneProvider';\nimport { SidePaneHeader } from '../../../common/SidePaneHeader';\nimport { PeoplePaneContent } from '../../../common/PeoplePaneContent';\nimport { useLocale } from '../../../localization';\nimport { ParticipantMenuItemsCallback, _DrawerMenuItemProps, MediaAccess } from '@internal/react-components';\nimport { AvatarPersonaDataCallback } from '../../../common/AvatarPersona';\nimport { IButton, IContextualMenuProps, IContextualMenuItem } from '@fluentui/react';\nimport { useSelector } from '../../hooks/useSelector';\nimport { getAlternateCallerId, getRemoteParticipants, getRole } from '../../selectors/baseSelectors';\nimport { Prompt } from '../Prompt';\n\nconst PEOPLE_SIDE_PANE_ID = 'people';\n\n/** @private */\nexport const usePeoplePane = (props: {\n updateSidePaneRenderer: (renderer: SidePaneRenderer | undefined) => void;\n setDrawerMenuItems: (items: _DrawerMenuItemProps[]) => void;\n inviteLink?: string;\n onFetchAvatarPersonaData?: AvatarPersonaDataCallback;\n onFetchParticipantMenuItems?: ParticipantMenuItemsCallback;\n mobileView?: boolean;\n peopleButtonRef?: RefObject<IButton>;\n setParticipantActioned?: (userId: string) => void;\n spotlightedParticipantUserIds?: string[];\n onStartLocalSpotlight?: () => Promise<void>;\n onStopLocalSpotlight?: () => Promise<void>;\n onStartRemoteSpotlight?: (userIds: string[]) => Promise<void>;\n onStopRemoteSpotlight?: (userIds: string[]) => Promise<void>;\n onStopAllSpotlight?: () => Promise<void>;\n maxParticipantsToSpotlight?: number;\n onMuteParticipant?: (userId: string) => Promise<void>;\n onMuteAllRemoteParticipants?: () => Promise<void>;\n pinnedParticipants?: string[];\n onPinParticipant?: (userId: string) => void;\n onUnpinParticipant?: (userId: string) => void;\n disablePinMenuItem?: boolean;\n onForbidAudio?: (userIds: string[]) => Promise<void>;\n onPermitAudio?: (userIds: string[]) => Promise<void>;\n onForbidOthersAudio?: () => Promise<void>;\n onPermitOthersAudio?: () => Promise<void>;\n onForbidVideo?: (userIds: string[]) => Promise<void>;\n onPermitVideo?: (userIds: string[]) => Promise<void>;\n onForbidOthersVideo?: () => Promise<void>;\n onPermitOthersVideo?: () => Promise<void>;\n meetingMediaAccess?: MediaAccess;\n sidePaneDismissButtonRef?: RefObject<IButton>;\n chatButtonPresent?: boolean;\n}): {\n openPeoplePane: () => void;\n closePeoplePane: () => void;\n isPeoplePaneOpen: boolean;\n} => {\n const {\n updateSidePaneRenderer,\n inviteLink,\n onFetchAvatarPersonaData,\n onFetchParticipantMenuItems,\n setDrawerMenuItems,\n mobileView,\n peopleButtonRef,\n setParticipantActioned,\n spotlightedParticipantUserIds,\n onStartLocalSpotlight,\n onStopLocalSpotlight,\n onStartRemoteSpotlight,\n onStopRemoteSpotlight,\n onStopAllSpotlight,\n maxParticipantsToSpotlight,\n onMuteParticipant,\n pinnedParticipants,\n onPinParticipant,\n onUnpinParticipant,\n disablePinMenuItem,\n onMuteAllRemoteParticipants,\n onForbidAudio,\n onPermitAudio,\n onForbidOthersAudio,\n onPermitOthersAudio,\n onForbidVideo,\n onPermitVideo,\n onForbidOthersVideo,\n onPermitOthersVideo,\n meetingMediaAccess,\n sidePaneDismissButtonRef,\n chatButtonPresent\n } = props;\n\n const closePane = useCallback(() => {\n updateSidePaneRenderer(undefined);\n peopleButtonRef?.current?.focus();\n }, [peopleButtonRef, updateSidePaneRenderer]);\n\n const localeStrings = useLocale().strings.call;\n const remoteParticipants = useSelector(getRemoteParticipants);\n const [showMuteAllPrompt, setShowMuteAllPrompt] = useState(false);\n const muteAllPromptLabels = useMemo(\n () => ({\n confirmButtonLabel: localeStrings.muteAllConfirmButtonLabel,\n heading: localeStrings.muteAllDialogTitle,\n text: localeStrings.muteAllDialogContent,\n cancelButtonLabel: localeStrings.muteAllCancelButtonLabel\n }),\n [\n localeStrings.muteAllConfirmButtonLabel,\n localeStrings.muteAllDialogTitle,\n localeStrings.muteAllDialogContent,\n localeStrings.muteAllCancelButtonLabel\n ]\n );\n\n const onMuteAllPromptConfirm = useCallback(() => {\n onMuteAllRemoteParticipants && onMuteAllRemoteParticipants();\n setShowMuteAllPrompt(false);\n }, [onMuteAllRemoteParticipants, setShowMuteAllPrompt]);\n\n const [showForbidOthersAudioPrompt, setShowForbidOthersAudioPrompt] = useState(false);\n const [showPermitOthersAudioPrompt, setShowPermitOthersAudioPrompt] = useState(false);\n const [showForbidOthersVideoPrompt, setShowForbidOthersVideoPrompt] = useState(false);\n const [showPermitOthersVideoPrompt, setShowPermitOthersVideoPrompt] = useState(false);\n\n const onForbidAllAttendeesPromptConfirm = useCallback(() => {\n onForbidOthersAudio && onForbidOthersAudio();\n setShowForbidOthersAudioPrompt(false);\n }, [onForbidOthersAudio, setShowForbidOthersAudioPrompt]);\n\n const onPermitAllAttendeesPromptConfirm = useCallback(() => {\n onPermitOthersAudio && onPermitOthersAudio();\n setShowPermitOthersAudioPrompt(false);\n }, [onPermitOthersAudio, setShowPermitOthersAudioPrompt]);\n\n const onForbidOthersVideoPromptConfirm = useCallback(() => {\n onForbidOthersVideo && onForbidOthersVideo();\n setShowForbidOthersVideoPrompt(false);\n }, [onForbidOthersVideo, setShowForbidOthersVideoPrompt]);\n\n const onPermitOthersVideoPromptConfirm = useCallback(() => {\n onPermitOthersVideo && onPermitOthersVideo();\n setShowPermitOthersVideoPrompt(false);\n }, [onPermitOthersVideo, setShowPermitOthersVideoPrompt]);\n\n const sidePaneHeaderMenuProps: IContextualMenuProps = useMemo(() => {\n const menuItems: IContextualMenuItem[] = [];\n if (onMuteAllRemoteParticipants && remoteParticipants) {\n let isAllMuted = true;\n if (remoteParticipants) {\n for (const participant of Object.values(remoteParticipants)) {\n if (!participant.isMuted) {\n isAllMuted = false;\n break;\n }\n }\n }\n menuItems.push({\n ['data-ui-id']: 'people-pane-mute-all-remote-participants',\n key: 'muteAllRemoteParticipants',\n text: localeStrings.muteAllMenuLabel,\n iconProps: {\n iconName: 'ContextualMenuMicMutedIcon',\n styles: { root: { lineHeight: 0 } }\n },\n onClick: () => {\n setShowMuteAllPrompt(true);\n },\n ariaLabel: localeStrings.muteAllMenuLabel,\n disabled: isAllMuted\n });\n }\n\n let hasAttendee = false;\n if (remoteParticipants) {\n for (const participant of Object.values(remoteParticipants)) {\n if (participant.role && participant.role === 'Attendee') {\n hasAttendee = true;\n break;\n }\n }\n }\n\n const isMeetingAudioPermitted = meetingMediaAccess ? meetingMediaAccess.isAudioPermitted : true;\n const isMeetingVideoPermitted = meetingMediaAccess ? meetingMediaAccess.isVideoPermitted : true;\n if (onForbidOthersAudio && remoteParticipants) {\n hasAttendee &&\n isMeetingAudioPermitted &&\n menuItems.push({\n ['data-ui-id']: 'people-pane-forbid-all-attendees-audio',\n key: 'forbidOthersAudio',\n text: localeStrings.forbidOthersAudioMenuLabel,\n iconProps: {\n iconName: 'ControlButtonMicProhibited',\n styles: { root: { lineHeight: 0 } }\n },\n onClick: () => {\n setShowForbidOthersAudioPrompt(true);\n },\n ariaLabel: localeStrings.forbidOthersAudioMenuLabel,\n disabled: !hasAttendee\n });\n }\n\n if (onPermitOthersAudio && remoteParticipants) {\n hasAttendee &&\n !isMeetingAudioPermitted &&\n menuItems.push({\n ['data-ui-id']: 'people-pane-permit-all-attendees-audio',\n key: 'permitOthersAudio',\n text: localeStrings.permitOthersAudioMenuLabel,\n iconProps: {\n iconName: 'ControlButtonMicOn',\n styles: { root: { lineHeight: 0 } }\n },\n onClick: () => {\n setShowPermitOthersAudioPrompt(true);\n },\n ariaLabel: localeStrings.permitOthersAudioMenuLabel,\n disabled: !hasAttendee\n });\n }\n\n if (onForbidOthersVideo && remoteParticipants) {\n hasAttendee &&\n isMeetingVideoPermitted &&\n menuItems.push({\n ['data-ui-id']: 'people-pane-forbid-all-attendees-video',\n key: 'forbidOthersVideo',\n text: localeStrings.forbidOthersVideoMenuLabel,\n iconProps: {\n iconName: 'ControlButtonCameraProhibitedSmall',\n styles: { root: { lineHeight: 0 } }\n },\n onClick: () => {\n setShowForbidOthersVideoPrompt(true);\n },\n ariaLabel: localeStrings.forbidOthersVideoMenuLabel,\n disabled: !hasAttendee\n });\n }\n\n if (onPermitOthersVideo && remoteParticipants) {\n hasAttendee &&\n !isMeetingVideoPermitted &&\n menuItems.push({\n ['data-ui-id']: 'people-pane-permit-all-attendees-video',\n key: 'permitOthersVideo',\n text: localeStrings.permitOthersVideoMenuLabel,\n iconProps: {\n iconName: 'ControlButtonCameraOn',\n styles: { root: { lineHeight: 0 } }\n },\n onClick: () => {\n setShowPermitOthersVideoPrompt(true);\n },\n ariaLabel: localeStrings.permitOthersVideoMenuLabel,\n disabled: !hasAttendee\n });\n }\n\n if (onStopAllSpotlight && spotlightedParticipantUserIds && spotlightedParticipantUserIds.length > 0) {\n menuItems.push({\n key: 'stopAllSpotlightKey',\n text: localeStrings.stopAllSpotlightMenuLabel,\n iconProps: { iconName: 'StopAllSpotlightMenuButton', styles: { root: { lineHeight: 0 } } },\n onClick: () => {\n onStopAllSpotlight();\n },\n ariaLabel: localeStrings.stopAllSpotlightMenuLabel\n });\n }\n return {\n items: menuItems\n };\n }, [\n onMuteAllRemoteParticipants,\n remoteParticipants,\n meetingMediaAccess,\n onForbidOthersAudio,\n onPermitOthersAudio,\n onForbidOthersVideo,\n onPermitOthersVideo,\n onStopAllSpotlight,\n spotlightedParticipantUserIds,\n localeStrings.muteAllMenuLabel,\n localeStrings.forbidOthersAudioMenuLabel,\n localeStrings.permitOthersAudioMenuLabel,\n localeStrings.forbidOthersVideoMenuLabel,\n localeStrings.permitOthersVideoMenuLabel,\n localeStrings.stopAllSpotlightMenuLabel\n ]);\n\n const onRenderHeader = useCallback(\n () => (\n <SidePaneHeader\n onClose={closePane}\n paneOpenerButton={peopleButtonRef}\n headingText={localeStrings.peoplePaneTitle}\n dismissSidePaneButtonAriaLabel={localeStrings.dismissSidePaneButtonLabel}\n mobileView={mobileView ?? false}\n dismissButtonComponentRef={sidePaneDismissButtonRef}\n chatButtonPresent={chatButtonPresent}\n />\n ),\n [\n closePane,\n peopleButtonRef,\n localeStrings.peoplePaneTitle,\n localeStrings.dismissSidePaneButtonLabel,\n mobileView,\n sidePaneDismissButtonRef,\n chatButtonPresent\n ]\n );\n\n const onFetchParticipantMenuItemsForCallComposite = useCallback(\n (participantId: string, myUserId?: string, defaultMenuItems?: IContextualMenuItem[]): IContextualMenuItem[] => {\n let isPinned = pinnedParticipants?.includes(participantId);\n const _defaultMenuItems: IContextualMenuItem[] = [];\n const isSpotlighted = spotlightedParticipantUserIds?.includes(participantId);\n const isMe = myUserId === participantId;\n isPinned = isSpotlighted ? false : isPinned;\n if (onMuteParticipant && !isMe && remoteParticipants && remoteParticipants[participantId]) {\n const participant = remoteParticipants[participantId];\n const isMuted = !!participant?.isMuted;\n _defaultMenuItems.push({\n key: 'mute',\n text: 'Mute',\n iconProps: {\n iconName: 'ContextualMenuMicMutedIcon',\n styles: { root: { lineHeight: 0 } }\n },\n onClick: () => {\n onMuteParticipant(participantId);\n },\n 'data-ui-id': 'participant-item-mute-participant',\n ariaLabel: 'Mute',\n disabled: isMuted\n });\n }\n\n const remoteParticipant = remoteParticipants?.[participantId];\n\n if (\n remoteParticipant?.mediaAccess &&\n !remoteParticipant.mediaAccess.isAudioPermitted &&\n remoteParticipant?.role === 'Attendee' &&\n onPermitAudio\n ) {\n _defaultMenuItems.push({\n key: 'permit-audio',\n text: localeStrings.permitAudioMenuLabel,\n iconProps: {\n iconName: 'ControlButtonMicOn',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => {\n onPermitAudio([participantId]);\n },\n 'data-ui-id': 'participant-item-permit-microphone-button',\n ariaLabel: localeStrings.permitAudioMenuLabel\n });\n }\n\n if (remoteParticipant?.mediaAccess?.isAudioPermitted && remoteParticipant?.role === 'Attendee' && onForbidAudio) {\n _defaultMenuItems.push({\n key: 'forbid-audio',\n text: localeStrings.forbidAudioMenuLabel,\n iconProps: {\n iconName: 'ControlButtonMicProhibited',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => {\n onForbidAudio([participantId]);\n },\n 'data-ui-id': 'participant-item-forbid-microphone-button',\n ariaLabel: localeStrings.forbidAudioMenuLabel\n });\n }\n\n if (\n remoteParticipant?.mediaAccess &&\n !remoteParticipant.mediaAccess.isVideoPermitted &&\n remoteParticipant?.role === 'Attendee' &&\n onPermitVideo\n ) {\n _defaultMenuItems.push({\n key: 'permit-video',\n text: localeStrings.permitVideoMenuLabel,\n iconProps: {\n iconName: 'ControlButtonCameraOn',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => {\n onPermitVideo([participantId]);\n },\n 'data-ui-id': 'participant-item-permit-camera-button',\n ariaLabel: localeStrings.permitVideoMenuLabel\n });\n }\n\n if (remoteParticipant?.mediaAccess?.isVideoPermitted && remoteParticipant?.role === 'Attendee' && onForbidVideo) {\n _defaultMenuItems.push({\n key: 'forbid-video',\n text: localeStrings.forbidVideoMenuLabel,\n iconProps: {\n iconName: 'ControlButtonCameraProhibitedSmall',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => {\n onForbidVideo([participantId]);\n },\n 'data-ui-id': 'participant-item-forbid-camera-button',\n ariaLabel: localeStrings.forbidVideoMenuLabel\n });\n }\n\n if (isSpotlighted) {\n const stopSpotlightMenuText = isMe\n ? localeStrings.stopSpotlightOnSelfMenuLabel\n : localeStrings.stopSpotlightMenuLabel;\n const onStopSpotlight = isMe\n ? onStopLocalSpotlight\n : onStopRemoteSpotlight\n ? () => {\n onStopRemoteSpotlight([participantId]);\n }\n : undefined;\n if (onStopSpotlight && stopSpotlightMenuText) {\n _defaultMenuItems.push({\n key: 'stop-spotlight',\n text: stopSpotlightMenuText,\n onClick: onStopSpotlight,\n iconProps: {\n iconName: 'StopSpotlightContextualMenuItem',\n styles: { root: { lineHeight: 0 } }\n },\n ariaLabel: stopSpotlightMenuText\n });\n }\n } else {\n const startSpotlightMenuText =\n spotlightedParticipantUserIds && spotlightedParticipantUserIds.length > 0\n ? localeStrings.addSpotlightMenuLabel\n : localeStrings.startSpotlightMenuLabel;\n const maxSpotlightedParticipantsReached = maxParticipantsToSpotlight\n ? spotlightedParticipantUserIds\n ? spotlightedParticipantUserIds.length >= maxParticipantsToSpotlight\n : false\n : false;\n const onStartSpotlight = isMe\n ? onStartLocalSpotlight\n : onStartRemoteSpotlight\n ? () => {\n onStartRemoteSpotlight([participantId]);\n }\n : undefined;\n if (onStartSpotlight && startSpotlightMenuText) {\n _defaultMenuItems.push({\n key: 'start-spotlight',\n text: startSpotlightMenuText,\n onClick: onStartSpotlight,\n iconProps: {\n iconName: 'StartSpotlightContextualMenuItem',\n styles: { root: { lineHeight: 0 } }\n },\n ariaLabel: startSpotlightMenuText,\n disabled: maxSpotlightedParticipantsReached,\n title: maxSpotlightedParticipantsReached ? localeStrings.spotlightLimitReachedMenuTitle : undefined\n });\n }\n }\n if (!isMe && isPinned !== undefined) {\n if (isPinned && onUnpinParticipant && localeStrings?.unpinParticipantMenuLabel) {\n _defaultMenuItems.push({\n key: 'unpin',\n text: localeStrings?.unpinParticipantMenuLabel,\n iconProps: {\n iconName: 'UnpinParticipant',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => {\n onUnpinParticipant?.(participantId);\n },\n 'data-ui-id': 'participant-item-unpin-participant-button',\n ariaLabel: localeStrings.unpinParticipantMenuItemAriaLabel\n });\n }\n if (!isPinned && onPinParticipant && localeStrings?.pinParticipantMenuLabel) {\n _defaultMenuItems.push({\n key: 'pin',\n text: disablePinMenuItem\n ? localeStrings.pinParticipantLimitReachedMenuLabel\n : localeStrings.pinParticipantMenuLabel,\n iconProps: {\n iconName: 'PinParticipant',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => {\n onPinParticipant(participantId);\n },\n 'data-ui-id': 'participant-item-pin-participant-button',\n disabled: disablePinMenuItem || isSpotlighted,\n ariaLabel: localeStrings.pinParticipantMenuItemAriaLabel\n });\n }\n }\n if (defaultMenuItems) {\n _defaultMenuItems.push(...defaultMenuItems);\n }\n return onFetchParticipantMenuItems\n ? onFetchParticipantMenuItems(participantId, myUserId, _defaultMenuItems)\n : _defaultMenuItems;\n },\n [\n pinnedParticipants,\n spotlightedParticipantUserIds,\n onMuteParticipant,\n remoteParticipants,\n onPermitAudio,\n onForbidAudio,\n onPermitVideo,\n onForbidVideo,\n onFetchParticipantMenuItems,\n localeStrings.permitAudioMenuLabel,\n localeStrings.forbidAudioMenuLabel,\n localeStrings.permitVideoMenuLabel,\n localeStrings.forbidVideoMenuLabel,\n localeStrings.stopSpotlightOnSelfMenuLabel,\n localeStrings.stopSpotlightMenuLabel,\n localeStrings.addSpotlightMenuLabel,\n localeStrings.startSpotlightMenuLabel,\n localeStrings.spotlightLimitReachedMenuTitle,\n localeStrings?.unpinParticipantMenuLabel,\n localeStrings.pinParticipantMenuLabel,\n localeStrings.unpinParticipantMenuItemAriaLabel,\n localeStrings.pinParticipantLimitReachedMenuLabel,\n localeStrings.pinParticipantMenuItemAriaLabel,\n onStopLocalSpotlight,\n onStopRemoteSpotlight,\n maxParticipantsToSpotlight,\n onStartLocalSpotlight,\n onStartRemoteSpotlight,\n onUnpinParticipant,\n onPinParticipant,\n disablePinMenuItem\n ]\n );\n\n const role = useSelector(getRole);\n const alternateCallerId = useSelector(getAlternateCallerId);\n\n const onRenderContent = useCallback((): JSX.Element => {\n return (\n <>\n {\n <Prompt\n {...muteAllPromptLabels}\n styles={{ main: { minWidth: '22.5rem', padding: '1.5rem' } }}\n onConfirm={() => onMuteAllPromptConfirm()}\n isOpen={showMuteAllPrompt}\n onCancel={() => setShowMuteAllPrompt(false)}\n />\n }\n {\n <Prompt\n heading={localeStrings.forbidOthersAudioDialogTitle}\n text={localeStrings.forbidOthersAudioDialogContent}\n confirmButtonLabel={localeStrings.forbidOthersAudioConfirmButtonLabel}\n cancelButtonLabel={localeStrings.forbidOthersAudioCancelButtonLabel}\n styles={{ main: { minWidth: '22.5rem', padding: '1.5rem' } }}\n onConfirm={() => onForbidAllAttendeesPromptConfirm()}\n isOpen={showForbidOthersAudioPrompt}\n onCancel={() => setShowForbidOthersAudioPrompt(false)}\n />\n }\n {\n <Prompt\n heading={localeStrings.permitOthersAudioDialogTitle}\n text={localeStrings.permitOthersAudioDialogContent}\n confirmButtonLabel={localeStrings.permitOthersAudioConfirmButtonLabel}\n cancelButtonLabel={localeStrings.permitOthersAudioCancelButtonLabel}\n styles={{ main: { minWidth: '22.5rem', padding: '1.5rem' } }}\n onConfirm={() => onPermitAllAttendeesPromptConfirm()}\n isOpen={showPermitOthersAudioPrompt}\n onCancel={() => setShowForbidOthersAudioPrompt(false)}\n />\n }\n {\n <Prompt\n heading={localeStrings.forbidOthersVideoDialogTitle}\n text={localeStrings.forbidOthersVideoDialogContent}\n confirmButtonLabel={localeStrings.forbidOthersVideoConfirmButtonLabel}\n cancelButtonLabel={localeStrings.forbidOthersVideoCancelButtonLabel}\n styles={{ main: { minWidth: '22.5rem', padding: '1.5rem' } }}\n onConfirm={() => onForbidOthersVideoPromptConfirm()}\n isOpen={showForbidOthersVideoPrompt}\n onCancel={() => setShowForbidOthersVideoPrompt(false)}\n />\n }\n {\n <Prompt\n heading={localeStrings.permitOthersVideoDialogTitle}\n text={localeStrings.permitOthersVideoDialogContent}\n confirmButtonLabel={localeStrings.permitOthersVideoConfirmButtonLabel}\n cancelButtonLabel={localeStrings.permitOthersVideoCancelButtonLabel}\n styles={{ main: { minWidth: '22.5rem', padding: '1.5rem' } }}\n onConfirm={() => onPermitOthersVideoPromptConfirm()}\n isOpen={showPermitOthersVideoPrompt}\n onCancel={() => setShowForbidOthersVideoPrompt(false)}\n />\n }\n\n <PeoplePaneContent\n inviteLink={inviteLink}\n onFetchAvatarPersonaData={onFetchAvatarPersonaData}\n onFetchParticipantMenuItems={onFetchParticipantMenuItemsForCallComposite}\n setDrawerMenuItems={setDrawerMenuItems}\n mobileView={mobileView}\n setParticipantActioned={setParticipantActioned}\n participantListHeadingMoreButtonProps={sidePaneHeaderMenuProps}\n pinnedParticipants={pinnedParticipants}\n role={role}\n alternateCallerId={alternateCallerId}\n />\n </>\n );\n }, [\n muteAllPromptLabels,\n showMuteAllPrompt,\n localeStrings.forbidOthersAudioDialogTitle,\n localeStrings.forbidOthersAudioDialogContent,\n localeStrings.forbidOthersAudioConfirmButtonLabel,\n localeStrings.forbidOthersAudioCancelButtonLabel,\n localeStrings.permitOthersAudioDialogTitle,\n localeStrings.permitOthersAudioDialogContent,\n localeStrings.permitOthersAudioConfirmButtonLabel,\n localeStrings.permitOthersAudioCancelButtonLabel,\n localeStrings.forbidOthersVideoDialogTitle,\n localeStrings.forbidOthersVideoDialogContent,\n localeStrings.forbidOthersVideoConfirmButtonLabel,\n localeStrings.forbidOthersVideoCancelButtonLabel,\n localeStrings.permitOthersVideoDialogTitle,\n localeStrings.permitOthersVideoDialogContent,\n localeStrings.permitOthersVideoConfirmButtonLabel,\n localeStrings.permitOthersVideoCancelButtonLabel,\n showForbidOthersAudioPrompt,\n showPermitOthersAudioPrompt,\n showForbidOthersVideoPrompt,\n showPermitOthersVideoPrompt,\n inviteLink,\n onFetchAvatarPersonaData,\n onFetchParticipantMenuItemsForCallComposite,\n setDrawerMenuItems,\n mobileView,\n setParticipantActioned,\n sidePaneHeaderMenuProps,\n pinnedParticipants,\n role,\n alternateCallerId,\n onMuteAllPromptConfirm,\n onForbidAllAttendeesPromptConfirm,\n onPermitAllAttendeesPromptConfirm,\n onForbidOthersVideoPromptConfirm,\n onPermitOthersVideoPromptConfirm\n ]);\n\n const sidePaneRenderer: SidePaneRenderer = useMemo(\n () => ({\n headerRenderer: onRenderHeader,\n contentRenderer: onRenderContent,\n id: PEOPLE_SIDE_PANE_ID\n }),\n [onRenderContent, onRenderHeader]\n );\n\n const openPane = useCallback(() => {\n updateSidePaneRenderer(sidePaneRenderer);\n }, [sidePaneRenderer, updateSidePaneRenderer]);\n\n const isOpen = useIsParticularSidePaneOpen(PEOPLE_SIDE_PANE_ID);\n\n // Update pane renderer if it is open and the openPane dep changes\n useEffect(() => {\n if (isOpen) {\n openPane();\n }\n }, [isOpen, openPane]);\n\n return { openPeoplePane: openPane, closePeoplePane: closePane, isPeoplePaneOpen: isOpen };\n};\n"]}
@@ -58,7 +58,6 @@ const memoizeState = memoizeOne((userId, deviceManager, calls, latestErrors, lat
58
58
  callAgent: { displayName },
59
59
  calls,
60
60
  latestErrors,
61
- /* @conditional-compile-remove(breakout-rooms) */ /* @conditional-compile-remove(media-access) */
62
61
  latestNotifications: latestNotifications !== null && latestNotifications !== void 0 ? latestNotifications : {},
63
62
  alternateCallerId,
64
63
  environmentInfo
@@ -1 +1 @@
1
- {"version":3,"file":"useAdaptedSelector.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\nimport { useState, useEffect, useRef, useMemo } from 'react';\n\nimport memoizeOne from 'memoize-one';\nimport { useAdapter } from '../adapter/CallAdapterProvider';\nimport { CallAdapterState } from '../adapter/CallAdapter';\nimport { CallErrors, CallState, CallClientState, DeviceManagerState } from '@internal/calling-stateful-client';\nimport { CommunicationIdentifierKind } from '@azure/communication-common';\nimport { EnvironmentInfo } from '@azure/communication-calling';\n/* @conditional-compile-remove(breakout-rooms) */ /* @conditional-compile-remove(media-access) */\nimport { CallNotifications } from '@internal/calling-stateful-client';\n/**\n * @private\n */\nexport const useAdaptedSelector = <SelectorT extends (state: CallClientState, props: any) => any>(\n selector: SelectorT,\n selectorProps?: Parameters<SelectorT>[1]\n): ReturnType<SelectorT> => {\n return useSelectorWithAdaptation(selector, adaptCompositeState, selectorProps);\n};\n\n/**\n * @private\n */\nexport const useSelectorWithAdaptation = <\n SelectorT extends (state: ReturnType<AdaptFuncT>, props: any) => any,\n AdaptFuncT extends (state: CallAdapterState) => any\n>(\n selector: SelectorT,\n adaptState: AdaptFuncT,\n selectorProps?: Parameters<SelectorT>[1]\n): ReturnType<SelectorT> => {\n const adapter = useAdapter();\n\n // Keeps track of whether the current component is mounted or not. If it has unmounted, make sure we do not modify the\n // state or it will cause React warnings in the console. https://skype.visualstudio.com/SPOOL/_workitems/edit/2453212\n const mounted = useRef(false);\n\n useEffect(() => {\n mounted.current = true;\n return () => {\n mounted.current = false;\n };\n });\n\n const callId = adapter.getState().call?.id;\n const callConfigProps = useMemo(\n () => ({\n callId\n }),\n [callId]\n );\n\n const [props, setProps] = useState(selector(adaptState(adapter.getState()), selectorProps ?? callConfigProps));\n const propRef = useRef(props);\n propRef.current = props;\n\n useEffect(() => {\n const onStateChange = (state: CallAdapterState): void => {\n if (!mounted.current) {\n return;\n }\n const newProps = selector(adaptState(state), selectorProps ?? callConfigProps);\n if (propRef.current !== newProps) {\n setProps(newProps);\n }\n };\n adapter.onStateChange(onStateChange);\n return () => {\n adapter.offStateChange(onStateChange);\n };\n }, [adaptState, adapter, selector, selectorProps, callConfigProps]);\n return props;\n};\n\nconst memoizeState = memoizeOne(\n (\n userId: CommunicationIdentifierKind,\n deviceManager: DeviceManagerState,\n calls: { [key: string]: CallState },\n latestErrors: CallErrors,\n latestNotifications?:\n | undefined\n | /* @conditional-compile-remove(breakout-rooms) */ /* @conditional-compile-remove(media-access) */ CallNotifications,\n displayName?: string,\n alternateCallerId?: string,\n environmentInfo?: undefined | EnvironmentInfo\n ): CallClientState => ({\n userId,\n incomingCalls: {},\n incomingCallsEnded: {},\n callsEnded: {},\n deviceManager,\n callAgent: { displayName },\n calls,\n latestErrors,\n /* @conditional-compile-remove(breakout-rooms) */ /* @conditional-compile-remove(media-access) */\n latestNotifications: latestNotifications ?? ({} as CallNotifications),\n alternateCallerId,\n environmentInfo\n })\n);\n\nconst memoizeCalls = memoizeOne((call?: CallState): { [key: string]: CallState } => (call ? { [call.id]: call } : {}));\n\nconst adaptCompositeState = (compositeState: CallAdapterState): CallClientState => {\n return memoizeState(\n compositeState.userId,\n compositeState.devices,\n memoizeCalls(compositeState.call),\n // This is an unsafe type expansion.\n // compositeState.latestErrors can contain properties that are not valid in CallErrors.\n //\n // But there is no way to check for valid property names at runtime:\n // - The set of valid property names is built from types in the @azure/communication-calling.\n // Thus we don't have a literal array of allowed strings at runtime.\n // - Due to minification / uglification, the property names from the objects at runtime can't be used\n // to compare against permissible values inferred from the types.\n //\n // This is not a huge problem -- it simply means that our adapted selector will include some extra operations\n // that are unknown to the UI component and data binding libraries. Generic handling of the errors (e.g.,\n // just displaying them in some UI surface) will continue to work for these operations. Handling of\n // specific operations (e.g., acting on errors related to permission issues) will ignore these operations.\n compositeState.latestErrors as CallErrors,\n undefined ||\n /* @conditional-compile-remove(breakout-rooms) */ (compositeState.latestNotifications as CallNotifications),\n compositeState.displayName,\n compositeState.alternateCallerId,\n compositeState.environmentInfo\n );\n};\n"]}
1
+ {"version":3,"file":"useAdaptedSelector.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,uDAAuD;AAEvD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAE7D,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAW5D;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,QAAmB,EACnB,aAAwC,EACjB,EAAE;IACzB,OAAO,yBAAyB,CAAC,QAAQ,EAAE,mBAAmB,EAAE,aAAa,CAAC,CAAC;AACjF,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAIvC,QAAmB,EACnB,UAAsB,EACtB,aAAwC,EACjB,EAAE;;IACzB,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAE7B,sHAAsH;IACtH,qHAAqH;IACrH,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAE9B,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC;QAC1B,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAA,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,0CAAE,EAAE,CAAC;IAC3C,MAAM,eAAe,GAAG,OAAO,CAC7B,GAAG,EAAE,CAAC,CAAC;QACL,MAAM;KACP,CAAC,EACF,CAAC,MAAM,CAAC,CACT,CAAC;IAEF,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,eAAe,CAAC,CAAC,CAAC;IAC/G,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC;IAExB,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,aAAa,GAAG,CAAC,KAAuB,EAAQ,EAAE;YACtD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrB,OAAO;YACT,CAAC;YACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,eAAe,CAAC,CAAC;YAC/E,IAAI,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACjC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACrB,CAAC;QACH,CAAC,CAAC;QACF,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QACrC,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;QACxC,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC;IACpE,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,UAAU,CAC7B,CACE,MAAmC,EACnC,aAAiC,EACjC,KAAmC,EACnC,YAAwB,EACxB,mBAAuC,EACvC,WAAoB,EACpB,iBAA0B,EAC1B,eAAiC,EAChB,EAAE,CAAC,CAAC;IACrB,MAAM;IACN,aAAa,EAAE,EAAE;IACjB,kBAAkB,EAAE,EAAE;IACtB,UAAU,EAAE,EAAE;IACd,aAAa;IACb,SAAS,EAAE,EAAE,WAAW,EAAE;IAC1B,KAAK;IACL,YAAY;IACZ,mBAAmB,EAAE,mBAAmB,aAAnB,mBAAmB,cAAnB,mBAAmB,GAAK,EAAwB;IACrE,iBAAiB;IACjB,eAAe;CAChB,CAAC,CACH,CAAC;AAEF,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,IAAgB,EAAgC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAEvH,MAAM,mBAAmB,GAAG,CAAC,cAAgC,EAAmB,EAAE;IAChF,OAAO,YAAY,CACjB,cAAc,CAAC,MAAM,EACrB,cAAc,CAAC,OAAO,EACtB,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC;IACjC,oCAAoC;IACpC,uFAAuF;IACvF,EAAE;IACF,oEAAoE;IACpE,6FAA6F;IAC7F,sEAAsE;IACtE,qGAAqG;IACrG,mEAAmE;IACnE,EAAE;IACF,6GAA6G;IAC7G,yGAAyG;IACzG,mGAAmG;IACnG,0GAA0G;IAC1G,cAAc,CAAC,YAA0B,EACzC,SAAS;QACP,iDAAiD,CAAE,cAAc,CAAC,mBAAyC,EAC7G,cAAc,CAAC,WAAW,EAC1B,cAAc,CAAC,iBAAiB,EAChC,cAAc,CAAC,eAAe,CAC/B,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\nimport { useState, useEffect, useRef, useMemo } from 'react';\n\nimport memoizeOne from 'memoize-one';\nimport { useAdapter } from '../adapter/CallAdapterProvider';\nimport { CallAdapterState } from '../adapter/CallAdapter';\nimport {\n CallErrors,\n CallState,\n CallClientState,\n DeviceManagerState,\n CallNotifications\n} from '@internal/calling-stateful-client';\nimport { CommunicationIdentifierKind } from '@azure/communication-common';\nimport { EnvironmentInfo } from '@azure/communication-calling';\n/**\n * @private\n */\nexport const useAdaptedSelector = <SelectorT extends (state: CallClientState, props: any) => any>(\n selector: SelectorT,\n selectorProps?: Parameters<SelectorT>[1]\n): ReturnType<SelectorT> => {\n return useSelectorWithAdaptation(selector, adaptCompositeState, selectorProps);\n};\n\n/**\n * @private\n */\nexport const useSelectorWithAdaptation = <\n SelectorT extends (state: ReturnType<AdaptFuncT>, props: any) => any,\n AdaptFuncT extends (state: CallAdapterState) => any\n>(\n selector: SelectorT,\n adaptState: AdaptFuncT,\n selectorProps?: Parameters<SelectorT>[1]\n): ReturnType<SelectorT> => {\n const adapter = useAdapter();\n\n // Keeps track of whether the current component is mounted or not. If it has unmounted, make sure we do not modify the\n // state or it will cause React warnings in the console. https://skype.visualstudio.com/SPOOL/_workitems/edit/2453212\n const mounted = useRef(false);\n\n useEffect(() => {\n mounted.current = true;\n return () => {\n mounted.current = false;\n };\n });\n\n const callId = adapter.getState().call?.id;\n const callConfigProps = useMemo(\n () => ({\n callId\n }),\n [callId]\n );\n\n const [props, setProps] = useState(selector(adaptState(adapter.getState()), selectorProps ?? callConfigProps));\n const propRef = useRef(props);\n propRef.current = props;\n\n useEffect(() => {\n const onStateChange = (state: CallAdapterState): void => {\n if (!mounted.current) {\n return;\n }\n const newProps = selector(adaptState(state), selectorProps ?? callConfigProps);\n if (propRef.current !== newProps) {\n setProps(newProps);\n }\n };\n adapter.onStateChange(onStateChange);\n return () => {\n adapter.offStateChange(onStateChange);\n };\n }, [adaptState, adapter, selector, selectorProps, callConfigProps]);\n return props;\n};\n\nconst memoizeState = memoizeOne(\n (\n userId: CommunicationIdentifierKind,\n deviceManager: DeviceManagerState,\n calls: { [key: string]: CallState },\n latestErrors: CallErrors,\n latestNotifications?: CallNotifications,\n displayName?: string,\n alternateCallerId?: string,\n environmentInfo?: EnvironmentInfo\n ): CallClientState => ({\n userId,\n incomingCalls: {},\n incomingCallsEnded: {},\n callsEnded: {},\n deviceManager,\n callAgent: { displayName },\n calls,\n latestErrors,\n latestNotifications: latestNotifications ?? ({} as CallNotifications),\n alternateCallerId,\n environmentInfo\n })\n);\n\nconst memoizeCalls = memoizeOne((call?: CallState): { [key: string]: CallState } => (call ? { [call.id]: call } : {}));\n\nconst adaptCompositeState = (compositeState: CallAdapterState): CallClientState => {\n return memoizeState(\n compositeState.userId,\n compositeState.devices,\n memoizeCalls(compositeState.call),\n // This is an unsafe type expansion.\n // compositeState.latestErrors can contain properties that are not valid in CallErrors.\n //\n // But there is no way to check for valid property names at runtime:\n // - The set of valid property names is built from types in the @azure/communication-calling.\n // Thus we don't have a literal array of allowed strings at runtime.\n // - Due to minification / uglification, the property names from the objects at runtime can't be used\n // to compare against permissible values inferred from the types.\n //\n // This is not a huge problem -- it simply means that our adapted selector will include some extra operations\n // that are unknown to the UI component and data binding libraries. Generic handling of the errors (e.g.,\n // just displaying them in some UI surface) will continue to work for these operations. Handling of\n // specific operations (e.g., acting on errors related to permission issues) will ignore these operations.\n compositeState.latestErrors as CallErrors,\n undefined ||\n /* @conditional-compile-remove(breakout-rooms) */ (compositeState.latestNotifications as CallNotifications),\n compositeState.displayName,\n compositeState.alternateCallerId,\n compositeState.environmentInfo\n );\n};\n"]}
@@ -198,49 +198,41 @@ const createCompositeHandlers = memoizeOne((adapter, capabilities) => {
198
198
  onMuteAllRemoteParticipants: () => __awaiter(void 0, void 0, void 0, function* () {
199
199
  yield adapter.muteAllRemoteParticipants();
200
200
  }),
201
- /* @conditional-compile-remove(media-access) */
202
201
  onForbidAudio: ((_a = capabilities === null || capabilities === void 0 ? void 0 : capabilities.forbidOthersAudio) === null || _a === void 0 ? void 0 : _a.isPresent)
203
202
  ? (userIds) => __awaiter(void 0, void 0, void 0, function* () {
204
203
  yield adapter.forbidAudio(userIds);
205
204
  })
206
205
  : undefined,
207
- /* @conditional-compile-remove(media-access) */
208
206
  onPermitAudio: ((_b = capabilities === null || capabilities === void 0 ? void 0 : capabilities.forbidOthersAudio) === null || _b === void 0 ? void 0 : _b.isPresent)
209
207
  ? (userIds) => __awaiter(void 0, void 0, void 0, function* () {
210
208
  yield adapter.permitAudio(userIds);
211
209
  })
212
210
  : undefined,
213
- /* @conditional-compile-remove(media-access) */
214
211
  onForbidOthersAudio: ((_c = capabilities === null || capabilities === void 0 ? void 0 : capabilities.forbidOthersAudio) === null || _c === void 0 ? void 0 : _c.isPresent)
215
212
  ? () => __awaiter(void 0, void 0, void 0, function* () {
216
213
  yield adapter.forbidOthersAudio();
217
214
  })
218
215
  : undefined,
219
- /* @conditional-compile-remove(media-access) */
220
216
  onPermitOthersAudio: ((_d = capabilities === null || capabilities === void 0 ? void 0 : capabilities.forbidOthersAudio) === null || _d === void 0 ? void 0 : _d.isPresent)
221
217
  ? () => __awaiter(void 0, void 0, void 0, function* () {
222
218
  yield adapter.permitOthersAudio();
223
219
  })
224
220
  : undefined,
225
- /* @conditional-compile-remove(media-access) */
226
221
  onForbidVideo: ((_e = capabilities === null || capabilities === void 0 ? void 0 : capabilities.forbidOthersVideo) === null || _e === void 0 ? void 0 : _e.isPresent)
227
222
  ? (userIds) => __awaiter(void 0, void 0, void 0, function* () {
228
223
  yield adapter.forbidVideo(userIds);
229
224
  })
230
225
  : undefined,
231
- /* @conditional-compile-remove(media-access) */
232
226
  onPermitVideo: ((_f = capabilities === null || capabilities === void 0 ? void 0 : capabilities.forbidOthersVideo) === null || _f === void 0 ? void 0 : _f.isPresent)
233
227
  ? (userIds) => __awaiter(void 0, void 0, void 0, function* () {
234
228
  yield adapter.permitVideo(userIds);
235
229
  })
236
230
  : undefined,
237
- /* @conditional-compile-remove(media-access) */
238
231
  onForbidOthersVideo: ((_g = capabilities === null || capabilities === void 0 ? void 0 : capabilities.forbidOthersVideo) === null || _g === void 0 ? void 0 : _g.isPresent)
239
232
  ? () => __awaiter(void 0, void 0, void 0, function* () {
240
233
  yield adapter.forbidOthersVideo();
241
234
  })
242
235
  : undefined,
243
- /* @conditional-compile-remove(media-access) */
244
236
  onPermitOthersVideo: ((_h = capabilities === null || capabilities === void 0 ? void 0 : capabilities.forbidOthersVideo) === null || _h === void 0 ? void 0 : _h.isPresent)
245
237
  ? () => __awaiter(void 0, void 0, void 0, function* () {
246
238
  yield adapter.permitOthersVideo();