@sendbird/uikit-react 3.1.0 → 3.1.1-rc.2
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/App.js +33 -32
- package/App.js.map +1 -1
- package/CHANGELOG.md +16 -0
- package/Channel/components/ChannelHeader.js +17 -17
- package/Channel/components/ChannelUI.js +24 -24
- package/Channel/components/FileViewer.js +16 -16
- package/Channel/components/FrozenNotification.js +5 -5
- package/Channel/components/Message.js +21 -21
- package/Channel/components/MessageInput.js +18 -18
- package/Channel/components/MessageList.js +23 -23
- package/Channel/components/RemoveMessageModal.js +19 -19
- package/Channel/components/SuggestedMentionList.js +17 -17
- package/Channel/components/TypingIndicator.js +16 -16
- package/Channel/components/UnreadCount.js +5 -5
- package/Channel/context.js +15 -15
- package/Channel.js +24 -24
- package/ChannelList/components/AddChannel.js +14 -14
- package/ChannelList/components/ChannelListHeader.js +7 -7
- package/ChannelList/components/ChannelListUI.js +28 -28
- package/ChannelList/components/ChannelPreview.js +21 -21
- package/ChannelList/components/ChannelPreviewAction.js +16 -16
- package/ChannelList/context.js +10 -10
- package/ChannelList.js +28 -28
- package/{ChannelListProvider-deca2b46.js → ChannelListProvider-bcabb66a.js} +15 -19
- package/ChannelListProvider-bcabb66a.js.map +1 -0
- package/{ChannelProvider-433ab63d.js → ChannelProvider-640daced.js} +11 -11
- package/{ChannelProvider-433ab63d.js.map → ChannelProvider-640daced.js.map} +1 -1
- package/ChannelSettings/components/ChannelProfile.js +13 -13
- package/ChannelSettings/components/ChannelSettingsUI.js +20 -20
- package/ChannelSettings/components/EditDetailsModal.js +13 -13
- package/ChannelSettings/components/LeaveChannel.js +10 -10
- package/ChannelSettings/components/ModerationPanel.js +17 -17
- package/ChannelSettings/components/UserListItem.js +12 -12
- package/ChannelSettings/components/UserPanel.js +14 -14
- package/ChannelSettings/context.js +3 -3
- package/ChannelSettings/context.js.map +1 -1
- package/ChannelSettings.js +20 -20
- package/CreateChannel/components/CreateChannelUI.js +14 -14
- package/CreateChannel/components/InviteUsers.js +29 -30
- package/CreateChannel/components/InviteUsers.js.map +1 -1
- package/CreateChannel/components/SelectChannelType.js +10 -10
- package/CreateChannel/context.js +4 -4
- package/CreateChannel.js +14 -14
- package/{CreateChannelProvider-06a7aea1.js → CreateChannelProvider-538394b4.js} +1 -1
- package/{CreateChannelProvider-06a7aea1.js.map → CreateChannelProvider-538394b4.js.map} +1 -1
- package/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/EditUserProfile.js +13 -13
- package/{LocalizationContext-9f3a97d4.js → LocalizationContext-287995e5.js} +3 -3
- package/{LocalizationContext-9f3a97d4.js.map → LocalizationContext-287995e5.js.map} +1 -1
- package/{MemberList-f02f2f2c.js → MemberList-221da673.js} +6 -6
- package/{MemberList-f02f2f2c.js.map → MemberList-221da673.js.map} +1 -1
- package/MessageSearch/components/MessageSearchUI.js +11 -11
- package/MessageSearch/context.js +2 -2
- package/MessageSearch.js +11 -11
- package/OpenChannel/components/FrozenChannelNotification.js +5 -5
- package/OpenChannel/components/OpenChannelHeader.js +15 -14
- package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
- package/OpenChannel/components/OpenChannelInput.js +19 -18
- package/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessage.js +24 -23
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +26 -25
- package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/OpenChannel/components/OpenChannelUI.js +26 -25
- package/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/OpenChannel/context.js +12 -11
- package/OpenChannel/context.js.map +1 -1
- package/OpenChannel.js +26 -25
- package/OpenChannel.js.map +1 -1
- package/{OpenChannelProvider-1161d100.js → OpenChannelProvider-3c5c020d.js} +10 -10
- package/{OpenChannelProvider-1161d100.js.map → OpenChannelProvider-3c5c020d.js.map} +1 -1
- package/OpenChannelSettings/components/EditDetailsModal.js +15 -13
- package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/OpenChannelSettings/components/OpenChannelProfile.js +15 -13
- package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +20 -18
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
- package/OpenChannelSettings/components/OperatorUI.js +23 -65
- package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/OpenChannelSettings/components/ParticipantUI.js +17 -15
- package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
- package/OpenChannelSettings/context.js +50 -19
- package/OpenChannelSettings/context.js.map +1 -1
- package/OpenChannelSettings.js +20 -18
- package/OpenChannelSettings.js.map +1 -1
- package/SendbirdProvider.js +15 -14
- package/SendbirdProvider.js.map +1 -1
- package/{UserProfileContext-0ab13769.js → UserProfileContext-b61be62b.js} +1 -1
- package/{UserProfileContext-0ab13769.js.map → UserProfileContext-b61be62b.js.map} +1 -1
- package/__bundle-7dfccc8c-35b47fb1.js +22 -0
- package/__bundle-7dfccc8c-35b47fb1.js.map +1 -0
- package/{_rollupPluginBabelHelpers-e62b6c94.js → _rollupPluginBabelHelpers-e72431a4.js} +1 -1
- package/{_rollupPluginBabelHelpers-e62b6c94.js.map → _rollupPluginBabelHelpers-e72431a4.js.map} +1 -1
- package/{actionTypes-5b38ad2f.js → actionTypes-8455ca09.js} +1 -1
- package/{actionTypes-5b38ad2f.js.map → actionTypes-8455ca09.js.map} +1 -1
- package/cjs/App.js +33 -32
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +17 -17
- package/cjs/Channel/components/ChannelUI.js +24 -24
- package/cjs/Channel/components/FileViewer.js +16 -16
- package/cjs/Channel/components/FrozenNotification.js +5 -5
- package/cjs/Channel/components/Message.js +21 -21
- package/cjs/Channel/components/MessageInput.js +18 -18
- package/cjs/Channel/components/MessageList.js +23 -23
- package/cjs/Channel/components/RemoveMessageModal.js +19 -19
- package/cjs/Channel/components/SuggestedMentionList.js +17 -17
- package/cjs/Channel/components/TypingIndicator.js +16 -16
- package/cjs/Channel/components/UnreadCount.js +5 -5
- package/cjs/Channel/context.js +15 -15
- package/cjs/Channel.js +24 -24
- package/cjs/ChannelList/components/AddChannel.js +14 -14
- package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
- package/cjs/ChannelList/components/ChannelListUI.js +28 -28
- package/cjs/ChannelList/components/ChannelPreview.js +21 -21
- package/cjs/ChannelList/components/ChannelPreviewAction.js +16 -16
- package/cjs/ChannelList/context.js +10 -10
- package/cjs/ChannelList.js +28 -28
- package/cjs/{ChannelListProvider-adbb04ab.js → ChannelListProvider-399562bc.js} +15 -19
- package/cjs/ChannelListProvider-399562bc.js.map +1 -0
- package/cjs/{ChannelProvider-cec988e8.js → ChannelProvider-fbc8324f.js} +11 -11
- package/cjs/{ChannelProvider-cec988e8.js.map → ChannelProvider-fbc8324f.js.map} +1 -1
- package/cjs/ChannelSettings/components/ChannelProfile.js +13 -13
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +20 -20
- package/cjs/ChannelSettings/components/EditDetailsModal.js +13 -13
- package/cjs/ChannelSettings/components/LeaveChannel.js +10 -10
- package/cjs/ChannelSettings/components/ModerationPanel.js +17 -17
- package/cjs/ChannelSettings/components/UserListItem.js +12 -12
- package/cjs/ChannelSettings/components/UserPanel.js +14 -14
- package/cjs/ChannelSettings/context.js +3 -3
- package/cjs/ChannelSettings/context.js.map +1 -1
- package/cjs/ChannelSettings.js +20 -20
- package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
- package/cjs/CreateChannel/components/InviteUsers.js +29 -30
- package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
- package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
- package/cjs/CreateChannel/context.js +4 -4
- package/cjs/CreateChannel.js +14 -14
- package/cjs/{CreateChannelProvider-7e76640c.js → CreateChannelProvider-a41fd06b.js} +1 -1
- package/cjs/{CreateChannelProvider-7e76640c.js.map → CreateChannelProvider-a41fd06b.js.map} +1 -1
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/cjs/EditUserProfile.js +13 -13
- package/cjs/{LocalizationContext-672b9c94.js → LocalizationContext-41d66701.js} +3 -3
- package/cjs/{LocalizationContext-672b9c94.js.map → LocalizationContext-41d66701.js.map} +1 -1
- package/cjs/{MemberList-5fdc93f7.js → MemberList-6a32187f.js} +6 -6
- package/cjs/{MemberList-5fdc93f7.js.map → MemberList-6a32187f.js.map} +1 -1
- package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
- package/cjs/MessageSearch/context.js +2 -2
- package/cjs/MessageSearch.js +11 -11
- package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
- package/cjs/OpenChannel/components/OpenChannelHeader.js +15 -14
- package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelInput.js +19 -18
- package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessage.js +24 -23
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +26 -25
- package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelUI.js +26 -25
- package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/cjs/OpenChannel/context.js +12 -11
- package/cjs/OpenChannel/context.js.map +1 -1
- package/cjs/OpenChannel.js +26 -25
- package/cjs/OpenChannel.js.map +1 -1
- package/cjs/{OpenChannelProvider-41c8a190.js → OpenChannelProvider-3d3b152a.js} +10 -10
- package/cjs/{OpenChannelProvider-41c8a190.js.map → OpenChannelProvider-3d3b152a.js.map} +1 -1
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +15 -13
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +15 -13
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +20 -18
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OperatorUI.js +23 -65
- package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +17 -15
- package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
- package/cjs/OpenChannelSettings/context.js +50 -19
- package/cjs/OpenChannelSettings/context.js.map +1 -1
- package/cjs/OpenChannelSettings.js +20 -18
- package/cjs/OpenChannelSettings.js.map +1 -1
- package/cjs/SendbirdProvider.js +16 -14
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/{UserProfileContext-d3290c6a.js → UserProfileContext-b4253222.js} +1 -1
- package/cjs/{UserProfileContext-d3290c6a.js.map → UserProfileContext-b4253222.js.map} +1 -1
- package/cjs/__bundle-7dfccc8c-eb4649fb.js +120 -0
- package/cjs/__bundle-7dfccc8c-eb4649fb.js.map +1 -0
- package/cjs/{_rollupPluginBabelHelpers-f02175f2.js → _rollupPluginBabelHelpers-9cbb144c.js} +1 -1
- package/cjs/{_rollupPluginBabelHelpers-f02175f2.js.map → _rollupPluginBabelHelpers-9cbb144c.js.map} +1 -1
- package/cjs/{actionTypes-80f60d16.js → actionTypes-a84631ec.js} +1 -1
- package/cjs/{actionTypes-80f60d16.js.map → actionTypes-a84631ec.js.map} +1 -1
- package/cjs/{color-478c93f8.js → color-1d24f81c.js} +1 -1
- package/cjs/{color-478c93f8.js.map → color-1d24f81c.js.map} +1 -1
- package/cjs/{compareIds-26b51402.js → compareIds-04b6354c.js} +1 -1
- package/cjs/{compareIds-26b51402.js.map → compareIds-04b6354c.js.map} +1 -1
- package/cjs/{const-58d3edce.js → const-755b5338.js} +1 -1
- package/cjs/{const-58d3edce.js.map → const-755b5338.js.map} +1 -1
- package/cjs/{const-4106b8a9.js → const-fd393619.js} +1 -1
- package/cjs/{const-4106b8a9.js.map → const-fd393619.js.map} +1 -1
- package/cjs/{context-01116a29.js → context-83277445.js} +2 -2
- package/cjs/{context-01116a29.js.map → context-83277445.js.map} +1 -1
- package/cjs/dist/index.css +44 -44
- package/cjs/dist/index.css.map +1 -1
- package/cjs/groupChannel-1b40359d.js +11 -0
- package/cjs/groupChannel-1b40359d.js.map +1 -0
- package/cjs/{index-93b2249a.js → index-0b459cfd.js} +2 -2
- package/cjs/{index-93b2249a.js.map → index-0b459cfd.js.map} +1 -1
- package/cjs/{index-1a2c6bb9.js → index-50efc527.js} +1 -1
- package/cjs/{index-1a2c6bb9.js.map → index-50efc527.js.map} +1 -1
- package/cjs/{index-ce704c05.js → index-8512c04b.js} +2 -2
- package/cjs/{index-ce704c05.js.map → index-8512c04b.js.map} +1 -1
- package/cjs/{index-6b7d2465.js → index-91b9d76c.js} +3 -3
- package/cjs/{index-6b7d2465.js.map → index-91b9d76c.js.map} +1 -1
- package/cjs/{index-3b747780.js → index-937257e2.js} +9 -8
- package/cjs/{index-3b747780.js.map → index-937257e2.js.map} +1 -1
- package/cjs/{index-52186645.js → index-a14c4c69.js} +3 -3
- package/cjs/{index-52186645.js.map → index-a14c4c69.js.map} +1 -1
- package/cjs/{index-1d91484a.js → index-abb5391a.js} +4 -4
- package/cjs/{index-1d91484a.js.map → index-abb5391a.js.map} +1 -1
- package/cjs/{index-24973446.js → index-bae90ddf.js} +4 -4
- package/cjs/{index-24973446.js.map → index-bae90ddf.js.map} +1 -1
- package/cjs/{index-3b9eca88.js → index-beccbcdd.js} +2 -2
- package/cjs/{index-3b9eca88.js.map → index-beccbcdd.js.map} +1 -1
- package/cjs/{index-84bd6fef.js → index-bf13b64a.js} +1 -1
- package/cjs/{index-84bd6fef.js.map → index-bf13b64a.js.map} +1 -1
- package/cjs/{index-f240822b.js → index-c0b71d09.js} +6 -6
- package/cjs/{index-f240822b.js.map → index-c0b71d09.js.map} +1 -1
- package/cjs/index.js +38 -36
- package/cjs/index.js.map +1 -1
- package/cjs/openChannel-ed14af3e.js +9 -0
- package/cjs/openChannel-ed14af3e.js.map +1 -0
- package/cjs/{openChannelUtils-b411bbf8.js → openChannelUtils-6c51a49a.js} +1 -1
- package/cjs/{openChannelUtils-b411bbf8.js.map → openChannelUtils-6c51a49a.js.map} +1 -1
- package/cjs/sendbirdSelectors.js +4 -4
- package/cjs/sendbirdSelectors.js.map +1 -1
- package/cjs/{stringSet-da3df562.js → stringSet-e6c04d47.js} +1 -1
- package/cjs/{stringSet-da3df562.js.map → stringSet-e6c04d47.js.map} +1 -1
- package/cjs/{topics-1932f321.js → topics-13b8f652.js} +1 -1
- package/cjs/{topics-1932f321.js.map → topics-13b8f652.js.map} +1 -1
- package/cjs/{tslib.es6-306f32fb.js → tslib.es6-1588bde6.js} +1 -1
- package/cjs/{tslib.es6-306f32fb.js.map → tslib.es6-1588bde6.js.map} +1 -1
- package/cjs/ui/Accordion.js +4 -4
- package/cjs/ui/AccordionGroup.js +2 -2
- package/cjs/ui/AdminMessage.js +3 -3
- package/cjs/ui/Avatar.js +3 -3
- package/cjs/ui/Badge.js +5 -5
- package/cjs/ui/Button.js +4 -4
- package/cjs/ui/ChannelAvatar.js +4 -4
- package/cjs/ui/ChannelPreview.js +12 -12
- package/cjs/ui/ChatHeader.js +8 -8
- package/cjs/ui/ConnectionStatus.js +5 -5
- package/cjs/ui/ContextMenu.js +5 -5
- package/cjs/ui/DateSeparator.js +4 -4
- package/cjs/ui/Dropdown.js +3 -3
- package/cjs/ui/EmojiReactions.js +7 -7
- package/cjs/ui/FileMessageItemBody.js +6 -6
- package/cjs/ui/FileViewer.js +7 -7
- package/cjs/ui/Icon.js +1 -1
- package/cjs/ui/IconButton.js +1 -1
- package/cjs/ui/ImageRenderer.js +1 -1
- package/cjs/ui/Input.js +3 -3
- package/cjs/ui/Label.js +3 -3
- package/cjs/ui/LinkLabel.js +3 -3
- package/cjs/ui/Loader.js +1 -1
- package/cjs/ui/MentionLabel.js +11 -11
- package/cjs/ui/MessageContent.js +14 -14
- package/cjs/ui/MessageInput.js +10 -10
- package/cjs/ui/MessageItemMenu.js +7 -7
- package/cjs/ui/MessageItemReactionMenu.js +5 -5
- package/cjs/ui/MessageSearchFileItem.js +10 -10
- package/cjs/ui/MessageSearchItem.js +10 -10
- package/cjs/ui/MessageStatus.js +8 -8
- package/cjs/ui/Modal.js +8 -8
- package/cjs/ui/MutedAvatarOverlay.js +1 -1
- package/cjs/ui/OGMessageItemBody.js +11 -11
- package/cjs/ui/OpenChannelAdminMessage.js +4 -4
- package/cjs/ui/OpenChannelAvatar.js +7 -7
- package/cjs/ui/OpenchannelConversationHeader.js +7 -7
- package/cjs/ui/OpenchannelFileMessage.js +15 -15
- package/cjs/ui/OpenchannelOGMessage.js +15 -15
- package/cjs/ui/OpenchannelThumbnailMessage.js +14 -14
- package/cjs/ui/OpenchannelUserMessage.js +15 -15
- package/cjs/ui/PlaceHolder.js +6 -6
- package/cjs/ui/QuoteMessage.js +7 -7
- package/cjs/ui/QuoteMessageInput.js +7 -7
- package/cjs/ui/ReactionBadge.js +3 -3
- package/cjs/ui/ReactionButton.js +1 -1
- package/cjs/ui/SortByRow.js +1 -1
- package/cjs/ui/TextButton.js +2 -2
- package/cjs/ui/TextMessageItemBody.js +11 -11
- package/cjs/ui/ThumbnailMessageItemBody.js +3 -3
- package/cjs/ui/Tooltip.js +3 -3
- package/cjs/ui/TooltipWrapper.js +1 -1
- package/cjs/ui/UnknownMessageItemBody.js +7 -7
- package/cjs/ui/UserListItem.js +12 -12
- package/cjs/ui/UserProfile.js +10 -10
- package/cjs/ui/Word.js +11 -11
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/{utils-d06dfceb.js → utils-b2896d9e.js} +1 -1
- package/cjs/{utils-d06dfceb.js.map → utils-b2896d9e.js.map} +1 -1
- package/cjs/{utils-15fd96e3.js → utils-c50c1a94.js} +1 -1
- package/cjs/{utils-15fd96e3.js.map → utils-c50c1a94.js.map} +1 -1
- package/cjs/{utils-59d39f8a.js → utils-db735da4.js} +1 -1
- package/cjs/{utils-59d39f8a.js.map → utils-db735da4.js.map} +1 -1
- package/cjs/{uuid-deaf6e4d.js → uuid-af228f28.js} +1 -1
- package/cjs/{uuid-deaf6e4d.js.map → uuid-af228f28.js.map} +1 -1
- package/cjs/withSendbird.js +1 -1
- package/{color-af7ca71d.js → color-3276ef2b.js} +1 -1
- package/{color-af7ca71d.js.map → color-3276ef2b.js.map} +1 -1
- package/{compareIds-0374f200.js → compareIds-c0c815da.js} +1 -1
- package/{compareIds-0374f200.js.map → compareIds-c0c815da.js.map} +1 -1
- package/{const-e494c46a.js → const-15e8d85d.js} +1 -1
- package/{const-e494c46a.js.map → const-15e8d85d.js.map} +1 -1
- package/{const-1df70d22.js → const-6f8becfd.js} +1 -1
- package/{const-1df70d22.js.map → const-6f8becfd.js.map} +1 -1
- package/{context-477db28c.js → context-902cd440.js} +2 -2
- package/{context-477db28c.js.map → context-902cd440.js.map} +1 -1
- package/dist/index.css +44 -44
- package/dist/index.css.map +1 -1
- package/groupChannel-df07406b.js +8 -0
- package/groupChannel-df07406b.js.map +1 -0
- package/{index-018657f4.js → index-018ea0ab.js} +9 -8
- package/{index-018657f4.js.map → index-018ea0ab.js.map} +1 -1
- package/{index-961dd650.js → index-09a76b84.js} +4 -4
- package/{index-961dd650.js.map → index-09a76b84.js.map} +1 -1
- package/{index-0b5ccb8a.js → index-23be350b.js} +3 -3
- package/{index-0b5ccb8a.js.map → index-23be350b.js.map} +1 -1
- package/{index-97340f01.js → index-3412a535.js} +6 -6
- package/{index-97340f01.js.map → index-3412a535.js.map} +1 -1
- package/{index-0bca77f6.js → index-394a91a4.js} +2 -2
- package/{index-0bca77f6.js.map → index-394a91a4.js.map} +1 -1
- package/{index-6d9f27e9.js → index-538b4e23.js} +1 -1
- package/{index-6d9f27e9.js.map → index-538b4e23.js.map} +1 -1
- package/{index-b75c8b72.js → index-6028a62f.js} +2 -2
- package/{index-b75c8b72.js.map → index-6028a62f.js.map} +1 -1
- package/{index-b9397b82.js → index-6d11054b.js} +2 -2
- package/{index-b9397b82.js.map → index-6d11054b.js.map} +1 -1
- package/{index-626e0c91.js → index-a6cd1d3e.js} +1 -1
- package/{index-626e0c91.js.map → index-a6cd1d3e.js.map} +1 -1
- package/{index-be56e57e.js → index-ac3d5cae.js} +3 -3
- package/{index-be56e57e.js.map → index-ac3d5cae.js.map} +1 -1
- package/{index-c6d2d378.js → index-d9577ccc.js} +4 -4
- package/{index-c6d2d378.js.map → index-d9577ccc.js.map} +1 -1
- package/index.d.ts +27 -15
- package/index.js +38 -37
- package/index.js.map +1 -1
- package/openChannel-1cb65a49.js +6 -0
- package/openChannel-1cb65a49.js.map +1 -0
- package/{openChannelUtils-eb983c6e.js → openChannelUtils-16e0014a.js} +1 -1
- package/{openChannelUtils-eb983c6e.js.map → openChannelUtils-16e0014a.js.map} +1 -1
- package/package-lock.json +26318 -0
- package/package.json +1 -1
- package/sendbirdSelectors.js +4 -4
- package/sendbirdSelectors.js.map +1 -1
- package/{stringSet-8471446d.js → stringSet-7e56841c.js} +1 -1
- package/{stringSet-8471446d.js.map → stringSet-7e56841c.js.map} +1 -1
- package/{topics-408562ae.js → topics-23bb62fd.js} +1 -1
- package/{topics-408562ae.js.map → topics-23bb62fd.js.map} +1 -1
- package/{tslib.es6-bc2713d7.js → tslib.es6-33ba1281.js} +1 -1
- package/{tslib.es6-bc2713d7.js.map → tslib.es6-33ba1281.js.map} +1 -1
- package/ui/Accordion.js +4 -4
- package/ui/AccordionGroup.js +2 -2
- package/ui/AdminMessage.js +3 -3
- package/ui/Avatar.js +3 -3
- package/ui/Badge.js +5 -5
- package/ui/Button.js +4 -4
- package/ui/ChannelAvatar.js +4 -4
- package/ui/ChannelPreview.js +12 -12
- package/ui/ChatHeader.js +8 -8
- package/ui/ConnectionStatus.js +5 -5
- package/ui/ContextMenu.js +5 -5
- package/ui/DateSeparator.js +4 -4
- package/ui/Dropdown.js +3 -3
- package/ui/EmojiReactions.js +7 -7
- package/ui/FileMessageItemBody.js +6 -6
- package/ui/FileViewer.js +7 -7
- package/ui/Icon.js +1 -1
- package/ui/IconButton.js +1 -1
- package/ui/ImageRenderer.js +1 -1
- package/ui/Input.js +3 -3
- package/ui/Label.js +3 -3
- package/ui/LinkLabel.js +3 -3
- package/ui/Loader.js +1 -1
- package/ui/MentionLabel.js +11 -11
- package/ui/MessageContent.js +14 -14
- package/ui/MessageInput.js +10 -10
- package/ui/MessageItemMenu.js +7 -7
- package/ui/MessageItemReactionMenu.js +5 -5
- package/ui/MessageSearchFileItem.js +10 -10
- package/ui/MessageSearchItem.js +10 -10
- package/ui/MessageStatus.js +8 -8
- package/ui/Modal.js +8 -8
- package/ui/MutedAvatarOverlay.js +1 -1
- package/ui/OGMessageItemBody.js +11 -11
- package/ui/OpenChannelAdminMessage.js +4 -4
- package/ui/OpenChannelAvatar.js +7 -7
- package/ui/OpenchannelConversationHeader.js +7 -7
- package/ui/OpenchannelFileMessage.js +15 -15
- package/ui/OpenchannelOGMessage.js +15 -15
- package/ui/OpenchannelThumbnailMessage.js +14 -14
- package/ui/OpenchannelUserMessage.js +15 -15
- package/ui/PlaceHolder.js +6 -6
- package/ui/QuoteMessage.js +7 -7
- package/ui/QuoteMessageInput.js +7 -7
- package/ui/ReactionBadge.js +3 -3
- package/ui/ReactionButton.js +1 -1
- package/ui/SortByRow.js +1 -1
- package/ui/TextButton.js +2 -2
- package/ui/TextMessageItemBody.js +11 -11
- package/ui/ThumbnailMessageItemBody.js +3 -3
- package/ui/Tooltip.js +3 -3
- package/ui/TooltipWrapper.js +1 -1
- package/ui/UnknownMessageItemBody.js +7 -7
- package/ui/UserListItem.js +12 -12
- package/ui/UserProfile.js +10 -10
- package/ui/Word.js +11 -11
- package/useSendbirdStateContext.js +1 -1
- package/{utils-ed9ea372.js → utils-1d0afb37.js} +1 -1
- package/{utils-ed9ea372.js.map → utils-1d0afb37.js.map} +1 -1
- package/{utils-6f162725.js → utils-8bf3ab64.js} +1 -1
- package/{utils-6f162725.js.map → utils-8bf3ab64.js.map} +1 -1
- package/{utils-14e75814.js → utils-d64ea41b.js} +1 -1
- package/{utils-14e75814.js.map → utils-d64ea41b.js.map} +1 -1
- package/{uuid-b172d222.js → uuid-9cbd8532.js} +1 -1
- package/{uuid-b172d222.js.map → uuid-9cbd8532.js.map} +1 -1
- package/withSendbird.js +1 -1
- package/ChannelListProvider-deca2b46.js.map +0 -1
- package/__bundle-7dfccc8c-097677fe.js +0 -24
- package/__bundle-7dfccc8c-097677fe.js.map +0 -1
- package/cjs/ChannelListProvider-adbb04ab.js.map +0 -1
- package/cjs/__bundle-7dfccc8c-99e5ac3e.js +0 -151
- package/cjs/__bundle-7dfccc8c-99e5ac3e.js.map +0 -1
- package/cjs/groupChannel-9502b458.js +0 -9
- package/cjs/groupChannel-9502b458.js.map +0 -1
- package/cjs/openChannel-f2448196.js +0 -13
- package/cjs/openChannel-f2448196.js.map +0 -1
- package/groupChannel-3295edad.js +0 -6
- package/groupChannel-3295edad.js.map +0 -1
- package/openChannel-c960d007.js +0 -8
- package/openChannel-c960d007.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OperatorUI.js","sources":["../../../src/smart-components/OpenChannelSettings/components/OperatorUI/DeleteOpenChannel.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/OperatorsModal.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/AddOperatorsModal.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/OperatorList.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/MutedParticipantsModal.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/MutedParticipantList.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/BannedUsersModal.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/BannedUserList.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/index.tsx"],"sourcesContent":["import React, {\n ReactElement,\n useState,\n useContext,\n} from 'react';\n\nimport Modal from '../../../../ui/Modal';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\n\nexport default function DeleteChannel(): ReactElement {\n const [showDeleteChannelModal, setShowDeleteChannelModal] = useState(false);\n const { stringSet } = useContext(LocalizationContext);\n const globalState = useSendbirdStateContext();\n const isOnline = globalState?.config?.isOnline;\n const logger = globalState?.config?.logger;\n\n const { channel, onDeleteChannel } = useOpenChannelSettingsContext();\n\n const deleteChannel = () => {\n channel?.delete().then((response) => {\n logger.info('OpenChannelSettings: Delete channel success', response);\n if (onDeleteChannel) {\n onDeleteChannel(channel);\n }\n }).catch((error) => {\n logger.warning('OpenChannelSettings: Delete channel failed', error);\n });\n }\n return (\n <>\n <div\n className={\n `sendbird-openchannel-settings__panel-item\n sendbird-openchannel-settings__delete-channel\n ${!isOnline ? 'sendbird-openchannel-settings__panel-item__disabled' : ''}`\n }\n role=\"button\"\n tabIndex={0}\n onKeyDown={() => {\n if (!isOnline) { return; }\n setShowDeleteChannelModal(true);\n }}\n onClick={() => {\n if (!isOnline) { return; }\n setShowDeleteChannelModal(true);\n }}\n >\n <Icon\n type={IconTypes.DELETE}\n fillColor={IconColors.ERROR}\n className={[\n 'sendbird-openchannel-settings__panel-icon-left',\n 'sendbird-openchannel-settings__panel-icon__delete',\n ].join(' ')}\n height=\"24px\"\n width=\"24px\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_PANEL}\n </Label>\n </div>\n {\n showDeleteChannelModal && (\n <Modal\n onCancel={() => {\n setShowDeleteChannelModal(false);\n }}\n onSubmit={() => {\n deleteChannel();\n }}\n titleText={stringSet.OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_TITLE}\n submitText={stringSet.OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_SUBMIT}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_CONTEXT}\n </Modal>\n )\n }\n </>\n )\n}\n","import React, {\n ReactElement,\n useContext,\n useEffect,\n useState,\n} from 'react'\n\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\ninterface Props { onCancel?(): void }\n\nexport default function OperatorListModal({ onCancel }: Props): ReactElement {\n const [users, setUsers] = useState([]);\n const [operatorQuery, setOperatorQuery] = useState(null);\n\n const { channel } = useOpenChannelSettingsContext();\n const state = useSendbirdStateContext();\n const currentUserId = state?.config?.userId;\n const { stringSet } = useContext(LocalizationContext);\n\n useEffect(() => {\n const operatorListQuery = channel?.createOperatorListQuery({\n limit: 20,\n });\n operatorListQuery.next().then((participants) => {\n setUsers(participants);\n });\n setOperatorQuery(operatorListQuery);\n }, [])\n return (\n <div>\n <Modal\n hideFooter\n titleText=\"All operators\"\n onCancel={onCancel}\n >\n <div\n className=\"sendbird-more-users__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = operatorQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n operatorQuery.next().then((o) => {\n setUsers([\n ...users,\n ...o,\n ])\n });\n }\n }}\n >\n {\n users.map((operator) => (\n <UserListItem\n currentUser={currentUserId}\n user={operator}\n key={operator.userId}\n action={({ parentRef, actionRef }) => (\n currentUserId !== operator?.userId\n ? (\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 channel?.removeOperators([operator.userId]).then(() => {\n setUsers(users.filter(({ userId }) => {\n return userId !== operator.userId;\n }));\n });\n closeDropdown();\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR}\n </MenuItem>\n </MenuItems>\n )}\n />\n ) : null\n )}\n />\n ))\n }\n </div>\n </Modal>\n </div>\n )\n}\n","import React, {\n ReactElement,\n useEffect,\n useState,\n useContext,\n} from 'react';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport Modal from '../../../../ui/Modal';\nimport Label, {\n LabelTypography,\n LabelColors,\n} from '../../../../ui/Label';\nimport { Type as ButtonType } from '../../../../ui/Button/type';\nimport UserListItem from '../../../../ui/UserListItem';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\n\ninterface Props {\n onCancel(): void;\n onSubmit(participants: Array<string>): void;\n}\n\nexport default function AddOperatorsModal({\n onCancel,\n onSubmit,\n}: Props): ReactElement {\n const [participants, setParticipants] = useState([]);\n const [selectedUsers, setSelectedUsers] = useState({});\n const [participantQuery, setParticipantQuery] = useState(null);\n const { stringSet } = useContext(LocalizationContext);\n\n const { channel } = useOpenChannelSettingsContext();\n\n useEffect(() => {\n const participantListQuery = channel?.createParticipantListQuery({\n limit: 20,\n });\n participantListQuery.next().then((users) => {\n setParticipants(users);\n });\n setParticipantQuery(participantListQuery);\n }, [])\n\n const selectedCount = Object.keys(selectedUsers).filter((m) => selectedUsers[m]).length;\n return (\n <>\n <Modal\n type={ButtonType.PRIMARY}\n submitText=\"Add\"\n onCancel={onCancel}\n onSubmit={() => {\n const users = Object.keys(selectedUsers).filter((m) => selectedUsers[m]);\n channel?.addOperators(users).then(() => {\n onSubmit(users);\n })\n }}\n titleText=\"Select users\"\n >\n <Label\n color={(selectedCount > 0) ? LabelColors.PRIMARY : LabelColors.ONBACKGROUND_3}\n type={LabelTypography.CAPTION_1}\n >\n {`${selectedCount} ${stringSet.MODAL__INVITE_MEMBER__SELECTEC}`}\n </Label>\n <div\n className=\"sendbird-more-users__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = participantQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n if (hasNext && fetchMore) {\n participantQuery.next().then((o) => {\n setParticipants([\n ...participants,\n ...o,\n ])\n });\n }\n }}\n >\n {\n participants.map((participant) => {\n const isOperator = channel?.operators.find((operator) => operator?.userId === participant?.userId) ? true : false;\n return (\n <UserListItem\n checkBox\n checked={selectedUsers[participant.userId] || isOperator}\n disabled={isOperator}\n isOperator={isOperator}\n onChange={\n (event) => {\n const modifiedSelectedUsers = {\n ...selectedUsers,\n [event.target.id]: event.target.checked,\n };\n if (!event.target.checked) {\n delete modifiedSelectedUsers[event.target.id];\n }\n setSelectedUsers(modifiedSelectedUsers);\n }\n }\n user={participant}\n key={participant.userId}\n />\n );\n })\n }\n </div>\n </Modal>\n </>\n );\n}\n","import React, { ReactElement, useContext, useEffect, useState, useCallback } from 'react';\nimport { User } from \"@sendbird/chat\";\n\nimport { UserListItem } from '../ParticipantUI/ParticipantItem';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\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 { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport OperatorListModal from './OperatorsModal';\nimport AddOperatorsModal from './AddOperatorsModal';\n\nconst OperatorList = (): ReactElement => {\n const [operators, setOperators] = useState<Array<User>>([]);\n const [hasNext, setHasNext] = useState<boolean>(false);\n const [showAdd, setShowAdd] = useState<boolean>(false);\n const [showMore, setShowMore] = useState<boolean>(false);\n const state = useSendbirdStateContext();\n const currentUserId = state?.config?.userId;\n const { stringSet } = useContext(LocalizationContext);\n const { channel } = useOpenChannelSettingsContext();\n\n useEffect(() => {\n if (!channel) {\n setOperators([]);\n return;\n }\n\n const operatorListQuery = channel?.createOperatorListQuery({\n limit: 10,\n });\n operatorListQuery.next()\n .then((operators) => {\n setOperators(operators);\n setHasNext(operatorListQuery.hasNext);\n });\n }, [channel]);\n\n const refreshList = useCallback(() => {\n if (!channel) {\n setOperators([]);\n return;\n }\n const operatorListQuery = channel?.createOperatorListQuery({\n limit: 10,\n });\n operatorListQuery.next().then((operators) => {\n setOperators(operators);\n setHasNext(operatorListQuery.hasNext);\n });\n }, [channel]);\n\n return (\n <div>\n {\n operators.map((operator) => (\n <UserListItem\n key={operator.userId}\n user={operator}\n currentUser={currentUserId}\n action={({ actionRef }) => (\n currentUserId !== operator?.userId\n ? (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-openchannel-operator-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 channel?.removeOperators([operator.userId]).then(() => {\n setOperators(operators.filter(({ userId }) => (\n userId !== operator.userId\n )));\n });\n closeDropdown();\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR}\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.muteUser(operator).then(() => {\n refreshList();\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__MUTE}\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.banUser(operator).then(() => {\n refreshList();\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__BAN}\n </MenuItem>\n </MenuItems>\n )}\n />\n ) : null\n )}\n />\n ))\n }\n <div className=\"sendbird-openchannel-operator-list__footer\">\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowAdd(true);\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__OPERATORS__TITLE_ADD}\n </Button>\n {\n hasNext && (\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowMore(true);\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__OPERATORS__TITLE_ALL}\n </Button>\n )\n }\n </div>\n {\n showMore && (\n <>\n <OperatorListModal\n onCancel={() => {\n setShowMore(false);\n refreshList();\n }}\n />\n </>\n )\n }\n {\n showAdd && (\n <>\n <AddOperatorsModal\n onCancel={() => setShowAdd(false)}\n onSubmit={() => {\n setShowAdd(false);\n refreshList();\n }}\n />\n </>\n )\n }\n </div>\n );\n};\n\nexport default OperatorList;\n","import React, {\n ReactElement,\n useContext,\n useEffect,\n useState,\n} from 'react';\n\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport { noop } from '../../../../utils/utils';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\ninterface Props {\n onCancel(): void;\n}\n\nexport default function MutedParticipantsModal({\n onCancel,\n}: Props): ReactElement {\n const [mutedUsers, setMutedUsers] = useState([]);\n const [userListQuery, setUserListQuery] = useState(null);\n\n const { channel } = useOpenChannelSettingsContext();\n const state = useSendbirdStateContext();\n const currentUserId = state?.config?.userId;\n const { stringSet } = useContext(LocalizationContext);\n\n useEffect(() => {\n const mutedUserListQuery = channel?.createMutedUserListQuery({\n limit: 10,\n });\n mutedUserListQuery.next().then((users) => {\n setMutedUsers(users);\n });\n setUserListQuery(mutedUserListQuery);\n }, []);\n return (\n <div>\n <Modal\n hideFooter\n onCancel={() => onCancel()}\n onSubmit={noop}\n titleText=\"Muted members\"\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = userListQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n userListQuery.next().then((o) => {\n setMutedUsers([\n ...mutedUsers,\n ...o,\n ])\n });\n }\n }}\n >\n {\n mutedUsers.map((mutedUser) => (\n <UserListItem\n currentUser={currentUserId}\n user={mutedUser}\n key={mutedUser.userId}\n action={({ actionRef }) => (\n mutedUser?.userId !== currentUserId\n ? (\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 parentRef={actionRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n channel?.unmuteUser(mutedUser).then(() => {\n closeDropdown();\n setMutedUsers(mutedUsers.filter((u) => {\n return (u.userId !== mutedUser.userId);\n }));\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNMUTE}\n </MenuItem>\n </MenuItems>\n )}\n />\n ) : null\n )}\n />\n ))}\n </div>\n </Modal>\n </div>\n );\n}\n","import React, {\n ReactElement,\n useEffect,\n useState,\n useCallback,\n useContext,\n} from 'react';\n\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { UserListItem } from '../ParticipantUI/ParticipantItem';\nimport MutedParticipantsModal from './MutedParticipantsModal';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\nexport const MutedParticipantList = (): ReactElement => {\n const [mutedUsers, setMutedUsers] = useState([]);\n const [hasNext, setHasNext] = useState(false);\n const [showModal, setShowModal] = useState(false);\n\n const { channel } = useOpenChannelSettingsContext();\n const state = useSendbirdStateContext();\n const currentUserId = state?.config?.userId;\n const { stringSet } = useContext(LocalizationContext);\n\n useEffect(() => {\n if (!channel) {\n setMutedUsers([]);\n return;\n }\n const mutedUserListQuery = channel?.createMutedUserListQuery({\n limit: 10,\n });\n mutedUserListQuery.next().then((members) => {\n setMutedUsers(members);\n setHasNext(mutedUserListQuery.hasNext);\n });\n }, [channel]);\n\n const refreshList = useCallback(() => {\n if (!channel) {\n setMutedUsers([]);\n return;\n }\n\n const mutedUserListQuery = channel?.createMutedUserListQuery({\n limit: 10,\n });\n mutedUserListQuery.next().then((members) => {\n setMutedUsers(members);\n setHasNext(mutedUserListQuery.hasNext);\n });\n }, [channel]);\n return (\n <>\n {\n mutedUsers.map((mutedUser) => (\n <UserListItem\n key={mutedUser.userId}\n user={mutedUser}\n currentUser={currentUserId}\n isOperator={channel?.isOperator(mutedUser.userId)}\n action={({ actionRef }) => (\n mutedUser?.userId !== currentUserId\n ? (\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 closeDropdown={closeDropdown}\n openLeft\n parentRef={actionRef}\n >\n <MenuItem\n onClick={() => {\n channel?.unmuteUser(mutedUser).then(() => {\n refreshList();\n closeDropdown();\n })\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNMUTE}\n </MenuItem>\n </MenuItems>\n )}\n />\n ) : null\n )}\n />\n ))\n }\n {\n mutedUsers && mutedUsers.length === 0 && (\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__MUTED_MEMBERS__NO_ONE}\n </Label>\n )\n }\n {\n hasNext && (\n <div\n className=\"sendbird-channel-settings-muted-participant-list__footer\"\n >\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowModal(true);\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__MUTED_MEMBERS__TITLE_ALL}\n </Button>\n </div>\n )\n }\n {\n showModal && (\n <MutedParticipantsModal\n onCancel={() => {\n setShowModal(false);\n refreshList();\n }}\n />\n )\n }\n </>\n );\n}\n\nexport default MutedParticipantList;\n","import React, {\n ReactElement,\n useContext,\n useEffect,\n useState,\n} from 'react';\n\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\n\nimport { noop } from '../../../../utils/utils';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface Props {\n onCancel(): void;\n}\n\nexport default function BannedUsersModal({\n onCancel,\n}: Props): ReactElement {\n const [bannedUsers, setBannedUsers] = useState([]);\n const [userListQuery, setUserListQuery] = useState(null);\n const { channel } = useOpenChannelSettingsContext();\n const state = useSendbirdStateContext();\n const { stringSet } = useContext(LocalizationContext);\n const currentUserId = state?.config?.userId;\n\n useEffect(() => {\n const bannedUserListQuery = channel?.createBannedUserListQuery();\n bannedUserListQuery.next().then((users) => {\n setBannedUsers(users);\n });\n setUserListQuery(bannedUserListQuery);\n }, []);\n return (\n <div>\n <Modal\n hideFooter\n onCancel={() => onCancel()}\n onSubmit={noop}\n titleText=\"Muted members\"\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = userListQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n userListQuery.next().then((o) => {\n setBannedUsers([\n ...bannedUsers,\n ...o,\n ])\n });\n }\n }}\n >\n {\n bannedUsers.map((bannedUser) => (\n <UserListItem\n user={bannedUser}\n key={bannedUser.userId}\n action={({ actionRef }) => (\n bannedUser?.userId !== currentUserId\n ? (\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 parentRef={actionRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n channel?.unbanUser(bannedUser).then(() => {\n closeDropdown();\n setBannedUsers(bannedUsers.filter((u) => {\n return (u.userId !== bannedUser.userId);\n }));\n })\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNBAN}\n </MenuItem>\n </MenuItems>\n )}\n />\n ) : null\n )\n }\n />\n ))\n }\n </div>\n </Modal>\n </div>\n );\n}\n","import React, {\n ReactElement,\n useEffect,\n useState,\n useCallback,\n useContext,\n} from 'react';\n\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\n\nimport BannedUsersModal from './BannedUsersModal';\nimport { UserListItem } from '../ParticipantUI/ParticipantItem';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nexport const BannedUserList = (): ReactElement => {\n const [bannedUsers, setBannedUsers] = useState([]);\n const [hasNext, setHasNext] = useState(false);\n const [showModal, setShowModal] = useState(false);\n\n const { channel } = useOpenChannelSettingsContext();\n const state = useSendbirdStateContext();\n const { stringSet } = useContext(LocalizationContext);\n const currentUserId = state?.config?.userId;\n\n useEffect(() => {\n if (!channel) {\n setBannedUsers([]);\n return;\n }\n const bannedUserListQuery = channel?.createBannedUserListQuery();\n bannedUserListQuery.next().then((users) => {\n setBannedUsers(users);\n setHasNext(bannedUserListQuery.hasNext);\n });\n }, [channel]);\n\n const refreshList = useCallback(() => {\n if (!channel) {\n setBannedUsers([]);\n return;\n }\n const bannedUserListQuery = channel?.createBannedUserListQuery();\n bannedUserListQuery.next().then((users) => {\n setBannedUsers(users);\n setHasNext(bannedUserListQuery.hasNext);\n });\n }, [channel]);\n return (\n <>\n {\n bannedUsers.map((bannedUser) => (\n <UserListItem\n key={bannedUser.userId}\n user={bannedUser}\n isOperator={channel?.isOperator(bannedUser.userId)}\n action={({ actionRef }) => (\n bannedUser?.userId !== currentUserId\n ? (\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 parentRef={actionRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n channel?.unbanUser(bannedUser).then(() => {\n closeDropdown();\n refreshList();\n })\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNBAN}\n </MenuItem>\n </MenuItems>\n )}\n />\n ) : null\n )}\n />\n ))\n }\n {\n bannedUsers && bannedUsers.length === 0 && (\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__BANNED_MEMBERS__NO_ONE}\n </Label>\n )\n }\n {\n hasNext && (\n <div className=\"sendbird-channel-settings-banned-user-list__footer\" >\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowModal(true);\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__BANNED_MEMBERS__TITLE_ALL}\n </Button>\n </div>\n )\n }\n {\n showModal && (\n <BannedUsersModal\n onCancel={() => {\n setShowModal(false);\n refreshList();\n }}\n />\n )\n }\n </>\n );\n}\n\n\nexport default BannedUserList;\n","import React, { useContext } from 'react';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\nimport Label, {\n LabelTypography,\n LabelColors,\n} from '../../../../ui/Label';\nimport Icon, {\n IconTypes,\n IconColors,\n} from '../../../../ui/Icon';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport OpenChannelProfile from '../OpenChannelProfile';\nimport DeleteChannel from './DeleteOpenChannel';\nimport ParticipantsAccordion from '../ParticipantUI';\nimport Accordion, { AccordionGroup } from '../../../../ui/Accordion';\nimport OperatorList from './OperatorList';\nimport MutedParticipantList from './MutedParticipantList';\nimport BannedUserList from './BannedUserList';\n\nexport const copyToClipboard = (text: string): boolean => {\n // @ts-ignore: Unreachable code error\n if (window.clipboardData && window.clipboardData.setData) {\n // Internet Explorer-specific code path to prevent textarea being shown while dialog is visible.\n // @ts-ignore: Unreachable code error\n return window.clipboardData.setData('Text', text);\n }\n if (document.queryCommandSupported && document.queryCommandSupported('copy')) {\n const textarea = document.createElement('textarea');\n textarea.textContent = text;\n textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in Microsoft Edge.\n document.body.appendChild(textarea);\n textarea.select();\n try {\n return document.execCommand('copy'); // Security exception may be thrown by some browsers.\n } catch (ex) {\n return false;\n } finally {\n document.body.removeChild(textarea);\n }\n }\n return false;\n};\n\nexport interface OperatorUIProps {\n renderChannelProfile?: () => React.ReactNode;\n}\n\nexport const OperatorUI: React.FC<OperatorUIProps> = ({\n renderChannelProfile,\n}: OperatorUIProps) => {\n const { stringSet } = useContext(LocalizationContext);\n const {\n onCloseClick,\n channel,\n } = useOpenChannelSettingsContext();\n return (\n <>\n <div className=\"sendbird-openchannel-settings__header\">\n <Label type={LabelTypography.H_2} color={LabelColors.ONBACKGROUND_1}>\n {stringSet.CHANNEL_SETTING__HEADER__TITLE}\n </Label>\n <Icon\n className=\"sendbird-openchannel-settings__close-icon\"\n type={IconTypes.CLOSE}\n height=\"24px\"\n width=\"24px\"\n onClick={() => {\n onCloseClick();\n }}\n />\n </div>\n <div className=\"sendbird-openchannel-settings__profile\">\n {\n renderChannelProfile?.() || (\n <OpenChannelProfile />\n )\n }\n </div>\n <div className=\"sendbird-openchannel-settings__url\">\n <Icon\n className=\"sendbird-openchannel-settings__copy-icon\"\n type={IconTypes.COPY}\n height=\"22px\"\n width=\"22px\"\n onClick={() => {\n copyToClipboard(channel?.url);\n }}\n />\n <Label\n className=\"sendbird-openchannel-settings__url-label\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__OPERATOR_URL}\n </Label>\n <Label\n className=\"sendbird-openchannel-settings__url-value\"\n type={LabelTypography.SUBTITLE_2}\n >\n {channel?.url}\n </Label>\n </div>\n <AccordionGroup>\n <Accordion\n className=\"sendbird-openchannel-settings__operators-list\"\n id=\"operators\"\n renderTitle={() => (\n <>\n <Icon\n className=\"sendbird-openchannel-settings__operator-accordion-icon\"\n type={IconTypes.OPERATOR}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__OPERATORS_TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <>\n <OperatorList />\n </>\n )}\n />\n <Accordion\n className=\"sendbird-channel-settings__operators-list\"\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__operator-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 <>\n <ParticipantsAccordion isOperatorView />\n </>\n )}\n />\n <Accordion\n className=\"sendbird-channel-settings__operators-list\"\n id=\"mutedMembers\"\n renderTitle={() => (\n <>\n <Icon\n className=\"sendbird-openchannel-settings__operator-accordion-icon\"\n type={IconTypes.MUTE}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__MUTED_MEMBERS__TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <>\n <MutedParticipantList />\n </>\n )}\n />\n <Accordion\n className=\"sendbird-channel-settings__operators-list\"\n id=\"bannedUsers\"\n renderTitle={() => (\n <>\n <Icon\n className=\"sendbird-openchannel-settings__operator-accordion-icon\"\n type={IconTypes.BAN}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__BANNED_MEMBERS__TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <>\n <BannedUserList />\n </>\n )}\n />\n </AccordionGroup>\n <DeleteChannel />\n </>\n );\n};\n\nexport default OperatorUI;\n"],"names":["DeleteChannel","_c","useState","showDeleteChannelModal","setShowDeleteChannelModal","stringSet","useContext","LocalizationContext","globalState","useSendbirdStateContext","isOnline","config","logger","_d","useOpenChannelSettingsContext","channel","onDeleteChannel","deleteChannel","delete","then","response","info","catch","error","warning","React","IconTypes","DELETE","IconColors","ERROR","join","LabelTypography","SUBTITLE_1","LabelColors","ONBACKGROUND_1","OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_PANEL","OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_TITLE","OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_SUBMIT","OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_CONTEXT","OperatorListModal","_a","onCancel","users","setUsers","operatorQuery","setOperatorQuery","state","currentUserId","userId","useEffect","operatorListQuery","createOperatorListQuery","limit","next","participants","e","hasNext","target","fetchMore","clientHeight","scrollTop","scrollHeight","o","map","operator","parentRef","actionRef","toggleDropdown","MORE","CONTENT_INVERSE","closeDropdown","removeOperators","filter","OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR","AddOperatorsModal","onSubmit","_b","setParticipants","selectedUsers","setSelectedUsers","participantQuery","setParticipantQuery","participantListQuery","createParticipantListQuery","selectedCount","Object","keys","m","length","ButtonType","PRIMARY","addOperators","ONBACKGROUND_3","CAPTION_1","MODAL__INVITE_MEMBER__SELECTEC","participant","isOperator","operators","find","event","modifiedSelectedUsers","id","checked","OperatorList","setOperators","setHasNext","showAdd","setShowAdd","_e","showMore","setShowMore","refreshList","useCallback","UserListItem","muteUser","OPEN_CHANNEL_SETTING__MODERATION__MUTE","banUser","OPEN_CHANNEL_SETTING__MODERATION__BAN","ButtonTypes","SECONDARY","ButtonSizes","SMALL","OPEN_CHANNEL_SETTINGS__OPERATORS__TITLE_ADD","OPEN_CHANNEL_SETTINGS__OPERATORS__TITLE_ALL","MutedParticipantsModal","mutedUsers","setMutedUsers","userListQuery","setUserListQuery","mutedUserListQuery","createMutedUserListQuery","noop","mutedUser","unmuteUser","u","OPEN_CHANNEL_SETTING__MODERATION__UNMUTE","MutedParticipantList","showModal","setShowModal","members","SUBTITLE_2","OPEN_CHANNEL_SETTINGS__MUTED_MEMBERS__NO_ONE","OPEN_CHANNEL_SETTINGS__MUTED_MEMBERS__TITLE_ALL","BannedUsersModal","bannedUsers","setBannedUsers","bannedUserListQuery","createBannedUserListQuery","bannedUser","unbanUser","OPEN_CHANNEL_SETTING__MODERATION__UNBAN","BannedUserList","OPEN_CHANNEL_SETTINGS__BANNED_MEMBERS__NO_ONE","OPEN_CHANNEL_SETTINGS__BANNED_MEMBERS__TITLE_ALL","copyToClipboard","text","window","clipboardData","setData","document","queryCommandSupported","textarea","createElement","textContent","style","position","body","appendChild","select","execCommand","ex","removeChild","OperatorUI","renderChannelProfile","onCloseClick","H_2","CHANNEL_SETTING__HEADER__TITLE","CLOSE","OpenChannelProfile","COPY","url","CAPTION_2","ONBACKGROUND_2","OPEN_CHANNEL_SETTINGS__OPERATOR_URL","OPERATOR","OPEN_CHANNEL_SETTINGS__OPERATORS_TITLE","MEMBERS","OPEN_CHANNEL_SETTINGS__PARTICIPANTS_ACCORDION_TITLE","ParticipantsAccordion","MUTE","OPEN_CHANNEL_SETTINGS__MUTED_MEMBERS__TITLE","BAN","OPEN_CHANNEL_SETTINGS__BANNED_MEMBERS__TITLE"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OperatorUI.js","sources":["../../../src/smart-components/OpenChannelSettings/components/OperatorUI/DeleteOpenChannel.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/OperatorsModal.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/AddOperatorsModal.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/OperatorList.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/MutedParticipantsModal.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/MutedParticipantList.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/BannedUsersModal.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/BannedUserList.tsx","../../../src/smart-components/OpenChannelSettings/components/OperatorUI/index.tsx"],"sourcesContent":["import React, {\n ReactElement,\n useState,\n useContext,\n} from 'react';\n\nimport Modal from '../../../../ui/Modal';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\n\nexport default function DeleteChannel(): ReactElement {\n const [showDeleteChannelModal, setShowDeleteChannelModal] = useState(false);\n const { stringSet } = useContext(LocalizationContext);\n const globalState = useSendbirdStateContext();\n const isOnline = globalState?.config?.isOnline;\n const logger = globalState?.config?.logger;\n\n const { channel, onDeleteChannel } = useOpenChannelSettingsContext();\n\n const deleteChannel = () => {\n channel?.delete().then((response) => {\n logger.info('OpenChannelSettings: Delete channel success', response);\n if (onDeleteChannel) {\n onDeleteChannel(channel);\n }\n }).catch((error) => {\n logger.warning('OpenChannelSettings: Delete channel failed', error);\n });\n }\n return (\n <>\n <div\n className={\n `sendbird-openchannel-settings__panel-item\n sendbird-openchannel-settings__delete-channel\n ${!isOnline ? 'sendbird-openchannel-settings__panel-item__disabled' : ''}`\n }\n role=\"button\"\n tabIndex={0}\n onKeyDown={() => {\n if (!isOnline) { return; }\n setShowDeleteChannelModal(true);\n }}\n onClick={() => {\n if (!isOnline) { return; }\n setShowDeleteChannelModal(true);\n }}\n >\n <Icon\n type={IconTypes.DELETE}\n fillColor={IconColors.ERROR}\n className={[\n 'sendbird-openchannel-settings__panel-icon-left',\n 'sendbird-openchannel-settings__panel-icon__delete',\n ].join(' ')}\n height=\"24px\"\n width=\"24px\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_PANEL}\n </Label>\n </div>\n {\n showDeleteChannelModal && (\n <Modal\n onCancel={() => {\n setShowDeleteChannelModal(false);\n }}\n onSubmit={() => {\n deleteChannel();\n }}\n titleText={stringSet.OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_TITLE}\n submitText={stringSet.OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_SUBMIT}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_CONTEXT}\n </Modal>\n )\n }\n </>\n )\n}\n","import React, {\n ReactElement,\n useContext,\n useEffect,\n useState,\n} from 'react'\n\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\ninterface Props { onCancel?(): void }\n\nexport default function OperatorListModal({ onCancel }: Props): ReactElement {\n const [users, setUsers] = useState([]);\n const [operatorQuery, setOperatorQuery] = useState(null);\n\n const { channel } = useOpenChannelSettingsContext();\n const state = useSendbirdStateContext();\n const currentUserId = state?.config?.userId;\n const { stringSet } = useContext(LocalizationContext);\n\n useEffect(() => {\n const operatorListQuery = channel?.createOperatorListQuery({\n limit: 20,\n });\n operatorListQuery.next().then((participants) => {\n setUsers(participants);\n });\n setOperatorQuery(operatorListQuery);\n }, [])\n return (\n <div>\n <Modal\n hideFooter\n titleText=\"All operators\"\n onCancel={onCancel}\n >\n <div\n className=\"sendbird-more-users__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = operatorQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n operatorQuery.next().then((o) => {\n setUsers([\n ...users,\n ...o,\n ])\n });\n }\n }}\n >\n {\n users.map((operator) => (\n <UserListItem\n currentUser={currentUserId}\n user={operator}\n key={operator.userId}\n action={({ parentRef, actionRef }) => (\n currentUserId !== operator?.userId\n ? (\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 channel?.removeOperators([operator.userId]).then(() => {\n setUsers(users.filter(({ userId }) => {\n return userId !== operator.userId;\n }));\n });\n closeDropdown();\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR}\n </MenuItem>\n </MenuItems>\n )}\n />\n ) : null\n )}\n />\n ))\n }\n </div>\n </Modal>\n </div>\n )\n}\n","import React, {\n ReactElement,\n useEffect,\n useState,\n useContext,\n} from 'react';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport Modal from '../../../../ui/Modal';\nimport Label, {\n LabelTypography,\n LabelColors,\n} from '../../../../ui/Label';\nimport { Type as ButtonType } from '../../../../ui/Button/type';\nimport UserListItem from '../../../../ui/UserListItem';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\n\ninterface Props {\n onCancel(): void;\n onSubmit(participants: Array<string>): void;\n}\n\nexport default function AddOperatorsModal({\n onCancel,\n onSubmit,\n}: Props): ReactElement {\n const [participants, setParticipants] = useState([]);\n const [selectedUsers, setSelectedUsers] = useState({});\n const [participantQuery, setParticipantQuery] = useState(null);\n const { stringSet } = useContext(LocalizationContext);\n\n const { channel } = useOpenChannelSettingsContext();\n\n useEffect(() => {\n const participantListQuery = channel?.createParticipantListQuery({\n limit: 20,\n });\n participantListQuery.next().then((users) => {\n setParticipants(users);\n });\n setParticipantQuery(participantListQuery);\n }, [])\n\n const selectedCount = Object.keys(selectedUsers).filter((m) => selectedUsers[m]).length;\n return (\n <>\n <Modal\n type={ButtonType.PRIMARY}\n submitText=\"Add\"\n onCancel={onCancel}\n onSubmit={() => {\n const users = Object.keys(selectedUsers).filter((m) => selectedUsers[m]);\n channel?.addOperators(users).then(() => {\n onSubmit(users);\n })\n }}\n titleText=\"Select users\"\n >\n <Label\n color={(selectedCount > 0) ? LabelColors.PRIMARY : LabelColors.ONBACKGROUND_3}\n type={LabelTypography.CAPTION_1}\n >\n {`${selectedCount} ${stringSet.MODAL__INVITE_MEMBER__SELECTEC}`}\n </Label>\n <div\n className=\"sendbird-more-users__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = participantQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n if (hasNext && fetchMore) {\n participantQuery.next().then((o) => {\n setParticipants([\n ...participants,\n ...o,\n ])\n });\n }\n }}\n >\n {\n participants.map((participant) => {\n const isOperator = channel?.operators.find((operator) => operator?.userId === participant?.userId) ? true : false;\n return (\n <UserListItem\n checkBox\n checked={selectedUsers[participant.userId] || isOperator}\n disabled={isOperator}\n isOperator={isOperator}\n onChange={\n (event) => {\n const modifiedSelectedUsers = {\n ...selectedUsers,\n [event.target.id]: event.target.checked,\n };\n if (!event.target.checked) {\n delete modifiedSelectedUsers[event.target.id];\n }\n setSelectedUsers(modifiedSelectedUsers);\n }\n }\n user={participant}\n key={participant.userId}\n />\n );\n })\n }\n </div>\n </Modal>\n </>\n );\n}\n","import React, { ReactElement, useContext, useState } from 'react';\n\nimport { UserListItem } from '../ParticipantUI/ParticipantItem';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\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 { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport OperatorListModal from './OperatorsModal';\nimport AddOperatorsModal from './AddOperatorsModal';\n\nconst OperatorList = (): ReactElement => {\n const [showAdd, setShowAdd] = useState<boolean>(false);\n const [showMore, setShowMore] = useState<boolean>(false);\n const state = useSendbirdStateContext();\n const currentUserId = state?.config?.userId;\n const { stringSet } = useContext(LocalizationContext);\n const { channel } = useOpenChannelSettingsContext();\n\n return (\n <div>\n {\n channel?.operators?.slice(0, 10).map((operator) => (\n <UserListItem\n key={operator.userId}\n user={operator}\n currentUser={currentUserId}\n action={({ actionRef }) => (\n currentUserId !== operator?.userId\n ? (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-openchannel-operator-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 channel?.removeOperators([operator.userId]).then(() => {\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR}\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.muteUser(operator).then(() => {\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__MUTE}\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.banUser(operator).then(() => {\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__BAN}\n </MenuItem>\n </MenuItems>\n )}\n />\n ) : null\n )}\n />\n ))\n }\n <div className=\"sendbird-openchannel-operator-list__footer\">\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowAdd(true);\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__OPERATORS__TITLE_ADD}\n </Button>\n {\n channel?.operators?.length > 10 && (\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowMore(true);\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__OPERATORS__TITLE_ALL}\n </Button>\n )\n }\n </div>\n {\n showMore && (\n <>\n <OperatorListModal\n onCancel={() => {\n setShowMore(false);\n }}\n />\n </>\n )\n }\n {\n showAdd && (\n <>\n <AddOperatorsModal\n onCancel={() => setShowAdd(false)}\n onSubmit={() => {\n setShowAdd(false);\n }}\n />\n </>\n )\n }\n </div>\n );\n};\n\nexport default OperatorList;\n","import React, {\n ReactElement,\n useContext,\n useEffect,\n useState,\n} from 'react';\n\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport { noop } from '../../../../utils/utils';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\ninterface Props {\n onCancel(): void;\n}\n\nexport default function MutedParticipantsModal({\n onCancel,\n}: Props): ReactElement {\n const [mutedUsers, setMutedUsers] = useState([]);\n const [userListQuery, setUserListQuery] = useState(null);\n\n const { channel } = useOpenChannelSettingsContext();\n const state = useSendbirdStateContext();\n const currentUserId = state?.config?.userId;\n const { stringSet } = useContext(LocalizationContext);\n\n useEffect(() => {\n const mutedUserListQuery = channel?.createMutedUserListQuery({\n limit: 10,\n });\n mutedUserListQuery.next().then((users) => {\n setMutedUsers(users);\n });\n setUserListQuery(mutedUserListQuery);\n }, []);\n return (\n <div>\n <Modal\n hideFooter\n onCancel={() => onCancel()}\n onSubmit={noop}\n titleText=\"Muted members\"\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = userListQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n userListQuery.next().then((o) => {\n setMutedUsers([\n ...mutedUsers,\n ...o,\n ])\n });\n }\n }}\n >\n {\n mutedUsers.map((mutedUser) => (\n <UserListItem\n currentUser={currentUserId}\n user={mutedUser}\n key={mutedUser.userId}\n action={({ actionRef }) => (\n mutedUser?.userId !== currentUserId\n ? (\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 parentRef={actionRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n channel?.unmuteUser(mutedUser).then(() => {\n closeDropdown();\n setMutedUsers(mutedUsers.filter((u) => {\n return (u.userId !== mutedUser.userId);\n }));\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNMUTE}\n </MenuItem>\n </MenuItems>\n )}\n />\n ) : null\n )}\n />\n ))}\n </div>\n </Modal>\n </div>\n );\n}\n","import React, {\n ReactElement,\n useEffect,\n useState,\n useCallback,\n useContext,\n} from 'react';\n\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { UserListItem } from '../ParticipantUI/ParticipantItem';\nimport MutedParticipantsModal from './MutedParticipantsModal';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\nexport const MutedParticipantList = (): ReactElement => {\n const [mutedUsers, setMutedUsers] = useState([]);\n const [hasNext, setHasNext] = useState(false);\n const [showModal, setShowModal] = useState(false);\n\n const { channel } = useOpenChannelSettingsContext();\n const state = useSendbirdStateContext();\n const currentUserId = state?.config?.userId;\n const { stringSet } = useContext(LocalizationContext);\n\n useEffect(() => {\n if (!channel) {\n setMutedUsers([]);\n return;\n }\n const mutedUserListQuery = channel?.createMutedUserListQuery({\n limit: 10,\n });\n mutedUserListQuery.next().then((members) => {\n setMutedUsers(members);\n setHasNext(mutedUserListQuery.hasNext);\n });\n }, [channel]);\n\n const refreshList = useCallback(() => {\n if (!channel) {\n setMutedUsers([]);\n return;\n }\n\n const mutedUserListQuery = channel?.createMutedUserListQuery({\n limit: 10,\n });\n mutedUserListQuery.next().then((members) => {\n setMutedUsers(members);\n setHasNext(mutedUserListQuery.hasNext);\n });\n }, [channel]);\n return (\n <>\n {\n mutedUsers.map((mutedUser) => (\n <UserListItem\n key={mutedUser.userId}\n user={mutedUser}\n currentUser={currentUserId}\n isOperator={channel?.isOperator(mutedUser.userId)}\n action={({ actionRef }) => (\n mutedUser?.userId !== currentUserId\n ? (\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 closeDropdown={closeDropdown}\n openLeft\n parentRef={actionRef}\n >\n <MenuItem\n onClick={() => {\n channel?.unmuteUser(mutedUser).then(() => {\n refreshList();\n closeDropdown();\n })\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNMUTE}\n </MenuItem>\n </MenuItems>\n )}\n />\n ) : null\n )}\n />\n ))\n }\n {\n mutedUsers && mutedUsers.length === 0 && (\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__MUTED_MEMBERS__NO_ONE}\n </Label>\n )\n }\n {\n hasNext && (\n <div\n className=\"sendbird-channel-settings-muted-participant-list__footer\"\n >\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowModal(true);\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__MUTED_MEMBERS__TITLE_ALL}\n </Button>\n </div>\n )\n }\n {\n showModal && (\n <MutedParticipantsModal\n onCancel={() => {\n setShowModal(false);\n refreshList();\n }}\n />\n )\n }\n </>\n );\n}\n\nexport default MutedParticipantList;\n","import React, {\n ReactElement,\n useContext,\n useEffect,\n useState,\n} from 'react';\n\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\n\nimport { noop } from '../../../../utils/utils';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface Props {\n onCancel(): void;\n}\n\nexport default function BannedUsersModal({\n onCancel,\n}: Props): ReactElement {\n const [bannedUsers, setBannedUsers] = useState([]);\n const [userListQuery, setUserListQuery] = useState(null);\n const { channel } = useOpenChannelSettingsContext();\n const state = useSendbirdStateContext();\n const { stringSet } = useContext(LocalizationContext);\n const currentUserId = state?.config?.userId;\n\n useEffect(() => {\n const bannedUserListQuery = channel?.createBannedUserListQuery();\n bannedUserListQuery.next().then((users) => {\n setBannedUsers(users);\n });\n setUserListQuery(bannedUserListQuery);\n }, []);\n return (\n <div>\n <Modal\n hideFooter\n onCancel={() => onCancel()}\n onSubmit={noop}\n titleText=\"Muted members\"\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = userListQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n userListQuery.next().then((o) => {\n setBannedUsers([\n ...bannedUsers,\n ...o,\n ])\n });\n }\n }}\n >\n {\n bannedUsers.map((bannedUser) => (\n <UserListItem\n user={bannedUser}\n key={bannedUser.userId}\n action={({ actionRef }) => (\n bannedUser?.userId !== currentUserId\n ? (\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 parentRef={actionRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n channel?.unbanUser(bannedUser).then(() => {\n closeDropdown();\n setBannedUsers(bannedUsers.filter((u) => {\n return (u.userId !== bannedUser.userId);\n }));\n })\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNBAN}\n </MenuItem>\n </MenuItems>\n )}\n />\n ) : null\n )\n }\n />\n ))\n }\n </div>\n </Modal>\n </div>\n );\n}\n","import React, {\n ReactElement,\n useEffect,\n useState,\n useCallback,\n useContext,\n} from 'react';\n\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\n\nimport BannedUsersModal from './BannedUsersModal';\nimport { UserListItem } from '../ParticipantUI/ParticipantItem';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nexport const BannedUserList = (): ReactElement => {\n const [bannedUsers, setBannedUsers] = useState([]);\n const [hasNext, setHasNext] = useState(false);\n const [showModal, setShowModal] = useState(false);\n\n const { channel } = useOpenChannelSettingsContext();\n const state = useSendbirdStateContext();\n const { stringSet } = useContext(LocalizationContext);\n const currentUserId = state?.config?.userId;\n\n useEffect(() => {\n if (!channel) {\n setBannedUsers([]);\n return;\n }\n const bannedUserListQuery = channel?.createBannedUserListQuery();\n bannedUserListQuery.next().then((users) => {\n setBannedUsers(users);\n setHasNext(bannedUserListQuery.hasNext);\n });\n }, [channel]);\n\n const refreshList = useCallback(() => {\n if (!channel) {\n setBannedUsers([]);\n return;\n }\n const bannedUserListQuery = channel?.createBannedUserListQuery();\n bannedUserListQuery.next().then((users) => {\n setBannedUsers(users);\n setHasNext(bannedUserListQuery.hasNext);\n });\n }, [channel]);\n return (\n <>\n {\n bannedUsers.map((bannedUser) => (\n <UserListItem\n key={bannedUser.userId}\n user={bannedUser}\n isOperator={channel?.isOperator(bannedUser.userId)}\n action={({ actionRef }) => (\n bannedUser?.userId !== currentUserId\n ? (\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 parentRef={actionRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n channel?.unbanUser(bannedUser).then(() => {\n closeDropdown();\n refreshList();\n })\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNBAN}\n </MenuItem>\n </MenuItems>\n )}\n />\n ) : null\n )}\n />\n ))\n }\n {\n bannedUsers && bannedUsers.length === 0 && (\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__BANNED_MEMBERS__NO_ONE}\n </Label>\n )\n }\n {\n hasNext && (\n <div className=\"sendbird-channel-settings-banned-user-list__footer\" >\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowModal(true);\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__BANNED_MEMBERS__TITLE_ALL}\n </Button>\n </div>\n )\n }\n {\n showModal && (\n <BannedUsersModal\n onCancel={() => {\n setShowModal(false);\n refreshList();\n }}\n />\n )\n }\n </>\n );\n}\n\n\nexport default BannedUserList;\n","import React, { useContext } from 'react';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\nimport Label, {\n LabelTypography,\n LabelColors,\n} from '../../../../ui/Label';\nimport Icon, {\n IconTypes,\n IconColors,\n} from '../../../../ui/Icon';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport OpenChannelProfile from '../OpenChannelProfile';\nimport DeleteChannel from './DeleteOpenChannel';\nimport ParticipantsAccordion from '../ParticipantUI';\nimport Accordion, { AccordionGroup } from '../../../../ui/Accordion';\nimport OperatorList from './OperatorList';\nimport MutedParticipantList from './MutedParticipantList';\nimport BannedUserList from './BannedUserList';\n\nexport const copyToClipboard = (text: string): boolean => {\n // @ts-ignore: Unreachable code error\n if (window.clipboardData && window.clipboardData.setData) {\n // Internet Explorer-specific code path to prevent textarea being shown while dialog is visible.\n // @ts-ignore: Unreachable code error\n return window.clipboardData.setData('Text', text);\n }\n if (document.queryCommandSupported && document.queryCommandSupported('copy')) {\n const textarea = document.createElement('textarea');\n textarea.textContent = text;\n textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in Microsoft Edge.\n document.body.appendChild(textarea);\n textarea.select();\n try {\n return document.execCommand('copy'); // Security exception may be thrown by some browsers.\n } catch (ex) {\n return false;\n } finally {\n document.body.removeChild(textarea);\n }\n }\n return false;\n};\n\nexport interface OperatorUIProps {\n renderChannelProfile?: () => React.ReactNode;\n}\n\nexport const OperatorUI: React.FC<OperatorUIProps> = ({\n renderChannelProfile,\n}: OperatorUIProps) => {\n const { stringSet } = useContext(LocalizationContext);\n const {\n onCloseClick,\n channel,\n } = useOpenChannelSettingsContext();\n return (\n <>\n <div className=\"sendbird-openchannel-settings__header\">\n <Label type={LabelTypography.H_2} color={LabelColors.ONBACKGROUND_1}>\n {stringSet.CHANNEL_SETTING__HEADER__TITLE}\n </Label>\n <Icon\n className=\"sendbird-openchannel-settings__close-icon\"\n type={IconTypes.CLOSE}\n height=\"24px\"\n width=\"24px\"\n onClick={() => {\n onCloseClick();\n }}\n />\n </div>\n <div className=\"sendbird-openchannel-settings__profile\">\n {\n renderChannelProfile?.() || (\n <OpenChannelProfile />\n )\n }\n </div>\n <div className=\"sendbird-openchannel-settings__url\">\n <Icon\n className=\"sendbird-openchannel-settings__copy-icon\"\n type={IconTypes.COPY}\n height=\"22px\"\n width=\"22px\"\n onClick={() => {\n copyToClipboard(channel?.url);\n }}\n />\n <Label\n className=\"sendbird-openchannel-settings__url-label\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__OPERATOR_URL}\n </Label>\n <Label\n className=\"sendbird-openchannel-settings__url-value\"\n type={LabelTypography.SUBTITLE_2}\n >\n {channel?.url}\n </Label>\n </div>\n <AccordionGroup>\n <Accordion\n className=\"sendbird-openchannel-settings__operators-list\"\n id=\"operators\"\n renderTitle={() => (\n <>\n <Icon\n className=\"sendbird-openchannel-settings__operator-accordion-icon\"\n type={IconTypes.OPERATOR}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__OPERATORS_TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <>\n <OperatorList />\n </>\n )}\n />\n <Accordion\n className=\"sendbird-channel-settings__operators-list\"\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__operator-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 <>\n <ParticipantsAccordion isOperatorView />\n </>\n )}\n />\n <Accordion\n className=\"sendbird-channel-settings__operators-list\"\n id=\"mutedMembers\"\n renderTitle={() => (\n <>\n <Icon\n className=\"sendbird-openchannel-settings__operator-accordion-icon\"\n type={IconTypes.MUTE}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__MUTED_MEMBERS__TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <>\n <MutedParticipantList />\n </>\n )}\n />\n <Accordion\n className=\"sendbird-channel-settings__operators-list\"\n id=\"bannedUsers\"\n renderTitle={() => (\n <>\n <Icon\n className=\"sendbird-openchannel-settings__operator-accordion-icon\"\n type={IconTypes.BAN}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__BANNED_MEMBERS__TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <>\n <BannedUserList />\n </>\n )}\n />\n </AccordionGroup>\n <DeleteChannel />\n </>\n );\n};\n\nexport default OperatorUI;\n"],"names":["DeleteChannel","_c","useState","showDeleteChannelModal","setShowDeleteChannelModal","stringSet","useContext","LocalizationContext","globalState","useSendbirdStateContext","isOnline","config","logger","_d","useOpenChannelSettingsContext","channel","onDeleteChannel","deleteChannel","delete","then","response","info","catch","error","warning","React","IconTypes","DELETE","IconColors","ERROR","join","LabelTypography","SUBTITLE_1","LabelColors","ONBACKGROUND_1","OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_PANEL","OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_TITLE","OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_SUBMIT","OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_CONTEXT","OperatorListModal","_a","onCancel","users","setUsers","operatorQuery","setOperatorQuery","state","currentUserId","userId","useEffect","operatorListQuery","createOperatorListQuery","limit","next","participants","e","hasNext","target","fetchMore","clientHeight","scrollTop","scrollHeight","o","map","operator","parentRef","actionRef","toggleDropdown","MORE","CONTENT_INVERSE","closeDropdown","removeOperators","filter","OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR","AddOperatorsModal","onSubmit","_b","setParticipants","selectedUsers","setSelectedUsers","participantQuery","setParticipantQuery","participantListQuery","createParticipantListQuery","selectedCount","Object","keys","m","length","ButtonType","PRIMARY","addOperators","ONBACKGROUND_3","CAPTION_1","MODAL__INVITE_MEMBER__SELECTEC","participant","isOperator","operators","find","event","modifiedSelectedUsers","id","checked","OperatorList","showAdd","setShowAdd","_e","showMore","setShowMore","slice","UserListItem","muteUser","OPEN_CHANNEL_SETTING__MODERATION__MUTE","banUser","OPEN_CHANNEL_SETTING__MODERATION__BAN","ButtonTypes","SECONDARY","ButtonSizes","SMALL","OPEN_CHANNEL_SETTINGS__OPERATORS__TITLE_ADD","OPEN_CHANNEL_SETTINGS__OPERATORS__TITLE_ALL","MutedParticipantsModal","mutedUsers","setMutedUsers","userListQuery","setUserListQuery","mutedUserListQuery","createMutedUserListQuery","noop","mutedUser","unmuteUser","u","OPEN_CHANNEL_SETTING__MODERATION__UNMUTE","MutedParticipantList","setHasNext","showModal","setShowModal","members","refreshList","useCallback","SUBTITLE_2","OPEN_CHANNEL_SETTINGS__MUTED_MEMBERS__NO_ONE","OPEN_CHANNEL_SETTINGS__MUTED_MEMBERS__TITLE_ALL","BannedUsersModal","bannedUsers","setBannedUsers","bannedUserListQuery","createBannedUserListQuery","bannedUser","unbanUser","OPEN_CHANNEL_SETTING__MODERATION__UNBAN","BannedUserList","OPEN_CHANNEL_SETTINGS__BANNED_MEMBERS__NO_ONE","OPEN_CHANNEL_SETTINGS__BANNED_MEMBERS__TITLE_ALL","copyToClipboard","text","window","clipboardData","setData","document","queryCommandSupported","textarea","createElement","textContent","style","position","body","appendChild","select","execCommand","ex","removeChild","OperatorUI","renderChannelProfile","onCloseClick","H_2","CHANNEL_SETTING__HEADER__TITLE","CLOSE","OpenChannelProfile","COPY","url","CAPTION_2","ONBACKGROUND_2","OPEN_CHANNEL_SETTINGS__OPERATOR_URL","OPERATOR","OPEN_CHANNEL_SETTINGS__OPERATORS_TITLE","MEMBERS","OPEN_CHANNEL_SETTINGS__PARTICIPANTS_ACCORDION_TITLE","ParticipantsAccordion","MUTE","OPEN_CHANNEL_SETTINGS__MUTED_MEMBERS__TITLE","BAN","OPEN_CHANNEL_SETTINGS__BANNED_MEMBERS__TITLE"],"mappings":"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"}
|
|
@@ -1,33 +1,35 @@
|
|
|
1
|
-
import '../../tslib.es6-
|
|
1
|
+
import '../../tslib.es6-33ba1281.js';
|
|
2
2
|
import 'react';
|
|
3
|
-
import '../../index-
|
|
3
|
+
import '../../index-ac3d5cae.js';
|
|
4
4
|
import '../../ui/ContextMenu.js';
|
|
5
5
|
import '../../ui/Icon.js';
|
|
6
6
|
import '../../ui/IconButton.js';
|
|
7
|
-
import '../../index-
|
|
8
|
-
export { P as default } from '../../index-
|
|
9
|
-
import '../../LocalizationContext-
|
|
7
|
+
import '../../index-23be350b.js';
|
|
8
|
+
export { P as default } from '../../index-018ea0ab.js';
|
|
9
|
+
import '../../LocalizationContext-287995e5.js';
|
|
10
10
|
import '../context.js';
|
|
11
11
|
import '../../useSendbirdStateContext.js';
|
|
12
|
-
import '../../_rollupPluginBabelHelpers-
|
|
12
|
+
import '../../_rollupPluginBabelHelpers-e72431a4.js';
|
|
13
13
|
import 'prop-types';
|
|
14
|
-
import '../../index-
|
|
14
|
+
import '../../index-6028a62f.js';
|
|
15
15
|
import 'react-dom';
|
|
16
16
|
import '../../ui/SortByRow.js';
|
|
17
|
-
import '../../stringSet-
|
|
18
|
-
import '../../UserProfileContext-
|
|
19
|
-
import '../../context-
|
|
20
|
-
import '../../utils-
|
|
17
|
+
import '../../stringSet-7e56841c.js';
|
|
18
|
+
import '../../UserProfileContext-b61be62b.js';
|
|
19
|
+
import '../../context-902cd440.js';
|
|
20
|
+
import '../../utils-8bf3ab64.js';
|
|
21
21
|
import '../../ui/Avatar.js';
|
|
22
22
|
import '../../ui/ImageRenderer.js';
|
|
23
|
-
import '../../uuid-
|
|
23
|
+
import '../../uuid-9cbd8532.js';
|
|
24
24
|
import '../../ui/Modal.js';
|
|
25
|
-
import '../../index-
|
|
26
|
-
import '../../index-
|
|
25
|
+
import '../../index-a6cd1d3e.js';
|
|
26
|
+
import '../../index-538b4e23.js';
|
|
27
27
|
import '../../ui/UserProfile.js';
|
|
28
28
|
import '../../withSendbird.js';
|
|
29
29
|
import '../../sendbirdSelectors.js';
|
|
30
|
-
import '../../topics-
|
|
30
|
+
import '../../topics-23bb62fd.js';
|
|
31
|
+
import '../../openChannel-1cb65a49.js';
|
|
32
|
+
import '../../__bundle-7dfccc8c-35b47fb1.js';
|
|
31
33
|
import '../../ui/UserListItem.js';
|
|
32
34
|
import '../../ui/MutedAvatarOverlay.js';
|
|
33
35
|
import '../../ui/Checkbox.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParticipantUI.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ParticipantUI.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
import React__default, { useState, useEffect } from 'react';
|
|
2
|
+
import { U as Un } from '../openChannel-1cb65a49.js';
|
|
2
3
|
import useSendbirdStateContext from '../useSendbirdStateContext.js';
|
|
3
|
-
import { U as UserProfileProvider } from '../UserProfileContext-
|
|
4
|
-
import { u as uuidv4 } from '../uuid-
|
|
4
|
+
import { U as UserProfileProvider } from '../UserProfileContext-b61be62b.js';
|
|
5
|
+
import { u as uuidv4 } from '../uuid-9cbd8532.js';
|
|
6
|
+
import '../__bundle-7dfccc8c-35b47fb1.js';
|
|
5
7
|
import '../withSendbird.js';
|
|
6
|
-
import '../_rollupPluginBabelHelpers-
|
|
8
|
+
import '../_rollupPluginBabelHelpers-e72431a4.js';
|
|
7
9
|
import 'prop-types';
|
|
8
10
|
|
|
9
11
|
var OpenChannelSettingsContext = /*#__PURE__*/React__default.createContext(undefined);
|
|
10
12
|
|
|
11
13
|
var OpenChannelSettingsProvider = function OpenChannelSettingsProvider(props) {
|
|
12
|
-
var _a, _b, _c;
|
|
14
|
+
var _a, _b, _c, _d;
|
|
13
15
|
|
|
14
16
|
var children = props.children,
|
|
15
17
|
channelUrl = props.channelUrl,
|
|
@@ -21,10 +23,11 @@ var OpenChannelSettingsProvider = function OpenChannelSettingsProvider(props) {
|
|
|
21
23
|
var globalStore = useSendbirdStateContext();
|
|
22
24
|
var sdk = (_b = (_a = globalStore === null || globalStore === void 0 ? void 0 : globalStore.stores) === null || _a === void 0 ? void 0 : _a.sdkStore) === null || _b === void 0 ? void 0 : _b.sdk;
|
|
23
25
|
var logger = (_c = globalStore === null || globalStore === void 0 ? void 0 : globalStore.config) === null || _c === void 0 ? void 0 : _c.logger;
|
|
26
|
+
var currentUserId = (_d = sdk === null || sdk === void 0 ? void 0 : sdk.currentUser) === null || _d === void 0 ? void 0 : _d.userId;
|
|
24
27
|
|
|
25
|
-
var
|
|
26
|
-
|
|
27
|
-
setChannel =
|
|
28
|
+
var _e = useState(null),
|
|
29
|
+
currentChannel = _e[0],
|
|
30
|
+
setChannel = _e[1];
|
|
28
31
|
|
|
29
32
|
useEffect(function () {
|
|
30
33
|
if (!channelUrl || !sdk.openChannel) {
|
|
@@ -47,8 +50,8 @@ var OpenChannelSettingsProvider = function OpenChannelSettingsProvider(props) {
|
|
|
47
50
|
setChannel(null);
|
|
48
51
|
});
|
|
49
52
|
return function () {
|
|
50
|
-
if (
|
|
51
|
-
|
|
53
|
+
if (currentChannel && currentChannel.exit) {
|
|
54
|
+
currentChannel.exit().then(function () {
|
|
52
55
|
logger.info('OpenChannelSettings | Succeeded to exit channel');
|
|
53
56
|
}).catch(function (error) {
|
|
54
57
|
logger.warning('OpenChannelSettings | Failed to exit channel', error);
|
|
@@ -61,32 +64,60 @@ var OpenChannelSettingsProvider = function OpenChannelSettingsProvider(props) {
|
|
|
61
64
|
|
|
62
65
|
var channelHandlerId = uuidv4();
|
|
63
66
|
|
|
64
|
-
if (
|
|
65
|
-
var channelHandlerParams = {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
67
|
+
if (currentChannel !== null && ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.openChannel) === null || _a === void 0 ? void 0 : _a.addOpenChannelHandler)) {
|
|
68
|
+
var channelHandlerParams = new Un({
|
|
69
|
+
onOperatorUpdated: function onOperatorUpdated(channel) {
|
|
70
|
+
if ((channel === null || channel === void 0 ? void 0 : channel.url) === (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url)) {
|
|
71
|
+
setChannel(channel);
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
onUserMuted: function onUserMuted(channel, user) {
|
|
75
|
+
if ((channel === null || channel === void 0 ? void 0 : channel.url) === (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) && (user === null || user === void 0 ? void 0 : user.userId) === currentUserId) {
|
|
76
|
+
setChannel(channel);
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
onUserUnmuted: function onUserUnmuted(channel, user) {
|
|
80
|
+
if ((channel === null || channel === void 0 ? void 0 : channel.url) === (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) && (user === null || user === void 0 ? void 0 : user.userId) === currentUserId) {
|
|
81
|
+
setChannel(channel);
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
onUserBanned: function onUserBanned(channel, user) {
|
|
85
|
+
if ((channel === null || channel === void 0 ? void 0 : channel.url) === (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) && (user === null || user === void 0 ? void 0 : user.userId) === currentUserId) {
|
|
86
|
+
setChannel(null);
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
onUserUnbanned: function onUserUnbanned(channel, user) {
|
|
90
|
+
if ((user === null || user === void 0 ? void 0 : user.userId) === currentUserId) {
|
|
91
|
+
setChannel(channel);
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
onChannelChanged: function onChannelChanged(channel) {
|
|
95
|
+
if ((channel === null || channel === void 0 ? void 0 : channel.url) === (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url)) {
|
|
96
|
+
setChannel(channel);
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
onChannelDeleted: function onChannelDeleted(channelUrl) {
|
|
100
|
+
if (channelUrl === (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url)) {
|
|
70
101
|
setChannel(null);
|
|
71
102
|
}
|
|
72
103
|
}
|
|
73
|
-
};
|
|
104
|
+
});
|
|
74
105
|
sdk.openChannel.addOpenChannelHandler(channelHandlerId, channelHandlerParams);
|
|
75
106
|
}
|
|
76
107
|
|
|
77
108
|
return function () {
|
|
78
109
|
var _a, _b, _c;
|
|
79
110
|
|
|
80
|
-
if ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.openChannel) === null || _a === void 0 ? void 0 : _a.removeOpenChannelHandler) {
|
|
111
|
+
if (((_a = sdk === null || sdk === void 0 ? void 0 : sdk.openChannel) === null || _a === void 0 ? void 0 : _a.removeOpenChannelHandler) && channelHandlerId) {
|
|
81
112
|
logger.info('OpenChannelSettings | Removing channel handlers', channelHandlerId);
|
|
82
113
|
(_c = (_b = sdk.openChannel).removeOpenChannelHandler) === null || _c === void 0 ? void 0 : _c.call(_b, channelHandlerId);
|
|
83
114
|
}
|
|
84
115
|
};
|
|
85
|
-
}, [
|
|
116
|
+
}, [currentChannel]);
|
|
86
117
|
return /*#__PURE__*/React__default.createElement(OpenChannelSettingsContext.Provider, {
|
|
87
118
|
value: {
|
|
88
119
|
channelUrl: channelUrl,
|
|
89
|
-
channel:
|
|
120
|
+
channel: currentChannel,
|
|
90
121
|
setChannel: setChannel,
|
|
91
122
|
onCloseClick: onCloseClick,
|
|
92
123
|
onChannelModified: onChannelModified,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sources":["../../src/smart-components/OpenChannelSettings/context/OpenChannelSettingsProvider.tsx"],"sourcesContent":["import React, {\n useEffect,\n useState,\n} from 'react';\nimport type { OpenChannel, OpenChannelHandler, OpenChannelUpdateParams, SendbirdOpenChat } from '@sendbird/chat/openChannel';\n\nimport useSendbirdStateContext from '../../../hooks/useSendbirdStateContext';\nimport { UserProfileProvider } from '../../../lib/UserProfileContext';\nimport { RenderUserProfileProps } from '../../../types';\nimport uuidv4 from '../../../utils/uuid';\n\nexport interface OpenChannelSettingsContextProps {\n channelUrl: string;\n children?: React.ReactNode;\n onCloseClick?(): void;\n onBeforeUpdateChannel?(currentTitle: string, currentImg: File, data: string): OpenChannelUpdateParams;\n onChannelModified?(channel: OpenChannel): void;\n onDeleteChannel?(channel: OpenChannel): void;\n disableUserProfile?: boolean;\n renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;\n}\n\ninterface OpenChannelSettingsContextType {\n channelUrl: string;\n channel?: OpenChannel;\n setChannel?: React.Dispatch<React.SetStateAction<OpenChannel>>;\n onCloseClick?(): void;\n onBeforeUpdateChannel?(currentTitle: string, currentImg: File, data: string): OpenChannelUpdateParams;\n onChannelModified?(channel: OpenChannel): void;\n onDeleteChannel?(channel: OpenChannel): void;\n}\n\nconst OpenChannelSettingsContext = React.createContext<OpenChannelSettingsContextType | null>(undefined);\n\nconst OpenChannelSettingsProvider: React.FC<OpenChannelSettingsContextProps> = (props: OpenChannelSettingsContextProps) => {\n const {\n children,\n channelUrl,\n onCloseClick,\n onChannelModified,\n onBeforeUpdateChannel,\n onDeleteChannel,\n } = props;\n\n // fetch store from <SendbirdProvider />\n const globalStore = useSendbirdStateContext();\n const sdk = globalStore?.stores?.sdkStore?.sdk as SendbirdOpenChat;\n\n const logger = globalStore?.config?.logger;\n\n const [channel, setChannel] = useState<OpenChannel | null>(null);\n useEffect(() => {\n if (!channelUrl || !sdk.openChannel) {\n setChannel(null);\n return;\n }\n\n sdk.openChannel.getChannel(channelUrl)\n .then((channel) => {\n logger.info('open channel setting: fetched', channel);\n // TODO: Add pending status\n channel.enter()\n .then(() => {\n setChannel(channel);\n logger.info('OpenChannelSettings | Succeeded to enter channel');\n })\n .catch((error) => {\n setChannel(null);\n logger.warning('OpenChannelSettings | Failed to enter channel', error);\n });\n })\n .catch((error) => {\n logger.error('open channel setting: error fetching', error);\n setChannel(null);\n });\n return () => {\n if (channel && channel.exit) {\n channel.exit()\n .then(() => {\n logger.info('OpenChannelSettings | Succeeded to exit channel');\n })\n .catch((error) => {\n logger.warning('OpenChannelSettings | Failed to exit channel', error);\n });\n }\n }\n }, [channelUrl, sdk]);\n\n useEffect(() => {\n const channelHandlerId = uuidv4();\n if (channel !== null && sdk?.openChannel?.addOpenChannelHandler) {\n const channelHandlerParams: OpenChannelHandler = {\n onUserBanned(ch, user) {\n if (ch?.url === channel?.url && user?.userId === sdk?.currentUser?.userId) {\n setChannel(null);\n }\n },\n };\n sdk.openChannel.addOpenChannelHandler(channelHandlerId, channelHandlerParams);\n }\n return () => {\n if (sdk?.openChannel?.removeOpenChannelHandler) {\n logger.info('OpenChannelSettings | Removing channel handlers', channelHandlerId);\n sdk.openChannel.removeOpenChannelHandler?.(channelHandlerId);\n }\n }\n }, [channel]);\n\n return (\n <OpenChannelSettingsContext.Provider value={{\n channelUrl,\n channel,\n setChannel,\n onCloseClick,\n onChannelModified,\n onBeforeUpdateChannel,\n onDeleteChannel,\n }}>\n <UserProfileProvider\n isOpenChannel\n renderUserProfile={props?.renderUserProfile}\n disableUserProfile={props?.disableUserProfile}\n >\n {children}\n </UserProfileProvider>\n </OpenChannelSettingsContext.Provider>\n );\n}\n\ntype useOpenChannelSettingsType = () => OpenChannelSettingsContextType;\nconst useOpenChannelSettingsContext: useOpenChannelSettingsType = () => React.useContext(OpenChannelSettingsContext);\n\nexport {\n OpenChannelSettingsProvider,\n useOpenChannelSettingsContext,\n};\n"],"names":["OpenChannelSettingsContext","React","createContext","undefined","OpenChannelSettingsProvider","props","children","channelUrl","onCloseClick","onChannelModified","onBeforeUpdateChannel","onDeleteChannel","globalStore","useSendbirdStateContext","sdk","stores","sdkStore","logger","config","_d","useState","channel","setChannel","useEffect","openChannel","getChannel","then","info","enter","catch","error","warning","exit","channelHandlerId","uuidv4","addOpenChannelHandler","channelHandlerParams","onUserBanned","ch","user","url","userId","currentUser","removeOpenChannelHandler","renderUserProfile","disableUserProfile","useOpenChannelSettingsContext","useContext"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context.js","sources":["../../src/smart-components/OpenChannelSettings/context/OpenChannelSettingsProvider.tsx"],"sourcesContent":["import React, {\n useEffect,\n useState,\n} from 'react';\nimport { OpenChannel, OpenChannelHandler, OpenChannelUpdateParams, SendbirdOpenChat } from '@sendbird/chat/openChannel';\n\nimport useSendbirdStateContext from '../../../hooks/useSendbirdStateContext';\nimport { UserProfileProvider } from '../../../lib/UserProfileContext';\nimport { RenderUserProfileProps } from '../../../types';\nimport uuidv4 from '../../../utils/uuid';\n\nexport interface OpenChannelSettingsContextProps {\n channelUrl: string;\n children?: React.ReactNode;\n onCloseClick?(): void;\n onBeforeUpdateChannel?(currentTitle: string, currentImg: File, data: string): OpenChannelUpdateParams;\n onChannelModified?(channel: OpenChannel): void;\n onDeleteChannel?(channel: OpenChannel): void;\n disableUserProfile?: boolean;\n renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;\n}\n\ninterface OpenChannelSettingsContextType {\n channelUrl: string;\n channel?: OpenChannel;\n setChannel?: React.Dispatch<React.SetStateAction<OpenChannel>>;\n onCloseClick?(): void;\n onBeforeUpdateChannel?(currentTitle: string, currentImg: File, data: string): OpenChannelUpdateParams;\n onChannelModified?(channel: OpenChannel): void;\n onDeleteChannel?(channel: OpenChannel): void;\n}\n\nconst OpenChannelSettingsContext = React.createContext<OpenChannelSettingsContextType | null>(undefined);\n\nconst OpenChannelSettingsProvider: React.FC<OpenChannelSettingsContextProps> = (props: OpenChannelSettingsContextProps) => {\n const {\n children,\n channelUrl,\n onCloseClick,\n onChannelModified,\n onBeforeUpdateChannel,\n onDeleteChannel,\n } = props;\n\n // fetch store from <SendbirdProvider />\n const globalStore = useSendbirdStateContext();\n const sdk = globalStore?.stores?.sdkStore?.sdk as SendbirdOpenChat;\n\n const logger = globalStore?.config?.logger;\n const currentUserId = sdk?.currentUser?.userId;\n\n const [currentChannel, setChannel] = useState<OpenChannel | null>(null);\n useEffect(() => {\n if (!channelUrl || !sdk.openChannel) {\n setChannel(null);\n return;\n }\n\n sdk.openChannel.getChannel(channelUrl)\n .then((channel) => {\n logger.info('open channel setting: fetched', channel);\n // TODO: Add pending status\n channel.enter()\n .then(() => {\n setChannel(channel);\n logger.info('OpenChannelSettings | Succeeded to enter channel');\n })\n .catch((error) => {\n setChannel(null);\n logger.warning('OpenChannelSettings | Failed to enter channel', error);\n });\n })\n .catch((error) => {\n logger.error('open channel setting: error fetching', error);\n setChannel(null);\n });\n return () => {\n if (currentChannel && currentChannel.exit) {\n currentChannel.exit()\n .then(() => {\n logger.info('OpenChannelSettings | Succeeded to exit channel');\n })\n .catch((error) => {\n logger.warning('OpenChannelSettings | Failed to exit channel', error);\n });\n }\n }\n }, [channelUrl, sdk]);\n\n useEffect(() => {\n const channelHandlerId = uuidv4();\n if (currentChannel !== null && sdk?.openChannel?.addOpenChannelHandler) {\n const channelHandlerParams = new OpenChannelHandler({\n onOperatorUpdated(channel) {\n if (channel?.url === currentChannel?.url) {\n setChannel(channel as OpenChannel);\n }\n },\n onUserMuted(channel, user) {\n if (channel?.url === currentChannel?.url && user?.userId === currentUserId) {\n setChannel(channel as OpenChannel);\n }\n },\n onUserUnmuted(channel, user) {\n if (channel?.url === currentChannel?.url && user?.userId === currentUserId) {\n setChannel(channel as OpenChannel);\n }\n },\n onUserBanned(channel, user) {\n if (channel?.url === currentChannel?.url && user?.userId === currentUserId) {\n setChannel(null);\n }\n },\n onUserUnbanned(channel, user) {\n if (user?.userId === currentUserId) {\n setChannel(channel as OpenChannel);\n }\n },\n onChannelChanged(channel) {\n if (channel?.url === currentChannel?.url) {\n setChannel(channel as OpenChannel);\n }\n },\n onChannelDeleted(channelUrl) {\n if (channelUrl === currentChannel?.url) {\n setChannel(null);\n }\n },\n });\n sdk.openChannel.addOpenChannelHandler(channelHandlerId, channelHandlerParams);\n }\n return () => {\n if (sdk?.openChannel?.removeOpenChannelHandler && channelHandlerId) {\n logger.info('OpenChannelSettings | Removing channel handlers', channelHandlerId);\n sdk.openChannel.removeOpenChannelHandler?.(channelHandlerId);\n }\n }\n }, [currentChannel]);\n\n return (\n <OpenChannelSettingsContext.Provider value={{\n channelUrl,\n channel: currentChannel,\n setChannel,\n onCloseClick,\n onChannelModified,\n onBeforeUpdateChannel,\n onDeleteChannel,\n }}>\n <UserProfileProvider\n isOpenChannel\n renderUserProfile={props?.renderUserProfile}\n disableUserProfile={props?.disableUserProfile}\n >\n {children}\n </UserProfileProvider>\n </OpenChannelSettingsContext.Provider>\n );\n}\n\ntype useOpenChannelSettingsType = () => OpenChannelSettingsContextType;\nconst useOpenChannelSettingsContext: useOpenChannelSettingsType = () => React.useContext(OpenChannelSettingsContext);\n\nexport {\n OpenChannelSettingsProvider,\n useOpenChannelSettingsContext,\n};\n"],"names":["OpenChannelSettingsContext","React","createContext","undefined","OpenChannelSettingsProvider","props","children","channelUrl","onCloseClick","onChannelModified","onBeforeUpdateChannel","onDeleteChannel","globalStore","useSendbirdStateContext","sdk","stores","sdkStore","logger","config","currentUserId","currentUser","userId","_e","useState","currentChannel","setChannel","useEffect","openChannel","getChannel","then","channel","info","enter","catch","error","warning","exit","channelHandlerId","uuidv4","addOpenChannelHandler","channelHandlerParams","OpenChannelHandler","onOperatorUpdated","url","onUserMuted","user","onUserUnmuted","onUserBanned","onUserUnbanned","onChannelChanged","onChannelDeleted","removeOpenChannelHandler","renderUserProfile","disableUserProfile","useOpenChannelSettingsContext","useContext"],"mappings":"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"}
|