@azure/communication-react 1.13.0-alpha-202402170012 → 1.13.0-alpha-202402220012

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 (107) hide show
  1. package/dist/communication-react.d.ts +40 -36
  2. package/dist/dist-cjs/communication-react/index.js +657 -415
  3. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  4. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  5. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  6. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.d.ts +3 -7
  7. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +4 -12
  8. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  9. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +4 -4
  10. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
  11. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.d.ts +2 -1
  12. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +35 -1
  13. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
  14. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.d.ts +14 -0
  15. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js.map +1 -1
  16. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.d.ts +2 -1
  17. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  18. package/dist/dist-esm/calling-component-bindings/src/index.d.ts +1 -0
  19. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  20. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +5 -5
  21. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
  22. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.d.ts +3 -1
  23. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +9 -3
  24. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  25. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js +12 -8
  26. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
  27. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +4 -0
  28. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  29. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +11 -1
  30. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  31. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +6 -5
  32. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
  33. package/dist/dist-esm/chat-stateful-client/src/ChatContext.d.ts +1 -1
  34. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js +7 -5
  35. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js.map +1 -1
  36. package/dist/dist-esm/chat-stateful-client/src/ResourceDownloadQueue.js +4 -5
  37. package/dist/dist-esm/chat-stateful-client/src/ResourceDownloadQueue.js.map +1 -1
  38. package/dist/dist-esm/communication-react/src/index.d.ts +1 -1
  39. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  40. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +2 -2
  41. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
  42. package/dist/dist-esm/react-components/src/components/FileDownloadCards.d.ts +4 -10
  43. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js.map +1 -1
  44. package/dist/dist-esm/react-components/src/components/LocalVideoTile.d.ts +8 -0
  45. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js +101 -19
  46. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
  47. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +1 -1
  48. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  49. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js +8 -3
  50. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js.map +1 -1
  51. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js +8 -3
  52. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js.map +1 -1
  53. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.d.ts +4 -2
  54. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js +25 -20
  55. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js.map +1 -1
  56. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +2 -10
  57. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  58. package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts +12 -4
  59. package/dist/dist-esm/react-components/src/components/VideoGallery.js +38 -10
  60. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  61. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +8 -0
  62. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  63. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +20 -15
  64. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  65. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +16 -10
  66. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  67. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.d.ts +4 -3
  68. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js +29 -15
  69. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js.map +1 -1
  70. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.d.ts +2 -1
  71. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +168 -141
  72. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  73. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.d.ts +2 -1
  74. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.js.map +1 -1
  75. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/spotlightUtils.d.ts +10 -3
  76. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/spotlightUtils.js +77 -27
  77. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/spotlightUtils.js.map +1 -1
  78. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +2 -8
  79. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +4 -15
  80. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  81. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +3 -5
  82. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  83. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts +1 -5
  84. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js +2 -7
  85. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  86. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +41 -19
  87. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  88. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +3 -20
  89. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +7 -57
  90. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  91. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +1 -5
  92. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  93. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.d.ts +0 -1
  94. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js.map +1 -1
  95. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.d.ts +1 -0
  96. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +15 -0
  97. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -1
  98. package/dist/dist-esm/react-composites/src/composites/common/ExitSpotlightButton.d.ts +14 -0
  99. package/dist/dist-esm/react-composites/src/composites/common/ExitSpotlightButton.js +16 -0
  100. package/dist/dist-esm/react-composites/src/composites/common/ExitSpotlightButton.js.map +1 -0
  101. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +2 -0
  102. package/dist/dist-esm/react-composites/src/composites/common/icons.js +4 -0
  103. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  104. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.d.ts +4 -0
  105. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js.map +1 -1
  106. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-US/strings.json +4 -2
  107. package/package.json +1 -1
