@sendbird/uikit-react 3.4.2 → 3.4.3-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.size-snapshot.json +8841 -0
- package/App.js +40 -40
- package/CHANGELOG.md +27 -1
- package/Channel/components/ChannelHeader.js +19 -19
- package/Channel/components/ChannelUI.js +33 -34
- package/Channel/components/ChannelUI.js.map +1 -1
- package/Channel/components/FileViewer.js +15 -15
- package/Channel/components/FrozenNotification.js +4 -4
- package/Channel/components/Message.js +28 -29
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +26 -26
- package/Channel/components/MessageInput.js.map +1 -1
- package/Channel/components/MessageList.js +29 -30
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +17 -17
- package/Channel/components/SuggestedMentionList.js +17 -17
- package/Channel/components/TypingIndicator.js +15 -15
- package/Channel/components/UnreadCount.js +4 -4
- package/Channel/context.js +14 -14
- package/Channel.js +33 -34
- package/Channel.js.map +1 -1
- package/ChannelList/components/AddChannel.js +15 -15
- package/ChannelList/components/ChannelListHeader.js +7 -7
- package/ChannelList/components/ChannelListUI.js +30 -29
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +26 -25
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/ChannelList/context.js +8 -8
- package/ChannelList.js +30 -29
- package/ChannelList.js.map +1 -1
- package/{ChannelListProvider-e6254f07.js → ChannelListProvider-b9b9b8b8.js} +8 -8
- package/{ChannelListProvider-e6254f07.js.map → ChannelListProvider-b9b9b8b8.js.map} +1 -1
- package/{ChannelProvider-c1c00018.js → ChannelProvider-e8beff2d.js} +10 -10
- package/{ChannelProvider-c1c00018.js.map → ChannelProvider-e8beff2d.js.map} +1 -1
- package/ChannelSettings/components/ChannelProfile.js +12 -12
- package/ChannelSettings/components/ChannelSettingsUI.js +18 -18
- package/ChannelSettings/components/EditDetailsModal.js +12 -12
- package/ChannelSettings/components/LeaveChannel.js +12 -12
- package/ChannelSettings/components/ModerationPanel.js +15 -15
- package/ChannelSettings/components/UserListItem.js +11 -11
- package/ChannelSettings/components/UserPanel.js +14 -14
- package/ChannelSettings/context.js +3 -3
- package/ChannelSettings.js +18 -18
- package/CreateChannel/components/CreateChannelUI.js +14 -14
- package/CreateChannel/components/InviteUsers.js +14 -14
- package/CreateChannel/components/SelectChannelType.js +11 -11
- package/CreateChannel/context.js +4 -4
- package/CreateChannel.js +14 -14
- package/{CreateChannelProvider-9f4f5302.js → CreateChannelProvider-b5261b6f.js} +1 -1
- package/{CreateChannelProvider-9f4f5302.js.map → CreateChannelProvider-b5261b6f.js.map} +1 -1
- package/CreateOpenChannel/components/CreateOpenChannelUI.js +10 -10
- package/CreateOpenChannel/context.js +1 -1
- package/CreateOpenChannel.js +10 -10
- package/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/EditUserProfile.js +13 -13
- package/{LocalizationContext-8725e9b2.js → LocalizationContext-faa869e6.js} +3 -3
- package/{LocalizationContext-8725e9b2.js.map → LocalizationContext-faa869e6.js.map} +1 -1
- package/{MediaQueryContext-ceb727c7.js → MediaQueryContext-f1d24f7b.js} +1 -1
- package/{MediaQueryContext-ceb727c7.js.map → MediaQueryContext-f1d24f7b.js.map} +1 -1
- package/{MemberList-7676a6a8.js → MemberList-a13a5723.js} +5 -5
- package/{MemberList-7676a6a8.js.map → MemberList-a13a5723.js.map} +1 -1
- package/MessageSearch/components/MessageSearchUI.js +12 -12
- package/MessageSearch/context.js +2 -2
- package/MessageSearch.js +12 -12
- package/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/OpenChannel/components/OpenChannelHeader.js +13 -13
- package/OpenChannel/components/OpenChannelInput.js +17 -18
- package/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessage.js +23 -24
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +25 -26
- package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/OpenChannel/components/OpenChannelUI.js +26 -27
- package/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/OpenChannel/context.js +9 -9
- package/OpenChannel.js +26 -27
- package/OpenChannel.js.map +1 -1
- package/OpenChannelList/components/OpenChannelListUI.js +13 -13
- package/OpenChannelList/components/OpenChannelPreview.js +4 -4
- package/OpenChannelList/context.js +4 -4
- package/OpenChannelList.js +13 -13
- package/{OpenChannelListProvider-706744c4.js → OpenChannelListProvider-d2d1d70c.js} +3 -3
- package/{OpenChannelListProvider-706744c4.js.map → OpenChannelListProvider-d2d1d70c.js.map} +1 -1
- package/{OpenChannelProvider-a731aa78.js → OpenChannelProvider-2aeb8bad.js} +7 -7
- package/{OpenChannelProvider-a731aa78.js.map → OpenChannelProvider-2aeb8bad.js.map} +1 -1
- package/OpenChannelSettings/components/EditDetailsModal.js +13 -13
- package/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
- package/OpenChannelSettings/components/OperatorUI.js +17 -17
- package/OpenChannelSettings/components/ParticipantUI.js +15 -15
- package/OpenChannelSettings/context.js +3 -3
- package/OpenChannelSettings.js +18 -18
- package/{RemoveMessageModal-9b81dfb2.js → RemoveMessageModal-513fca41.js} +3 -3
- package/{RemoveMessageModal-9b81dfb2.js.map → RemoveMessageModal-513fca41.js.map} +1 -1
- package/SendbirdProvider.js +12 -12
- package/SendbirdProvider.js.map +1 -1
- package/Thread/components/ParentMessageInfo.js +25 -26
- package/Thread/components/ParentMessageInfo.js.map +1 -1
- package/Thread/components/ParentMessageInfoItem.js +16 -16
- package/Thread/components/ThreadHeader.js +6 -6
- package/Thread/components/ThreadList.js +28 -29
- package/Thread/components/ThreadList.js.map +1 -1
- package/Thread/components/ThreadListItem.js +28 -29
- package/Thread/components/ThreadListItem.js.map +1 -1
- package/Thread/components/ThreadMessageInput.js +28 -28
- package/Thread/components/ThreadMessageInput.js.map +1 -1
- package/Thread/components/ThreadUI.js +32 -33
- package/Thread/components/ThreadUI.js.map +1 -1
- package/Thread/context.js +9 -9
- package/Thread.js +32 -33
- package/Thread.js.map +1 -1
- package/{ThreadProvider-e64f95cc.js → ThreadProvider-ad0690f5.js} +7 -7
- package/{ThreadProvider-e64f95cc.js.map → ThreadProvider-ad0690f5.js.map} +1 -1
- package/{UserProfileContext-cc71f901.js → UserProfileContext-798ff1f9.js} +1 -1
- package/{UserProfileContext-cc71f901.js.map → UserProfileContext-798ff1f9.js.map} +1 -1
- package/{VoiceMessageInputWrapper-94005482.js → VoiceMessageInputWrapper-4a79cd88.js} +7 -7
- package/{VoiceMessageInputWrapper-94005482.js.map → VoiceMessageInputWrapper-4a79cd88.js.map} +1 -1
- package/VoicePlayer/context.js +3 -3
- package/VoicePlayer/useVoicePlayer.js +3 -3
- package/VoiceRecorder/context.js +1 -1
- package/VoiceRecorder/useVoiceRecorder.js +2 -2
- package/{_rollupPluginBabelHelpers-945410b2.js → _rollupPluginBabelHelpers-a6fb8db9.js} +1 -1
- package/_rollupPluginBabelHelpers-a6fb8db9.js.map +1 -0
- package/{actionTypes-aa211f48.js → actionTypes-b2910bb9.js} +1 -1
- package/{actionTypes-aa211f48.js.map → actionTypes-b2910bb9.js.map} +1 -1
- package/cjs/App.js +40 -40
- package/cjs/Channel/components/ChannelHeader.js +19 -19
- package/cjs/Channel/components/ChannelUI.js +33 -34
- package/cjs/Channel/components/ChannelUI.js.map +1 -1
- package/cjs/Channel/components/FileViewer.js +15 -15
- package/cjs/Channel/components/FrozenNotification.js +4 -4
- package/cjs/Channel/components/Message.js +28 -29
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +26 -26
- package/cjs/Channel/components/MessageInput.js.map +1 -1
- package/cjs/Channel/components/MessageList.js +29 -30
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +17 -17
- package/cjs/Channel/components/SuggestedMentionList.js +17 -17
- package/cjs/Channel/components/TypingIndicator.js +15 -15
- package/cjs/Channel/components/UnreadCount.js +4 -4
- package/cjs/Channel/context.js +14 -14
- package/cjs/Channel.js +33 -34
- package/cjs/Channel.js.map +1 -1
- package/cjs/ChannelList/components/AddChannel.js +15 -15
- package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
- package/cjs/ChannelList/components/ChannelListUI.js +30 -29
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +26 -25
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/cjs/ChannelList/context.js +8 -8
- package/cjs/ChannelList.js +30 -29
- package/cjs/ChannelList.js.map +1 -1
- package/cjs/{ChannelListProvider-8cd92208.js → ChannelListProvider-5e580dea.js} +8 -8
- package/cjs/{ChannelListProvider-8cd92208.js.map → ChannelListProvider-5e580dea.js.map} +1 -1
- package/cjs/{ChannelProvider-b1290e55.js → ChannelProvider-a57db975.js} +10 -10
- package/cjs/{ChannelProvider-b1290e55.js.map → ChannelProvider-a57db975.js.map} +1 -1
- package/cjs/ChannelSettings/components/ChannelProfile.js +12 -12
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -18
- package/cjs/ChannelSettings/components/EditDetailsModal.js +12 -12
- package/cjs/ChannelSettings/components/LeaveChannel.js +12 -12
- package/cjs/ChannelSettings/components/ModerationPanel.js +15 -15
- package/cjs/ChannelSettings/components/UserListItem.js +11 -11
- package/cjs/ChannelSettings/components/UserPanel.js +14 -14
- package/cjs/ChannelSettings/context.js +3 -3
- package/cjs/ChannelSettings.js +18 -18
- package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
- package/cjs/CreateChannel/components/InviteUsers.js +14 -14
- package/cjs/CreateChannel/components/SelectChannelType.js +11 -11
- package/cjs/CreateChannel/context.js +4 -4
- package/cjs/CreateChannel.js +14 -14
- package/cjs/{CreateChannelProvider-08c38b8e.js → CreateChannelProvider-745ed46a.js} +1 -1
- package/cjs/{CreateChannelProvider-08c38b8e.js.map → CreateChannelProvider-745ed46a.js.map} +1 -1
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +10 -10
- package/cjs/CreateOpenChannel/context.js +1 -1
- package/cjs/CreateOpenChannel.js +10 -10
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/cjs/EditUserProfile.js +13 -13
- package/cjs/{LocalizationContext-1f669b3c.js → LocalizationContext-5aceab76.js} +3 -3
- package/cjs/{LocalizationContext-1f669b3c.js.map → LocalizationContext-5aceab76.js.map} +1 -1
- package/cjs/{MediaQueryContext-130143d7.js → MediaQueryContext-9a083dcf.js} +1 -1
- package/cjs/{MediaQueryContext-130143d7.js.map → MediaQueryContext-9a083dcf.js.map} +1 -1
- package/cjs/{MemberList-8df95ca1.js → MemberList-eef196d1.js} +5 -5
- package/cjs/{MemberList-8df95ca1.js.map → MemberList-eef196d1.js.map} +1 -1
- package/cjs/MessageSearch/components/MessageSearchUI.js +12 -12
- package/cjs/MessageSearch/context.js +2 -2
- package/cjs/MessageSearch.js +12 -12
- package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/cjs/OpenChannel/components/OpenChannelHeader.js +13 -13
- package/cjs/OpenChannel/components/OpenChannelInput.js +17 -18
- package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessage.js +23 -24
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +25 -26
- package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelUI.js +26 -27
- package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/cjs/OpenChannel/context.js +9 -9
- package/cjs/OpenChannel.js +26 -27
- package/cjs/OpenChannel.js.map +1 -1
- package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
- package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
- package/cjs/OpenChannelList/context.js +4 -4
- package/cjs/OpenChannelList.js +13 -13
- package/cjs/{OpenChannelListProvider-e536a2bf.js → OpenChannelListProvider-e36d9f33.js} +3 -3
- package/cjs/{OpenChannelListProvider-e536a2bf.js.map → OpenChannelListProvider-e36d9f33.js.map} +1 -1
- package/cjs/{OpenChannelProvider-1e578c60.js → OpenChannelProvider-784fb34f.js} +7 -7
- package/cjs/{OpenChannelProvider-1e578c60.js.map → OpenChannelProvider-784fb34f.js.map} +1 -1
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +13 -13
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
- package/cjs/OpenChannelSettings/components/OperatorUI.js +17 -17
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -15
- package/cjs/OpenChannelSettings/context.js +3 -3
- package/cjs/OpenChannelSettings.js +18 -18
- package/cjs/{RemoveMessageModal-b0c539a1.js → RemoveMessageModal-31a33f76.js} +3 -3
- package/cjs/{RemoveMessageModal-b0c539a1.js.map → RemoveMessageModal-31a33f76.js.map} +1 -1
- package/cjs/SendbirdProvider.js +12 -12
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfo.js +25 -26
- package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfoItem.js +16 -16
- package/cjs/Thread/components/ThreadHeader.js +6 -6
- package/cjs/Thread/components/ThreadList.js +28 -29
- package/cjs/Thread/components/ThreadList.js.map +1 -1
- package/cjs/Thread/components/ThreadListItem.js +28 -29
- package/cjs/Thread/components/ThreadListItem.js.map +1 -1
- package/cjs/Thread/components/ThreadMessageInput.js +28 -28
- package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
- package/cjs/Thread/components/ThreadUI.js +32 -33
- package/cjs/Thread/components/ThreadUI.js.map +1 -1
- package/cjs/Thread/context.js +9 -9
- package/cjs/Thread.js +32 -33
- package/cjs/Thread.js.map +1 -1
- package/cjs/{ThreadProvider-5eafb9ef.js → ThreadProvider-245cb356.js} +7 -7
- package/cjs/{ThreadProvider-5eafb9ef.js.map → ThreadProvider-245cb356.js.map} +1 -1
- package/cjs/{UserProfileContext-cde95db8.js → UserProfileContext-b8b5eb47.js} +1 -1
- package/cjs/{UserProfileContext-cde95db8.js.map → UserProfileContext-b8b5eb47.js.map} +1 -1
- package/cjs/{VoiceMessageInputWrapper-5bb0ed00.js → VoiceMessageInputWrapper-3efa0e59.js} +7 -7
- package/cjs/{VoiceMessageInputWrapper-5bb0ed00.js.map → VoiceMessageInputWrapper-3efa0e59.js.map} +1 -1
- package/cjs/VoicePlayer/context.js +3 -3
- package/cjs/VoicePlayer/useVoicePlayer.js +3 -3
- package/cjs/VoiceRecorder/context.js +1 -1
- package/cjs/VoiceRecorder/useVoiceRecorder.js +2 -2
- package/cjs/{_rollupPluginBabelHelpers-32557b21.js → _rollupPluginBabelHelpers-61859095.js} +1 -1
- package/cjs/_rollupPluginBabelHelpers-61859095.js.map +1 -0
- package/cjs/{actionTypes-32a1c06c.js → actionTypes-21f9ec1f.js} +1 -1
- package/cjs/{actionTypes-32a1c06c.js.map → actionTypes-21f9ec1f.js.map} +1 -1
- package/cjs/{color-97cfc61b.js → color-c824d292.js} +1 -1
- package/cjs/{color-97cfc61b.js.map → color-c824d292.js.map} +1 -1
- package/cjs/{compareIds-32f97a73.js → compareIds-71d08649.js} +1 -1
- package/cjs/{compareIds-32f97a73.js.map → compareIds-71d08649.js.map} +1 -1
- package/cjs/{const-fe838b59.js → const-8e07f353.js} +1 -1
- package/cjs/{const-fe838b59.js.map → const-8e07f353.js.map} +1 -1
- package/cjs/{const-77194948.js → const-e6cae521.js} +1 -1
- package/cjs/{const-77194948.js.map → const-e6cae521.js.map} +1 -1
- package/cjs/consts-439bb436.js +6 -0
- package/cjs/consts-439bb436.js.map +1 -0
- package/cjs/{consts-f82aaae9.js → consts-75b91fe9.js} +1 -1
- package/cjs/{consts-f82aaae9.js.map → consts-75b91fe9.js.map} +1 -1
- package/cjs/{context-01e9eccc.js → context-399dd8e2.js} +2 -2
- package/cjs/{context-01e9eccc.js.map → context-399dd8e2.js.map} +1 -1
- package/cjs/dist/index.css +123 -123
- package/cjs/dist/index.css.map +1 -1
- package/cjs/{index-78e2bb42.js → index-09d115c8.js} +2 -2
- package/cjs/{index-78e2bb42.js.map → index-09d115c8.js.map} +1 -1
- package/cjs/{index-81e19961.js → index-484849cf.js} +2 -2
- package/cjs/{index-81e19961.js.map → index-484849cf.js.map} +1 -1
- package/cjs/{index-9506bc1e.js → index-66355429.js} +5 -5
- package/cjs/{index-9506bc1e.js.map → index-66355429.js.map} +1 -1
- package/cjs/{index-c4869cdb.js → index-8528ba15.js} +3 -3
- package/cjs/{index-c4869cdb.js.map → index-8528ba15.js.map} +1 -1
- package/cjs/{index-cf139ee0.js → index-8ebd2891.js} +4 -4
- package/cjs/{index-cf139ee0.js.map → index-8ebd2891.js.map} +1 -1
- package/cjs/{index-26ff28a8.js → index-8eecbe24.js} +3 -3
- package/cjs/{index-26ff28a8.js.map → index-8eecbe24.js.map} +1 -1
- package/cjs/{index-b32fce67.js → index-8ef480b0.js} +2 -2
- package/cjs/{index-b32fce67.js.map → index-8ef480b0.js.map} +1 -1
- package/cjs/{index-90c0f273.js → index-98dedc70.js} +2 -2
- package/cjs/{index-90c0f273.js.map → index-98dedc70.js.map} +1 -1
- package/cjs/{index-f5502150.js → index-a427c01e.js} +1 -1
- package/cjs/{index-f5502150.js.map → index-a427c01e.js.map} +1 -1
- package/cjs/{index-577c9a9b.js → index-a81b3157.js} +1 -1
- package/cjs/{index-577c9a9b.js.map → index-a81b3157.js.map} +1 -1
- package/cjs/{index-b911f8b3.js → index-c9c315e3.js} +7 -7
- package/cjs/{index-b911f8b3.js.map → index-c9c315e3.js.map} +1 -1
- package/cjs/{index-1b11bb85.js → index-cd6b2f18.js} +2 -2
- package/cjs/{index-1b11bb85.js.map → index-cd6b2f18.js.map} +1 -1
- package/cjs/{index-2c7774d0.js → index-dd6c0902.js} +4 -4
- package/cjs/{index-2c7774d0.js.map → index-dd6c0902.js.map} +1 -1
- package/cjs/{index-33ef71d3.js → index-e189366a.js} +7 -7
- package/cjs/{index-33ef71d3.js.map → index-e189366a.js.map} +1 -1
- package/cjs/index.js +45 -45
- package/cjs/sendbirdSelectors.js +2 -2
- package/cjs/{stringSet-ddd351f0.js → stringSet-1db37c33.js} +1 -1
- package/cjs/{stringSet-ddd351f0.js.map → stringSet-1db37c33.js.map} +1 -1
- package/cjs/{topics-5edbb1b2.js → topics-81f12567.js} +1 -1
- package/cjs/{topics-5edbb1b2.js.map → topics-81f12567.js.map} +1 -1
- package/cjs/{tslib.es6-d2ba1a6b.js → tslib.es6-446fe5c6.js} +1 -1
- package/cjs/{tslib.es6-d2ba1a6b.js.map → tslib.es6-446fe5c6.js.map} +1 -1
- package/cjs/{types-3fb94919.js → types-6cf92c48.js} +1 -1
- package/cjs/{types-3fb94919.js.map → types-6cf92c48.js.map} +1 -1
- package/cjs/ui/Accordion.js +3 -3
- package/cjs/ui/AccordionGroup.js +2 -2
- package/cjs/ui/AdminMessage.js +3 -3
- package/cjs/ui/Avatar.js +2 -2
- package/cjs/ui/Badge.js +5 -5
- package/cjs/ui/BottomSheet.js +1 -1
- package/cjs/ui/Button.js +3 -3
- package/cjs/ui/ChannelAvatar.js +3 -3
- package/cjs/ui/ConnectionStatus.js +4 -4
- package/cjs/ui/ContextMenu.js +14 -10
- package/cjs/ui/ContextMenu.js.map +1 -1
- package/cjs/ui/DateSeparator.js +4 -4
- package/cjs/ui/EmojiReactions.js +7 -7
- package/cjs/ui/FileMessageItemBody.js +6 -6
- package/cjs/ui/FileViewer.js +8 -8
- package/cjs/ui/IconButton.js +1 -1
- package/cjs/ui/ImageRenderer.js +1 -1
- package/cjs/ui/Input.js +2 -2
- package/cjs/ui/Label.js +2 -2
- package/cjs/ui/LinkLabel.js +2 -2
- package/cjs/ui/Loader.js +1 -1
- package/cjs/ui/MentionLabel.js +11 -11
- package/cjs/ui/MentionUserLabel.js +4 -2
- package/cjs/ui/MentionUserLabel.js.map +1 -1
- package/cjs/ui/MessageContent.js +23 -23
- package/cjs/ui/MessageInput.js +40 -21
- package/cjs/ui/MessageInput.js.map +1 -1
- package/cjs/ui/MessageItemMenu.js +8 -8
- package/cjs/ui/MessageItemReactionMenu.js +5 -5
- package/cjs/ui/MessageSearchFileItem.js +10 -10
- package/cjs/ui/MessageSearchItem.js +9 -9
- package/cjs/ui/MessageStatus.js +10 -10
- package/cjs/ui/Modal.js +7 -7
- package/cjs/ui/OGMessageItemBody.js +11 -11
- package/cjs/ui/OpenChannelAdminMessage.js +3 -3
- package/cjs/ui/OpenChannelAvatar.js +6 -6
- package/cjs/ui/OpenchannelConversationHeader.js +6 -6
- package/cjs/ui/OpenchannelFileMessage.js +16 -16
- package/cjs/ui/OpenchannelOGMessage.js +16 -16
- package/cjs/ui/OpenchannelThumbnailMessage.js +15 -15
- package/cjs/ui/OpenchannelUserMessage.js +16 -16
- package/cjs/ui/PlaceHolder.js +6 -6
- package/cjs/ui/PlaybackTime.js +2 -2
- package/cjs/ui/QuoteMessage.js +6 -6
- package/cjs/ui/QuoteMessageInput.js +6 -6
- package/cjs/ui/ReactionBadge.js +3 -3
- package/cjs/ui/ReactionButton.js +1 -1
- package/cjs/ui/SortByRow.js +2 -2
- package/cjs/ui/TextButton.js +2 -2
- package/cjs/ui/TextMessageItemBody.js +11 -11
- package/cjs/ui/ThreadReplies.js +6 -6
- package/cjs/ui/ThumbnailMessageItemBody.js +2 -2
- package/cjs/ui/Tooltip.js +3 -3
- package/cjs/ui/TooltipWrapper.js +1 -1
- package/cjs/ui/UnknownMessageItemBody.js +6 -6
- package/cjs/ui/UserListItem.js +11 -11
- package/cjs/ui/UserProfile.js +10 -10
- package/cjs/ui/VoiceMessageItemBody.js +5 -5
- package/cjs/ui/VoiceMessgeInput.js +8 -8
- package/cjs/ui/Word.js +11 -11
- package/cjs/{useLongPress-778d6f15.js → useLongPress-fbeff7f1.js} +3 -3
- package/cjs/{useLongPress-778d6f15.js.map → useLongPress-fbeff7f1.js.map} +1 -1
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/utils/message/isVoiceMessage.js +2 -2
- package/cjs/{utils-ee6665ec.js → utils-68decdd6.js} +1 -1
- package/cjs/{utils-ee6665ec.js.map → utils-68decdd6.js.map} +1 -1
- package/cjs/{utils-f7f440f8.js → utils-85bae6f4.js} +1 -1
- package/cjs/{utils-f7f440f8.js.map → utils-85bae6f4.js.map} +1 -1
- package/cjs/{utils-c67cf524.js → utils-b7734ec6.js} +2 -2
- package/cjs/{utils-c67cf524.js.map → utils-b7734ec6.js.map} +1 -1
- package/cjs/{utils-602ab2fc.js → utils-e4a28ce3.js} +1 -1
- package/cjs/{utils-602ab2fc.js.map → utils-e4a28ce3.js.map} +1 -1
- package/cjs/{uuid-28e4a814.js → uuid-7bd43bd5.js} +1 -1
- package/cjs/{uuid-28e4a814.js.map → uuid-7bd43bd5.js.map} +1 -1
- package/cjs/withSendbird.js +1 -1
- package/{color-f6b2bdb7.js → color-3ea2f32a.js} +1 -1
- package/{color-f6b2bdb7.js.map → color-3ea2f32a.js.map} +1 -1
- package/{compareIds-87972c5f.js → compareIds-0df93c10.js} +1 -1
- package/{compareIds-87972c5f.js.map → compareIds-0df93c10.js.map} +1 -1
- package/{const-0f759572.js → const-15b18d4f.js} +1 -1
- package/{const-0f759572.js.map → const-15b18d4f.js.map} +1 -1
- package/{const-85535a89.js → const-3e90ab6a.js} +1 -1
- package/{const-85535a89.js.map → const-3e90ab6a.js.map} +1 -1
- package/consts-bdb24796.js +4 -0
- package/consts-bdb24796.js.map +1 -0
- package/{consts-59f719d8.js → consts-bf94452f.js} +1 -1
- package/{consts-59f719d8.js.map → consts-bf94452f.js.map} +1 -1
- package/{context-f9c07d84.js → context-77ebb473.js} +2 -2
- package/{context-f9c07d84.js.map → context-77ebb473.js.map} +1 -1
- package/dist/index.css +123 -123
- package/dist/index.css.map +1 -1
- package/{index-c4e31ae9.js → index-021c461b.js} +7 -7
- package/{index-c4e31ae9.js.map → index-021c461b.js.map} +1 -1
- package/{index-c10fcd31.js → index-0598a3f8.js} +1 -1
- package/{index-c10fcd31.js.map → index-0598a3f8.js.map} +1 -1
- package/{index-7d65494a.js → index-14887308.js} +4 -4
- package/{index-7d65494a.js.map → index-14887308.js.map} +1 -1
- package/{index-10a05022.js → index-245c7032.js} +1 -1
- package/{index-10a05022.js.map → index-245c7032.js.map} +1 -1
- package/{index-e121c395.js → index-40fcb60b.js} +2 -2
- package/{index-e121c395.js.map → index-40fcb60b.js.map} +1 -1
- package/{index-a1a19702.js → index-47bacf36.js} +3 -3
- package/{index-a1a19702.js.map → index-47bacf36.js.map} +1 -1
- package/{index-1ac4456b.js → index-5ebdd2f3.js} +7 -7
- package/{index-1ac4456b.js.map → index-5ebdd2f3.js.map} +1 -1
- package/{index-868d3a87.js → index-82bbd3a5.js} +2 -2
- package/{index-868d3a87.js.map → index-82bbd3a5.js.map} +1 -1
- package/{index-99933718.js → index-9d1fdd2f.js} +2 -2
- package/{index-99933718.js.map → index-9d1fdd2f.js.map} +1 -1
- package/{index-a73afdab.js → index-9e13245e.js} +4 -4
- package/{index-a73afdab.js.map → index-9e13245e.js.map} +1 -1
- package/{index-ac5a0725.js → index-ba0f687e.js} +3 -3
- package/{index-ac5a0725.js.map → index-ba0f687e.js.map} +1 -1
- package/{index-43834bc0.js → index-dad39ace.js} +2 -2
- package/{index-43834bc0.js.map → index-dad39ace.js.map} +1 -1
- package/{index-3c7ecbec.js → index-dc60c446.js} +5 -5
- package/{index-3c7ecbec.js.map → index-dc60c446.js.map} +1 -1
- package/{index-2988897b.js → index-efddd5d1.js} +2 -2
- package/{index-2988897b.js.map → index-efddd5d1.js.map} +1 -1
- package/index.d.ts +3 -1
- package/index.js +45 -45
- package/package.json +1 -1
- package/sendbirdSelectors.js +2 -2
- package/{stringSet-a513039b.js → stringSet-f4c04194.js} +1 -1
- package/{stringSet-a513039b.js.map → stringSet-f4c04194.js.map} +1 -1
- package/{topics-a581acbb.js → topics-34615bc5.js} +1 -1
- package/{topics-a581acbb.js.map → topics-34615bc5.js.map} +1 -1
- package/{tslib.es6-e1c2b6be.js → tslib.es6-0d507bec.js} +1 -1
- package/{tslib.es6-e1c2b6be.js.map → tslib.es6-0d507bec.js.map} +1 -1
- package/{types-5cc94910.js → types-277b33ab.js} +1 -1
- package/{types-5cc94910.js.map → types-277b33ab.js.map} +1 -1
- package/ui/Accordion.js +3 -3
- package/ui/AccordionGroup.js +2 -2
- package/ui/AdminMessage.js +3 -3
- package/ui/Avatar.js +2 -2
- package/ui/Badge.js +5 -5
- package/ui/BottomSheet.js +1 -1
- package/ui/Button.js +3 -3
- package/ui/ChannelAvatar.js +3 -3
- package/ui/ConnectionStatus.js +4 -4
- package/ui/ContextMenu.js +14 -10
- package/ui/ContextMenu.js.map +1 -1
- package/ui/DateSeparator.js +4 -4
- package/ui/EmojiReactions.js +7 -7
- package/ui/FileMessageItemBody.js +6 -6
- package/ui/FileViewer.js +8 -8
- package/ui/IconButton.js +1 -1
- package/ui/ImageRenderer.js +1 -1
- package/ui/Input.js +2 -2
- package/ui/Label.js +2 -2
- package/ui/LinkLabel.js +2 -2
- package/ui/Loader.js +1 -1
- package/ui/MentionLabel.js +11 -11
- package/ui/MentionUserLabel.js +4 -2
- package/ui/MentionUserLabel.js.map +1 -1
- package/ui/MessageContent.js +23 -23
- package/ui/MessageInput.js +40 -21
- package/ui/MessageInput.js.map +1 -1
- package/ui/MessageItemMenu.js +8 -8
- package/ui/MessageItemReactionMenu.js +5 -5
- package/ui/MessageSearchFileItem.js +10 -10
- package/ui/MessageSearchItem.js +9 -9
- package/ui/MessageStatus.js +10 -10
- package/ui/Modal.js +7 -7
- package/ui/OGMessageItemBody.js +11 -11
- package/ui/OpenChannelAdminMessage.js +3 -3
- package/ui/OpenChannelAvatar.js +6 -6
- package/ui/OpenchannelConversationHeader.js +6 -6
- package/ui/OpenchannelFileMessage.js +16 -16
- package/ui/OpenchannelOGMessage.js +16 -16
- package/ui/OpenchannelThumbnailMessage.js +15 -15
- package/ui/OpenchannelUserMessage.js +16 -16
- package/ui/PlaceHolder.js +6 -6
- package/ui/PlaybackTime.js +2 -2
- package/ui/QuoteMessage.js +6 -6
- package/ui/QuoteMessageInput.js +6 -6
- package/ui/ReactionBadge.js +3 -3
- package/ui/ReactionButton.js +1 -1
- package/ui/SortByRow.js +2 -2
- package/ui/TextButton.js +2 -2
- package/ui/TextMessageItemBody.js +11 -11
- package/ui/ThreadReplies.js +6 -6
- package/ui/ThumbnailMessageItemBody.js +2 -2
- package/ui/Tooltip.js +3 -3
- package/ui/TooltipWrapper.js +1 -1
- package/ui/UnknownMessageItemBody.js +6 -6
- package/ui/UserListItem.js +11 -11
- package/ui/UserProfile.js +10 -10
- package/ui/VoiceMessageItemBody.js +5 -5
- package/ui/VoiceMessgeInput.js +8 -8
- package/ui/Word.js +11 -11
- package/{useLongPress-d942e028.js → useLongPress-932defe8.js} +3 -3
- package/{useLongPress-d942e028.js.map → useLongPress-932defe8.js.map} +1 -1
- package/useSendbirdStateContext.js +1 -1
- package/utils/message/isVoiceMessage.js +2 -2
- package/{utils-b439eac3.js → utils-1d822c74.js} +1 -1
- package/{utils-b439eac3.js.map → utils-1d822c74.js.map} +1 -1
- package/{utils-b10ed497.js → utils-889ef91c.js} +2 -2
- package/{utils-b10ed497.js.map → utils-889ef91c.js.map} +1 -1
- package/{utils-5cc87999.js → utils-b438b300.js} +1 -1
- package/{utils-5cc87999.js.map → utils-b438b300.js.map} +1 -1
- package/{utils-c9f12033.js → utils-b7331548.js} +1 -1
- package/{utils-c9f12033.js.map → utils-b7331548.js.map} +1 -1
- package/{uuid-d072af26.js → uuid-9dda9b20.js} +1 -1
- package/{uuid-d072af26.js.map → uuid-9dda9b20.js.map} +1 -1
- package/withSendbird.js +1 -1
- package/_rollupPluginBabelHelpers-945410b2.js.map +0 -1
- package/cjs/_rollupPluginBabelHelpers-32557b21.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-b911f8b3.js","sources":["../../src/smart-components/ChannelList/components/ChannelPreview/utils.js","../../src/ui/MessageStatus/index.tsx"],"sourcesContent":["import isToday from 'date-fns/isToday';\nimport format from 'date-fns/format';\nimport isThisYear from 'date-fns/isThisYear';\nimport isYesterday from 'date-fns/isYesterday';\n\nimport { truncateString } from '../../../../utils';\nimport { LabelStringSet } from '../../../../ui/Label';\n\nexport const getChannelTitle = (channel = {}, currentUserId, stringSet = LabelStringSet) => {\n if (!channel?.name && !channel?.members) {\n return stringSet.NO_TITLE;\n }\n if (channel?.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n if (channel?.members?.length === 1) {\n return stringSet.NO_MEMBERS;\n }\n return (channel?.members || [])\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || stringSet.NO_NAME))\n .join(', ');\n};\n\nexport const getLastMessageCreatedAt = ({\n channel,\n locale,\n stringSet,\n}) => {\n const createdAt = channel?.lastMessage?.createdAt;\n const optionalParam = locale ? { locale } : null;\n if (!createdAt) {\n return '';\n }\n if (isToday(createdAt)) {\n return format(createdAt, 'p', optionalParam);\n }\n if (isYesterday(createdAt)) {\n return stringSet?.MESSAGE_STATUS__YESTERDAY || 'Yesterday';\n }\n if (isThisYear(createdAt)) {\n return format(createdAt, 'MMM d', optionalParam);\n }\n return format(createdAt, 'yyyy/M/d', optionalParam);\n};\n\nexport const getTotalMembers = (channel) => (\n channel?.memberCount\n ? channel.memberCount\n : 0\n);\n\nconst getPrettyLastMessage = (message = {}) => {\n const MAXLEN = 30;\n const { messageType, name } = message;\n if (messageType === 'file') {\n return truncateString(name, MAXLEN);\n }\n return message.message;\n};\n\nexport const getLastMessage = (channel) => (channel?.lastMessage ? getPrettyLastMessage(channel?.lastMessage) : '');\n\nexport const getChannelUnreadMessageCount = (channel) => (\n channel?.unreadMessageCount\n ? channel.unreadMessageCount\n : 0\n);\n","import './index.scss';\nimport React from 'react';\nimport format from 'date-fns/format';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelColors, LabelTypography } from '../Label';\nimport Loader from '../Loader';\n\nimport { isSentStatus } from '../../utils';\nimport {\n getOutgoingMessageState,\n OutgoingMessageStates,\n} from '../../utils/exports/getOutgoingMessageState';\nimport { getLastMessageCreatedAt } from '../../smart-components/ChannelList/components/ChannelPreview/utils';\nimport { useLocalization } from '../../lib/LocalizationContext';\n\nexport const MessageStatusTypes = OutgoingMessageStates;\n\ninterface MessageStatusProps {\n className?: string;\n message: UserMessage | FileMessage;\n channel: GroupChannel;\n isDateSeparatorConsidered?: boolean;\n}\n\nexport default function MessageStatus({\n className,\n message,\n channel,\n isDateSeparatorConsidered = true,\n}: MessageStatusProps): React.ReactElement {\n const { stringSet, dateLocale } = useLocalization();\n const status = getOutgoingMessageState(channel, message);\n const hideMessageStatusIcon = channel?.isGroupChannel?.() && (\n (channel.isSuper || channel.isPublic || channel.isBroadcast)\n && !(status === OutgoingMessageStates.PENDING || status === OutgoingMessageStates.FAILED)\n );\n const iconType = {\n [OutgoingMessageStates.SENT]: IconTypes.DONE,\n [OutgoingMessageStates.DELIVERED]: IconTypes.DONE_ALL,\n [OutgoingMessageStates.READ]: IconTypes.DONE_ALL,\n [OutgoingMessageStates.FAILED]: IconTypes.ERROR,\n };\n const iconColor = {\n [OutgoingMessageStates.SENT]: IconColors.SENT,\n [OutgoingMessageStates.DELIVERED]: IconColors.SENT,\n [OutgoingMessageStates.READ]: IconColors.READ,\n [OutgoingMessageStates.FAILED]: IconColors.ERROR,\n };\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-message-status',\n ].join(' ')}\n >\n {(status === OutgoingMessageStates.PENDING) ? (\n <Loader\n className=\"sendbird-message-status__icon\"\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n type={IconTypes.SPINNER}\n fillColor={IconColors.PRIMARY}\n width=\"16px\"\n height=\"16px\"\n />\n </Loader>\n ) : (\n <Icon\n className={`sendbird-message-status__icon ${hideMessageStatusIcon ? 'hide-icon' : ''} ${status === OutgoingMessageStates.FAILED ? '' : 'sendbird-message-status--sent'\n }`}\n type={iconType[status] || IconTypes.ERROR}\n fillColor={iconColor[status]}\n width=\"16px\"\n height=\"16px\"\n />\n )}\n {isSentStatus(status) && (\n <Label\n className=\"sendbird-message-status__text\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {\n isDateSeparatorConsidered\n ? format(message?.createdAt || 0, 'p', { locale: dateLocale })\n : getLastMessageCreatedAt({ channel, locale: dateLocale, stringSet })\n }\n </Label>\n )}\n </div>\n );\n}\n"],"names":["getChannelTitle","channel","currentUserId","stringSet","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","userId","map","nickname","NO_NAME","join","getLastMessageCreatedAt","locale","createdAt","lastMessage","optionalParam","isToday","format","isYesterday","MESSAGE_STATUS__YESTERDAY","isThisYear","getTotalMembers","memberCount","getPrettyLastMessage","message","MAXLEN","messageType","truncateString","getLastMessage","getChannelUnreadMessageCount","unreadMessageCount","MessageStatusTypes","OutgoingMessageStates","MessageStatus","_a","className","_e","isDateSeparatorConsidered","_f","useLocalization","dateLocale","status","getOutgoingMessageState","hideMessageStatusIcon","_d","isGroupChannel","call","isSuper","isPublic","isBroadcast","PENDING","FAILED","iconType","_b","SENT","IconTypes","DONE","DELIVERED","DONE_ALL","READ","ERROR","iconColor","_c","IconColors","React","__spreadArray","Array","isArray","Loader","Icon","SPINNER","PRIMARY","concat","isSentStatus","Label","LabelTypography","CAPTION_3","LabelColors","ONBACKGROUND_2"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index-c9c315e3.js","sources":["../../src/smart-components/ChannelList/components/ChannelPreview/utils.js","../../src/ui/MessageStatus/index.tsx"],"sourcesContent":["import isToday from 'date-fns/isToday';\nimport format from 'date-fns/format';\nimport isThisYear from 'date-fns/isThisYear';\nimport isYesterday from 'date-fns/isYesterday';\n\nimport { truncateString } from '../../../../utils';\nimport { LabelStringSet } from '../../../../ui/Label';\n\nexport const getChannelTitle = (channel = {}, currentUserId, stringSet = LabelStringSet) => {\n if (!channel?.name && !channel?.members) {\n return stringSet.NO_TITLE;\n }\n if (channel?.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n if (channel?.members?.length === 1) {\n return stringSet.NO_MEMBERS;\n }\n return (channel?.members || [])\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || stringSet.NO_NAME))\n .join(', ');\n};\n\nexport const getLastMessageCreatedAt = ({\n channel,\n locale,\n stringSet,\n}) => {\n const createdAt = channel?.lastMessage?.createdAt;\n const optionalParam = locale ? { locale } : null;\n if (!createdAt) {\n return '';\n }\n if (isToday(createdAt)) {\n return format(createdAt, 'p', optionalParam);\n }\n if (isYesterday(createdAt)) {\n return stringSet?.MESSAGE_STATUS__YESTERDAY || 'Yesterday';\n }\n if (isThisYear(createdAt)) {\n return format(createdAt, 'MMM d', optionalParam);\n }\n return format(createdAt, 'yyyy/M/d', optionalParam);\n};\n\nexport const getTotalMembers = (channel) => (\n channel?.memberCount\n ? channel.memberCount\n : 0\n);\n\nconst getPrettyLastMessage = (message = {}) => {\n const MAXLEN = 30;\n const { messageType, name } = message;\n if (messageType === 'file') {\n return truncateString(name, MAXLEN);\n }\n return message.message;\n};\n\nexport const getLastMessage = (channel) => (channel?.lastMessage ? getPrettyLastMessage(channel?.lastMessage) : '');\n\nexport const getChannelUnreadMessageCount = (channel) => (\n channel?.unreadMessageCount\n ? channel.unreadMessageCount\n : 0\n);\n","import './index.scss';\nimport React from 'react';\nimport format from 'date-fns/format';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelColors, LabelTypography } from '../Label';\nimport Loader from '../Loader';\n\nimport { isSentStatus } from '../../utils';\nimport {\n getOutgoingMessageState,\n OutgoingMessageStates,\n} from '../../utils/exports/getOutgoingMessageState';\nimport { getLastMessageCreatedAt } from '../../smart-components/ChannelList/components/ChannelPreview/utils';\nimport { useLocalization } from '../../lib/LocalizationContext';\n\nexport const MessageStatusTypes = OutgoingMessageStates;\n\ninterface MessageStatusProps {\n className?: string;\n message: UserMessage | FileMessage;\n channel: GroupChannel;\n isDateSeparatorConsidered?: boolean;\n}\n\nexport default function MessageStatus({\n className,\n message,\n channel,\n isDateSeparatorConsidered = true,\n}: MessageStatusProps): React.ReactElement {\n const { stringSet, dateLocale } = useLocalization();\n const status = getOutgoingMessageState(channel, message);\n const hideMessageStatusIcon = channel?.isGroupChannel?.() && (\n (channel.isSuper || channel.isPublic || channel.isBroadcast)\n && !(status === OutgoingMessageStates.PENDING || status === OutgoingMessageStates.FAILED)\n );\n const iconType = {\n [OutgoingMessageStates.SENT]: IconTypes.DONE,\n [OutgoingMessageStates.DELIVERED]: IconTypes.DONE_ALL,\n [OutgoingMessageStates.READ]: IconTypes.DONE_ALL,\n [OutgoingMessageStates.FAILED]: IconTypes.ERROR,\n };\n const iconColor = {\n [OutgoingMessageStates.SENT]: IconColors.SENT,\n [OutgoingMessageStates.DELIVERED]: IconColors.SENT,\n [OutgoingMessageStates.READ]: IconColors.READ,\n [OutgoingMessageStates.FAILED]: IconColors.ERROR,\n };\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-message-status',\n ].join(' ')}\n >\n {(status === OutgoingMessageStates.PENDING) ? (\n <Loader\n className=\"sendbird-message-status__icon\"\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n type={IconTypes.SPINNER}\n fillColor={IconColors.PRIMARY}\n width=\"16px\"\n height=\"16px\"\n />\n </Loader>\n ) : (\n <Icon\n className={`sendbird-message-status__icon ${hideMessageStatusIcon ? 'hide-icon' : ''} ${status === OutgoingMessageStates.FAILED ? '' : 'sendbird-message-status--sent'\n }`}\n type={iconType[status] || IconTypes.ERROR}\n fillColor={iconColor[status]}\n width=\"16px\"\n height=\"16px\"\n />\n )}\n {isSentStatus(status) && (\n <Label\n className=\"sendbird-message-status__text\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {\n isDateSeparatorConsidered\n ? format(message?.createdAt || 0, 'p', { locale: dateLocale })\n : getLastMessageCreatedAt({ channel, locale: dateLocale, stringSet })\n }\n </Label>\n )}\n </div>\n );\n}\n"],"names":["getChannelTitle","channel","currentUserId","stringSet","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","userId","map","nickname","NO_NAME","join","getLastMessageCreatedAt","locale","createdAt","lastMessage","optionalParam","isToday","format","isYesterday","MESSAGE_STATUS__YESTERDAY","isThisYear","getTotalMembers","memberCount","getPrettyLastMessage","message","MAXLEN","messageType","truncateString","getLastMessage","getChannelUnreadMessageCount","unreadMessageCount","MessageStatusTypes","OutgoingMessageStates","MessageStatus","_a","className","_e","isDateSeparatorConsidered","_f","useLocalization","dateLocale","status","getOutgoingMessageState","hideMessageStatusIcon","_d","isGroupChannel","call","isSuper","isPublic","isBroadcast","PENDING","FAILED","iconType","_b","SENT","IconTypes","DONE","DELIVERED","DONE_ALL","READ","ERROR","iconColor","_c","IconColors","React","__spreadArray","Array","isArray","Loader","Icon","SPINNER","PRIMARY","concat","isSentStatus","Label","LabelTypography","CAPTION_3","LabelColors","ONBACKGROUND_2"],"mappings":";;;;;;;;;;;;;;;;;AAQO,MAAMA,eAAe,GAAG,YAA6D;AAAA,EAAA,IAAA,gBAAA,CAAA;;EAAA,IAA5DC,OAA4D,uEAAlD,EAAkD,CAAA;AAAA,EAAA,IAA9CC,aAA8C,GAAA,SAAA,CAAA,MAAA,GAAA,CAAA,GAAA,SAAA,CAAA,CAAA,CAAA,GAAA,SAAA,CAAA;EAAA,IAA/BC,SAA+B,uEAAnBC,uBAAmB,CAAA;;AAC1F,EAAA,IAAI,EAACH,OAAD,KAAA,IAAA,IAACA,OAAD,KAACA,KAAAA,CAAAA,IAAAA,OAAO,CAAEI,IAAV,CAAA,IAAkB,EAACJ,OAAD,aAACA,OAAD,KAAA,KAAA,CAAA,IAACA,OAAO,CAAEK,OAAV,CAAtB,EAAyC;IACvC,OAAOH,SAAS,CAACI,QAAjB,CAAA;AACD,GAAA;;AACD,EAAA,IAAIN,OAAO,KAAA,IAAP,IAAAA,OAAO,WAAP,IAAAA,OAAO,CAAEI,IAAT,IAAiBJ,OAAO,CAACI,IAAR,KAAiB,eAAtC,EAAuD;IACrD,OAAOJ,OAAO,CAACI,IAAf,CAAA;AACD,GAAA;;AACD,EAAA,IAAI,CAAAJ,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,CAAA,gBAAA,GAAAA,OAAO,CAAEK,OAAT,MAAA,IAAA,IAAA,gBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,gBAAA,CAAkBE,MAAlB,MAA6B,CAAjC,EAAoC;IAClC,OAAOL,SAAS,CAACM,UAAjB,CAAA;AACD,GAAA;;AACD,EAAA,OAAO,CAAC,CAAAR,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAA,KAAA,CAAP,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEK,OAAT,KAAoB,EAArB,EACJI,MADI,CACG,IAAA,IAAA;IAAA,IAAC;AAAEC,MAAAA,MAAAA;KAAH,GAAA,IAAA,CAAA;IAAA,OAAgBA,MAAM,KAAKT,aAA3B,CAAA;GADH,CAAA,CAEJU,GAFI,CAEA,KAAA,IAAA;IAAA,IAAC;AAAEC,MAAAA,QAAAA;KAAH,GAAA,KAAA,CAAA;AAAA,IAAA,OAAmBA,QAAQ,IAAIV,SAAS,CAACW,OAAzC,CAAA;AAAA,GAFA,CAGJC,CAAAA,IAHI,CAGC,IAHD,CAAP,CAAA;AAID,EAdM;AAgBA,MAAMC,uBAAuB,GAAG,KAIjC,IAAA;AAAA,EAAA,IAAA,oBAAA,CAAA;;EAAA,IAJkC;IACtCf,OADsC;IAEtCgB,MAFsC;AAGtCd,IAAAA,SAAAA;GACI,GAAA,KAAA,CAAA;EACJ,MAAMe,SAAS,GAAGjB,OAAH,KAAGA,IAAAA,IAAAA,OAAH,KAAGA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAAA,oBAAAA,GAAAA,OAAO,CAAEkB,WAAZ,MAAG,IAAA,IAAA,oBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,oBAAA,CAAsBD,SAAxC,CAAA;EACA,MAAME,aAAa,GAAGH,MAAM,GAAG;AAAEA,IAAAA,MAAAA;AAAF,GAAH,GAAgB,IAA5C,CAAA;;EACA,IAAI,CAACC,SAAL,EAAgB;AACd,IAAA,OAAO,EAAP,CAAA;AACD,GAAA;;AACD,EAAA,IAAIG,aAAO,CAACH,SAAD,CAAX,EAAwB;AACtB,IAAA,OAAOI,cAAM,CAACJ,SAAD,EAAY,GAAZ,EAAiBE,aAAjB,CAAb,CAAA;AACD,GAAA;;AACD,EAAA,IAAIG,iBAAW,CAACL,SAAD,CAAf,EAA4B;IAC1B,OAAO,CAAAf,SAAS,KAAA,IAAT,IAAAA,SAAS,KAAT,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,SAAS,CAAEqB,yBAAX,KAAwC,WAA/C,CAAA;AACD,GAAA;;AACD,EAAA,IAAIC,gBAAU,CAACP,SAAD,CAAd,EAA2B;AACzB,IAAA,OAAOI,cAAM,CAACJ,SAAD,EAAY,OAAZ,EAAqBE,aAArB,CAAb,CAAA;AACD,GAAA;;AACD,EAAA,OAAOE,cAAM,CAACJ,SAAD,EAAY,UAAZ,EAAwBE,aAAxB,CAAb,CAAA;AACD,EApBM;MAsBMM,eAAe,GAAIzB,OAAD,IAC7BA,OAAO,SAAP,IAAAA,OAAO,WAAP,IAAAA,OAAO,CAAE0B,WAAT,GACI1B,OAAO,CAAC0B,WADZ,GAEI,EAHC;;AAMP,MAAMC,oBAAoB,GAAG,YAAkB;EAAA,IAAjBC,OAAiB,uEAAP,EAAO,CAAA;EAC7C,MAAMC,MAAM,GAAG,EAAf,CAAA;EACA,MAAM;IAAEC,WAAF;AAAe1B,IAAAA,IAAAA;AAAf,GAAA,GAAwBwB,OAA9B,CAAA;;EACA,IAAIE,WAAW,KAAK,MAApB,EAA4B;AAC1B,IAAA,OAAOC,sBAAc,CAAC3B,IAAD,EAAOyB,MAAP,CAArB,CAAA;AACD,GAAA;;EACD,OAAOD,OAAO,CAACA,OAAf,CAAA;AACD,CAPD,CAAA;;AASO,MAAMI,cAAc,GAAIhC,OAAD,IAAcA,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAP,KAAA,CAAA,IAAAA,OAAO,CAAEkB,WAAT,GAAuBS,oBAAoB,CAAC3B,OAAD,KAACA,IAAAA,IAAAA,OAAD,KAACA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEkB,WAAV,CAA3C,GAAoE,GAAzG;MAEMe,4BAA4B,GAAIjC,OAAD,IAC1CA,OAAO,SAAP,IAAAA,OAAO,WAAP,IAAAA,OAAO,CAAEkC,kBAAT,GACIlC,OAAO,CAACkC,kBADZ,GAEI;;AChDC,IAAMC,kBAAkB,GAAGC,4DAA3B;AASiB,SAAAC,aAAA,CAAcC,EAAd,EAKH;;;;;AAJnB,EAAA,IAAAC,SAAS,GAAAD,EAAA,CAAAC,SAAT;AAAA,MACAX,OAAO,GAAAU,EAAA,CAAAV,OADP;AAAA,MAEA5B,OAAO,GAAAsC,EAAA,CAAAtC,OAFP;AAAA,MAGAwC,EAAgC,GAAAF,EAAA,CAAAG,yBAHhC;MAGAA,yBAAyB,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,IAAH,GAAOA,EAHhC,CAAA;;EAKM,IAAAE,EAAA,GAA4BC,mCAAe,EAA3C;AAAA,MAAEzC,SAAS,GAAAwC,EAAA,CAAAxC,SAAX;AAAA,MAAa0C,UAAU,GAAAF,EAAA,CAAAE,UAAvB,CAAA;;AACN,EAAA,IAAMC,MAAM,GAAGC,6DAAuB,CAAC9C,OAAD,EAAU4B,OAAV,CAAtC,CAAA;AACA,EAAA,IAAMmB,qBAAqB,GAAG,CAAA,CAAAC,EAAA,GAAAhD,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAEiD,cAAT,MAA2B,IAA3B,IAA2BD,EAAA,KAAA,KAAA,CAA3B,GAA2B,KAAA,CAA3B,GAA2BA,EAAA,CAAAE,IAAA,CAAAlD,OAAA,CAA3B,MAC3BA,OAAO,CAACmD,OAAR,IAAmBnD,OAAO,CAACoD,QAA3B,IAAuCpD,OAAO,CAACqD,WAAhD,CACG,IAAA,EAAER,MAAM,KAAKT,2DAAqB,CAACkB,OAAjC,IAA4CT,MAAM,KAAKT,2DAAqB,CAACmB,MAA/E,CAFL,CAAA;EAIA,IAAMC,QAAQ,IAAAC,EAAA,GAAA,EAAA,EACZA,EAAA,CAACrB,2DAAqB,CAACsB,IAAvB,CAAA,GAA8BC,iBAAS,CAACC,IAD5B,EAEZH,EAAA,CAACrB,2DAAqB,CAACyB,SAAvB,CAAA,GAAmCF,iBAAS,CAACG,QAFjC,EAGZL,EAAA,CAACrB,2DAAqB,CAAC2B,IAAvB,CAAA,GAA8BJ,iBAAS,CAACG,QAH5B,EAIZL,EAAA,CAACrB,2DAAqB,CAACmB,MAAvB,CAAA,GAAgCI,iBAAS,CAACK,KAJ9B,IAAA,CAAd,CAAA;EAMA,IAAMC,SAAS,IAAAC,EAAA,GAAA,EAAA,EACbA,EAAA,CAAC9B,2DAAqB,CAACsB,IAAvB,CAAA,GAA8BS,kBAAU,CAACT,IAD5B,EAEbQ,EAAA,CAAC9B,2DAAqB,CAACyB,SAAvB,CAAA,GAAmCM,kBAAU,CAACT,IAFjC,EAGbQ,EAAA,CAAC9B,2DAAqB,CAAC2B,IAAvB,CAAA,GAA8BI,kBAAU,CAACJ,IAH5B,EAIbG,EAAA,CAAC9B,2DAAqB,CAACmB,MAAvB,CAAA,GAAgCY,kBAAU,CAACH,KAJ9B,IAAA,CAAf,CAAA;EAOA,oBACEI,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAEC,uBAAA,CAAAA,uBAAA,CAAA,EAAA,EACLC,KAAK,CAACC,OAAN,CAAchC,SAAd,IAA2BA,SAA3B,GAAuC,CAACA,SAAD,CADlC,EAC8C,IAD9C,CAAA,EAC8C,CACvD,yBADuD,CAD9C,EAGT,KAHS,CAAA,CAGTzB,IAHS,CAGJ,GAHI,CAAA;AADb,GAAA,EAMI+B,MAAM,KAAKT,2DAAqB,CAACkB,OAAlC,gBACCc,wCAACI,SAAD,EAAA;AACE,IAAA,SAAS,EAAC,+BADZ;AAEE,IAAA,KAAK,EAAC,MAFR;AAGE,IAAA,MAAM,EAAC,MAAA;AAHT,GAAA,eAKEJ,wCAACK,kBAAD,EAAA;IACE,IAAI,EAAEd,iBAAS,CAACe,OADlB;IAEE,SAAS,EAAEP,kBAAU,CAACQ,OAFxB;AAGE,IAAA,KAAK,EAAC,MAHR;AAIE,IAAA,MAAM,EAAC,MAAA;GATX,CAAA,CADD,gBAcCP,yBAAA,CAAA,aAAA,CAACK,kBAAD,EAAA;IACE,SAAS,EAAE,uCAAA,CAAiC1B,qBAAqB,GAAG,WAAH,GAAiB,EAAvE,EAA6E,GAA7E,EAA6E6B,MAA7E,CAA6E/B,MAAM,KAAKT,2DAAqB,CAACmB,MAAjC,GAA0C,EAA1C,GAA+C,+BAA5H,CADb;IAGE,IAAI,EAAEC,QAAQ,CAACX,MAAD,CAAR,IAAoBc,iBAAS,CAACK,KAHtC;AAIE,IAAA,SAAS,EAAEC,SAAS,CAACpB,MAAD,CAJtB;AAKE,IAAA,KAAK,EAAC,MALR;AAME,IAAA,MAAM,EAAC,MAAA;AANT,GAAA,CApBJ,EA6BGgC,oBAAY,CAAChC,MAAD,CAAZ,iBACCuB,wCAACU,cAAD,EAAA;AACE,IAAA,SAAS,EAAC,+BADZ;IAEE,IAAI,EAAEC,wBAAe,CAACC,SAFxB;IAGE,KAAK,EAAEC,oBAAW,CAACC,cAAAA;GAGjBzC,EAAAA,yBAAyB,GACrBpB,cAAM,CAAC,CAAAO,OAAO,KAAP,IAAA,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEX,SAAT,KAAsB,CAAvB,EAA0B,GAA1B,EAA+B;AAAED,IAAAA,MAAM,EAAE4B,UAAAA;GAAzC,CADe,GAErB7B,uBAAuB,CAAC;AAAEf,IAAAA,OAAO,EAAAA,OAAT;AAAWgB,IAAAA,MAAM,EAAE4B,UAAnB;AAA+B1C,IAAAA,SAAS,EAAAA,SAAAA;GAAzC,CAR/B,CA9BJ,CADF,CAAA;AA6CD;;;;;;;;;;"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
4
|
var PropTypes = require('prop-types');
|
|
5
|
-
var stringSet = require('./stringSet-
|
|
5
|
+
var stringSet = require('./stringSet-1db37c33.js');
|
|
6
6
|
|
|
7
7
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
8
8
|
|
|
@@ -140,4 +140,4 @@ exports.LabelColors = LabelColors;
|
|
|
140
140
|
exports.LabelStringSet = LabelStringSet;
|
|
141
141
|
exports.LabelTypography = LabelTypography;
|
|
142
142
|
exports.changeColorToClassName = changeColorToClassName;
|
|
143
|
-
//# sourceMappingURL=index-
|
|
143
|
+
//# sourceMappingURL=index-cd6b2f18.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-cd6b2f18.js","sources":["../../src/ui/Label/types.js","../../src/ui/Label/utils.js","../../src/ui/Label/index.jsx"],"sourcesContent":["export const Typography = {\n H_1: 'H_1',\n H_2: 'H_2',\n SUBTITLE_1: 'SUBTITLE_1',\n SUBTITLE_2: 'SUBTITLE_2',\n BODY_1: 'BODY_1',\n BODY_2: 'BODY_2',\n BUTTON_1: 'BUTTON_1',\n BUTTON_2: 'BUTTON_2',\n CAPTION_1: 'CAPTION_1',\n CAPTION_2: 'CAPTION_2',\n CAPTION_3: 'CAPTION_3',\n};\n\nexport const Colors = {\n ONBACKGROUND_1: 'ONBACKGROUND_1',\n ONBACKGROUND_2: 'ONBACKGROUND_2',\n ONBACKGROUND_3: 'ONBACKGROUND_3',\n ONBACKGROUND_4: 'ONBACKGROUND_4',\n ONCONTENT_1: 'ONCONTENT_1',\n ONCONTENT_2: 'ONCONTENT_2',\n PRIMARY: 'PRIMARY',\n ERROR: 'ERROR',\n SECONDARY_3: 'SECONDARY_3',\n};\n","import { Typography, Colors } from './types';\n\nexport function changeTypographyToClassName(type) {\n switch (type) {\n case Typography.H_1: return 'sendbird-label--h-1';\n case Typography.H_2: return 'sendbird-label--h-2';\n case Typography.SUBTITLE_1: return 'sendbird-label--subtitle-1';\n case Typography.SUBTITLE_2: return 'sendbird-label--subtitle-2';\n case Typography.BODY_1: return 'sendbird-label--body-1';\n case Typography.BODY_2: return 'sendbird-label--body-2';\n case Typography.BUTTON_1: return 'sendbird-label--button-1';\n case Typography.BUTTON_2: return 'sendbird-label--button-2';\n case Typography.CAPTION_1: return 'sendbird-label--caption-1';\n case Typography.CAPTION_2: return 'sendbird-label--caption-2';\n case Typography.CAPTION_3: return 'sendbird-label--caption-3';\n default: return '';\n }\n}\n\nexport function changeColorToClassName(color) {\n switch (color) {\n case Colors.ONBACKGROUND_1: return 'sendbird-label--color-onbackground-1';\n case Colors.ONBACKGROUND_2: return 'sendbird-label--color-onbackground-2';\n case Colors.ONBACKGROUND_3: return 'sendbird-label--color-onbackground-3';\n case Colors.ONBACKGROUND_4: return 'sendbird-label--color-onbackground-4';\n case Colors.ONCONTENT_1: return 'sendbird-label--color-oncontent-1';\n case Colors.ONCONTENT_2: return 'sendbird-label--color-oncontent-2';\n case Colors.PRIMARY: return 'sendbird-label--color-primary'; // should be Primary-3 fix me\n case Colors.ERROR: return 'sendbird-label--color-error';\n case Colors.SECONDARY_3: return 'sendbird-label--color-secondary-3';\n default: return '';\n }\n}\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport './index.scss';\nimport { Typography, Colors } from './types';\nimport { changeTypographyToClassName, changeColorToClassName } from './utils';\nimport getStringSet from './stringSet';\n\nexport default function Label({\n className,\n type,\n color,\n children,\n}) {\n return (\n <span\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-label',\n type ? changeTypographyToClassName(type) : '',\n color ? changeColorToClassName(color) : '',\n ].join(' ')}\n >\n {children}\n </span>\n );\n}\n\nLabel.propTypes = {\n className: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n type: PropTypes.string,\n color: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.element,\n PropTypes.any,\n ]),\n};\n\nLabel.defaultProps = {\n className: [],\n type: '',\n color: '',\n children: null,\n};\n\nconst LabelTypography = Typography;\nconst LabelColors = Colors;\nconst LabelStringSet = getStringSet('en');\nexport { LabelTypography, LabelColors, LabelStringSet };\n"],"names":["Typography","H_1","H_2","SUBTITLE_1","SUBTITLE_2","BODY_1","BODY_2","BUTTON_1","BUTTON_2","CAPTION_1","CAPTION_2","CAPTION_3","Colors","ONBACKGROUND_1","ONBACKGROUND_2","ONBACKGROUND_3","ONBACKGROUND_4","ONCONTENT_1","ONCONTENT_2","PRIMARY","ERROR","SECONDARY_3","changeTypographyToClassName","type","changeColorToClassName","color","Label","className","children","React","Array","isArray","join","propTypes","PropTypes","oneOfType","string","arrayOf","number","element","any","defaultProps","LabelTypography","LabelColors","LabelStringSet","getStringSet"],"mappings":"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"}
|
|
@@ -5,9 +5,9 @@ var ui_PlaybackTime = require('./ui/PlaybackTime.js');
|
|
|
5
5
|
var ui_ProgressBar = require('./ui/ProgressBar.js');
|
|
6
6
|
var ui_TextButton = require('./ui/TextButton.js');
|
|
7
7
|
var ui_Icon = require('./ui/Icon.js');
|
|
8
|
-
var ui_Label = require('./index-
|
|
9
|
-
var LocalizationContext = require('./LocalizationContext-
|
|
10
|
-
var consts = require('./consts-
|
|
8
|
+
var ui_Label = require('./index-cd6b2f18.js');
|
|
9
|
+
var LocalizationContext = require('./LocalizationContext-5aceab76.js');
|
|
10
|
+
var consts = require('./consts-75b91fe9.js');
|
|
11
11
|
|
|
12
12
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
13
13
|
|
|
@@ -175,4 +175,4 @@ var VoiceMessageInput = function (_a) {
|
|
|
175
175
|
|
|
176
176
|
exports.VoiceMessageInput = VoiceMessageInput;
|
|
177
177
|
exports.VoiceMessageInputStatus = VoiceMessageInputStatus;
|
|
178
|
-
//# sourceMappingURL=index-
|
|
178
|
+
//# sourceMappingURL=index-dd6c0902.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-2c7774d0.js","sources":["../../src/ui/VoiceMessageInput/types.ts","../../src/ui/VoiceMessageInput/controlerIcons.tsx","../../src/ui/VoiceMessageInput/index.tsx"],"sourcesContent":["export const VoiceMessageInputStatus = {\n READY_TO_RECORD: 'READY_TO_RECORD',\n RECORDING: 'RECORDING',\n READY_TO_PLAY: 'READY_TO_PLAY',\n PLAYING: 'PLAYING',\n} as const;\nexport type VoiceMessageInputStatus = typeof VoiceMessageInputStatus[keyof typeof VoiceMessageInputStatus];\n","import React from 'react';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport { VoiceMessageInputStatus } from './types';\n\nexport interface ControlerIconProps {\n inputState?: VoiceMessageInputStatus;\n}\n\nexport const ControlerIcon = ({\n inputState\n}: ControlerIconProps): React.ReactElement => {\n switch (inputState) {\n case VoiceMessageInputStatus.READY_TO_RECORD: {\n return (\n <div className=\"sendbird-controler-icon record-icon\" />\n );\n }\n case VoiceMessageInputStatus.RECORDING: {\n return (\n <div className=\"sendbird-controler-icon stop-icon\" />\n );\n }\n case VoiceMessageInputStatus.READY_TO_PLAY: {\n return (\n <Icon\n className=\"sendbird-controler-icon play-icon\"\n width=\"20px\"\n height=\"20px\"\n type={IconTypes.PLAY}\n fillColor={IconColors.ON_BACKGROUND_1}\n />\n );\n }\n case VoiceMessageInputStatus.PLAYING: {\n return (\n <div className=\"sendbird-controler-icon pause-icon\">\n <div className=\"sendbird-controler-icon pause-icon-inner\"/>\n <div className=\"sendbird-controler-icon pause-icon-inner\"/>\n </div>\n );\n }\n default:\n return null;\n }\n};\n\nexport default ControlerIcon;\n","import React, { useCallback, useMemo, useState } from 'react';\nimport './index.scss';\n\nimport PlaybackTime from '../PlaybackTime';\nimport ProgressBar from '../ProgressBar';\nimport TextButton from '../TextButton';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport ControlerIcon from './controlerIcons';\nimport { VOICE_RECORDER_CLICK_BUFFER_TIME, VOICE_RECORDER_DEFAULT_MIN } from '../../utils/consts';\nimport { VoiceMessageInputStatus } from './types';\n\nexport interface VoiceMessageInputProps {\n minRecordTime?: number;\n maximumValue: number;\n currentValue?: number;\n currentType: VoiceMessageInputStatus;\n onCancelClick?: () => void;\n onControlClick?: (type: VoiceMessageInputStatus) => void;\n onSubmitClick?: () => void;\n renderCancelButton?: () => React.ReactElement;\n renderControlButton?: (type: VoiceMessageInputStatus) => React.ReactElement;\n renderSubmitButton?: () => React.ReactElement;\n}\n\nexport const VoiceMessageInput = ({\n minRecordTime = VOICE_RECORDER_DEFAULT_MIN,\n maximumValue,\n currentValue = 0,\n currentType,\n onCancelClick,\n onControlClick,\n onSubmitClick,\n renderCancelButton,\n renderControlButton,\n renderSubmitButton,\n}: VoiceMessageInputProps): React.ReactElement => {\n const [lastClickTime, setLastClickTime] = useState<number>(0);\n const isReadyToRecord = useMemo(() => currentType === VoiceMessageInputStatus.READY_TO_RECORD, [currentType]);\n const isRecording = useMemo(() => currentType === VoiceMessageInputStatus.RECORDING, [currentType]);\n const isSendButtonDisabled = useMemo(() => {\n if (currentType === VoiceMessageInputStatus.READY_TO_RECORD\n || currentType === VoiceMessageInputStatus.RECORDING\n ) {\n return minRecordTime > currentValue\n }\n return false;\n }, [currentType, minRecordTime, currentValue]);\n const isPlayMode = useMemo(() => {\n return (\n currentType === VoiceMessageInputStatus.READY_TO_PLAY\n || currentType === VoiceMessageInputStatus.PLAYING\n );\n }, [currentType]);\n const { stringSet } = useLocalization();\n\n const handleOnCancelClick = () => {\n const currentTime = Date.now();\n if (currentTime - lastClickTime > VOICE_RECORDER_CLICK_BUFFER_TIME) {\n onCancelClick();\n setLastClickTime(currentTime);\n }\n };\n const handleOnControlClick = useCallback(() => {\n const currentTime = Date.now();\n if (currentTime - lastClickTime > VOICE_RECORDER_CLICK_BUFFER_TIME) {\n onControlClick(currentType);\n setLastClickTime(currentTime);\n }\n }, [currentType]);\n const handleOnSubmitClick = () => {\n const currentTime = Date.now();\n if (currentTime - lastClickTime > VOICE_RECORDER_CLICK_BUFFER_TIME) {\n if (!isSendButtonDisabled) {\n onSubmitClick();\n }\n setLastClickTime(currentTime);\n }\n };\n\n return (\n <div className=\"sendbird-voice-message-input\">\n <div className=\"sendbird-voice-message-input__indicator\">\n <div className=\"sendbird-voice-message-input__indicator__progress-bar\">\n <ProgressBar\n className=\"sendbird-voice-message-input__indicator__progress-bar__bar\"\n disabled={isReadyToRecord}\n maxSize={maximumValue}\n currentSize={currentValue}\n />\n </div>\n {(isRecording) ? (<div className=\"sendbird-voice-message-input__indicator__on-rec\" />) : null}\n <PlaybackTime\n className=\"sendbird-voice-message-input__indicator__playback-time\"\n time={isPlayMode ? maximumValue - currentValue : currentValue}\n labelColor={isReadyToRecord ? LabelColors.ONBACKGROUND_4 : LabelColors.ONCONTENT_1}\n />\n </div>\n <div className=\"sendbird-voice-message-input__controler\">\n {\n renderCancelButton?.() || (\n <TextButton\n className=\"sendbird-voice-message-input__controler__cancel\"\n onClick={handleOnCancelClick}\n disableUnderline\n >\n <Label\n type={LabelTypography.BUTTON_1}\n color={LabelColors.PRIMARY}\n >\n {stringSet.BUTTON__CANCEL}\n </Label>\n </TextButton>\n )\n }\n {\n renderControlButton?.(currentType) || (\n <div\n className=\"sendbird-voice-message-input__controler__main\"\n onClick={handleOnControlClick}\n >\n <ControlerIcon inputState={currentType} />\n </div>\n )\n }\n {\n renderSubmitButton?.() || (\n <div\n className={`sendbird-voice-message-input__controler__submit ${isSendButtonDisabled ? 'voice-message--disabled' : ''}`}\n onClick={handleOnSubmitClick}\n >\n <Icon\n width=\"19px\"\n height=\"19px\"\n type={IconTypes.SEND}\n fillColor={isSendButtonDisabled ? IconColors.ON_BACKGROUND_4 : IconColors.CONTENT}\n />\n </div>\n )\n }\n </div>\n </div>\n );\n};\n"],"names":["VoiceMessageInputStatus","READY_TO_RECORD","RECORDING","READY_TO_PLAY","PLAYING","ControlerIcon","_a","inputState","React","Icon","IconTypes","PLAY","IconColors","ON_BACKGROUND_1","VoiceMessageInput","_b","minRecordTime","VOICE_RECORDER_DEFAULT_MIN","maximumValue","_c","currentValue","currentType","onCancelClick","onControlClick","onSubmitClick","renderCancelButton","renderControlButton","renderSubmitButton","_d","useState","lastClickTime","setLastClickTime","isReadyToRecord","useMemo","isRecording","isSendButtonDisabled","isPlayMode","stringSet","useLocalization","handleOnCancelClick","currentTime","Date","now","VOICE_RECORDER_CLICK_BUFFER_TIME","handleOnControlClick","useCallback","handleOnSubmitClick","ProgressBar","PlaybackTime","LabelColors","ONBACKGROUND_4","ONCONTENT_1","TextButton","Label","LabelTypography","BUTTON_1","PRIMARY","BUTTON__CANCEL","concat","SEND","ON_BACKGROUND_4","CONTENT"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index-dd6c0902.js","sources":["../../src/ui/VoiceMessageInput/types.ts","../../src/ui/VoiceMessageInput/controlerIcons.tsx","../../src/ui/VoiceMessageInput/index.tsx"],"sourcesContent":["export const VoiceMessageInputStatus = {\n READY_TO_RECORD: 'READY_TO_RECORD',\n RECORDING: 'RECORDING',\n READY_TO_PLAY: 'READY_TO_PLAY',\n PLAYING: 'PLAYING',\n} as const;\nexport type VoiceMessageInputStatus = typeof VoiceMessageInputStatus[keyof typeof VoiceMessageInputStatus];\n","import React from 'react';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport { VoiceMessageInputStatus } from './types';\n\nexport interface ControlerIconProps {\n inputState?: VoiceMessageInputStatus;\n}\n\nexport const ControlerIcon = ({\n inputState\n}: ControlerIconProps): React.ReactElement => {\n switch (inputState) {\n case VoiceMessageInputStatus.READY_TO_RECORD: {\n return (\n <div className=\"sendbird-controler-icon record-icon\" />\n );\n }\n case VoiceMessageInputStatus.RECORDING: {\n return (\n <div className=\"sendbird-controler-icon stop-icon\" />\n );\n }\n case VoiceMessageInputStatus.READY_TO_PLAY: {\n return (\n <Icon\n className=\"sendbird-controler-icon play-icon\"\n width=\"20px\"\n height=\"20px\"\n type={IconTypes.PLAY}\n fillColor={IconColors.ON_BACKGROUND_1}\n />\n );\n }\n case VoiceMessageInputStatus.PLAYING: {\n return (\n <div className=\"sendbird-controler-icon pause-icon\">\n <div className=\"sendbird-controler-icon pause-icon-inner\"/>\n <div className=\"sendbird-controler-icon pause-icon-inner\"/>\n </div>\n );\n }\n default:\n return null;\n }\n};\n\nexport default ControlerIcon;\n","import React, { useCallback, useMemo, useState } from 'react';\nimport './index.scss';\n\nimport PlaybackTime from '../PlaybackTime';\nimport ProgressBar from '../ProgressBar';\nimport TextButton from '../TextButton';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport ControlerIcon from './controlerIcons';\nimport { VOICE_RECORDER_CLICK_BUFFER_TIME, VOICE_RECORDER_DEFAULT_MIN } from '../../utils/consts';\nimport { VoiceMessageInputStatus } from './types';\n\nexport interface VoiceMessageInputProps {\n minRecordTime?: number;\n maximumValue: number;\n currentValue?: number;\n currentType: VoiceMessageInputStatus;\n onCancelClick?: () => void;\n onControlClick?: (type: VoiceMessageInputStatus) => void;\n onSubmitClick?: () => void;\n renderCancelButton?: () => React.ReactElement;\n renderControlButton?: (type: VoiceMessageInputStatus) => React.ReactElement;\n renderSubmitButton?: () => React.ReactElement;\n}\n\nexport const VoiceMessageInput = ({\n minRecordTime = VOICE_RECORDER_DEFAULT_MIN,\n maximumValue,\n currentValue = 0,\n currentType,\n onCancelClick,\n onControlClick,\n onSubmitClick,\n renderCancelButton,\n renderControlButton,\n renderSubmitButton,\n}: VoiceMessageInputProps): React.ReactElement => {\n const [lastClickTime, setLastClickTime] = useState<number>(0);\n const isReadyToRecord = useMemo(() => currentType === VoiceMessageInputStatus.READY_TO_RECORD, [currentType]);\n const isRecording = useMemo(() => currentType === VoiceMessageInputStatus.RECORDING, [currentType]);\n const isSendButtonDisabled = useMemo(() => {\n if (currentType === VoiceMessageInputStatus.READY_TO_RECORD\n || currentType === VoiceMessageInputStatus.RECORDING\n ) {\n return minRecordTime > currentValue\n }\n return false;\n }, [currentType, minRecordTime, currentValue]);\n const isPlayMode = useMemo(() => {\n return (\n currentType === VoiceMessageInputStatus.READY_TO_PLAY\n || currentType === VoiceMessageInputStatus.PLAYING\n );\n }, [currentType]);\n const { stringSet } = useLocalization();\n\n const handleOnCancelClick = () => {\n const currentTime = Date.now();\n if (currentTime - lastClickTime > VOICE_RECORDER_CLICK_BUFFER_TIME) {\n onCancelClick();\n setLastClickTime(currentTime);\n }\n };\n const handleOnControlClick = useCallback(() => {\n const currentTime = Date.now();\n if (currentTime - lastClickTime > VOICE_RECORDER_CLICK_BUFFER_TIME) {\n onControlClick(currentType);\n setLastClickTime(currentTime);\n }\n }, [currentType]);\n const handleOnSubmitClick = () => {\n const currentTime = Date.now();\n if (currentTime - lastClickTime > VOICE_RECORDER_CLICK_BUFFER_TIME) {\n if (!isSendButtonDisabled) {\n onSubmitClick();\n }\n setLastClickTime(currentTime);\n }\n };\n\n return (\n <div className=\"sendbird-voice-message-input\">\n <div className=\"sendbird-voice-message-input__indicator\">\n <div className=\"sendbird-voice-message-input__indicator__progress-bar\">\n <ProgressBar\n className=\"sendbird-voice-message-input__indicator__progress-bar__bar\"\n disabled={isReadyToRecord}\n maxSize={maximumValue}\n currentSize={currentValue}\n />\n </div>\n {(isRecording) ? (<div className=\"sendbird-voice-message-input__indicator__on-rec\" />) : null}\n <PlaybackTime\n className=\"sendbird-voice-message-input__indicator__playback-time\"\n time={isPlayMode ? maximumValue - currentValue : currentValue}\n labelColor={isReadyToRecord ? LabelColors.ONBACKGROUND_4 : LabelColors.ONCONTENT_1}\n />\n </div>\n <div className=\"sendbird-voice-message-input__controler\">\n {\n renderCancelButton?.() || (\n <TextButton\n className=\"sendbird-voice-message-input__controler__cancel\"\n onClick={handleOnCancelClick}\n disableUnderline\n >\n <Label\n type={LabelTypography.BUTTON_1}\n color={LabelColors.PRIMARY}\n >\n {stringSet.BUTTON__CANCEL}\n </Label>\n </TextButton>\n )\n }\n {\n renderControlButton?.(currentType) || (\n <div\n className=\"sendbird-voice-message-input__controler__main\"\n onClick={handleOnControlClick}\n >\n <ControlerIcon inputState={currentType} />\n </div>\n )\n }\n {\n renderSubmitButton?.() || (\n <div\n className={`sendbird-voice-message-input__controler__submit ${isSendButtonDisabled ? 'voice-message--disabled' : ''}`}\n onClick={handleOnSubmitClick}\n >\n <Icon\n width=\"19px\"\n height=\"19px\"\n type={IconTypes.SEND}\n fillColor={isSendButtonDisabled ? IconColors.ON_BACKGROUND_4 : IconColors.CONTENT}\n />\n </div>\n )\n }\n </div>\n </div>\n );\n};\n"],"names":["VoiceMessageInputStatus","READY_TO_RECORD","RECORDING","READY_TO_PLAY","PLAYING","ControlerIcon","_a","inputState","React","Icon","IconTypes","PLAY","IconColors","ON_BACKGROUND_1","VoiceMessageInput","_b","minRecordTime","VOICE_RECORDER_DEFAULT_MIN","maximumValue","_c","currentValue","currentType","onCancelClick","onControlClick","onSubmitClick","renderCancelButton","renderControlButton","renderSubmitButton","_d","useState","lastClickTime","setLastClickTime","isReadyToRecord","useMemo","isRecording","isSendButtonDisabled","isPlayMode","stringSet","useLocalization","handleOnCancelClick","currentTime","Date","now","VOICE_RECORDER_CLICK_BUFFER_TIME","handleOnControlClick","useCallback","handleOnSubmitClick","ProgressBar","PlaybackTime","LabelColors","ONBACKGROUND_4","ONCONTENT_1","TextButton","Label","LabelTypography","BUTTON_1","PRIMARY","BUTTON__CANCEL","concat","SEND","ON_BACKGROUND_4","CONTENT"],"mappings":"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"}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var tslib_es6 = require('./tslib.es6-
|
|
3
|
+
var tslib_es6 = require('./tslib.es6-446fe5c6.js');
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var ui_Button = require('./ui/Button.js');
|
|
6
6
|
var ui_ContextMenu = require('./ui/ContextMenu.js');
|
|
7
7
|
var ui_Icon = require('./ui/Icon.js');
|
|
8
8
|
var ui_IconButton = require('./ui/IconButton.js');
|
|
9
|
-
var ui_Label = require('./index-
|
|
10
|
-
var LocalizationContext = require('./LocalizationContext-
|
|
11
|
-
var UserProfileContext = require('./UserProfileContext-
|
|
12
|
-
require('./context-
|
|
9
|
+
var ui_Label = require('./index-cd6b2f18.js');
|
|
10
|
+
var LocalizationContext = require('./LocalizationContext-5aceab76.js');
|
|
11
|
+
var UserProfileContext = require('./UserProfileContext-b8b5eb47.js');
|
|
12
|
+
require('./context-399dd8e2.js');
|
|
13
13
|
var ui_Avatar = require('./ui/Avatar.js');
|
|
14
14
|
require('react-dom');
|
|
15
15
|
var ui_UserProfile = require('./ui/UserProfile.js');
|
|
16
16
|
require('@sendbird/chat/openChannel');
|
|
17
17
|
var ui_Modal = require('./ui/Modal.js');
|
|
18
18
|
var ui_UserListItem = require('./ui/UserListItem.js');
|
|
19
|
-
var utils = require('./utils-
|
|
19
|
+
var utils = require('./utils-e4a28ce3.js');
|
|
20
20
|
var OpenChannelSettings_context = require('./OpenChannelSettings/context.js');
|
|
21
21
|
var useSendbirdStateContext = require('./useSendbirdStateContext.js');
|
|
22
22
|
|
|
@@ -357,4 +357,4 @@ function ParticipantList(_a) {
|
|
|
357
357
|
|
|
358
358
|
exports.ParticipantList = ParticipantList;
|
|
359
359
|
exports.UserListItem = UserListItem;
|
|
360
|
-
//# sourceMappingURL=index-
|
|
360
|
+
//# sourceMappingURL=index-e189366a.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-33ef71d3.js","sources":["../../src/smart-components/OpenChannelSettings/components/ParticipantUI/ParticipantsModal.tsx","../../src/smart-components/OpenChannelSettings/components/ParticipantUI/ParticipantItem.tsx","../../src/smart-components/OpenChannelSettings/components/ParticipantUI/index.tsx"],"sourcesContent":["import React, {\n ReactElement,\n useEffect,\n useState,\n useContext,\n} from 'react';\nimport type { User } from '@sendbird/chat';\nimport type { ParticipantListQuery } from '@sendbird/chat/openChannel';\n\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { noop } from '../../../../utils/utils';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface Props {\n onCancel(): void;\n}\n\nexport default function ParticipantsModal({\n onCancel,\n}: Props): ReactElement {\n const state = useSendbirdStateContext();\n const { channel } = useOpenChannelSettingsContext();\n const { stringSet } = useContext(LocalizationContext);\n const [participants, setParticipants] = useState<Array<User> | null>([]);\n const [participantListQuery, setParticipantListQuery] = useState<ParticipantListQuery | null>(null);\n const userId = state?.config?.userId;\n const sdk = state?.stores?.sdkStore?.sdk;\n const isOperatorView = channel?.isOperator(userId);\n useEffect(() => {\n if (!channel || !channel?.createParticipantListQuery) {\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({});\n setParticipantListQuery(participantListQuery);\n participantListQuery.next().then((participantList) => {\n setParticipants(participantList);\n });\n }, []);\n return (\n <div>\n <Modal\n hideFooter\n isFullScreenOnMobile\n onCancel={() => onCancel()}\n onSubmit={noop}\n titleText={stringSet.OPEN_CHANNEL_SETTINGS__ALL_PARTICIPANTS_TITLE}\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = participantListQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n participantListQuery.next().then((fetchedParticipants) => {\n setParticipants([\n ...participants,\n ...fetchedParticipants,\n ])\n });\n }\n }}\n >\n {\n participants.map((p) => {\n const isOperator = channel?.isOperator(p.userId);\n return (\n <UserListItem\n user={p}\n key={p.userId}\n currentUser={sdk?.currentUser?.userId}\n action={\n (userId !== p.userId && isOperatorView)\n ? ({ actionRef, parentRef }) => (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentContainRef={parentRef}\n parentRef={actionRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n if (isOperator) {\n channel?.removeOperators([p.userId]).then(() => {\n closeDropdown();\n });\n } else {\n channel?.addOperators([p.userId]).then(() => {\n closeDropdown();\n });\n }\n }}\n >\n {\n isOperator\n ? stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR\n : stringSet.OPEN_CHANNEL_SETTING__MODERATION__REGISTER_AS_OPERATOR\n }\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.muteUser(p).then(() => {\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__MUTE}\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.banUser(p).then(() => {\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__BAN}\n </MenuItem>\n </MenuItems>\n )}\n />\n )\n : null\n }\n />\n )\n })\n }\n </div>\n </Modal>\n </div>\n )\n}\n","import React, {\n ReactElement,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react'\nimport type { User } from '@sendbird/chat';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\nimport { UserProfileContext } from '../../../../lib/UserProfileContext';\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport Accordion from '../../../../ui/Accordion';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport Avatar from '../../../../ui/Avatar/index';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport ParticipantsModal from './ParticipantsModal';\nimport UserProfile from '../../../../ui/UserProfile';\nimport ContextMenu, { MenuItems } from '../../../../ui/ContextMenu';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nconst SHOWN_MEMBER_MAX = 10;\n\ninterface ActionProps {\n actionRef: React.RefObject<HTMLInputElement>;\n}\ninterface UserListItemProps {\n user: User;\n currentUser?: string;\n isOperator?: boolean;\n action?(props: ActionProps): ReactElement;\n}\n\nexport const UserListItem: React.FC<UserListItemProps> = ({\n user,\n currentUser,\n isOperator,\n action,\n}: UserListItemProps) => {\n const avatarRef = useRef(null);\n const actionRef = useRef(null);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext(UserProfileContext);\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-participants-accordion__member\">\n <div className=\"sendbird-participants-accordion__member-avatar\">\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown();\n }\n }}\n ref={avatarRef}\n src={user.profileUrl}\n width={24}\n height={24}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n openLeft\n parentRef={avatarRef}\n // for catching location(x, y) of MenuItems\n parentContainRef={avatarRef}\n // for toggling more options(menus & reactions)\n closeDropdown={closeDropdown}\n style={{ paddingTop: '0px', paddingBottom: '0px' }}\n >\n {\n renderUserProfile\n ? renderUserProfile({\n user: user,\n currentUserId: currentUser,\n close: closeDropdown,\n })\n : (\n <UserProfile\n disableMessaging\n user={user}\n currentUserId={currentUser}\n onSuccess={closeDropdown}\n />\n )\n }\n </MenuItems>\n )}\n />\n </div>\n <Label\n className=\"sendbird-participants-accordion__member__title\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {user.nickname || stringSet.NO_NAME}\n {\n (currentUser === user.userId) && (\n stringSet.OPEN_CHANNEL_SETTINGS__MEMBERS__YOU\n )\n }\n </Label>\n { // if there is now nickname, display userId\n !user.nickname && (\n <Label\n className=\"sendbird-participants-accordion__member__title user-id\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {user.userId}\n </Label>\n )\n }\n {\n isOperator && (\n <Label\n className={\n `sendbird-participants-accordion__member__title\n ${user?.userId !== currentUser ? 'operator' : ''}\n ${user?.userId === currentUser ? 'self-operator' : ''}\n `\n }\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__MEMBERS__OPERATOR}\n </Label>\n )\n }\n {\n action && (\n <div\n className=\"sendbird-participants-accordion__member__action\"\n ref={actionRef}\n >\n { action({ actionRef }) }\n </div>\n )\n }\n </div>\n );\n};\n\nexport interface ParticipantsAccordionProps {\n maxMembers?: number;\n}\n\nexport default function ParticipantsAccordion(props: ParticipantsAccordionProps): ReactElement {\n const maxMembers = props?.maxMembers || SHOWN_MEMBER_MAX;\n const { channel } = useOpenChannelSettingsContext();\n const globalState = useSendbirdStateContext();\n const currentUser = globalState?.config?.userId;\n const [participants, setParticipants] = useState([]);\n const [showMoreModal, setShowMoreModal] = useState(false);\n const { stringSet } = useContext(LocalizationContext);\n\n useEffect(() => {\n if (!channel || !channel?.createParticipantListQuery) {\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({});\n participantListQuery.next().then((participantList) => {\n setParticipants(participantList);\n });\n }, [channel]);\n\n return (\n <Accordion\n className=\"sendbird-participants-accordion\"\n id=\"participants\"\n renderTitle={() => (\n <>\n <Icon\n type={IconTypes.MEMBERS}\n fillColor={IconColors.PRIMARY}\n width={24}\n height={24}\n className=\"sendbird-openchannel-settings__accordion-icon\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__PARTICIPANTS_ACCORDION_TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <div className=\"\">\n <div className=\"sendbird-participants-accordion__list\">\n {\n participants.slice(0, maxMembers).map((p) => (\n <UserListItem\n user={p}\n currentUser={currentUser}\n key={p.userId}\n />\n ))\n }\n {\n (participants && participants.length === 0)\n ? (\n <Label\n className=\"sendbird-channel-settings__empty-list\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__EMPTY_LIST}\n </Label>\n ): null\n }\n </div>\n {\n participants.length >= maxMembers && (\n <div className=\"sendbird-participants-accordion__footer\">\n <Button\n className=\"sendbird-participants-accordion__footer__all-participants\"\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => setShowMoreModal(true)}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__SEE_ALL}\n </Button>\n {\n showMoreModal && (\n <ParticipantsModal\n onCancel={() => {\n setShowMoreModal(false);\n }}\n />\n )\n }\n </div>\n )\n }\n </div>\n )}\n />\n );\n}\n","import React, {\n ReactElement,\n useContext,\n useState,\n useEffect,\n useCallback,\n} from 'react';\nimport type { User } from '@sendbird/chat';\nimport type { ParticipantListQuery } from '@sendbird/chat/openChannel';\n\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport IconButton from '../../../../ui/IconButton';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\n\nimport { UserListItem } from './ParticipantItem';\nimport ParticipantsModal from './ParticipantsModal';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface ParticipantListProps {\n isOperatorView?: boolean;\n}\n\nexport default function ParticipantList({\n isOperatorView = false,\n}: ParticipantListProps): ReactElement {\n const globalState = useSendbirdStateContext();\n const currentUserId = globalState?.config?.userId;\n const { channel } = useOpenChannelSettingsContext();\n const { stringSet } = useContext(LocalizationContext);\n const [participants, setParticipants] = useState<Array<User> | null>(null);\n const [participantListQuery, setParticipantListQuery] = useState<ParticipantListQuery | null>(null);\n const [showParticipantsModal, setShowParticipantsModal] = useState<boolean>(false);\n useEffect(() => {\n if (!channel || !channel?.createParticipantListQuery) {\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({ limit: 10 });\n setParticipantListQuery(participantListQuery);\n participantListQuery.next().then((participants) => {\n setParticipants(participants);\n });\n }, [channel]);\n const refreshList = useCallback(() => {\n if (!channel) {\n setParticipants([]);\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({ limit: 10 });\n participantListQuery.next().then((participants) => {\n setParticipants(participants);\n });\n }, [channel]);\n return (\n <div\n className=\"sendbird-openchannel-settings__participant-list\"\n onScroll={(e) => {\n const { hasNext } = participantListQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n participantListQuery.next().then((fetchedParticipants) => {\n setParticipants([\n ...participants,\n ...fetchedParticipants,\n ])\n });\n }\n }}\n >\n <div>\n {\n participants?.map((p: User) => {\n const isOperator = channel?.isOperator(p.userId);\n return (\n <UserListItem\n user={p}\n currentUser={currentUserId}\n key={p.userId}\n isOperator={isOperator}\n action={({ actionRef }) => (\n (isOperatorView && currentUserId !== p?.userId)\n ? (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-openchannel-participant-list__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={actionRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n if (isOperator) {\n channel?.removeOperators([p.userId]).then(() => {\n refreshList();\n closeDropdown();\n });\n } else {\n channel?.addOperators([p.userId]).then(() => {\n refreshList();\n closeDropdown();\n })\n }\n }}\n >\n {\n isOperator\n ? stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR\n : stringSet.OPEN_CHANNEL_SETTING__MODERATION__REGISTER_AS_OPERATOR\n }\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.muteUser(p).then(() => {\n refreshList();\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__MUTE}\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.banUser(p).then(() => {\n refreshList();\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__BAN}\n </MenuItem>\n </MenuItems>\n )}\n />\n )\n : null\n )}\n />\n );\n })\n }\n {\n (participants && participants.length === 0)\n ? (\n <Label\n className=\"sendbird-channel-settings__empty-list\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__EMPTY_LIST}\n </Label>\n ) : null\n }\n <div className=\"sendbird-openchannel-participant-list__footer\">\n {\n participantListQuery?.hasNext && (\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => setShowParticipantsModal(true)}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__ALL_PARTICIPANTS_TITLE}\n </Button>\n )\n }\n </div>\n {\n showParticipantsModal && (\n <ParticipantsModal\n onCancel={() => {\n setShowParticipantsModal(false);\n refreshList();\n }}\n />\n )\n }\n </div>\n </div>\n )\n}\n"],"names":["ParticipantsModal","_a","onCancel","state","useSendbirdStateContext","channel","useOpenChannelSettingsContext","stringSet","useContext","LocalizationContext","_e","useState","participants","setParticipants","_f","participantListQuery","setParticipantListQuery","userId","_b","config","sdk","_d","_c","stores","sdkStore","isOperatorView","isOperator","useEffect","createParticipantListQuery","next","then","participantList","React","Modal","noop","OPEN_CHANNEL_SETTINGS__ALL_PARTICIPANTS_TITLE","e","hasNext","target","fetchMore","clientHeight","scrollTop","scrollHeight","fetchedParticipants","__spreadArray","map","p","UserListItem","currentUser","actionRef","parentRef","ContextMenu","toggleDropdown","IconButton","Icon","IconTypes","MORE","IconColors","CONTENT_INVERSE","closeDropdown","MenuItems","MenuItem","removeOperators","addOperators","OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR","OPEN_CHANNEL_SETTING__MODERATION__REGISTER_AS_OPERATOR","muteUser","OPEN_CHANNEL_SETTING__MODERATION__MUTE","banUser","OPEN_CHANNEL_SETTING__MODERATION__BAN","user","action","avatarRef","useRef","UserProfileContext","disableUserProfile","renderUserProfile","Avatar","profileUrl","paddingTop","paddingBottom","currentUserId","close","UserProfile","Label","LabelTypography","SUBTITLE_2","LabelColors","ONBACKGROUND_1","nickname","NO_NAME","OPEN_CHANNEL_SETTINGS__MEMBERS__YOU","CAPTION_3","ONBACKGROUND_2","concat","OPEN_CHANNEL_SETTINGS__MEMBERS__OPERATOR","ParticipantList","globalState","showParticipantsModal","setShowParticipantsModal","limit","refreshList","useCallback","length","ONBACKGROUND_3","OPEN_CHANNEL_SETTINGS__EMPTY_LIST","Button","ButtonTypes","SECONDARY","ButtonSizes","SMALL"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAuBwB,SAAAA,iBAAA,CAAkBC,EAAlB,EAEhB;;;AADN,EAAA,IAAAC,QAAQ,GAAAD,EAAA,CAAAC,QAAR,CAAA;EAEA,IAAMC,KAAK,GAAGC,uBAAuB,EAArC,CAAA;AACQ,EAAA,IAAAC,OAAO,GAAKC,yDAA6B,EAAA,QAAzC,CAAA;AACA,EAAA,IAAAC,SAAS,GAAKC,gBAAU,CAACC,uCAAD,CAAV,UAAd,CAAA;;AACF,EAAA,IAAAC,EAAA,GAAkCC,cAAQ,CAAqB,EAArB,CAA1C;AAAA,MAACC,YAAY,GAAAF,EAAA,CAAA,CAAA,CAAb;AAAA,MAAeG,eAAe,GAAAH,EAAA,CAAA,CAAA,CAA9B,CAAA;;AACA,EAAA,IAAAI,EAAA,GAAkDH,cAAQ,CAA8B,IAA9B,CAA1D;AAAA,MAACI,oBAAoB,GAAAD,EAAA,CAAA,CAAA,CAArB;AAAA,MAAuBE,uBAAuB,GAAAF,EAAA,CAAA,CAAA,CAA9C,CAAA;;AACN,EAAA,IAAMG,MAAM,GAAG,CAAAC,EAAA,GAAAf,KAAK,KAAL,IAAA,IAAAA,KAAK,KAAL,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,KAAK,CAAEgB,MAAP,MAAe,IAAf,IAAeD,EAAA,KAAA,KAAA,CAAf,GAAe,KAAA,CAAf,GAAeA,EAAA,CAAAD,MAA9B,CAAA;EACA,IAAMG,GAAG,GAAG,CAAAC,EAAA,GAAA,CAAAC,EAAA,GAAAnB,KAAK,KAAL,IAAA,IAAAA,KAAK,KAAL,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,KAAK,CAAEoB,MAAP,MAAa,IAAb,IAAaD,EAAA,KAAA,KAAA,CAAb,GAAa,KAAA,CAAb,GAAaA,EAAA,CAAEE,QAAf,MAAuB,IAAvB,IAAuBH,EAAA,KAAA,KAAA,CAAvB,GAAuB,KAAA,CAAvB,GAAuBA,EAAA,CAAED,GAArC,CAAA;AACA,EAAA,IAAMK,cAAc,GAAGpB,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAA,KAAA,CAAP,GAAO,KAAA,CAAP,GAAAA,OAAO,CAAEqB,UAAT,CAAoBT,MAApB,CAAvB,CAAA;AACAU,EAAAA,eAAS,CAAC,YAAA;IACR,IAAI,CAACtB,OAAD,IAAY,EAACA,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAEuB,0BAAV,CAAhB,EAAsD;AACpD,MAAA,OAAA;AACD,KAAA;;AACD,IAAA,IAAMb,oBAAoB,GAAGV,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAA,KAAA,CAAP,GAAO,KAAA,CAAP,GAAAA,OAAO,CAAEuB,0BAAT,CAAoC,EAApC,CAA7B,CAAA;IACAZ,uBAAuB,CAACD,oBAAD,CAAvB,CAAA;AACAA,IAAAA,oBAAoB,CAACc,IAArB,EAAA,CAA4BC,IAA5B,CAAiC,UAACC,eAAD,EAAgB;MAC/ClB,eAAe,CAACkB,eAAD,CAAf,CAAA;KADF,CAAA,CAAA;GANO,EASN,EATM,CAAT,CAAA;EAUA,oBACEC,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA,IAAA,eACEA,wCAACC,mBAAD,EAAA;AACE,IAAA,UAAU,EADZ,IAAA;AAEE,IAAA,oBAAoB,EAFtB,IAAA;AAGE,IAAA,QAAQ,EAAE,YAAA;AAAM,MAAA,OAAA/B,QAAQ,EAAR,CAAA;KAHlB;AAIE,IAAA,QAAQ,EAAEgC,UAJZ;IAKE,SAAS,EAAE3B,SAAS,CAAC4B,6CAAAA;GAErB,eAAAH,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAC,qCADZ;IAEE,QAAQ,EAAE,UAACI,CAAD,EAAE;AACF,MAAA,IAAAC,OAAO,GAAKtB,oBAAoB,CAAAsB,OAAhC,CAAA;AACR,MAAA,IAAMC,MAAM,GAAGF,CAAC,CAACE,MAAjB,CAAA;AACA,MAAA,IAAMC,SAAS,GACbD,MAAM,CAACE,YAAP,GAAsBF,MAAM,CAACG,SAA7B,KAA2CH,MAAM,CAACI,YADpD,CAAA;;MAIA,IAAIL,OAAO,IAAIE,SAAf,EAA0B;AACxBxB,QAAAA,oBAAoB,CAACc,IAArB,EAAA,CAA4BC,IAA5B,CAAiC,UAACa,mBAAD,EAAoB;AACnD9B,UAAAA,eAAe,CACV+B,uBAAA,CAAAA,uBAAA,CAAA,EAAA,EAAAhC,YAAA,EACA,IADA,CAAA,EACA+B,mBADA,MAAA,CADU,CAAf,CAAA;SADF,CAAA,CAAA;AAMD,OAAA;AACF,KAAA;AAjBH,GAAA,EAoBI/B,YAAY,CAACiC,GAAb,CAAiB,UAACC,CAAD,EAAE;;;IACjB,IAAMpB,UAAU,GAAGrB,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAEqB,UAAT,CAAoBoB,CAAC,CAAC7B,MAAtB,CAAnB,CAAA;AACA,IAAA,oBACEe,wCAACe,eAAD,EAAA;AACE,MAAA,IAAI,EAAED,CADR;MAEE,GAAG,EAAEA,CAAC,CAAC7B,MAFT;AAGE,MAAA,WAAW,EAAE,CAAAhB,EAAA,GAAAmB,GAAG,KAAH,IAAA,IAAAA,GAAG,WAAH,SAAA,GAAAA,GAAG,CAAE4B,WAAL,MAAkB,IAAlB,IAAkB/C,EAAA,KAAA,KAAA,CAAlB,GAAkB,KAAA,CAAlB,GAAkBA,EAAA,CAAAgB,MAHjC;MAIE,MAAM,EACHA,MAAM,KAAK6B,CAAC,CAAC7B,MAAb,IAAuBQ,cAAxB,GACI,UAACxB,EAAD,EAAyB;YAAtBgD,SAAS,GAAAhD,EAAA,CAAAgD;YAAEC,SAAS,GAAAjD,EAAA,CAAAiD;AAAO,QAAA,oBAC9BlB,wCAACmB,yBAAD,EAAA;UACE,WAAW,EAAE,UAACC,cAAD,EAAoB;AAAA,YAAA,oBAC/BpB,wCAACqB,aAAD,EAAA;AACE,cAAA,SAAS,EAAC,mCADZ;AAEE,cAAA,KAAK,EAAC,MAFR;AAGE,cAAA,MAAM,EAAC,MAHT;AAIE,cAAA,OAAO,EAAED,cAAAA;AAJX,aAAA,eAMEpB,wCAACsB,kBAAD,EAAA;AACE,cAAA,KAAK,EAAC,MADR;AAEE,cAAA,MAAM,EAAC,MAFT;cAGE,IAAI,EAAEC,iBAAS,CAACC,IAHlB;cAIE,SAAS,EAAEC,kBAAU,CAACC,eAAAA;AAJxB,aAAA,CANF,CAD+B,CAAA;WADnC;UAgBE,SAAS,EAAE,UAACC,aAAD,EAAc;AAAK,YAAA,oBAC5B3B,wCAAC4B,wBAAD,EAAA;AACE,cAAA,gBAAgB,EAAEV,SADpB;AAEE,cAAA,SAAS,EAAED,SAFb;AAGE,cAAA,aAAa,EAAEU,aAHjB;cAIE,QAAQ,EAAA,IAAA;AAJV,aAAA,eAME3B,wCAAC6B,uBAAD,EAAA;AACE,cAAA,OAAO,EAAE,YAAA;AACP,gBAAA,IAAInC,UAAJ,EAAgB;kBACdrB,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAEyD,eAAT,CAAyB,CAAChB,CAAC,CAAC7B,MAAH,CAAzB,CAAA,CAAqCa,IAArC,CAA0C,YAAA;oBACxC6B,aAAa,EAAA,CAAA;AACd,mBAFD,CAAA,CAAA;AAGD,iBAJD,MAIO;kBACLtD,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAE0D,YAAT,CAAsB,CAACjB,CAAC,CAAC7B,MAAH,CAAtB,CAAA,CAAkCa,IAAlC,CAAuC,YAAA;oBACrC6B,aAAa,EAAA,CAAA;AACd,mBAFD,CAAA,CAAA;AAGD,iBAAA;AACF,eAAA;AAXH,aAAA,EAcIjC,UAAU,GACNnB,SAAS,CAACyD,qDADJ,GAENzD,SAAS,CAAC0D,sDAhBlB,CANF,eAyBEjC,yBAAA,CAAA,aAAA,CAAC6B,uBAAD,EAAA;AACE,cAAA,OAAO,EAAE,YAAA;AACPxD,gBAAAA,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAA,KAAA,CAAP,GAAO,KAAA,CAAP,GAAAA,OAAO,CAAE6D,QAAT,CAAkBpB,CAAlB,CAAqBhB,CAAAA,IAArB,CAA0B,YAAA;kBACxB6B,aAAa,EAAA,CAAA;AACd,iBAFD,CAAA,CAAA;AAGD,eAAA;AALH,aAAA,EAOGpD,SAAS,CAAC4D,sCAPb,CAzBF,eAkCEnC,wCAAC6B,uBAAD,EAAA;AACE,cAAA,OAAO,EAAE,YAAA;AACPxD,gBAAAA,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAA,KAAA,CAAP,GAAO,KAAA,CAAP,GAAAA,OAAO,CAAE+D,OAAT,CAAiBtB,CAAjB,CAAoBhB,CAAAA,IAApB,CAAyB,YAAA;kBACvB6B,aAAa,EAAA,CAAA;AACd,iBAFD,CAAA,CAAA;AAGD,eAAA;AALH,aAAA,EAOGpD,SAAS,CAAC8D,qCAPb,CAlCF,CAD4B,CAAA;AA6C7B,WAAA;SA9D2B,CAAA,CAAA;AAgE/B,OAjEH,GAkEI,IAAA;KAxEV,CAAA,CAAA;GAFF,CApBJ,CAPF,CADF,CADF,CAAA;AAiHD;;AC3HYtB,IAAAA,YAAY,GAAgC,UAAC9C,EAAD,EAKrC;MAJlBqE,IAAI,GAAArE,EAAA,CAAAqE;MACJtB,WAAW,GAAA/C,EAAA,CAAA+C;MACXtB,UAAU,GAAAzB,EAAA,CAAAyB;MACV6C,MAAM,GAAAtE,EAAA,CAAAsE;AAEN,EAAA,IAAMC,SAAS,GAAGC,YAAM,CAAC,IAAD,CAAxB,CAAA;AACA,EAAA,IAAMxB,SAAS,GAAGwB,YAAM,CAAC,IAAD,CAAxB,CAAA;;AACM,EAAA,IAAAvD,EAAA,GAGFV,gBAAU,CAACkE,qCAAD,CAHR;AAAA,MACJC,kBAAkB,GAAAzD,EAAA,CAAAyD,kBADd;AAAA,MAEJC,iBAAiB,GAAA1D,EAAA,CAAA0D,iBAFb,CAAA;;AAIE,EAAA,IAAArE,SAAS,GAAKC,gBAAU,CAACC,uCAAD,CAAV,UAAd,CAAA;EACR,oBACEuB,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,yCAAA;GACb,eAAAA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,gDAAA;AAAf,GAAA,eACEA,wCAACmB,yBAAD,EAAA;IACE,WAAW,EAAE,UAACC,cAAD,EAAoB;AAAA,MAAA,oBAC/BpB,wCAAC6C,oBAAD,EAAA;AACE,QAAA,OAAO,EAAE,YAAA;UACP,IAAI,CAACF,kBAAL,EAAyB;YACvBvB,cAAc,EAAA,CAAA;AACf,WAAA;SAJL;AAME,QAAA,GAAG,EAAEoB,SANP;QAOE,GAAG,EAAEF,IAAI,CAACQ,UAPZ;AAQE,QAAA,KAAK,EAAE,EART;AASE,QAAA,MAAM,EAAE,EAAA;OAVqB,CAAA,CAAA;KADnC;IAcE,SAAS,EAAE,UAACnB,aAAD;AAAmB,MAAA,oBAC5B3B,wCAAC4B,wBAAD,EAAA;AACE,QAAA,QAAQ,EADV,IAAA;QAEE,SAAS,EAAEY,SAFb;AAAA;QAIE,gBAAgB,EAAEA,SAJpB;AAAA;AAME,QAAA,aAAa,EAAEb,aANjB;AAOE,QAAA,KAAK,EAAE;AAAEoB,UAAAA,UAAU,EAAE,KAAd;AAAqBC,UAAAA,aAAa,EAAE,KAAA;AAApC,SAAA;OAGLJ,EAAAA,iBAAiB,GACbA,iBAAiB,CAAC;AAClBN,QAAAA,IAAI,EAAEA,IADY;AAElBW,QAAAA,aAAa,EAAEjC,WAFG;AAGlBkC,QAAAA,KAAK,EAAEvB,aAAAA;OAHU,CADJ,gBAOb3B,yBAAA,CAAA,aAAA,CAACmD,cAAD,EAAA;AACE,QAAA,gBAAgB,EADlB,IAAA;AAEE,QAAA,IAAI,EAAEb,IAFR;AAGE,QAAA,aAAa,EAAEtB,WAHjB;AAIE,QAAA,SAAS,EAAEW,aAAAA;AAJb,OAAA,CAjBR,CAD4B,CAAA;AA2B7B,KAAA;GA1CL,CAAA,CADF,eA8CE3B,yBAAA,CAAA,aAAA,CAACoD,cAAD,EAAA;AACE,IAAA,SAAS,EAAC,gDADZ;IAEE,IAAI,EAAEC,wBAAe,CAACC,UAFxB;IAGE,KAAK,EAAEC,oBAAW,CAACC,cAAAA;AAHrB,GAAA,EAKGlB,IAAI,CAACmB,QAAL,IAAiBlF,SAAS,CAACmF,OAL9B,EAOK1C,WAAW,KAAKsB,IAAI,CAACrD,MAAtB,IACEV,SAAS,CAACoF,mCARhB,CA9CF;AA2DI,EAAA,CAACrB,IAAI,CAACmB,QAAN,iBACEzD,wCAACoD,cAAD,EAAA;AACE,IAAA,SAAS,EAAC,wDADZ;IAEE,IAAI,EAAEC,wBAAe,CAACO,SAFxB;IAGE,KAAK,EAAEL,oBAAW,CAACM,cAAAA;GAElBvB,EAAAA,IAAI,CAACrD,MALR,CA5DN,EAsEIS,UAAU,iBACRM,wCAACoD,cAAD,EAAA;IACE,SAAS,EACP,kEAAAU,CAAAA,MAAA,CACI,CAAAxB,IAAI,SAAJ,IAAAA,IAAI,KAAA,KAAA,CAAJ,GAAI,KAAA,CAAJ,GAAAA,IAAI,CAAErD,MAAN,MAAiB+B,WAAjB,GAA+B,UAA/B,GAA4C,EADhD,EACkD,oBADlD,CACkD8C,CAAAA,MADlD,CAEI,CAAAxB,IAAI,KAAA,IAAJ,IAAAA,IAAI,KAAA,KAAA,CAAJ,GAAI,KAAA,CAAJ,GAAAA,IAAI,CAAErD,MAAN,MAAiB+B,WAAjB,GAA+B,eAA/B,GAAiD,EAFrD,EAGC,kBAHD,CAFJ;IAOE,IAAI,EAAEqC,wBAAe,CAACC,UAPxB;IAQE,KAAK,EAAEC,oBAAW,CAACM,cAAAA;AARrB,GAAA,EAUGtF,SAAS,CAACwF,wCAVb,CAvEN,EAsFIxB,MAAM,iBACJvC,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAC,iDADZ;AAEE,IAAA,GAAG,EAAEiB,SAAAA;AAFP,GAAA,EAIIsB,MAAM,CAAC;AAAEtB,IAAAA,SAAS,EAAAA,SAAAA;GAAZ,CAJV,CAvFN,CADF,CAAA;AAkGD;;ACvHuB,SAAA+C,eAAA,CAAgB/F,EAAhB,EAED;;;AADrB,EAAA,IAAAqB,EAAA,GAAArB,EAAA,CAAAwB,cAAA;MAAAA,cAAc,GAAGH,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,GAAKA,EAAtB,CAAA;EAEA,IAAM2E,WAAW,GAAG7F,uBAAuB,EAA3C,CAAA;AACA,EAAA,IAAM6E,aAAa,GAAG,CAAA/D,EAAA,GAAA+E,WAAW,KAAX,IAAA,IAAAA,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,WAAW,CAAE9E,MAAb,MAAqB,IAArB,IAAqBD,EAAA,KAAA,KAAA,CAArB,GAAqB,KAAA,CAArB,GAAqBA,EAAA,CAAAD,MAA3C,CAAA;AACQ,EAAA,IAAAZ,OAAO,GAAKC,yDAA6B,EAAA,QAAzC,CAAA;AACA,EAAA,IAAAC,SAAS,GAAKC,gBAAU,CAACC,uCAAD,CAAV,UAAd,CAAA;;AACF,EAAA,IAAAY,EAAA,GAAkCV,cAAQ,CAAqB,IAArB,CAA1C;AAAA,MAACC,YAAY,GAAAS,EAAA,CAAA,CAAA,CAAb;AAAA,MAAeR,eAAe,GAAAQ,EAAA,CAAA,CAAA,CAA9B,CAAA;;AACA,EAAA,IAAAX,EAAA,GAAkDC,cAAQ,CAA8B,IAA9B,CAA1D;AAAA,MAACI,oBAAoB,GAAAL,EAAA,CAAA,CAAA,CAArB;AAAA,MAAuBM,uBAAuB,GAAAN,EAAA,CAAA,CAAA,CAA9C,CAAA;;AACA,EAAA,IAAAI,EAAA,GAAoDH,cAAQ,CAAU,KAAV,CAA5D;AAAA,MAACuF,qBAAqB,GAAApF,EAAA,CAAA,CAAA,CAAtB;AAAA,MAAwBqF,wBAAwB,GAAArF,EAAA,CAAA,CAAA,CAAhD,CAAA;;AACNa,EAAAA,eAAS,CAAC,YAAA;IACR,IAAI,CAACtB,OAAD,IAAY,EAACA,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAEuB,0BAAV,CAAhB,EAAsD;AACpD,MAAA,OAAA;AACD,KAAA;;AACD,IAAA,IAAMb,oBAAoB,GAAGV,OAAO,KAAP,IAAA,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEuB,0BAAT,CAAoC;AAAEwE,MAAAA,KAAK,EAAE,EAAA;AAAT,KAApC,CAA7B,CAAA;IACApF,uBAAuB,CAACD,oBAAD,CAAvB,CAAA;AACAA,IAAAA,oBAAoB,CAACc,IAArB,EAAA,CAA4BC,IAA5B,CAAiC,UAAClB,YAAD,EAAa;MAC5CC,eAAe,CAACD,YAAD,CAAf,CAAA;KADF,CAAA,CAAA;AAGD,GATQ,EASN,CAACP,OAAD,CATM,CAAT,CAAA;AAUA,EAAA,IAAMgG,WAAW,GAAGC,iBAAW,CAAC,YAAA;IAC9B,IAAI,CAACjG,OAAL,EAAc;MACZQ,eAAe,CAAC,EAAD,CAAf,CAAA;AACA,MAAA,OAAA;AACD,KAAA;;AACD,IAAA,IAAME,oBAAoB,GAAGV,OAAO,KAAP,IAAA,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEuB,0BAAT,CAAoC;AAAEwE,MAAAA,KAAK,EAAE,EAAA;AAAT,KAApC,CAA7B,CAAA;AACArF,IAAAA,oBAAoB,CAACc,IAArB,EAAA,CAA4BC,IAA5B,CAAiC,UAAClB,YAAD,EAAa;MAC5CC,eAAe,CAACD,YAAD,CAAf,CAAA;KADF,CAAA,CAAA;AAGD,GAT8B,EAS5B,CAACP,OAAD,CAT4B,CAA/B,CAAA;EAUA,oBACE2B,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAC,iDADZ;IAEE,QAAQ,EAAE,UAACI,CAAD,EAAE;AACF,MAAA,IAAAC,OAAO,GAAKtB,oBAAoB,CAAAsB,OAAhC,CAAA;AACR,MAAA,IAAMC,MAAM,GAAGF,CAAC,CAACE,MAAjB,CAAA;AACA,MAAA,IAAMC,SAAS,GACbD,MAAM,CAACE,YAAP,GAAsBF,MAAM,CAACG,SAA7B,KAA2CH,MAAM,CAACI,YADpD,CAAA;;MAIA,IAAIL,OAAO,IAAIE,SAAf,EAA0B;AACxBxB,QAAAA,oBAAoB,CAACc,IAArB,EAAA,CAA4BC,IAA5B,CAAiC,UAACa,mBAAD,EAAoB;AACnD9B,UAAAA,eAAe,CACV+B,uBAAA,CAAAA,uBAAA,CAAA,EAAA,EAAAhC,YAAA,EACA,IADA,CAAA,EACA+B,mBADA,MAAA,CADU,CAAf,CAAA;SADF,CAAA,CAAA;AAMD,OAAA;AACF,KAAA;AAjBH,GAAA,eAmBEX,qDAEIpB,YAAY,SAAZ,IAAAA,YAAY,KAAA,KAAA,CAAZ,GAAY,KAAA,CAAZ,GAAAA,YAAY,CAAEiC,GAAd,CAAkB,UAACC,CAAD,EAAQ;IACxB,IAAMpB,UAAU,GAAGrB,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAEqB,UAAT,CAAoBoB,CAAC,CAAC7B,MAAtB,CAAnB,CAAA;AACA,IAAA,oBACEe,wCAAC,YAAD,EAAA;AACE,MAAA,IAAI,EAAEc,CADR;AAEE,MAAA,WAAW,EAAEmC,aAFf;MAGE,GAAG,EAAEnC,CAAC,CAAC7B,MAHT;AAIE,MAAA,UAAU,EAAES,UAJd;MAKE,MAAM,EAAE,UAACzB,EAAD,EAAc;AAAX,QAAA,IAAAgD,SAAS,GAAAhD,EAAA,CAAAgD,SAAT,CAAA;QAAgB,OACxBxB,cAAc,IAAIwD,aAAa,MAAKnC,CAAC,KAAD,IAAA,IAAAA,CAAC,KAAD,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,CAAC,CAAE7B,MAAR,CAAhC,gBAEIe,yBAAA,CAAA,aAAA,CAACmB,yBAAD,EAAA;UACE,WAAW,EAAE,UAACC,cAAD,EAAe;AAAK,YAAA,oBAC/BpB,wCAACqB,aAAD,EAAA;AACE,cAAA,SAAS,EAAC,6CADZ;AAEE,cAAA,KAAK,EAAC,MAFR;AAGE,cAAA,MAAM,EAAC,MAHT;AAIE,cAAA,OAAO,EAAED,cAAAA;AAJX,aAAA,eAMEpB,wCAACsB,kBAAD,EAAA;AACE,cAAA,KAAK,EAAC,MADR;AAEE,cAAA,MAAM,EAAC,MAFT;cAGE,IAAI,EAAEC,iBAAS,CAACC,IAHlB;cAIE,SAAS,EAAEC,kBAAU,CAACC,eAAAA;AAJxB,aAAA,CANF,CAD+B,CAAA;WADnC;UAgBE,SAAS,EAAE,UAACC,aAAD;AAAmB,YAAA,oBAC5B3B,wCAAC4B,wBAAD,EAAA;AACE,cAAA,SAAS,EAAEX,SADb;AAEE,cAAA,aAAa,EAAEU,aAFjB;cAGE,QAAQ,EAAA,IAAA;AAHV,aAAA,eAKE3B,wCAAC6B,uBAAD,EAAA;AACE,cAAA,OAAO,EAAE,YAAA;AACP,gBAAA,IAAInC,UAAJ,EAAgB;kBACdrB,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAEyD,eAAT,CAAyB,CAAChB,CAAC,CAAC7B,MAAH,CAAzB,CAAA,CAAqCa,IAArC,CAA0C,YAAA;oBACxCuE,WAAW,EAAA,CAAA;oBACX1C,aAAa,EAAA,CAAA;AACd,mBAHD,CAAA,CAAA;AAID,iBALD,MAKO;kBACLtD,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAE0D,YAAT,CAAsB,CAACjB,CAAC,CAAC7B,MAAH,CAAtB,CAAA,CAAkCa,IAAlC,CAAuC,YAAA;oBACrCuE,WAAW,EAAA,CAAA;oBACX1C,aAAa,EAAA,CAAA;AACd,mBAHD,CAAA,CAAA;AAID,iBAAA;AACF,eAAA;AAbH,aAAA,EAgBIjC,UAAU,GACNnB,SAAS,CAACyD,qDADJ,GAENzD,SAAS,CAAC0D,sDAlBlB,CALF,eA0BEjC,yBAAA,CAAA,aAAA,CAAC6B,uBAAD,EAAA;AACE,cAAA,OAAO,EAAE,YAAA;AACPxD,gBAAAA,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAA,KAAA,CAAP,GAAO,KAAA,CAAP,GAAAA,OAAO,CAAE6D,QAAT,CAAkBpB,CAAlB,CAAqBhB,CAAAA,IAArB,CAA0B,YAAA;kBACxBuE,WAAW,EAAA,CAAA;kBACX1C,aAAa,EAAA,CAAA;AACd,iBAHD,CAAA,CAAA;AAID,eAAA;AANH,aAAA,EAQGpD,SAAS,CAAC4D,sCARb,CA1BF,eAoCEnC,wCAAC6B,uBAAD,EAAA;AACE,cAAA,OAAO,EAAE,YAAA;AACPxD,gBAAAA,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAA,KAAA,CAAP,GAAO,KAAA,CAAP,GAAAA,OAAO,CAAE+D,OAAT,CAAiBtB,CAAjB,CAAoBhB,CAAAA,IAApB,CAAyB,YAAA;kBACvBuE,WAAW,EAAA,CAAA;kBACX1C,aAAa,EAAA,CAAA;AACd,iBAHD,CAAA,CAAA;AAID,eAAA;AANH,aAAA,EAQGpD,SAAS,CAAC8D,qCARb,CApCF,CAD4B,CAAA;AAgD7B,WAAA;AAhEH,SAAA,CAFJ,GAqEI,IAtEqB,CAAA;AAuE1B,OAAA;KA7EL,CAAA,CAAA;GAFF,CAFJ,EAuFKzD,YAAY,IAAIA,YAAY,CAAC2F,MAAb,KAAwB,CAAzC,gBAEIvE,yBAAA,CAAA,aAAA,CAACoD,cAAD,EAAA;AACE,IAAA,SAAS,EAAC,uCADZ;IAEE,IAAI,EAAEC,wBAAe,CAACC,UAFxB;IAGE,KAAK,EAAEC,oBAAW,CAACiB,cAAAA;AAHrB,GAAA,EAKGjG,SAAS,CAACkG,iCALb,CAFJ,GASM,IAhGV,eAkGEzE,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,+CAAA;AAAf,GAAA,EAEI,CAAAjB,oBAAoB,KAAA,IAApB,IAAAA,oBAAoB,KAApB,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,oBAAoB,CAAEsB,OAAtB,kBACEL,wCAAC0E,oBAAD,EAAA;IACE,IAAI,EAAEC,qBAAW,CAACC,SADpB;IAEE,IAAI,EAAEC,qBAAW,CAACC,KAFpB;AAGE,IAAA,OAAO,EAAE,YAAM;MAAA,OAAAX,wBAAwB,CAAC,IAAD,CAAxB,CAAA;AAA8B,KAAA;GAE5C5F,EAAAA,SAAS,CAAC4B,6CALb,CAHN,CAlGF,EAgHI+D,qBAAqB,iBACnBlE,yBAAA,CAAA,aAAA,CAAC,iBAAD,EAAA;AACE,IAAA,QAAQ,EAAE,YAAA;MACRmE,wBAAwB,CAAC,KAAD,CAAxB,CAAA;MACAE,WAAW,EAAA,CAAA;AACZ,KAAA;AAJH,GAAA,CAjHN,CAnBF,CADF,CAAA;AAgJD;;;;;"}
|
|
1
|
+
{"version":3,"file":"index-e189366a.js","sources":["../../src/smart-components/OpenChannelSettings/components/ParticipantUI/ParticipantsModal.tsx","../../src/smart-components/OpenChannelSettings/components/ParticipantUI/ParticipantItem.tsx","../../src/smart-components/OpenChannelSettings/components/ParticipantUI/index.tsx"],"sourcesContent":["import React, {\n ReactElement,\n useEffect,\n useState,\n useContext,\n} from 'react';\nimport type { User } from '@sendbird/chat';\nimport type { ParticipantListQuery } from '@sendbird/chat/openChannel';\n\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { noop } from '../../../../utils/utils';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface Props {\n onCancel(): void;\n}\n\nexport default function ParticipantsModal({\n onCancel,\n}: Props): ReactElement {\n const state = useSendbirdStateContext();\n const { channel } = useOpenChannelSettingsContext();\n const { stringSet } = useContext(LocalizationContext);\n const [participants, setParticipants] = useState<Array<User> | null>([]);\n const [participantListQuery, setParticipantListQuery] = useState<ParticipantListQuery | null>(null);\n const userId = state?.config?.userId;\n const sdk = state?.stores?.sdkStore?.sdk;\n const isOperatorView = channel?.isOperator(userId);\n useEffect(() => {\n if (!channel || !channel?.createParticipantListQuery) {\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({});\n setParticipantListQuery(participantListQuery);\n participantListQuery.next().then((participantList) => {\n setParticipants(participantList);\n });\n }, []);\n return (\n <div>\n <Modal\n hideFooter\n isFullScreenOnMobile\n onCancel={() => onCancel()}\n onSubmit={noop}\n titleText={stringSet.OPEN_CHANNEL_SETTINGS__ALL_PARTICIPANTS_TITLE}\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = participantListQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n participantListQuery.next().then((fetchedParticipants) => {\n setParticipants([\n ...participants,\n ...fetchedParticipants,\n ])\n });\n }\n }}\n >\n {\n participants.map((p) => {\n const isOperator = channel?.isOperator(p.userId);\n return (\n <UserListItem\n user={p}\n key={p.userId}\n currentUser={sdk?.currentUser?.userId}\n action={\n (userId !== p.userId && isOperatorView)\n ? ({ actionRef, parentRef }) => (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentContainRef={parentRef}\n parentRef={actionRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n if (isOperator) {\n channel?.removeOperators([p.userId]).then(() => {\n closeDropdown();\n });\n } else {\n channel?.addOperators([p.userId]).then(() => {\n closeDropdown();\n });\n }\n }}\n >\n {\n isOperator\n ? stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR\n : stringSet.OPEN_CHANNEL_SETTING__MODERATION__REGISTER_AS_OPERATOR\n }\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.muteUser(p).then(() => {\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__MUTE}\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.banUser(p).then(() => {\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__BAN}\n </MenuItem>\n </MenuItems>\n )}\n />\n )\n : null\n }\n />\n )\n })\n }\n </div>\n </Modal>\n </div>\n )\n}\n","import React, {\n ReactElement,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react'\nimport type { User } from '@sendbird/chat';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\nimport { UserProfileContext } from '../../../../lib/UserProfileContext';\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport Accordion from '../../../../ui/Accordion';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport Avatar from '../../../../ui/Avatar/index';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport ParticipantsModal from './ParticipantsModal';\nimport UserProfile from '../../../../ui/UserProfile';\nimport ContextMenu, { MenuItems } from '../../../../ui/ContextMenu';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nconst SHOWN_MEMBER_MAX = 10;\n\ninterface ActionProps {\n actionRef: React.RefObject<HTMLInputElement>;\n}\ninterface UserListItemProps {\n user: User;\n currentUser?: string;\n isOperator?: boolean;\n action?(props: ActionProps): ReactElement;\n}\n\nexport const UserListItem: React.FC<UserListItemProps> = ({\n user,\n currentUser,\n isOperator,\n action,\n}: UserListItemProps) => {\n const avatarRef = useRef(null);\n const actionRef = useRef(null);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext(UserProfileContext);\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-participants-accordion__member\">\n <div className=\"sendbird-participants-accordion__member-avatar\">\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown();\n }\n }}\n ref={avatarRef}\n src={user.profileUrl}\n width={24}\n height={24}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n openLeft\n parentRef={avatarRef}\n // for catching location(x, y) of MenuItems\n parentContainRef={avatarRef}\n // for toggling more options(menus & reactions)\n closeDropdown={closeDropdown}\n style={{ paddingTop: '0px', paddingBottom: '0px' }}\n >\n {\n renderUserProfile\n ? renderUserProfile({\n user: user,\n currentUserId: currentUser,\n close: closeDropdown,\n })\n : (\n <UserProfile\n disableMessaging\n user={user}\n currentUserId={currentUser}\n onSuccess={closeDropdown}\n />\n )\n }\n </MenuItems>\n )}\n />\n </div>\n <Label\n className=\"sendbird-participants-accordion__member__title\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {user.nickname || stringSet.NO_NAME}\n {\n (currentUser === user.userId) && (\n stringSet.OPEN_CHANNEL_SETTINGS__MEMBERS__YOU\n )\n }\n </Label>\n { // if there is now nickname, display userId\n !user.nickname && (\n <Label\n className=\"sendbird-participants-accordion__member__title user-id\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {user.userId}\n </Label>\n )\n }\n {\n isOperator && (\n <Label\n className={\n `sendbird-participants-accordion__member__title\n ${user?.userId !== currentUser ? 'operator' : ''}\n ${user?.userId === currentUser ? 'self-operator' : ''}\n `\n }\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__MEMBERS__OPERATOR}\n </Label>\n )\n }\n {\n action && (\n <div\n className=\"sendbird-participants-accordion__member__action\"\n ref={actionRef}\n >\n { action({ actionRef }) }\n </div>\n )\n }\n </div>\n );\n};\n\nexport interface ParticipantsAccordionProps {\n maxMembers?: number;\n}\n\nexport default function ParticipantsAccordion(props: ParticipantsAccordionProps): ReactElement {\n const maxMembers = props?.maxMembers || SHOWN_MEMBER_MAX;\n const { channel } = useOpenChannelSettingsContext();\n const globalState = useSendbirdStateContext();\n const currentUser = globalState?.config?.userId;\n const [participants, setParticipants] = useState([]);\n const [showMoreModal, setShowMoreModal] = useState(false);\n const { stringSet } = useContext(LocalizationContext);\n\n useEffect(() => {\n if (!channel || !channel?.createParticipantListQuery) {\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({});\n participantListQuery.next().then((participantList) => {\n setParticipants(participantList);\n });\n }, [channel]);\n\n return (\n <Accordion\n className=\"sendbird-participants-accordion\"\n id=\"participants\"\n renderTitle={() => (\n <>\n <Icon\n type={IconTypes.MEMBERS}\n fillColor={IconColors.PRIMARY}\n width={24}\n height={24}\n className=\"sendbird-openchannel-settings__accordion-icon\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__PARTICIPANTS_ACCORDION_TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <div className=\"\">\n <div className=\"sendbird-participants-accordion__list\">\n {\n participants.slice(0, maxMembers).map((p) => (\n <UserListItem\n user={p}\n currentUser={currentUser}\n key={p.userId}\n />\n ))\n }\n {\n (participants && participants.length === 0)\n ? (\n <Label\n className=\"sendbird-channel-settings__empty-list\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__EMPTY_LIST}\n </Label>\n ): null\n }\n </div>\n {\n participants.length >= maxMembers && (\n <div className=\"sendbird-participants-accordion__footer\">\n <Button\n className=\"sendbird-participants-accordion__footer__all-participants\"\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => setShowMoreModal(true)}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__SEE_ALL}\n </Button>\n {\n showMoreModal && (\n <ParticipantsModal\n onCancel={() => {\n setShowMoreModal(false);\n }}\n />\n )\n }\n </div>\n )\n }\n </div>\n )}\n />\n );\n}\n","import React, {\n ReactElement,\n useContext,\n useState,\n useEffect,\n useCallback,\n} from 'react';\nimport type { User } from '@sendbird/chat';\nimport type { ParticipantListQuery } from '@sendbird/chat/openChannel';\n\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport IconButton from '../../../../ui/IconButton';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\n\nimport { UserListItem } from './ParticipantItem';\nimport ParticipantsModal from './ParticipantsModal';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface ParticipantListProps {\n isOperatorView?: boolean;\n}\n\nexport default function ParticipantList({\n isOperatorView = false,\n}: ParticipantListProps): ReactElement {\n const globalState = useSendbirdStateContext();\n const currentUserId = globalState?.config?.userId;\n const { channel } = useOpenChannelSettingsContext();\n const { stringSet } = useContext(LocalizationContext);\n const [participants, setParticipants] = useState<Array<User> | null>(null);\n const [participantListQuery, setParticipantListQuery] = useState<ParticipantListQuery | null>(null);\n const [showParticipantsModal, setShowParticipantsModal] = useState<boolean>(false);\n useEffect(() => {\n if (!channel || !channel?.createParticipantListQuery) {\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({ limit: 10 });\n setParticipantListQuery(participantListQuery);\n participantListQuery.next().then((participants) => {\n setParticipants(participants);\n });\n }, [channel]);\n const refreshList = useCallback(() => {\n if (!channel) {\n setParticipants([]);\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({ limit: 10 });\n participantListQuery.next().then((participants) => {\n setParticipants(participants);\n });\n }, [channel]);\n return (\n <div\n className=\"sendbird-openchannel-settings__participant-list\"\n onScroll={(e) => {\n const { hasNext } = participantListQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n participantListQuery.next().then((fetchedParticipants) => {\n setParticipants([\n ...participants,\n ...fetchedParticipants,\n ])\n });\n }\n }}\n >\n <div>\n {\n participants?.map((p: User) => {\n const isOperator = channel?.isOperator(p.userId);\n return (\n <UserListItem\n user={p}\n currentUser={currentUserId}\n key={p.userId}\n isOperator={isOperator}\n action={({ actionRef }) => (\n (isOperatorView && currentUserId !== p?.userId)\n ? (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-openchannel-participant-list__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={actionRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n if (isOperator) {\n channel?.removeOperators([p.userId]).then(() => {\n refreshList();\n closeDropdown();\n });\n } else {\n channel?.addOperators([p.userId]).then(() => {\n refreshList();\n closeDropdown();\n })\n }\n }}\n >\n {\n isOperator\n ? stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR\n : stringSet.OPEN_CHANNEL_SETTING__MODERATION__REGISTER_AS_OPERATOR\n }\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.muteUser(p).then(() => {\n refreshList();\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__MUTE}\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.banUser(p).then(() => {\n refreshList();\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__BAN}\n </MenuItem>\n </MenuItems>\n )}\n />\n )\n : null\n )}\n />\n );\n })\n }\n {\n (participants && participants.length === 0)\n ? (\n <Label\n className=\"sendbird-channel-settings__empty-list\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__EMPTY_LIST}\n </Label>\n ) : null\n }\n <div className=\"sendbird-openchannel-participant-list__footer\">\n {\n participantListQuery?.hasNext && (\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => setShowParticipantsModal(true)}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__ALL_PARTICIPANTS_TITLE}\n </Button>\n )\n }\n </div>\n {\n showParticipantsModal && (\n <ParticipantsModal\n onCancel={() => {\n setShowParticipantsModal(false);\n refreshList();\n }}\n />\n )\n }\n </div>\n </div>\n )\n}\n"],"names":["ParticipantsModal","_a","onCancel","state","useSendbirdStateContext","channel","useOpenChannelSettingsContext","stringSet","useContext","LocalizationContext","_e","useState","participants","setParticipants","_f","participantListQuery","setParticipantListQuery","userId","_b","config","sdk","_d","_c","stores","sdkStore","isOperatorView","isOperator","useEffect","createParticipantListQuery","next","then","participantList","React","Modal","noop","OPEN_CHANNEL_SETTINGS__ALL_PARTICIPANTS_TITLE","e","hasNext","target","fetchMore","clientHeight","scrollTop","scrollHeight","fetchedParticipants","__spreadArray","map","p","UserListItem","currentUser","actionRef","parentRef","ContextMenu","toggleDropdown","IconButton","Icon","IconTypes","MORE","IconColors","CONTENT_INVERSE","closeDropdown","MenuItems","MenuItem","removeOperators","addOperators","OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR","OPEN_CHANNEL_SETTING__MODERATION__REGISTER_AS_OPERATOR","muteUser","OPEN_CHANNEL_SETTING__MODERATION__MUTE","banUser","OPEN_CHANNEL_SETTING__MODERATION__BAN","user","action","avatarRef","useRef","UserProfileContext","disableUserProfile","renderUserProfile","Avatar","profileUrl","paddingTop","paddingBottom","currentUserId","close","UserProfile","Label","LabelTypography","SUBTITLE_2","LabelColors","ONBACKGROUND_1","nickname","NO_NAME","OPEN_CHANNEL_SETTINGS__MEMBERS__YOU","CAPTION_3","ONBACKGROUND_2","concat","OPEN_CHANNEL_SETTINGS__MEMBERS__OPERATOR","ParticipantList","globalState","showParticipantsModal","setShowParticipantsModal","limit","refreshList","useCallback","length","ONBACKGROUND_3","OPEN_CHANNEL_SETTINGS__EMPTY_LIST","Button","ButtonTypes","SECONDARY","ButtonSizes","SMALL"],"mappings":"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"}
|