@@ -20,147 +20,174 @@ import { isCameraOn } from '../utils';
20
20
  export const useHandlers = (
21
21
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
22
22
  _component) => {
23
- return createCompositeHandlers(useAdapter());
24
- };
25
- const createCompositeHandlers = memoizeOne((adapter) => ({
26
- onCreateLocalStreamView: (options) => __awaiter(void 0, void 0, void 0, function* () {
27
- return yield adapter.createStreamView(undefined, options);
28
- }),
29
- onCreateRemoteStreamView: (userId, options) => __awaiter(void 0, void 0, void 0, function* () {
30
- return yield adapter.createStreamView(userId, options);
31
- }),
32
- onHangUp: (forEveryone) => __awaiter(void 0, void 0, void 0, function* () {
33
- yield adapter.leaveCall(forEveryone);
34
- }),
35
- /* @conditional-compile-remove(PSTN-calls) */
36
- onToggleHold: () => __awaiter(void 0, void 0, void 0, function* () {
37
- var _a;
38
- return ((_a = adapter.getState().call) === null || _a === void 0 ? void 0 : _a.state) === 'LocalHold' ? yield adapter.resumeCall() : yield adapter.holdCall();
39
- }),
40
- /* @conditional-compile-remove(PSTN-calls) */
41
- onAddParticipant: (participant, options) => __awaiter(void 0, void 0, void 0, function* () {
42
- return yield adapter.addParticipant(participant, options);
43
- }),
44
- /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(dtmf-dialer) */
45
- onSendDtmfTone: (dtmfTone) => __awaiter(void 0, void 0, void 0, function* () {
46
- yield adapter.sendDtmfTone(dtmfTone);
47
- }),
48
- onRemoveParticipant: (userId) => __awaiter(void 0, void 0, void 0, function* () {
49
- yield adapter.removeParticipant(userId);
50
- }),
51
- /* @conditional-compile-remove(raise-hand) */
52
- onRaiseHand: () => __awaiter(void 0, void 0, void 0, function* () {
53
- yield adapter.raiseHand();
54
- }),
55
- /* @conditional-compile-remove(raise-hand) */
56
- onLowerHand: () => __awaiter(void 0, void 0, void 0, function* () {
57
- yield adapter.lowerHand();
58
- }),
59
- /* @conditional-compile-remove(raise-hand) */
60
- onToggleRaiseHand: () => __awaiter(void 0, void 0, void 0, function* () {
61
- var _b;
62
- ((_b = adapter.getState().call) === null || _b === void 0 ? void 0 : _b.raiseHand.localParticipantRaisedHand)
63
- ? yield adapter.lowerHand()
64
- : yield adapter.raiseHand();
65
- }),
66
- /* @conditional-compile-remove(reaction) */
67
- onReactionClicked: (reaction) => __awaiter(void 0, void 0, void 0, function* () {
68
- yield adapter.onReactionClicked(reaction);
69
- }),
70
- onSelectCamera: (deviceInfo, options) => __awaiter(void 0, void 0, void 0, function* () {
71
- yield adapter.setCamera(deviceInfo, options);
72
- }),
73
- onSelectMicrophone: (deviceInfo) => __awaiter(void 0, void 0, void 0, function* () {
74
- yield adapter.setMicrophone(deviceInfo);
75
- }),
76
- onSelectSpeaker: (deviceInfo) => __awaiter(void 0, void 0, void 0, function* () {
77
- yield adapter.setSpeaker(deviceInfo);
78
- }),
79
- onStartCall: (participants, options) => {
80
- const rawIds = participants.map((participant) => toFlatCommunicationIdentifier(participant));
81
- return adapter.startCall(rawIds, options);
82
- },
83
- onStartScreenShare: () => __awaiter(void 0, void 0, void 0, function* () {
84
- yield adapter.startScreenShare();
85
- }),
86
- onStopScreenShare: () => __awaiter(void 0, void 0, void 0, function* () {
87
- yield adapter.stopScreenShare();
88
- }),
89
- onToggleCamera: (options) => __awaiter(void 0, void 0, void 0, function* () {
90
- isCameraOn(adapter.getState()) ? yield adapter.stopCamera() : yield adapter.startCamera(options);
91
- }),
92
- onToggleMicrophone: () => __awaiter(void 0, void 0, void 0, function* () {
93
- var _c;
94
- return ((_c = adapter.getState().call) === null || _c === void 0 ? void 0 : _c.isMuted) ? yield adapter.unmute() : yield adapter.mute();
95
- }),
96
- onToggleScreenShare: () => __awaiter(void 0, void 0, void 0, function* () {
97
- var _d;
98
- return ((_d = adapter.getState().call) === null || _d === void 0 ? void 0 : _d.isScreenSharingOn)
99
- ? yield adapter.stopScreenShare()
100
- : yield adapter.startScreenShare();
101
- }),
102
- onStartLocalVideo: () => __awaiter(void 0, void 0, void 0, function* () {
103
- if (adapter.getState().call) {
104
- return adapter.startCamera();
105
- }
106
- }),
107
- onDisposeLocalStreamView: () => __awaiter(void 0, void 0, void 0, function* () {
108
- return adapter.disposeLocalVideoStreamView();
109
- }),
110
- onDisposeRemoteStreamView: (userId) => __awaiter(void 0, void 0, void 0, function* () {
111
- return adapter.disposeStreamView(userId);
112
- }),
113
- onDisposeRemoteScreenShareStreamView: (userId) => __awaiter(void 0, void 0, void 0, function* () {
114
- return adapter.disposeScreenShareStreamView(userId);
115
- }),
116
- onDisposeRemoteVideoStreamView: (userId) => __awaiter(void 0, void 0, void 0, function* () {
117
- return adapter.disposeRemoteVideoStreamView(userId);
118
- }),
119
- /* @conditional-compile-remove(call-readiness) */
120
- askDevicePermission: (constrain) => __awaiter(void 0, void 0, void 0, function* () {
121
- return adapter.askDevicePermission(constrain);
122
- }),
123
- /* @conditional-compile-remove(video-background-effects) */
124
- onRemoveVideoBackgroundEffects: () => __awaiter(void 0, void 0, void 0, function* () {
125
- return yield adapter.stopVideoBackgroundEffects();
126
- }),
127
- /* @conditional-compile-remove(video-background-effects) */
128
- onBlurVideoBackground: (backgroundBlurConfig) => __awaiter(void 0, void 0, void 0, function* () {
129
- const blurConfig = Object.assign({ effectName: 'blur' }, backgroundBlurConfig);
130
- return yield adapter.startVideoBackgroundEffect(blurConfig);
131
- }),
132
- /* @conditional-compile-remove(video-background-effects) */
133
- onReplaceVideoBackground: (backgroundReplacementConfig) => __awaiter(void 0, void 0, void 0, function* () {
134
- const replacementConfig = Object.assign({ effectName: 'replacement' }, backgroundReplacementConfig);
135
- return yield adapter.startVideoBackgroundEffect(replacementConfig);
136
- }),
137
- /* @conditional-compile-remove(close-captions) */
138
- onStartCaptions: (options) => __awaiter(void 0, void 0, void 0, function* () {
139
- yield adapter.startCaptions(options);
140
- }),
141
- /* @conditional-compile-remove(close-captions) */
142
- onStopCaptions: () => __awaiter(void 0, void 0, void 0, function* () {
143
- yield adapter.stopCaptions();
144
- }),
145
- /* @conditional-compile-remove(close-captions) */
146
- onSetSpokenLanguage: (language) => __awaiter(void 0, void 0, void 0, function* () {
147
- yield adapter.setSpokenLanguage(language);
148
- }),
149
- /* @conditional-compile-remove(close-captions) */
150
- onSetCaptionLanguage: (language) => __awaiter(void 0, void 0, void 0, function* () {
151
- yield adapter.setCaptionLanguage(language);
152
- }),
153
- /* @conditional-compile-remove(end-of-call-survey) */
154
- onSubmitSurvey: (survey) => __awaiter(void 0, void 0, void 0, function* () {
155
- return yield adapter.submitSurvey(survey);
156
- }),
23
+ var _a, _b;
24
+ const adapter = useAdapter();
25
+ const compositeHandlers = createCompositeHandlers(adapter);
157
26
  /* @conditional-compile-remove(spotlight) */
158
- onStartSpotlight: (userIds) => __awaiter(void 0, void 0, void 0, function* () {
159
- yield adapter.startSpotlight(userIds);
160
- }),
27
+ const canSpotlight = (_b = (_a = adapter.getState().call) === null || _a === void 0 ? void 0 : _a.capabilitiesFeature) === null || _b === void 0 ? void 0 : _b.capabilities.spotlightParticipant.isPresent;
161
28
  /* @conditional-compile-remove(spotlight) */
162
- onStopSpotlight: (userIds) => __awaiter(void 0, void 0, void 0, function* () {
163
- yield adapter.stopSpotlight(userIds);
164
- })
165
- }));
29
+ return Object.assign(Object.assign({}, compositeHandlers), (canSpotlight
30
+ ? {}
31
+ : { onStartLocalSpotlight: undefined, onStartRemoteSpotlight: undefined, onStopRemoteSpotlight: undefined }));
32
+ return compositeHandlers;
33
+ };
34
+ const createCompositeHandlers = memoizeOne((adapter) => {
35
+ return {
36
+ onCreateLocalStreamView: (options) => __awaiter(void 0, void 0, void 0, function* () {
37
+ return yield adapter.createStreamView(undefined, options);
38
+ }),
39
+ onCreateRemoteStreamView: (userId, options) => __awaiter(void 0, void 0, void 0, function* () {
40
+ return yield adapter.createStreamView(userId, options);
41
+ }),
42
+ onHangUp: (forEveryone) => __awaiter(void 0, void 0, void 0, function* () {
43
+ yield adapter.leaveCall(forEveryone);
44
+ }),
45
+ /* @conditional-compile-remove(PSTN-calls) */
46
+ onToggleHold: () => __awaiter(void 0, void 0, void 0, function* () {
47
+ var _a;
48
+ return ((_a = adapter.getState().call) === null || _a === void 0 ? void 0 : _a.state) === 'LocalHold' ? yield adapter.resumeCall() : yield adapter.holdCall();
49
+ }),
50
+ /* @conditional-compile-remove(PSTN-calls) */
51
+ onAddParticipant: (participant, options) => __awaiter(void 0, void 0, void 0, function* () {
52
+ return yield adapter.addParticipant(participant, options);
53
+ }),
54
+ /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(dtmf-dialer) */
55
+ onSendDtmfTone: (dtmfTone) => __awaiter(void 0, void 0, void 0, function* () {
56
+ yield adapter.sendDtmfTone(dtmfTone);
57
+ }),
58
+ onRemoveParticipant: (userId) => __awaiter(void 0, void 0, void 0, function* () {
59
+ yield adapter.removeParticipant(userId);
60
+ }),
61
+ /* @conditional-compile-remove(raise-hand) */
62
+ onRaiseHand: () => __awaiter(void 0, void 0, void 0, function* () {
63
+ yield adapter.raiseHand();
64
+ }),
65
+ /* @conditional-compile-remove(raise-hand) */
66
+ onLowerHand: () => __awaiter(void 0, void 0, void 0, function* () {
67
+ yield adapter.lowerHand();
68
+ }),
69
+ /* @conditional-compile-remove(raise-hand) */
70
+ onToggleRaiseHand: () => __awaiter(void 0, void 0, void 0, function* () {
71
+ var _b;
72
+ ((_b = adapter.getState().call) === null || _b === void 0 ? void 0 : _b.raiseHand.localParticipantRaisedHand)
73
+ ? yield adapter.lowerHand()
74
+ : yield adapter.raiseHand();
75
+ }),
76
+ /* @conditional-compile-remove(reaction) */
77
+ onReactionClicked: (reaction) => __awaiter(void 0, void 0, void 0, function* () {
78
+ yield adapter.onReactionClicked(reaction);
79
+ }),
80
+ onSelectCamera: (deviceInfo, options) => __awaiter(void 0, void 0, void 0, function* () {
81
+ yield adapter.setCamera(deviceInfo, options);
82
+ }),
83
+ onSelectMicrophone: (deviceInfo) => __awaiter(void 0, void 0, void 0, function* () {
84
+ yield adapter.setMicrophone(deviceInfo);
85
+ }),
86
+ onSelectSpeaker: (deviceInfo) => __awaiter(void 0, void 0, void 0, function* () {
87
+ yield adapter.setSpeaker(deviceInfo);
88
+ }),
89
+ onStartCall: (participants, options) => {
90
+ const rawIds = participants.map((participant) => toFlatCommunicationIdentifier(participant));
91
+ return adapter.startCall(rawIds, options);
92
+ },
93
+ onStartScreenShare: () => __awaiter(void 0, void 0, void 0, function* () {
94
+ yield adapter.startScreenShare();
95
+ }),
96
+ onStopScreenShare: () => __awaiter(void 0, void 0, void 0, function* () {
97
+ yield adapter.stopScreenShare();
98
+ }),
99
+ onToggleCamera: (options) => __awaiter(void 0, void 0, void 0, function* () {
100
+ isCameraOn(adapter.getState()) ? yield adapter.stopCamera() : yield adapter.startCamera(options);
101
+ }),
102
+ onToggleMicrophone: () => __awaiter(void 0, void 0, void 0, function* () {
103
+ var _c;
104
+ return ((_c = adapter.getState().call) === null || _c === void 0 ? void 0 : _c.isMuted) ? yield adapter.unmute() : yield adapter.mute();
105
+ }),
106
+ onToggleScreenShare: () => __awaiter(void 0, void 0, void 0, function* () {
107
+ var _d;
108
+ return ((_d = adapter.getState().call) === null || _d === void 0 ? void 0 : _d.isScreenSharingOn)
109
+ ? yield adapter.stopScreenShare()
110
+ : yield adapter.startScreenShare();
111
+ }),
112
+ onStartLocalVideo: () => __awaiter(void 0, void 0, void 0, function* () {
113
+ if (adapter.getState().call) {
114
+ return adapter.startCamera();
115
+ }
116
+ }),
117
+ onDisposeLocalStreamView: () => __awaiter(void 0, void 0, void 0, function* () {
118
+ return adapter.disposeLocalVideoStreamView();
119
+ }),
120
+ onDisposeRemoteStreamView: (userId) => __awaiter(void 0, void 0, void 0, function* () {
121
+ return adapter.disposeStreamView(userId);
122
+ }),
123
+ onDisposeRemoteScreenShareStreamView: (userId) => __awaiter(void 0, void 0, void 0, function* () {
124
+ return adapter.disposeScreenShareStreamView(userId);
125
+ }),
126
+ onDisposeRemoteVideoStreamView: (userId) => __awaiter(void 0, void 0, void 0, function* () {
127
+ return adapter.disposeRemoteVideoStreamView(userId);
128
+ }),
129
+ /* @conditional-compile-remove(call-readiness) */
130
+ askDevicePermission: (constrain) => __awaiter(void 0, void 0, void 0, function* () {
131
+ return adapter.askDevicePermission(constrain);
132
+ }),
133
+ /* @conditional-compile-remove(video-background-effects) */
134
+ onRemoveVideoBackgroundEffects: () => __awaiter(void 0, void 0, void 0, function* () {
135
+ return yield adapter.stopVideoBackgroundEffects();
136
+ }),
137
+ /* @conditional-compile-remove(video-background-effects) */
138
+ onBlurVideoBackground: (backgroundBlurConfig) => __awaiter(void 0, void 0, void 0, function* () {
139
+ const blurConfig = Object.assign({ effectName: 'blur' }, backgroundBlurConfig);
140
+ return yield adapter.startVideoBackgroundEffect(blurConfig);
141
+ }),
142
+ /* @conditional-compile-remove(video-background-effects) */
143
+ onReplaceVideoBackground: (backgroundReplacementConfig) => __awaiter(void 0, void 0, void 0, function* () {
144
+ const replacementConfig = Object.assign({ effectName: 'replacement' }, backgroundReplacementConfig);
145
+ return yield adapter.startVideoBackgroundEffect(replacementConfig);
146
+ }),
147
+ /* @conditional-compile-remove(close-captions) */
148
+ onStartCaptions: (options) => __awaiter(void 0, void 0, void 0, function* () {
149
+ yield adapter.startCaptions(options);
150
+ }),
151
+ /* @conditional-compile-remove(close-captions) */
152
+ onStopCaptions: () => __awaiter(void 0, void 0, void 0, function* () {
153
+ yield adapter.stopCaptions();
154
+ }),
155
+ /* @conditional-compile-remove(close-captions) */
156
+ onSetSpokenLanguage: (language) => __awaiter(void 0, void 0, void 0, function* () {
157
+ yield adapter.setSpokenLanguage(language);
158
+ }),
159
+ /* @conditional-compile-remove(close-captions) */
160
+ onSetCaptionLanguage: (language) => __awaiter(void 0, void 0, void 0, function* () {
161
+ yield adapter.setCaptionLanguage(language);
162
+ }),
163
+ /* @conditional-compile-remove(end-of-call-survey) */
164
+ onSubmitSurvey: (survey) => __awaiter(void 0, void 0, void 0, function* () {
165
+ return yield adapter.submitSurvey(survey);
166
+ }),
167
+ /* @conditional-compile-remove(spotlight) */
168
+ onStartSpotlight: (userIds) => __awaiter(void 0, void 0, void 0, function* () {
169
+ yield adapter.startSpotlight(userIds);
170
+ }),
171
+ /* @conditional-compile-remove(spotlight) */
172
+ onStopSpotlight: (userIds) => __awaiter(void 0, void 0, void 0, function* () {
173
+ yield adapter.stopSpotlight(userIds);
174
+ }),
175
+ /* @conditional-compile-remove(spotlight) */
176
+ onStartLocalSpotlight: () => __awaiter(void 0, void 0, void 0, function* () {
177
+ yield adapter.startSpotlight();
178
+ }),
179
+ /* @conditional-compile-remove(spotlight) */
180
+ onStopLocalSpotlight: () => __awaiter(void 0, void 0, void 0, function* () {
181
+ yield adapter.stopSpotlight();
182
+ }),
183
+ /* @conditional-compile-remove(spotlight) */
184
+ onStartRemoteSpotlight: (userIds) => __awaiter(void 0, void 0, void 0, function* () {
185
+ yield adapter.startSpotlight(userIds);
186
+ }),
187
+ /* @conditional-compile-remove(spotlight) */
188
+ onStopRemoteSpotlight: (userIds) => __awaiter(void 0, void 0, void 0, function* () {
189
+ yield adapter.stopSpotlight(userIds);
190
+ })
191
+ };
192
+ });
166
193
  //# sourceMappingURL=useHandlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useHandlers.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/CallComposite/hooks/useHandlers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { CommonCallingHandlers } from '@internal/calling-component-bindings';\nimport { CommonProperties, toFlatCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { ReactElement } from 'react';\nimport memoizeOne from 'memoize-one';\nimport { CommonCallAdapter } from '..';\n/* @conditional-compile-remove(video-background-effects) */\nimport { VideoBackgroundBlurEffect, VideoBackgroundReplacementEffect } from '..';\nimport { useAdapter } from '../adapter/CallAdapterProvider';\nimport { isCameraOn } from '../utils';\n/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(dtmf-dialer) */\nimport { DtmfTone } from '@azure/communication-calling';\n/* @conditional-compile-remove(reaction) */\nimport { Reaction } from '@azure/communication-calling';\n/* @conditional-compile-remove(video-background-effects) */\nimport type { BackgroundReplacementConfig, BackgroundBlurConfig } from '@azure/communication-calling';\n/* @conditional-compile-remove(end-of-call-survey) */\nimport { CallSurvey, CallSurveyResponse } from '@azure/communication-calling';\n\n/**\n * @private\n */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type\nexport const useHandlers = <PropsT>(\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _component: (props: PropsT) => ReactElement | null\n): Pick<CommonCallingHandlers, CommonProperties<CommonCallingHandlers, PropsT>> => {\n return createCompositeHandlers(useAdapter());\n};\n\nconst createCompositeHandlers = memoizeOne(\n (adapter: CommonCallAdapter): CommonCallingHandlers => ({\n onCreateLocalStreamView: async (options) => {\n return await adapter.createStreamView(undefined, options);\n },\n onCreateRemoteStreamView: async (userId, options) => {\n return await adapter.createStreamView(userId, options);\n },\n onHangUp: async (forEveryone?: boolean) => {\n await adapter.leaveCall(forEveryone);\n },\n /* @conditional-compile-remove(PSTN-calls) */\n onToggleHold: async () => {\n return adapter.getState().call?.state === 'LocalHold' ? await adapter.resumeCall() : await adapter.holdCall();\n },\n /* @conditional-compile-remove(PSTN-calls) */\n onAddParticipant: async (participant, options?) => {\n return await adapter.addParticipant(participant, options);\n },\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(dtmf-dialer) */\n onSendDtmfTone: async (dtmfTone: DtmfTone) => {\n await adapter.sendDtmfTone(dtmfTone);\n },\n onRemoveParticipant: async (userId) => {\n await adapter.removeParticipant(userId);\n },\n /* @conditional-compile-remove(raise-hand) */\n onRaiseHand: async () => {\n await adapter.raiseHand();\n },\n /* @conditional-compile-remove(raise-hand) */\n onLowerHand: async () => {\n await adapter.lowerHand();\n },\n /* @conditional-compile-remove(raise-hand) */\n onToggleRaiseHand: async () => {\n adapter.getState().call?.raiseHand.localParticipantRaisedHand\n ? await adapter.lowerHand()\n : await adapter.raiseHand();\n },\n /* @conditional-compile-remove(reaction) */\n onReactionClicked: async (reaction: Reaction) => {\n await adapter.onReactionClicked(reaction);\n },\n onSelectCamera: async (deviceInfo, options) => {\n await adapter.setCamera(deviceInfo, options);\n },\n onSelectMicrophone: async (deviceInfo) => {\n await adapter.setMicrophone(deviceInfo);\n },\n onSelectSpeaker: async (deviceInfo) => {\n await adapter.setSpeaker(deviceInfo);\n },\n onStartCall: (participants, options?) => {\n const rawIds = participants.map((participant) => toFlatCommunicationIdentifier(participant));\n return adapter.startCall(rawIds, options);\n },\n onStartScreenShare: async () => {\n await adapter.startScreenShare();\n },\n onStopScreenShare: async () => {\n await adapter.stopScreenShare();\n },\n onToggleCamera: async (options) => {\n isCameraOn(adapter.getState()) ? await adapter.stopCamera() : await adapter.startCamera(options);\n },\n onToggleMicrophone: async () => {\n return adapter.getState().call?.isMuted ? await adapter.unmute() : await adapter.mute();\n },\n onToggleScreenShare: async () => {\n return adapter.getState().call?.isScreenSharingOn\n ? await adapter.stopScreenShare()\n : await adapter.startScreenShare();\n },\n onStartLocalVideo: async () => {\n if (adapter.getState().call) {\n return adapter.startCamera();\n }\n },\n onDisposeLocalStreamView: async () => {\n return adapter.disposeLocalVideoStreamView();\n },\n onDisposeRemoteStreamView: async (userId) => {\n return adapter.disposeStreamView(userId);\n },\n onDisposeRemoteScreenShareStreamView: async (userId) => {\n return adapter.disposeScreenShareStreamView(userId);\n },\n onDisposeRemoteVideoStreamView: async (userId) => {\n return adapter.disposeRemoteVideoStreamView(userId);\n },\n /* @conditional-compile-remove(call-readiness) */\n askDevicePermission: async (constrain) => {\n return adapter.askDevicePermission(constrain);\n },\n /* @conditional-compile-remove(video-background-effects) */\n onRemoveVideoBackgroundEffects: async () => {\n return await adapter.stopVideoBackgroundEffects();\n },\n /* @conditional-compile-remove(video-background-effects) */\n onBlurVideoBackground: async (backgroundBlurConfig?: BackgroundBlurConfig) => {\n const blurConfig: VideoBackgroundBlurEffect = {\n effectName: 'blur',\n ...backgroundBlurConfig\n };\n return await adapter.startVideoBackgroundEffect(blurConfig);\n },\n /* @conditional-compile-remove(video-background-effects) */\n onReplaceVideoBackground: async (backgroundReplacementConfig: BackgroundReplacementConfig) => {\n const replacementConfig: VideoBackgroundReplacementEffect = {\n effectName: 'replacement',\n ...backgroundReplacementConfig\n };\n return await adapter.startVideoBackgroundEffect(replacementConfig);\n },\n /* @conditional-compile-remove(close-captions) */\n onStartCaptions: async (options) => {\n await adapter.startCaptions(options);\n },\n /* @conditional-compile-remove(close-captions) */\n onStopCaptions: async () => {\n await adapter.stopCaptions();\n },\n /* @conditional-compile-remove(close-captions) */\n onSetSpokenLanguage: async (language) => {\n await adapter.setSpokenLanguage(language);\n },\n /* @conditional-compile-remove(close-captions) */\n onSetCaptionLanguage: async (language) => {\n await adapter.setCaptionLanguage(language);\n },\n /* @conditional-compile-remove(end-of-call-survey) */\n onSubmitSurvey: async (survey: CallSurvey): Promise<CallSurveyResponse | undefined> => {\n return await adapter.submitSurvey(survey);\n },\n /* @conditional-compile-remove(spotlight) */\n onStartSpotlight: async (userIds?: string[]): Promise<void> => {\n await adapter.startSpotlight(userIds);\n },\n /* @conditional-compile-remove(spotlight) */\n onStopSpotlight: async (userIds?: string[]): Promise<void> => {\n await adapter.stopSpotlight(userIds);\n }\n })\n);\n"]}
1
+ {"version":3,"file":"useHandlers.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/CallComposite/hooks/useHandlers.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;AAKlC,OAAO,EAAoB,6BAA6B,EAAE,yCAAgC;AAE1F,OAAO,UAAU,MAAM,aAAa,CAAC;AAIrC,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAUtC;;GAEG;AACH,+HAA+H;AAC/H,MAAM,CAAC,MAAM,WAAW,GAAG;AACzB,6DAA6D;AAC7D,UAAkD,EAE8B,EAAE;;IAClF,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAC3D,4CAA4C;IAC5C,MAAM,YAAY,GAAG,MAAA,MAAA,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,0CAAE,mBAAmB,0CAAE,YAAY,CAAC,oBAAoB,CAAC,SAAS,CAAC;IAC/G,4CAA4C;IAC5C,uCACK,iBAAiB,GACjB,CAAC,YAAY;QACd,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,EAAE,qBAAqB,EAAE,SAAS,EAAE,sBAAsB,EAAE,SAAS,EAAE,qBAAqB,EAAE,SAAS,EAAE,CAAC,EAC9G;IACF,OAAO,iBAAiB,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAAG,UAAU,CACxC,CACE,OAA0B,EAC+E,EAAE;IAC3G,OAAO;QACL,uBAAuB,EAAE,CAAO,OAAO,EAAE,EAAE;YACzC,OAAO,MAAM,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC5D,CAAC,CAAA;QACD,wBAAwB,EAAE,CAAO,MAAM,EAAE,OAAO,EAAE,EAAE;YAClD,OAAO,MAAM,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACzD,CAAC,CAAA;QACD,QAAQ,EAAE,CAAO,WAAqB,EAAE,EAAE;YACxC,MAAM,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACvC,CAAC,CAAA;QACD,6CAA6C;QAC7C,YAAY,EAAE,GAAS,EAAE;;YACvB,OAAO,CAAA,MAAA,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,0CAAE,KAAK,MAAK,WAAW,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,QAAQ,EAAE,CAAC;QAChH,CAAC,CAAA;QACD,6CAA6C;QAC7C,gBAAgB,EAAE,CAAO,WAAW,EAAE,OAAQ,EAAE,EAAE;YAChD,OAAO,MAAM,OAAO,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC5D,CAAC,CAAA;QACD,6CAA6C,CAAC,8CAA8C;QAC5F,cAAc,EAAE,CAAO,QAAkB,EAAE,EAAE;YAC3C,MAAM,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QACvC,CAAC,CAAA;QACD,mBAAmB,EAAE,CAAO,MAAM,EAAE,EAAE;YACpC,MAAM,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC,CAAA;QACD,6CAA6C;QAC7C,WAAW,EAAE,GAAS,EAAE;YACtB,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5B,CAAC,CAAA;QACD,6CAA6C;QAC7C,WAAW,EAAE,GAAS,EAAE;YACtB,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5B,CAAC,CAAA;QACD,6CAA6C;QAC7C,iBAAiB,EAAE,GAAS,EAAE;;YAC5B,CAAA,MAAA,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,0CAAE,SAAS,CAAC,0BAA0B;gBAC3D,CAAC,CAAC,MAAM,OAAO,CAAC,SAAS,EAAE;gBAC3B,CAAC,CAAC,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC;QAChC,CAAC,CAAA;QACD,2CAA2C;QAC3C,iBAAiB,EAAE,CAAO,QAAkB,EAAE,EAAE;YAC9C,MAAM,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC5C,CAAC,CAAA;QACD,cAAc,EAAE,CAAO,UAAU,EAAE,OAAO,EAAE,EAAE;YAC5C,MAAM,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC,CAAA;QACD,kBAAkB,EAAE,CAAO,UAAU,EAAE,EAAE;YACvC,MAAM,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAC1C,CAAC,CAAA;QACD,eAAe,EAAE,CAAO,UAAU,EAAE,EAAE;YACpC,MAAM,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC,CAAA;QACD,WAAW,EAAE,CAAC,YAAY,EAAE,OAAQ,EAAE,EAAE;YACtC,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,6BAA6B,CAAC,WAAW,CAAC,CAAC,CAAC;YAC7F,OAAO,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC5C,CAAC;QACD,kBAAkB,EAAE,GAAS,EAAE;YAC7B,MAAM,OAAO,CAAC,gBAAgB,EAAE,CAAC;QACnC,CAAC,CAAA;QACD,iBAAiB,EAAE,GAAS,EAAE;YAC5B,MAAM,OAAO,CAAC,eAAe,EAAE,CAAC;QAClC,CAAC,CAAA;QACD,cAAc,EAAE,CAAO,OAAO,EAAE,EAAE;YAChC,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACnG,CAAC,CAAA;QACD,kBAAkB,EAAE,GAAS,EAAE;;YAC7B,OAAO,CAAA,MAAA,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,0CAAE,OAAO,EAAC,CAAC,CAAC,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;QAC1F,CAAC,CAAA;QACD,mBAAmB,EAAE,GAAS,EAAE;;YAC9B,OAAO,CAAA,MAAA,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,0CAAE,iBAAiB;gBAC/C,CAAC,CAAC,MAAM,OAAO,CAAC,eAAe,EAAE;gBACjC,CAAC,CAAC,MAAM,OAAO,CAAC,gBAAgB,EAAE,CAAC;QACvC,CAAC,CAAA;QACD,iBAAiB,EAAE,GAAS,EAAE;YAC5B,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;gBAC5B,OAAO,OAAO,CAAC,WAAW,EAAE,CAAC;YAC/B,CAAC;QACH,CAAC,CAAA;QACD,wBAAwB,EAAE,GAAS,EAAE;YACnC,OAAO,OAAO,CAAC,2BAA2B,EAAE,CAAC;QAC/C,CAAC,CAAA;QACD,yBAAyB,EAAE,CAAO,MAAM,EAAE,EAAE;YAC1C,OAAO,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC3C,CAAC,CAAA;QACD,oCAAoC,EAAE,CAAO,MAAM,EAAE,EAAE;YACrD,OAAO,OAAO,CAAC,4BAA4B,CAAC,MAAM,CAAC,CAAC;QACtD,CAAC,CAAA;QACD,8BAA8B,EAAE,CAAO,MAAM,EAAE,EAAE;YAC/C,OAAO,OAAO,CAAC,4BAA4B,CAAC,MAAM,CAAC,CAAC;QACtD,CAAC,CAAA;QACD,iDAAiD;QACjD,mBAAmB,EAAE,CAAO,SAAS,EAAE,EAAE;YACvC,OAAO,OAAO,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;QAChD,CAAC,CAAA;QACD,2DAA2D;QAC3D,8BAA8B,EAAE,GAAS,EAAE;YACzC,OAAO,MAAM,OAAO,CAAC,0BAA0B,EAAE,CAAC;QACpD,CAAC,CAAA;QACD,2DAA2D;QAC3D,qBAAqB,EAAE,CAAO,oBAA2C,EAAE,EAAE;YAC3E,MAAM,UAAU,mBACd,UAAU,EAAE,MAAM,IACf,oBAAoB,CACxB,CAAC;YACF,OAAO,MAAM,OAAO,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAAC;QAC9D,CAAC,CAAA;QACD,2DAA2D;QAC3D,wBAAwB,EAAE,CAAO,2BAAwD,EAAE,EAAE;YAC3F,MAAM,iBAAiB,mBACrB,UAAU,EAAE,aAAa,IACtB,2BAA2B,CAC/B,CAAC;YACF,OAAO,MAAM,OAAO,CAAC,0BAA0B,CAAC,iBAAiB,CAAC,CAAC;QACrE,CAAC,CAAA;QACD,iDAAiD;QACjD,eAAe,EAAE,CAAO,OAAO,EAAE,EAAE;YACjC,MAAM,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC,CAAA;QACD,iDAAiD;QACjD,cAAc,EAAE,GAAS,EAAE;YACzB,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC;QAC/B,CAAC,CAAA;QACD,iDAAiD;QACjD,mBAAmB,EAAE,CAAO,QAAQ,EAAE,EAAE;YACtC,MAAM,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC5C,CAAC,CAAA;QACD,iDAAiD;QACjD,oBAAoB,EAAE,CAAO,QAAQ,EAAE,EAAE;YACvC,MAAM,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAC7C,CAAC,CAAA;QACD,qDAAqD;QACrD,cAAc,EAAE,CAAO,MAAkB,EAA2C,EAAE;YACpF,OAAO,MAAM,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC5C,CAAC,CAAA;QACD,4CAA4C;QAC5C,gBAAgB,EAAE,CAAO,OAAkB,EAAiB,EAAE;YAC5D,MAAM,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC,CAAA;QACD,4CAA4C;QAC5C,eAAe,EAAE,CAAO,OAAkB,EAAiB,EAAE;YAC3D,MAAM,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC,CAAA;QACD,4CAA4C;QAC5C,qBAAqB,EAAE,GAAwB,EAAE;YAC/C,MAAM,OAAO,CAAC,cAAc,EAAE,CAAC;QACjC,CAAC,CAAA;QACD,4CAA4C;QAC5C,oBAAoB,EAAE,GAAwB,EAAE;YAC9C,MAAM,OAAO,CAAC,aAAa,EAAE,CAAC;QAChC,CAAC,CAAA;QACD,4CAA4C;QAC5C,sBAAsB,EAAE,CAAO,OAAkB,EAAiB,EAAE;YAClE,MAAM,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC,CAAA;QACD,4CAA4C;QAC5C,qBAAqB,EAAE,CAAO,OAAkB,EAAiB,EAAE;YACjE,MAAM,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC,CAAA;KACF,CAAC;AACJ,CAAC,CACF,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { CommonCallingHandlers } from '@internal/calling-component-bindings';\n/* @conditional-compile-remove(spotlight) */\nimport { _ComponentCallingHandlers } from '@internal/calling-component-bindings';\nimport { CommonProperties, toFlatCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { ReactElement } from 'react';\nimport memoizeOne from 'memoize-one';\nimport { CommonCallAdapter } from '..';\n/* @conditional-compile-remove(video-background-effects) */\nimport { VideoBackgroundBlurEffect, VideoBackgroundReplacementEffect } from '..';\nimport { useAdapter } from '../adapter/CallAdapterProvider';\nimport { isCameraOn } from '../utils';\n/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(dtmf-dialer) */\nimport { DtmfTone } from '@azure/communication-calling';\n/* @conditional-compile-remove(reaction) */\nimport { Reaction } from '@azure/communication-calling';\n/* @conditional-compile-remove(video-background-effects) */\nimport type { BackgroundReplacementConfig, BackgroundBlurConfig } from '@azure/communication-calling';\n/* @conditional-compile-remove(end-of-call-survey) */\nimport { CallSurvey, CallSurveyResponse } from '@azure/communication-calling';\n\n/**\n * @private\n */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type\nexport const useHandlers = <PropsT>(\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n _component: (props: PropsT) => ReactElement | null\n): Pick<CommonCallingHandlers, CommonProperties<CommonCallingHandlers, PropsT>> &\n /* @conditional-compile-remove(spotlight) */ Partial<_ComponentCallingHandlers> => {\n const adapter = useAdapter();\n const compositeHandlers = createCompositeHandlers(adapter);\n /* @conditional-compile-remove(spotlight) */\n const canSpotlight = adapter.getState().call?.capabilitiesFeature?.capabilities.spotlightParticipant.isPresent;\n /* @conditional-compile-remove(spotlight) */\n return {\n ...compositeHandlers,\n ...(canSpotlight\n ? {}\n : { onStartLocalSpotlight: undefined, onStartRemoteSpotlight: undefined, onStopRemoteSpotlight: undefined })\n };\n return compositeHandlers;\n};\n\nconst createCompositeHandlers = memoizeOne(\n (\n adapter: CommonCallAdapter\n ): CommonCallingHandlers & /* @conditional-compile-remove(spotlight) */ Partial<_ComponentCallingHandlers> => {\n return {\n onCreateLocalStreamView: async (options) => {\n return await adapter.createStreamView(undefined, options);\n },\n onCreateRemoteStreamView: async (userId, options) => {\n return await adapter.createStreamView(userId, options);\n },\n onHangUp: async (forEveryone?: boolean) => {\n await adapter.leaveCall(forEveryone);\n },\n /* @conditional-compile-remove(PSTN-calls) */\n onToggleHold: async () => {\n return adapter.getState().call?.state === 'LocalHold' ? await adapter.resumeCall() : await adapter.holdCall();\n },\n /* @conditional-compile-remove(PSTN-calls) */\n onAddParticipant: async (participant, options?) => {\n return await adapter.addParticipant(participant, options);\n },\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(dtmf-dialer) */\n onSendDtmfTone: async (dtmfTone: DtmfTone) => {\n await adapter.sendDtmfTone(dtmfTone);\n },\n onRemoveParticipant: async (userId) => {\n await adapter.removeParticipant(userId);\n },\n /* @conditional-compile-remove(raise-hand) */\n onRaiseHand: async () => {\n await adapter.raiseHand();\n },\n /* @conditional-compile-remove(raise-hand) */\n onLowerHand: async () => {\n await adapter.lowerHand();\n },\n /* @conditional-compile-remove(raise-hand) */\n onToggleRaiseHand: async () => {\n adapter.getState().call?.raiseHand.localParticipantRaisedHand\n ? await adapter.lowerHand()\n : await adapter.raiseHand();\n },\n /* @conditional-compile-remove(reaction) */\n onReactionClicked: async (reaction: Reaction) => {\n await adapter.onReactionClicked(reaction);\n },\n onSelectCamera: async (deviceInfo, options) => {\n await adapter.setCamera(deviceInfo, options);\n },\n onSelectMicrophone: async (deviceInfo) => {\n await adapter.setMicrophone(deviceInfo);\n },\n onSelectSpeaker: async (deviceInfo) => {\n await adapter.setSpeaker(deviceInfo);\n },\n onStartCall: (participants, options?) => {\n const rawIds = participants.map((participant) => toFlatCommunicationIdentifier(participant));\n return adapter.startCall(rawIds, options);\n },\n onStartScreenShare: async () => {\n await adapter.startScreenShare();\n },\n onStopScreenShare: async () => {\n await adapter.stopScreenShare();\n },\n onToggleCamera: async (options) => {\n isCameraOn(adapter.getState()) ? await adapter.stopCamera() : await adapter.startCamera(options);\n },\n onToggleMicrophone: async () => {\n return adapter.getState().call?.isMuted ? await adapter.unmute() : await adapter.mute();\n },\n onToggleScreenShare: async () => {\n return adapter.getState().call?.isScreenSharingOn\n ? await adapter.stopScreenShare()\n : await adapter.startScreenShare();\n },\n onStartLocalVideo: async () => {\n if (adapter.getState().call) {\n return adapter.startCamera();\n }\n },\n onDisposeLocalStreamView: async () => {\n return adapter.disposeLocalVideoStreamView();\n },\n onDisposeRemoteStreamView: async (userId) => {\n return adapter.disposeStreamView(userId);\n },\n onDisposeRemoteScreenShareStreamView: async (userId) => {\n return adapter.disposeScreenShareStreamView(userId);\n },\n onDisposeRemoteVideoStreamView: async (userId) => {\n return adapter.disposeRemoteVideoStreamView(userId);\n },\n /* @conditional-compile-remove(call-readiness) */\n askDevicePermission: async (constrain) => {\n return adapter.askDevicePermission(constrain);\n },\n /* @conditional-compile-remove(video-background-effects) */\n onRemoveVideoBackgroundEffects: async () => {\n return await adapter.stopVideoBackgroundEffects();\n },\n /* @conditional-compile-remove(video-background-effects) */\n onBlurVideoBackground: async (backgroundBlurConfig?: BackgroundBlurConfig) => {\n const blurConfig: VideoBackgroundBlurEffect = {\n effectName: 'blur',\n ...backgroundBlurConfig\n };\n return await adapter.startVideoBackgroundEffect(blurConfig);\n },\n /* @conditional-compile-remove(video-background-effects) */\n onReplaceVideoBackground: async (backgroundReplacementConfig: BackgroundReplacementConfig) => {\n const replacementConfig: VideoBackgroundReplacementEffect = {\n effectName: 'replacement',\n ...backgroundReplacementConfig\n };\n return await adapter.startVideoBackgroundEffect(replacementConfig);\n },\n /* @conditional-compile-remove(close-captions) */\n onStartCaptions: async (options) => {\n await adapter.startCaptions(options);\n },\n /* @conditional-compile-remove(close-captions) */\n onStopCaptions: async () => {\n await adapter.stopCaptions();\n },\n /* @conditional-compile-remove(close-captions) */\n onSetSpokenLanguage: async (language) => {\n await adapter.setSpokenLanguage(language);\n },\n /* @conditional-compile-remove(close-captions) */\n onSetCaptionLanguage: async (language) => {\n await adapter.setCaptionLanguage(language);\n },\n /* @conditional-compile-remove(end-of-call-survey) */\n onSubmitSurvey: async (survey: CallSurvey): Promise<CallSurveyResponse | undefined> => {\n return await adapter.submitSurvey(survey);\n },\n /* @conditional-compile-remove(spotlight) */\n onStartSpotlight: async (userIds?: string[]): Promise<void> => {\n await adapter.startSpotlight(userIds);\n },\n /* @conditional-compile-remove(spotlight) */\n onStopSpotlight: async (userIds?: string[]): Promise<void> => {\n await adapter.stopSpotlight(userIds);\n },\n /* @conditional-compile-remove(spotlight) */\n onStartLocalSpotlight: async (): Promise<void> => {\n await adapter.startSpotlight();\n },\n /* @conditional-compile-remove(spotlight) */\n onStopLocalSpotlight: async (): Promise<void> => {\n await adapter.stopSpotlight();\n },\n /* @conditional-compile-remove(spotlight) */\n onStartRemoteSpotlight: async (userIds?: string[]): Promise<void> => {\n await adapter.startSpotlight(userIds);\n },\n /* @conditional-compile-remove(spotlight) */\n onStopRemoteSpotlight: async (userIds?: string[]): Promise<void> => {\n await adapter.stopSpotlight(userIds);\n }\n };\n }\n);\n"]}
@@ -1,10 +1,11 @@
1
1
  /// <reference types="react" />
2
2
  import { Common } from "../../../../../acs-ui-common/src";
3
3
  import { CallingHandlers, GetCallingSelector } from "../../../../../calling-component-bindings/src";
4
+ import { _ComponentCallingHandlers } from "../../../../../calling-component-bindings/src";
4
5
  type Selector = (state: any, props: any) => any;
5
6
  /**
6
7
  * @private
7
8
  */
8
- export declare const usePropsFor: <Component extends (props: any) => JSX.Element>(component: Component) => GetCallingSelector<Component> extends Selector ? ReturnType<GetCallingSelector<Component>> & Common<CallingHandlers, Parameters<Component>[0]> : Record<string, never>;
9
+ export declare const usePropsFor: <Component extends (props: any) => JSX.Element>(component: Component) => GetCallingSelector<Component> extends Selector ? ReturnType<GetCallingSelector<Component>> & Common<CallingHandlers & _ComponentCallingHandlers, Parameters<Component>[0]> : Record<string, never>;
9
10
  export {};
10
11
  //# sourceMappingURL=usePropsFor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"usePropsFor.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/CallComposite/hooks/usePropsFor.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAKlC,OAAO,EAAmB,kBAAkB,EAAsB,sDAA6C;AAC/G,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C;;GAEG;AACH,+HAA+H;AAC/H,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,SAAoB,EAGI,EAAE;IAC1B,MAAM,QAAQ,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;IAClG,CAAC;IACD,uCAAY,kBAAkB,CAAC,QAAoB,CAAC,GAAK,WAAW,CAAC,SAAS,CAAC,EAAG;AACpF,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\nimport { Common } from '@internal/acs-ui-common';\nimport { CallingHandlers, getCallingSelector, GetCallingSelector } from '@internal/calling-component-bindings';\nimport { useAdaptedSelector } from './useAdaptedSelector';\nimport { useHandlers } from './useHandlers';\n\ntype Selector = (state: any, props: any) => any;\n\n/**\n * @private\n */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type\nexport const usePropsFor = <Component extends (props: any) => JSX.Element>(\n component: Component\n): GetCallingSelector<Component> extends Selector\n ? ReturnType<GetCallingSelector<Component>> & Common<CallingHandlers, Parameters<Component>[0]>\n : Record<string, never> => {\n const selector = getCallingSelector(component);\n if (!selector) {\n throw new Error(\"Can't find the selector for component, please check supported component list\");\n }\n return { ...useAdaptedSelector(selector as Selector), ...useHandlers(component) };\n};\n"]}
1
+ {"version":3,"file":"usePropsFor.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/CallComposite/hooks/usePropsFor.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAKlC,OAAO,EAAmB,kBAAkB,EAAsB,sDAA6C;AAG/G,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C;;GAEG;AACH,+HAA+H;AAC/H,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,SAAoB,EAOI,EAAE;IAC1B,MAAM,QAAQ,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;IAClG,CAAC;IACD,uCAAY,kBAAkB,CAAC,QAAoB,CAAC,GAAK,WAAW,CAAC,SAAS,CAAC,EAAG;AACpF,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\nimport { Common } from '@internal/acs-ui-common';\nimport { CallingHandlers, getCallingSelector, GetCallingSelector } from '@internal/calling-component-bindings';\n/* @conditional-compile-remove(spotlight) */\nimport { _ComponentCallingHandlers } from '@internal/calling-component-bindings';\nimport { useAdaptedSelector } from './useAdaptedSelector';\nimport { useHandlers } from './useHandlers';\n\ntype Selector = (state: any, props: any) => any;\n\n/**\n * @private\n */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type\nexport const usePropsFor = <Component extends (props: any) => JSX.Element>(\n component: Component\n): GetCallingSelector<Component> extends Selector\n ? ReturnType<GetCallingSelector<Component>> &\n Common<\n CallingHandlers & /* @conditional-compile-remove(spotlight) */ _ComponentCallingHandlers,\n Parameters<Component>[0]\n >\n : Record<string, never> => {\n const selector = getCallingSelector(component);\n if (!selector) {\n throw new Error(\"Can't find the selector for component, please check supported component list\");\n }\n return { ...useAdaptedSelector(selector as Selector), ...useHandlers(component) };\n};\n"]}
@@ -2,8 +2,15 @@ import { PromptProps } from '../components/Prompt';
2
2
  /**
3
3
  * @internal
4
4
  */
5
- export declare const useSpotlightCallbacksWithPrompt: (onStartSpotlight: (userIds?: string[]) => Promise<void>, onStopSpotlight: (userIds?: string[]) => Promise<void>, setIsPromptOpen?: ((isOpen: boolean) => void) | undefined, setPromptProps?: ((promptProps: PromptProps) => void) | undefined) => {
6
- onStartSpotlightWithPrompt: (userIds?: string[]) => Promise<void>;
7
- onStopSpotlightWithPrompt: (userIds?: string[]) => Promise<void>;
5
+ export declare const useLocalSpotlightCallbacksWithPrompt: (onStartLocalSpotlight?: () => Promise<void>, onStopLocalSpotlight?: () => Promise<void>, setIsPromptOpen?: ((isOpen: boolean) => void) | undefined, setPromptProps?: ((promptProps: PromptProps) => void) | undefined) => {
6
+ onStartLocalSpotlightWithPrompt?: () => Promise<void>;
7
+ onStopLocalSpotlightWithPrompt?: () => Promise<void>;
8
+ };
9
+ /**
10
+ * @internal
11
+ */
12
+ export declare const useRemoteSpotlightCallbacksWithPrompt: (onStartRemoteSpotlight?: ((userIds?: string[]) => Promise<void>) | undefined, onStopRemoteSpotlight?: ((userIds?: string[]) => Promise<void>) | undefined, setIsPromptOpen?: ((isOpen: boolean) => void) | undefined, setPromptProps?: ((promptProps: PromptProps) => void) | undefined) => {
13
+ onStartRemoteSpotlightWithPrompt?: ((userIds?: string[]) => Promise<void>) | undefined;
14
+ onStopRemoteSpotlightWithPrompt?: ((userIds?: string[]) => Promise<void>) | undefined;
8
15
  };
9
16
  //# sourceMappingURL=spotlightUtils.d.ts.map
@@ -12,40 +12,99 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
12
12
  /* @conditional-compile-remove(spotlight) */
13
13
  import { useMemo } from 'react';
14
14
  /* @conditional-compile-remove(spotlight) */
15
- import { toFlatCommunicationIdentifier } from "../../../../../acs-ui-common/src";
16
- /* @conditional-compile-remove(spotlight) */
17
15
  import { useLocale } from '../../localization';
18
16
  /* @conditional-compile-remove(spotlight) */
19
- import { useAdapter } from '../adapter/CallAdapterProvider';
17
+ /**
18
+ * @internal
19
+ */
20
+ export const useLocalSpotlightCallbacksWithPrompt = (onStartLocalSpotlight, onStopLocalSpotlight, setIsPromptOpen, setPromptProps) => {
21
+ const strings = useLocale().strings.call;
22
+ return useMemo(() => {
23
+ if (!setIsPromptOpen || !setPromptProps) {
24
+ return {
25
+ onStartLocalSpotlightWithPrompt: onStartLocalSpotlight,
26
+ onStopLocalSpotlightWithPrompt: onStopLocalSpotlight
27
+ };
28
+ }
29
+ return {
30
+ onStartLocalSpotlightWithPrompt: onStartLocalSpotlight
31
+ ? getStartLocalSpotlightWithPromptCallback(onStartLocalSpotlight, setIsPromptOpen, setPromptProps, strings)
32
+ : undefined,
33
+ onStopLocalSpotlightWithPrompt: onStopLocalSpotlight
34
+ ? getStopLocalSpotlightWithPromptCallback(onStopLocalSpotlight, setIsPromptOpen, setPromptProps, strings)
35
+ : undefined
36
+ };
37
+ }, [onStartLocalSpotlight, onStopLocalSpotlight, setIsPromptOpen, setPromptProps, strings]);
38
+ };
39
+ /* @conditional-compile-remove(spotlight) */
40
+ const getStartLocalSpotlightWithPromptCallback = (onStartSpotlight, setIsPromptOpen, setPromptProps, strings) => {
41
+ return () => __awaiter(void 0, void 0, void 0, function* () {
42
+ setPromptProps({
43
+ heading: strings.spotlightPrompt.startSpotlightHeading,
44
+ text: strings.spotlightPrompt.startSpotlightOnSelfText,
45
+ confirmButtonLabel: strings.spotlightPrompt.startSpotlightConfirmButtonLabel,
46
+ cancelButtonLabel: strings.spotlightPrompt.startSpotlightCancelButtonLabel,
47
+ onConfirm: () => {
48
+ onStartSpotlight();
49
+ setIsPromptOpen(false);
50
+ },
51
+ onCancel: () => setIsPromptOpen(false)
52
+ });
53
+ setIsPromptOpen(true);
54
+ });
55
+ };
56
+ /* @conditional-compile-remove(spotlight) */
57
+ const getStopLocalSpotlightWithPromptCallback = (onStopSpotlight, setIsPromptOpen, setPromptProps, strings) => {
58
+ return (userIds) => __awaiter(void 0, void 0, void 0, function* () {
59
+ if (userIds && userIds.length > 1) {
60
+ onStopSpotlight(userIds);
61
+ }
62
+ setPromptProps({
63
+ heading: strings.spotlightPrompt.stopSpotlightOnSelfHeading,
64
+ text: strings.spotlightPrompt.stopSpotlightOnSelfText,
65
+ confirmButtonLabel: strings.spotlightPrompt.stopSpotlightOnSelfConfirmButtonLabel,
66
+ cancelButtonLabel: strings.spotlightPrompt.stopSpotlightCancelButtonLabel,
67
+ onConfirm: () => {
68
+ onStopSpotlight(userIds);
69
+ setIsPromptOpen(false);
70
+ },
71
+ onCancel: () => setIsPromptOpen(false)
72
+ });
73
+ setIsPromptOpen(true);
74
+ });
75
+ };
20
76
  /* @conditional-compile-remove(spotlight) */
21
77
  /**
22
78
  * @internal
23
79
  */
24
- export const useSpotlightCallbacksWithPrompt = (onStartSpotlight, onStopSpotlight, setIsPromptOpen, setPromptProps) => {
25
- const myUserId = toFlatCommunicationIdentifier(useAdapter().getState().userId);
80
+ export const useRemoteSpotlightCallbacksWithPrompt = (onStartRemoteSpotlight, onStopRemoteSpotlight, setIsPromptOpen, setPromptProps) => {
26
81
  const strings = useLocale().strings.call;
27
82
  return useMemo(() => {
28
83
  if (!setIsPromptOpen || !setPromptProps) {
29
- return { onStartSpotlightWithPrompt: onStartSpotlight, onStopSpotlightWithPrompt: onStopSpotlight };
84
+ return {
85
+ onStartRemoteSpotlightWithPrompt: onStartRemoteSpotlight,
86
+ onStopRemoteSpotlightWithPrompt: onStopRemoteSpotlight
87
+ };
30
88
  }
31
89
  return {
32
- onStartSpotlightWithPrompt: getStartSpotlightWithPromptCallback(myUserId, onStartSpotlight, setIsPromptOpen, setPromptProps, strings),
33
- onStopSpotlightWithPrompt: getStopSpotlightWithPromptCallback(myUserId, onStopSpotlight, setIsPromptOpen, setPromptProps, strings)
90
+ onStartRemoteSpotlightWithPrompt: onStartRemoteSpotlight
91
+ ? getStartRemoteSpotlightWithPromptCallback(onStartRemoteSpotlight, setIsPromptOpen, setPromptProps, strings)
92
+ : undefined,
93
+ onStopRemoteSpotlightWithPrompt: onStopRemoteSpotlight
94
+ ? getStopRemoteSpotlightWithPromptCallback(onStopRemoteSpotlight, setIsPromptOpen, setPromptProps, strings)
95
+ : undefined
34
96
  };
35
- }, [myUserId, onStartSpotlight, onStopSpotlight, setIsPromptOpen, setPromptProps, strings]);
97
+ }, [onStartRemoteSpotlight, onStopRemoteSpotlight, setIsPromptOpen, setPromptProps, strings]);
36
98
  };
37
99
  /* @conditional-compile-remove(spotlight) */
38
- const getStartSpotlightWithPromptCallback = (myUserId, onStartSpotlight, setIsPromptOpen, setPromptProps, strings) => {
100
+ const getStartRemoteSpotlightWithPromptCallback = (onStartSpotlight, setIsPromptOpen, setPromptProps, strings) => {
39
101
  return (userIds) => __awaiter(void 0, void 0, void 0, function* () {
40
102
  if (userIds && userIds.length > 1) {
41
103
  onStartSpotlight(userIds);
42
104
  }
43
- const startSpotlightPromptText = userIds === undefined || userIds[0] === myUserId
44
- ? strings.spotlightPrompt.startSpotlightOnSelfText
45
- : strings.spotlightPrompt.startSpotlightText;
46
105
  setPromptProps({
47
106
  heading: strings.spotlightPrompt.startSpotlightHeading,
48
- text: startSpotlightPromptText,
107
+ text: strings.spotlightPrompt.startSpotlightText,
49
108
  confirmButtonLabel: strings.spotlightPrompt.startSpotlightConfirmButtonLabel,
50
109
  cancelButtonLabel: strings.spotlightPrompt.startSpotlightCancelButtonLabel,
51
110
  onConfirm: () => {
@@ -58,24 +117,15 @@ const getStartSpotlightWithPromptCallback = (myUserId, onStartSpotlight, setIsPr
58
117
  });
59
118
  };
60
119
  /* @conditional-compile-remove(spotlight) */
61
- const getStopSpotlightWithPromptCallback = (myUserId, onStopSpotlight, setIsPromptOpen, setPromptProps, strings) => {
120
+ const getStopRemoteSpotlightWithPromptCallback = (onStopSpotlight, setIsPromptOpen, setPromptProps, strings) => {
62
121
  return (userIds) => __awaiter(void 0, void 0, void 0, function* () {
63
122
  if (userIds && userIds.length > 1) {
64
123
  onStopSpotlight(userIds);
65
124
  }
66
- const stopSpotlightPromptHeading = userIds === undefined || userIds[0] === myUserId
67
- ? strings.spotlightPrompt.stopSpotlightOnSelfHeading
68
- : strings.spotlightPrompt.stopSpotlightHeading;
69
- const stopSpotlightPromptText = userIds === undefined || userIds[0] === myUserId
70
- ? strings.spotlightPrompt.stopSpotlightOnSelfText
71
- : strings.spotlightPrompt.stopSpotlightText;
72
- const stopSpotlightPromptConfirmButtonLabel = userIds === undefined || userIds[0] === myUserId
73
- ? strings.spotlightPrompt.stopSpotlightOnSelfConfirmButtonLabel
74
- : strings.spotlightPrompt.stopSpotlightConfirmButtonLabel;
75
125
  setPromptProps({
76
- heading: stopSpotlightPromptHeading,
77
- text: stopSpotlightPromptText,
78
- confirmButtonLabel: stopSpotlightPromptConfirmButtonLabel,
126
+ heading: strings.spotlightPrompt.stopSpotlightHeading,
127
+ text: strings.spotlightPrompt.stopSpotlightText,
128
+ confirmButtonLabel: strings.spotlightPrompt.stopSpotlightConfirmButtonLabel,
79
129
  cancelButtonLabel: strings.spotlightPrompt.stopSpotlightCancelButtonLabel,
80
130
  onConfirm: () => {
81
131
  onStopSpotlight(userIds);
@@ -1 +1 @@
1
- {"version":3,"file":"spotlightUtils.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/CallComposite/utils/spotlightUtils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/* @conditional-compile-remove(spotlight) */\nimport { useMemo } from 'react';\n/* @conditional-compile-remove(spotlight) */\nimport { CallCompositeStrings } from '../Strings';\n/* @conditional-compile-remove(spotlight) */\nimport { PromptProps } from '../components/Prompt';\n/* @conditional-compile-remove(spotlight) */\nimport { toFlatCommunicationIdentifier } from '@internal/acs-ui-common';\n/* @conditional-compile-remove(spotlight) */\nimport { useLocale } from '../../localization';\n/* @conditional-compile-remove(spotlight) */\nimport { useAdapter } from '../adapter/CallAdapterProvider';\n\n/* @conditional-compile-remove(spotlight) */\n/**\n * @internal\n */\nexport const useSpotlightCallbacksWithPrompt = (\n onStartSpotlight: (userIds?: string[]) => Promise<void>,\n onStopSpotlight: (userIds?: string[]) => Promise<void>,\n setIsPromptOpen?: (isOpen: boolean) => void,\n setPromptProps?: (promptProps: PromptProps) => void\n): {\n onStartSpotlightWithPrompt: (userIds?: string[]) => Promise<void>;\n onStopSpotlightWithPrompt: (userIds?: string[]) => Promise<void>;\n} => {\n const myUserId = toFlatCommunicationIdentifier(useAdapter().getState().userId);\n\n const strings = useLocale().strings.call;\n\n return useMemo(() => {\n if (!setIsPromptOpen || !setPromptProps) {\n return { onStartSpotlightWithPrompt: onStartSpotlight, onStopSpotlightWithPrompt: onStopSpotlight };\n }\n return {\n onStartSpotlightWithPrompt: getStartSpotlightWithPromptCallback(\n myUserId,\n onStartSpotlight,\n setIsPromptOpen,\n setPromptProps,\n strings\n ),\n onStopSpotlightWithPrompt: getStopSpotlightWithPromptCallback(\n myUserId,\n onStopSpotlight,\n setIsPromptOpen,\n setPromptProps,\n strings\n )\n };\n }, [myUserId, onStartSpotlight, onStopSpotlight, setIsPromptOpen, setPromptProps, strings]);\n};\n\n/* @conditional-compile-remove(spotlight) */\nconst getStartSpotlightWithPromptCallback = (\n myUserId: string,\n onStartSpotlight: (userIds?: string[]) => void,\n setIsPromptOpen: (isOpen: boolean) => void,\n setPromptProps: (promptProps: PromptProps) => void,\n strings: CallCompositeStrings\n): ((userIds?: string[]) => Promise<void>) => {\n return async (userIds?: string[]): Promise<void> => {\n if (userIds && userIds.length > 1) {\n onStartSpotlight(userIds);\n }\n const startSpotlightPromptText =\n userIds === undefined || userIds[0] === myUserId\n ? strings.spotlightPrompt.startSpotlightOnSelfText\n : strings.spotlightPrompt.startSpotlightText;\n setPromptProps({\n heading: strings.spotlightPrompt.startSpotlightHeading,\n text: startSpotlightPromptText,\n confirmButtonLabel: strings.spotlightPrompt.startSpotlightConfirmButtonLabel,\n cancelButtonLabel: strings.spotlightPrompt.startSpotlightCancelButtonLabel,\n onConfirm: () => {\n onStartSpotlight(userIds);\n setIsPromptOpen(false);\n },\n onCancel: () => setIsPromptOpen(false)\n });\n setIsPromptOpen(true);\n };\n};\n\n/* @conditional-compile-remove(spotlight) */\nconst getStopSpotlightWithPromptCallback = (\n myUserId: string,\n onStopSpotlight: (userIds?: string[]) => void,\n setIsPromptOpen: (isOpen: boolean) => void,\n setPromptProps: (promptProps: PromptProps) => void,\n strings: CallCompositeStrings\n): ((userIds?: string[]) => Promise<void>) => {\n return async (userIds?: string[]): Promise<void> => {\n if (userIds && userIds.length > 1) {\n onStopSpotlight(userIds);\n }\n const stopSpotlightPromptHeading =\n userIds === undefined || userIds[0] === myUserId\n ? strings.spotlightPrompt.stopSpotlightOnSelfHeading\n : strings.spotlightPrompt.stopSpotlightHeading;\n const stopSpotlightPromptText =\n userIds === undefined || userIds[0] === myUserId\n ? strings.spotlightPrompt.stopSpotlightOnSelfText\n : strings.spotlightPrompt.stopSpotlightText;\n const stopSpotlightPromptConfirmButtonLabel =\n userIds === undefined || userIds[0] === myUserId\n ? strings.spotlightPrompt.stopSpotlightOnSelfConfirmButtonLabel\n : strings.spotlightPrompt.stopSpotlightConfirmButtonLabel;\n\n setPromptProps({\n heading: stopSpotlightPromptHeading,\n text: stopSpotlightPromptText,\n confirmButtonLabel: stopSpotlightPromptConfirmButtonLabel,\n cancelButtonLabel: strings.spotlightPrompt.stopSpotlightCancelButtonLabel,\n onConfirm: () => {\n onStopSpotlight(userIds);\n setIsPromptOpen(false);\n },\n onCancel: () => setIsPromptOpen(false)\n });\n setIsPromptOpen(true);\n };\n};\n"]}
1
+ {"version":3,"file":"spotlightUtils.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/CallComposite/utils/spotlightUtils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/* @conditional-compile-remove(spotlight) */\nimport { useMemo } from 'react';\n/* @conditional-compile-remove(spotlight) */\nimport { CallCompositeStrings } from '../Strings';\n/* @conditional-compile-remove(spotlight) */\nimport { PromptProps } from '../components/Prompt';\n/* @conditional-compile-remove(spotlight) */\nimport { useLocale } from '../../localization';\n\n/* @conditional-compile-remove(spotlight) */\n/**\n * @internal\n */\nexport const useLocalSpotlightCallbacksWithPrompt = (\n onStartLocalSpotlight?: () => Promise<void>,\n onStopLocalSpotlight?: () => Promise<void>,\n setIsPromptOpen?: (isOpen: boolean) => void,\n setPromptProps?: (promptProps: PromptProps) => void\n): {\n onStartLocalSpotlightWithPrompt?: () => Promise<void>;\n onStopLocalSpotlightWithPrompt?: () => Promise<void>;\n} => {\n const strings = useLocale().strings.call;\n\n return useMemo(() => {\n if (!setIsPromptOpen || !setPromptProps) {\n return {\n onStartLocalSpotlightWithPrompt: onStartLocalSpotlight,\n onStopLocalSpotlightWithPrompt: onStopLocalSpotlight\n };\n }\n return {\n onStartLocalSpotlightWithPrompt: onStartLocalSpotlight\n ? getStartLocalSpotlightWithPromptCallback(onStartLocalSpotlight, setIsPromptOpen, setPromptProps, strings)\n : undefined,\n onStopLocalSpotlightWithPrompt: onStopLocalSpotlight\n ? getStopLocalSpotlightWithPromptCallback(onStopLocalSpotlight, setIsPromptOpen, setPromptProps, strings)\n : undefined\n };\n }, [onStartLocalSpotlight, onStopLocalSpotlight, setIsPromptOpen, setPromptProps, strings]);\n};\n\n/* @conditional-compile-remove(spotlight) */\nconst getStartLocalSpotlightWithPromptCallback = (\n onStartSpotlight: (userIds?: string[]) => void,\n setIsPromptOpen: (isOpen: boolean) => void,\n setPromptProps: (promptProps: PromptProps) => void,\n strings: CallCompositeStrings\n): ((userIds?: string[]) => Promise<void>) => {\n return async (): Promise<void> => {\n setPromptProps({\n heading: strings.spotlightPrompt.startSpotlightHeading,\n text: strings.spotlightPrompt.startSpotlightOnSelfText,\n confirmButtonLabel: strings.spotlightPrompt.startSpotlightConfirmButtonLabel,\n cancelButtonLabel: strings.spotlightPrompt.startSpotlightCancelButtonLabel,\n onConfirm: () => {\n onStartSpotlight();\n setIsPromptOpen(false);\n },\n onCancel: () => setIsPromptOpen(false)\n });\n setIsPromptOpen(true);\n };\n};\n\n/* @conditional-compile-remove(spotlight) */\nconst getStopLocalSpotlightWithPromptCallback = (\n onStopSpotlight: (userIds?: string[]) => void,\n setIsPromptOpen: (isOpen: boolean) => void,\n setPromptProps: (promptProps: PromptProps) => void,\n strings: CallCompositeStrings\n): (() => Promise<void>) => {\n return async (userIds?: string[]): Promise<void> => {\n if (userIds && userIds.length > 1) {\n onStopSpotlight(userIds);\n }\n\n setPromptProps({\n heading: strings.spotlightPrompt.stopSpotlightOnSelfHeading,\n text: strings.spotlightPrompt.stopSpotlightOnSelfText,\n confirmButtonLabel: strings.spotlightPrompt.stopSpotlightOnSelfConfirmButtonLabel,\n cancelButtonLabel: strings.spotlightPrompt.stopSpotlightCancelButtonLabel,\n onConfirm: () => {\n onStopSpotlight(userIds);\n setIsPromptOpen(false);\n },\n onCancel: () => setIsPromptOpen(false)\n });\n setIsPromptOpen(true);\n };\n};\n\n/* @conditional-compile-remove(spotlight) */\n/**\n * @internal\n */\nexport const useRemoteSpotlightCallbacksWithPrompt = (\n onStartRemoteSpotlight?: (userIds?: string[]) => Promise<void>,\n onStopRemoteSpotlight?: (userIds?: string[]) => Promise<void>,\n setIsPromptOpen?: (isOpen: boolean) => void,\n setPromptProps?: (promptProps: PromptProps) => void\n): {\n onStartRemoteSpotlightWithPrompt?: (userIds?: string[]) => Promise<void>;\n onStopRemoteSpotlightWithPrompt?: (userIds?: string[]) => Promise<void>;\n} => {\n const strings = useLocale().strings.call;\n\n return useMemo(() => {\n if (!setIsPromptOpen || !setPromptProps) {\n return {\n onStartRemoteSpotlightWithPrompt: onStartRemoteSpotlight,\n onStopRemoteSpotlightWithPrompt: onStopRemoteSpotlight\n };\n }\n return {\n onStartRemoteSpotlightWithPrompt: onStartRemoteSpotlight\n ? getStartRemoteSpotlightWithPromptCallback(onStartRemoteSpotlight, setIsPromptOpen, setPromptProps, strings)\n : undefined,\n onStopRemoteSpotlightWithPrompt: onStopRemoteSpotlight\n ? getStopRemoteSpotlightWithPromptCallback(onStopRemoteSpotlight, setIsPromptOpen, setPromptProps, strings)\n : undefined\n };\n }, [onStartRemoteSpotlight, onStopRemoteSpotlight, setIsPromptOpen, setPromptProps, strings]);\n};\n\n/* @conditional-compile-remove(spotlight) */\nconst getStartRemoteSpotlightWithPromptCallback = (\n onStartSpotlight: (userIds?: string[]) => void,\n setIsPromptOpen: (isOpen: boolean) => void,\n setPromptProps: (promptProps: PromptProps) => void,\n strings: CallCompositeStrings\n): ((userIds?: string[]) => Promise<void>) => {\n return async (userIds?: string[]): Promise<void> => {\n if (userIds && userIds.length > 1) {\n onStartSpotlight(userIds);\n }\n setPromptProps({\n heading: strings.spotlightPrompt.startSpotlightHeading,\n text: strings.spotlightPrompt.startSpotlightText,\n confirmButtonLabel: strings.spotlightPrompt.startSpotlightConfirmButtonLabel,\n cancelButtonLabel: strings.spotlightPrompt.startSpotlightCancelButtonLabel,\n onConfirm: () => {\n onStartSpotlight(userIds);\n setIsPromptOpen(false);\n },\n onCancel: () => setIsPromptOpen(false)\n });\n setIsPromptOpen(true);\n };\n};\n\n/* @conditional-compile-remove(spotlight) */\nconst getStopRemoteSpotlightWithPromptCallback = (\n onStopSpotlight: (userIds?: string[]) => void,\n setIsPromptOpen: (isOpen: boolean) => void,\n setPromptProps: (promptProps: PromptProps) => void,\n strings: CallCompositeStrings\n): ((userIds?: string[]) => Promise<void>) => {\n return async (userIds?: string[]): Promise<void> => {\n if (userIds && userIds.length > 1) {\n onStopSpotlight(userIds);\n }\n\n setPromptProps({\n heading: strings.spotlightPrompt.stopSpotlightHeading,\n text: strings.spotlightPrompt.stopSpotlightText,\n confirmButtonLabel: strings.spotlightPrompt.stopSpotlightConfirmButtonLabel,\n cancelButtonLabel: strings.spotlightPrompt.stopSpotlightCancelButtonLabel,\n onConfirm: () => {\n onStopSpotlight(userIds);\n setIsPromptOpen(false);\n },\n onCancel: () => setIsPromptOpen(false)\n });\n setIsPromptOpen(true);\n };\n};\n"]}