@sendbird/uikit-react 3.0.0-alpha.2 → 3.0.0-beta.3
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 +54 -35
- package/App.js.map +1 -1
- package/Channel/components/ChannelHeader.js +15 -14
- package/Channel/components/ChannelHeader.js.map +1 -1
- package/Channel/components/ChannelUI.js +30 -23
- package/Channel/components/ChannelUI.js.map +1 -1
- package/Channel/components/FileViewer.js +14 -13
- package/Channel/components/FileViewer.js.map +1 -1
- package/Channel/components/FrozenNotification.js +5 -5
- package/Channel/components/Message.js +189 -66
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +145 -30
- package/Channel/components/MessageInput.js.map +1 -1
- package/Channel/components/MessageList.js +72 -60
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +17 -16
- package/Channel/components/RemoveMessageModal.js.map +1 -1
- package/Channel/components/SuggestedMentionList.js +250 -0
- package/Channel/components/SuggestedMentionList.js.map +1 -0
- package/Channel/components/TypingIndicator.js +16 -15
- package/Channel/components/TypingIndicator.js.map +1 -1
- package/Channel/components/UnreadCount.js +5 -5
- package/Channel/context.js +13 -12
- package/Channel/context.js.map +1 -1
- package/Channel.js +29 -22
- package/Channel.js.map +1 -1
- package/ChannelList/components/AddChannel.js +14 -14
- package/ChannelList/components/ChannelListHeader.js +7 -7
- package/ChannelList/components/ChannelListUI.js +52 -29
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +55 -21
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/ChannelList/context.js +8 -8
- package/ChannelList.js +34 -25
- package/ChannelList.js.map +1 -1
- package/{ChannelListProvider-0b0c2c40.js → ChannelListProvider-d602a166.js} +92 -27
- package/ChannelListProvider-d602a166.js.map +1 -0
- package/{ChannelProvider-459e463f.js → ChannelProvider-cf8fc05a.js} +72 -41
- package/ChannelProvider-cf8fc05a.js.map +1 -0
- package/ChannelSettings/components/AdminPanel.js +15 -15
- package/ChannelSettings/components/ChannelProfile.js +13 -13
- package/ChannelSettings/components/ChannelSettingsUI.js +18 -18
- package/ChannelSettings/components/EditDetailsModal.js +13 -13
- package/ChannelSettings/components/LeaveChannel.js +10 -10
- package/ChannelSettings/components/UserListItem.js +11 -11
- package/ChannelSettings/components/UserPanel.js +14 -14
- package/ChannelSettings/context.js +3 -3
- package/ChannelSettings.js +18 -18
- package/CreateChannel/components/CreateChannelUI.js +14 -14
- package/CreateChannel/components/InviteMembers.js +14 -14
- package/CreateChannel/components/SelectChannelType.js +10 -10
- package/CreateChannel/context.js +3 -3
- package/CreateChannel.js +14 -14
- package/{CreateChannelProvider-c617a1bb.js → CreateChannelProvider-3f3dafed.js} +1 -1
- package/{CreateChannelProvider-c617a1bb.js.map → CreateChannelProvider-3f3dafed.js.map} +1 -1
- package/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/EditUserProfile.js +13 -13
- package/{LocalizationContext-e4391013.js → LocalizationContext-b970a73c.js} +3 -3
- package/{LocalizationContext-e4391013.js.map → LocalizationContext-b970a73c.js.map} +1 -1
- package/{MemberList-6655cba0.js → MemberList-9d29bee4.js} +5 -5
- package/{MemberList-6655cba0.js.map → MemberList-9d29bee4.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 +12 -12
- package/OpenChannel/components/OpenChannelInput.js +18 -14
- package/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessage.js +23 -19
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +25 -21
- package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/OpenChannel/components/OpenChannelUI.js +25 -21
- package/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/OpenChannel/context.js +9 -9
- package/OpenChannel.js +25 -21
- package/OpenChannel.js.map +1 -1
- package/{OpenChannelProvider-a7691eb4.js → OpenChannelProvider-821fb008.js} +7 -7
- package/{OpenChannelProvider-a7691eb4.js.map → OpenChannelProvider-821fb008.js.map} +1 -1
- package/OpenChannelSettings/components/EditDetailsModal.js +13 -13
- package/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
- package/OpenChannelSettings/components/OperatorUI.js +16 -16
- package/OpenChannelSettings/components/ParticipantUI.js +14 -14
- package/OpenChannelSettings/context.js +2 -2
- package/OpenChannelSettings.js +17 -17
- package/SendbirdProvider.js +36 -14
- package/SendbirdProvider.js.map +1 -1
- package/{UserProfileContext-865db5e6.js → UserProfileContext-f4ff4291.js} +1 -1
- package/{UserProfileContext-865db5e6.js.map → UserProfileContext-f4ff4291.js.map} +1 -1
- package/{_rollupPluginBabelHelpers-20904f21.js → _rollupPluginBabelHelpers-6bf18550.js} +1 -1
- package/{_rollupPluginBabelHelpers-20904f21.js.map → _rollupPluginBabelHelpers-6bf18550.js.map} +1 -1
- package/{actionTypes-1e3a4074.js → actionTypes-8e320ded.js} +1 -1
- package/{actionTypes-1e3a4074.js.map → actionTypes-8e320ded.js.map} +1 -1
- package/cjs/App.js +54 -35
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +15 -14
- package/cjs/Channel/components/ChannelHeader.js.map +1 -1
- package/cjs/Channel/components/ChannelUI.js +31 -24
- package/cjs/Channel/components/ChannelUI.js.map +1 -1
- package/cjs/Channel/components/FileViewer.js +14 -13
- package/cjs/Channel/components/FileViewer.js.map +1 -1
- package/cjs/Channel/components/FrozenNotification.js +5 -5
- package/cjs/Channel/components/Message.js +188 -65
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +144 -29
- package/cjs/Channel/components/MessageInput.js.map +1 -1
- package/cjs/Channel/components/MessageList.js +71 -59
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +17 -16
- package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
- package/cjs/Channel/components/SuggestedMentionList.js +256 -0
- package/cjs/Channel/components/SuggestedMentionList.js.map +1 -0
- package/cjs/Channel/components/TypingIndicator.js +18 -14
- package/cjs/Channel/components/TypingIndicator.js.map +1 -1
- package/cjs/Channel/components/UnreadCount.js +5 -5
- package/cjs/Channel/context.js +13 -12
- package/cjs/Channel/context.js.map +1 -1
- package/cjs/Channel.js +29 -22
- package/cjs/Channel.js.map +1 -1
- package/cjs/ChannelList/components/AddChannel.js +14 -14
- package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
- package/cjs/ChannelList/components/ChannelListUI.js +52 -29
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +55 -21
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/cjs/ChannelList/context.js +8 -8
- package/cjs/ChannelList.js +34 -25
- package/cjs/ChannelList.js.map +1 -1
- package/cjs/{ChannelListProvider-5a152618.js → ChannelListProvider-64db9f70.js} +92 -27
- package/cjs/ChannelListProvider-64db9f70.js.map +1 -0
- package/cjs/{ChannelProvider-f1fb0108.js → ChannelProvider-5e8e33b1.js} +79 -48
- package/cjs/ChannelProvider-5e8e33b1.js.map +1 -0
- package/cjs/ChannelSettings/components/AdminPanel.js +15 -15
- package/cjs/ChannelSettings/components/ChannelProfile.js +13 -13
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -18
- package/cjs/ChannelSettings/components/EditDetailsModal.js +13 -13
- package/cjs/ChannelSettings/components/LeaveChannel.js +10 -10
- package/cjs/ChannelSettings/components/UserListItem.js +11 -11
- package/cjs/ChannelSettings/components/UserPanel.js +14 -14
- package/cjs/ChannelSettings/context.js +3 -3
- package/cjs/ChannelSettings.js +18 -18
- package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
- package/cjs/CreateChannel/components/InviteMembers.js +14 -14
- package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
- package/cjs/CreateChannel/context.js +3 -3
- package/cjs/CreateChannel.js +14 -14
- package/cjs/{CreateChannelProvider-df42106f.js → CreateChannelProvider-dcf7f906.js} +1 -1
- package/cjs/{CreateChannelProvider-df42106f.js.map → CreateChannelProvider-dcf7f906.js.map} +1 -1
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/cjs/EditUserProfile.js +13 -13
- package/cjs/{LocalizationContext-68e55e2a.js → LocalizationContext-382a9ef1.js} +3 -3
- package/cjs/{LocalizationContext-68e55e2a.js.map → LocalizationContext-382a9ef1.js.map} +1 -1
- package/cjs/{MemberList-dc84e303.js → MemberList-03a241cd.js} +5 -5
- package/cjs/{MemberList-dc84e303.js.map → MemberList-03a241cd.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 +12 -12
- package/cjs/OpenChannel/components/OpenChannelInput.js +18 -14
- package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessage.js +23 -19
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +25 -21
- package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelUI.js +25 -21
- package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/cjs/OpenChannel/context.js +9 -9
- package/cjs/OpenChannel.js +25 -21
- package/cjs/OpenChannel.js.map +1 -1
- package/cjs/{OpenChannelProvider-7a1a996f.js → OpenChannelProvider-9000ccb9.js} +7 -7
- package/cjs/{OpenChannelProvider-7a1a996f.js.map → OpenChannelProvider-9000ccb9.js.map} +1 -1
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +13 -13
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
- package/cjs/OpenChannelSettings/components/OperatorUI.js +16 -16
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
- package/cjs/OpenChannelSettings/context.js +2 -2
- package/cjs/OpenChannelSettings.js +17 -17
- package/cjs/SendbirdProvider.js +36 -14
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/{UserProfileContext-3533547d.js → UserProfileContext-0b7ef11a.js} +1 -1
- package/cjs/{UserProfileContext-3533547d.js.map → UserProfileContext-0b7ef11a.js.map} +1 -1
- package/cjs/{_rollupPluginBabelHelpers-fc14118c.js → _rollupPluginBabelHelpers-6193d45d.js} +1 -1
- package/cjs/{_rollupPluginBabelHelpers-fc14118c.js.map → _rollupPluginBabelHelpers-6193d45d.js.map} +1 -1
- package/cjs/{actionTypes-bc47f97a.js → actionTypes-092bc172.js} +1 -1
- package/cjs/{actionTypes-bc47f97a.js.map → actionTypes-092bc172.js.map} +1 -1
- package/cjs/{color-4afb15fb.js → color-1816dacf.js} +1 -1
- package/cjs/{color-4afb15fb.js.map → color-1816dacf.js.map} +1 -1
- package/cjs/{compareIds-01306377.js → compareIds-e9bca8c4.js} +1 -1
- package/cjs/{compareIds-01306377.js.map → compareIds-e9bca8c4.js.map} +1 -1
- package/cjs/const-c65837c1.js +22 -0
- package/cjs/const-c65837c1.js.map +1 -0
- package/cjs/const-d9f4d880.js +14 -0
- package/cjs/const-d9f4d880.js.map +1 -0
- package/cjs/{context-c1f9d650.js → context-6ebf3379.js} +2 -2
- package/cjs/{context-c1f9d650.js.map → context-6ebf3379.js.map} +1 -1
- package/cjs/{index-1044f1ed.js → index-01072ac9.js} +3 -3
- package/cjs/{index-1044f1ed.js.map → index-01072ac9.js.map} +1 -1
- package/cjs/{index-e2bb862c.js → index-20a06ed6.js} +1 -1
- package/cjs/{index-e2bb862c.js.map → index-20a06ed6.js.map} +1 -1
- package/cjs/{index-d4880236.js → index-212a11f2.js} +84 -3
- package/cjs/index-212a11f2.js.map +1 -0
- package/cjs/{index-aecc8d24.js → index-2faa2f93.js} +1 -1
- package/cjs/{index-aecc8d24.js.map → index-2faa2f93.js.map} +1 -1
- package/cjs/{index-9dc3863f.js → index-4f40f311.js} +2 -2
- package/cjs/{index-9dc3863f.js.map → index-4f40f311.js.map} +1 -1
- package/cjs/index-75453415.js +54 -0
- package/cjs/index-75453415.js.map +1 -0
- package/cjs/{index-8becccd8.js → index-948426a8.js} +4 -4
- package/cjs/{index-8becccd8.js.map → index-948426a8.js.map} +1 -1
- package/cjs/{index-905331fa.js → index-a2ce047a.js} +2 -2
- package/cjs/{index-905331fa.js.map → index-a2ce047a.js.map} +1 -1
- package/cjs/{index-4987c8b2.js → index-d57081d1.js} +6 -6
- package/cjs/{index-4987c8b2.js.map → index-d57081d1.js.map} +1 -1
- package/cjs/{index-659c9ca5.js → index-e63da805.js} +4 -4
- package/cjs/{index-659c9ca5.js.map → index-e63da805.js.map} +1 -1
- package/cjs/{index-1468d245.js → index-f1971e28.js} +3 -3
- package/cjs/{index-1468d245.js.map → index-f1971e28.js.map} +1 -1
- package/cjs/index.css +243 -133
- package/cjs/index.css.map +1 -1
- package/cjs/index.js +40 -33
- package/cjs/index.js.map +1 -1
- package/cjs/{openChannelUtils-37919a36.js → openChannelUtils-16f29ba2.js} +1 -1
- package/cjs/{openChannelUtils-37919a36.js.map → openChannelUtils-16f29ba2.js.map} +1 -1
- package/cjs/sendBirdSelectors.js +1 -1
- package/cjs/{stringSet-aa544ce5.js → stringSet-b9ea6eef.js} +4 -2
- package/cjs/stringSet-b9ea6eef.js.map +1 -0
- package/cjs/{topics-8314d425.js → topics-11048db8.js} +1 -1
- package/cjs/{topics-8314d425.js.map → topics-11048db8.js.map} +1 -1
- package/cjs/{tslib.es6-4a281a05.js → tslib.es6-07dd6257.js} +1 -1
- package/cjs/{tslib.es6-4a281a05.js.map → tslib.es6-07dd6257.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/Checkbox.js +1 -1
- 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/MentionUserLabel.js +25 -0
- package/cjs/ui/MentionUserLabel.js.map +1 -0
- package/cjs/ui/MessageContent.js +25 -62
- package/cjs/ui/MessageContent.js.map +1 -1
- package/cjs/ui/MessageInput.js +4900 -84
- package/cjs/ui/MessageInput.js.map +1 -1
- 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 +66 -0
- package/cjs/ui/MessageStatus.js.map +1 -0
- package/cjs/ui/Modal.js +8 -8
- package/cjs/ui/MutedAvatarOverlay.js +1 -1
- package/cjs/ui/OGMessageItemBody.js +38 -28
- package/cjs/ui/OGMessageItemBody.js.map +1 -1
- 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 +14 -14
- package/cjs/ui/OpenchannelOGMessage.js +14 -14
- package/cjs/ui/OpenchannelThumbnailMessage.js +13 -13
- package/cjs/ui/OpenchannelUserMessage.js +14 -14
- package/cjs/ui/PlaceHolder.js +6 -6
- package/cjs/ui/QuoteMessage.js +7 -7
- package/cjs/ui/QuoteMessageInput.js +7 -7
- package/cjs/ui/QuoteMessageInput.js.map +1 -1
- 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 +36 -14
- package/cjs/ui/TextMessageItemBody.js.map +1 -1
- 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 +11 -11
- package/cjs/ui/UserProfile.js +9 -9
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/{utils-cbd3ed99.js → utils-3240365f.js} +1 -1
- package/cjs/{utils-cbd3ed99.js.map → utils-3240365f.js.map} +1 -1
- package/cjs/{utils-66b3f4ec.js → utils-53d332a6.js} +1 -1
- package/cjs/{utils-66b3f4ec.js.map → utils-53d332a6.js.map} +1 -1
- package/cjs/{utils-3b0815dc.js → utils-94ae6cec.js} +1 -1
- package/cjs/{utils-3b0815dc.js.map → utils-94ae6cec.js.map} +1 -1
- package/cjs/{uuid-1d5ec8b2.js → uuid-172844fb.js} +1 -1
- package/cjs/{uuid-1d5ec8b2.js.map → uuid-172844fb.js.map} +1 -1
- package/cjs/withSendBird.js +1 -1
- package/{color-ee3fc5ee.js → color-38dc84d3.js} +1 -1
- package/{color-ee3fc5ee.js.map → color-38dc84d3.js.map} +1 -1
- package/{compareIds-808956f2.js → compareIds-f01e0c3c.js} +1 -1
- package/{compareIds-808956f2.js.map → compareIds-f01e0c3c.js.map} +1 -1
- package/const-b6685801.js +8 -0
- package/const-b6685801.js.map +1 -0
- package/const-d46f09a1.js +18 -0
- package/const-d46f09a1.js.map +1 -0
- package/{context-98ce535c.js → context-b5168bd0.js} +2 -2
- package/{context-98ce535c.js.map → context-b5168bd0.js.map} +1 -1
- package/dist/index.css +243 -133
- package/dist/index.css.map +1 -1
- package/{index-770d7112.js → index-1c2588aa.js} +2 -2
- package/{index-770d7112.js.map → index-1c2588aa.js.map} +1 -1
- package/{index-acebc2ff.js → index-2dce3a04.js} +3 -3
- package/{index-acebc2ff.js.map → index-2dce3a04.js.map} +1 -1
- package/{index-5c2c81bc.js → index-3bd4a058.js} +6 -6
- package/{index-5c2c81bc.js.map → index-3bd4a058.js.map} +1 -1
- package/index-62fd2db7.js +48 -0
- package/index-62fd2db7.js.map +1 -0
- package/{index-6ebf7894.js → index-6381b534.js} +1 -1
- package/{index-6ebf7894.js.map → index-6381b534.js.map} +1 -1
- package/{index-cd21929d.js → index-9afb4d01.js} +2 -2
- package/{index-cd21929d.js.map → index-9afb4d01.js.map} +1 -1
- package/{index-1718324d.js → index-a6675155.js} +4 -4
- package/{index-1718324d.js.map → index-a6675155.js.map} +1 -1
- package/{index-e818a8a3.js → index-b12b270e.js} +4 -4
- package/{index-e818a8a3.js.map → index-b12b270e.js.map} +1 -1
- package/{index-7a51bd16.js → index-d0b30cd5.js} +3 -3
- package/{index-7a51bd16.js.map → index-d0b30cd5.js.map} +1 -1
- package/{index-942c85a6.js → index-d0fe8fe1.js} +1 -1
- package/{index-942c85a6.js.map → index-d0fe8fe1.js.map} +1 -1
- package/{index-8c72a94a.js → index-e6d0889d.js} +83 -3
- package/index-e6d0889d.js.map +1 -0
- package/index.d.ts +238 -210
- package/index.js +40 -33
- package/index.js.map +1 -1
- package/{openChannelUtils-56a372e7.js → openChannelUtils-22ed0258.js} +1 -1
- package/{openChannelUtils-56a372e7.js.map → openChannelUtils-22ed0258.js.map} +1 -1
- package/package.json +5 -2
- package/sendBirdSelectors.js +1 -1
- package/{stringSet-4f6eaa60.js → stringSet-2e6c1d2c.js} +4 -2
- package/stringSet-2e6c1d2c.js.map +1 -0
- package/{topics-9442035c.js → topics-67738aac.js} +1 -1
- package/{topics-9442035c.js.map → topics-67738aac.js.map} +1 -1
- package/{tslib.es6-e3c44017.js → tslib.es6-b6e567bd.js} +1 -1
- package/{tslib.es6-e3c44017.js.map → tslib.es6-b6e567bd.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/Checkbox.js +1 -1
- 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/MentionUserLabel.js +19 -0
- package/ui/MentionUserLabel.js.map +1 -0
- package/ui/MessageContent.js +25 -62
- package/ui/MessageContent.js.map +1 -1
- package/ui/MessageInput.js +4900 -85
- package/ui/MessageInput.js.map +1 -1
- 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 +57 -0
- package/ui/MessageStatus.js.map +1 -0
- package/ui/Modal.js +8 -8
- package/ui/MutedAvatarOverlay.js +1 -1
- package/ui/OGMessageItemBody.js +38 -28
- package/ui/OGMessageItemBody.js.map +1 -1
- package/ui/OpenChannelAdminMessage.js +4 -4
- package/ui/OpenChannelAvatar.js +7 -7
- package/ui/OpenchannelConversationHeader.js +7 -7
- package/ui/OpenchannelFileMessage.js +14 -14
- package/ui/OpenchannelOGMessage.js +14 -14
- package/ui/OpenchannelThumbnailMessage.js +13 -13
- package/ui/OpenchannelUserMessage.js +14 -14
- package/ui/PlaceHolder.js +6 -6
- package/ui/QuoteMessage.js +7 -7
- package/ui/QuoteMessageInput.js +7 -7
- package/ui/QuoteMessageInput.js.map +1 -1
- 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 +37 -15
- package/ui/TextMessageItemBody.js.map +1 -1
- 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 +11 -11
- package/ui/UserProfile.js +9 -9
- package/useSendbirdStateContext.js +1 -1
- package/{utils-08c4dbdc.js → utils-04c291d8.js} +1 -1
- package/{utils-08c4dbdc.js.map → utils-04c291d8.js.map} +1 -1
- package/{utils-af1b9829.js → utils-28de36e9.js} +1 -1
- package/{utils-af1b9829.js.map → utils-28de36e9.js.map} +1 -1
- package/{utils-c393e880.js → utils-f5c9ef64.js} +1 -1
- package/{utils-c393e880.js.map → utils-f5c9ef64.js.map} +1 -1
- package/{uuid-b0c93400.js → uuid-0139dc21.js} +1 -1
- package/{uuid-b0c93400.js.map → uuid-0139dc21.js.map} +1 -1
- package/withSendBird.js +1 -1
- package/ChannelListProvider-0b0c2c40.js.map +0 -1
- package/ChannelProvider-459e463f.js.map +0 -1
- package/cjs/ChannelListProvider-5a152618.js.map +0 -1
- package/cjs/ChannelProvider-f1fb0108.js.map +0 -1
- package/cjs/index-d4880236.js.map +0 -1
- package/cjs/stringSet-aa544ce5.js.map +0 -1
- package/index-8c72a94a.js.map +0 -1
- package/index.css +0 -4355
- package/index.css.map +0 -1
- package/stringSet-4f6eaa60.js.map +0 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { _ as __assign } from './tslib.es6-
|
|
1
|
+
import { a as __spreadArray, _ as __assign } from './tslib.es6-b6e567bd.js';
|
|
2
2
|
import React__default, { useReducer, useState, useEffect, useMemo, useContext } from 'react';
|
|
3
|
-
import { C as CREATE_CHANNEL$1, U as UPDATE_USER_MESSAGE, L as LEAVE_CHANNEL, b as SEND_MESSAGE_START } from './topics-
|
|
4
|
-
import { u as uuidv4 } from './uuid-
|
|
5
|
-
import { n as noop } from './utils-
|
|
6
|
-
import { U as UserProfileProvider } from './UserProfileContext-
|
|
3
|
+
import { C as CREATE_CHANNEL$1, U as UPDATE_USER_MESSAGE, L as LEAVE_CHANNEL, b as SEND_MESSAGE_START } from './topics-67738aac.js';
|
|
4
|
+
import { u as uuidv4 } from './uuid-0139dc21.js';
|
|
5
|
+
import { n as noop } from './utils-f5c9ef64.js';
|
|
6
|
+
import { U as UserProfileProvider } from './UserProfileContext-f4ff4291.js';
|
|
7
7
|
import useSendbirdStateContext from './useSendbirdStateContext.js';
|
|
8
|
-
import { _ as _objectSpread2, b as _toConsumableArray } from './_rollupPluginBabelHelpers-
|
|
9
|
-
import { f as filterChannelListParams, g as getChannelsWithUpsertedChannel } from './index-
|
|
8
|
+
import { _ as _objectSpread2, b as _toConsumableArray } from './_rollupPluginBabelHelpers-6bf18550.js';
|
|
9
|
+
import { f as filterChannelListParams, g as getChannelsWithUpsertedChannel } from './index-e6d0889d.js';
|
|
10
10
|
|
|
11
11
|
var RESET_CHANNEL_LIST = 'RESET_CHANNEL_LIST';
|
|
12
12
|
var CREATE_CHANNEL = 'CREATE_CHANNEL';
|
|
@@ -34,6 +34,8 @@ var ON_DELIVERY_RECEIPT_UPDATED = 'ON_DELIVERY_RECEIPT_UPDATED';
|
|
|
34
34
|
var CHANNEL_REPLACED_TO_TOP = 'CHANNEL_REPLACED_TO_TOP';
|
|
35
35
|
var CHANNEL_LIST_PARAMS_UPDATED = 'CHANNEL_LIST_PARAMS_UPDATED';
|
|
36
36
|
|
|
37
|
+
var DELIVERY_RECIPT = 'delivery_receipt';
|
|
38
|
+
|
|
37
39
|
var createEventHandler = function createEventHandler(_ref) {
|
|
38
40
|
var sdk = _ref.sdk,
|
|
39
41
|
sdkChannelHandlerId = _ref.sdkChannelHandlerId,
|
|
@@ -236,6 +238,8 @@ function setupChannelList(_ref3) {
|
|
|
236
238
|
|
|
237
239
|
if (channelListQuery.hasNext) {
|
|
238
240
|
channelListQuery.next(function (response, error) {
|
|
241
|
+
var _sdk$appInfo, _sdk$appInfo$premiumF;
|
|
242
|
+
|
|
239
243
|
var swapParams = sdk.getErrorFirstCallback();
|
|
240
244
|
var channelList = response;
|
|
241
245
|
var err = error;
|
|
@@ -272,11 +276,21 @@ function setupChannelList(_ref3) {
|
|
|
272
276
|
type: INIT_CHANNELS_SUCCESS,
|
|
273
277
|
payload: sortedChannelList
|
|
274
278
|
});
|
|
279
|
+
var canSetMarkAsDelivered = sdk === null || sdk === void 0 ? void 0 : (_sdk$appInfo = sdk.appInfo) === null || _sdk$appInfo === void 0 ? void 0 : (_sdk$appInfo$premiumF = _sdk$appInfo.premiumFeatureList) === null || _sdk$appInfo$premiumF === void 0 ? void 0 : _sdk$appInfo$premiumF.find(function (feature) {
|
|
280
|
+
return feature === DELIVERY_RECIPT;
|
|
281
|
+
});
|
|
282
|
+
|
|
283
|
+
if (canSetMarkAsDelivered) {
|
|
284
|
+
var _channelList;
|
|
275
285
|
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
channelList.forEach(function (c) {
|
|
279
|
-
|
|
286
|
+
logger.info('ChannelList: Marking all channels as read'); // eslint-disable-next-line no-unused-expressions
|
|
287
|
+
|
|
288
|
+
(_channelList = channelList) === null || _channelList === void 0 ? void 0 : _channelList.forEach(function (c, idx) {
|
|
289
|
+
// Plan-based rate limits - minimum limit is 5 requests per second
|
|
290
|
+
setTimeout(function () {
|
|
291
|
+
// eslint-disable-next-line no-unused-expressions
|
|
292
|
+
sdk === null || sdk === void 0 ? void 0 : sdk.markAsDelivered(c === null || c === void 0 ? void 0 : c.url);
|
|
293
|
+
}, 300 * idx);
|
|
280
294
|
});
|
|
281
295
|
}
|
|
282
296
|
});
|
|
@@ -693,11 +707,14 @@ var ChannelListContext = /*#__PURE__*/React__default.createContext({
|
|
|
693
707
|
channelListQuery: {},
|
|
694
708
|
currentUserId: null,
|
|
695
709
|
channelListDispatcher: null,
|
|
696
|
-
channelSource: null
|
|
710
|
+
channelSource: null,
|
|
711
|
+
typingChannels: []
|
|
697
712
|
});
|
|
698
713
|
|
|
699
714
|
var ChannelListProvider = function ChannelListProvider(props) {
|
|
700
|
-
// destruct props
|
|
715
|
+
var _a; // destruct props
|
|
716
|
+
|
|
717
|
+
|
|
701
718
|
var children = props.children,
|
|
702
719
|
className = props.className,
|
|
703
720
|
disableUserProfile = props.disableUserProfile,
|
|
@@ -707,7 +724,11 @@ var ChannelListProvider = function ChannelListProvider(props) {
|
|
|
707
724
|
onThemeChange = props.onThemeChange,
|
|
708
725
|
onBeforeCreateChannel = props.onBeforeCreateChannel,
|
|
709
726
|
sortChannelList = props.sortChannelList,
|
|
710
|
-
disableAutoSelect = props.disableAutoSelect
|
|
727
|
+
disableAutoSelect = props.disableAutoSelect,
|
|
728
|
+
_b = props.isTypingIndicatorEnabled,
|
|
729
|
+
isTypingIndicatorEnabled = _b === void 0 ? null : _b,
|
|
730
|
+
_c = props.isMessageReceiptStatusEnabled,
|
|
731
|
+
isMessageReceiptStatusEnabled = _c === void 0 ? null : _c;
|
|
711
732
|
var onChannelSelect = (props === null || props === void 0 ? void 0 : props.onChannelSelect) || noop; // fetch store from <SendbirdProvider />
|
|
712
733
|
|
|
713
734
|
var globalStore = useSendbirdStateContext();
|
|
@@ -716,6 +737,8 @@ var ChannelListProvider = function ChannelListProvider(props) {
|
|
|
716
737
|
var sdkStore = stores.sdkStore;
|
|
717
738
|
var pubSub = config.pubSub,
|
|
718
739
|
logger = config.logger;
|
|
740
|
+
var isTypingIndicatorEnabledOnChannelList = config.isTypingIndicatorEnabledOnChannelList,
|
|
741
|
+
isMessageReceiptStatusEnabledOnChannelList = config.isMessageReceiptStatusEnabledOnChannelList;
|
|
719
742
|
var sdk = sdkStore.sdk; // derive some variables
|
|
720
743
|
// enable if it is true atleast once(both are flase by default)
|
|
721
744
|
|
|
@@ -726,20 +749,29 @@ var ChannelListProvider = function ChannelListProvider(props) {
|
|
|
726
749
|
var userFilledApplicationUserListQuery = queries === null || queries === void 0 ? void 0 : queries.applicationUserListQuery;
|
|
727
750
|
var sdkIntialized = sdkStore === null || sdkStore === void 0 ? void 0 : sdkStore.initialized;
|
|
728
751
|
|
|
729
|
-
var
|
|
730
|
-
channelListStore =
|
|
731
|
-
channelListDispatcher =
|
|
732
|
-
|
|
733
|
-
var _b = useState(),
|
|
734
|
-
channelSource = _b[0],
|
|
735
|
-
setChannelSource = _b[1];
|
|
736
|
-
|
|
737
|
-
var _c = useState(null),
|
|
738
|
-
sdkChannelHandlerId = _c[0],
|
|
739
|
-
setSdkChannelHandlerId = _c[1];
|
|
752
|
+
var _d = useReducer(reducer, channelListInitialState),
|
|
753
|
+
channelListStore = _d[0],
|
|
754
|
+
channelListDispatcher = _d[1];
|
|
740
755
|
|
|
741
756
|
var loading = channelListStore.loading,
|
|
742
757
|
currentChannel = channelListStore.currentChannel;
|
|
758
|
+
|
|
759
|
+
var _e = useState(),
|
|
760
|
+
channelSource = _e[0],
|
|
761
|
+
setChannelSource = _e[1];
|
|
762
|
+
|
|
763
|
+
var _f = useState(null),
|
|
764
|
+
sdkChannelHandlerId = _f[0],
|
|
765
|
+
setSdkChannelHandlerId = _f[1];
|
|
766
|
+
|
|
767
|
+
var _g = useState(null),
|
|
768
|
+
typingHandlerId = _g[0],
|
|
769
|
+
setTypingHandlerId = _g[1];
|
|
770
|
+
|
|
771
|
+
var _h = useState([]),
|
|
772
|
+
typingChannels = _h[0],
|
|
773
|
+
setTypingChannels = _h[1];
|
|
774
|
+
|
|
743
775
|
useEffect(function () {
|
|
744
776
|
var subscriber = pubSubHandler(pubSub, channelListDispatcher);
|
|
745
777
|
return function () {
|
|
@@ -792,6 +824,36 @@ var ChannelListProvider = function ChannelListProvider(props) {
|
|
|
792
824
|
}
|
|
793
825
|
};
|
|
794
826
|
}, [sdkIntialized, userFilledChannelListQuery, sortChannelList]);
|
|
827
|
+
useEffect(function () {
|
|
828
|
+
if (sdk && (sdk === null || sdk === void 0 ? void 0 : sdk.ChannelHandler)) {
|
|
829
|
+
var handlerId = uuidv4();
|
|
830
|
+
var handler = new sdk.ChannelHandler();
|
|
831
|
+
|
|
832
|
+
handler.onTypingStatusUpdated = function (channel) {
|
|
833
|
+
var _a;
|
|
834
|
+
|
|
835
|
+
var typingMemberCount = (_a = channel === null || channel === void 0 ? void 0 : channel.getTypingMembers()) === null || _a === void 0 ? void 0 : _a.length;
|
|
836
|
+
var channelList = typingChannels.filter(function (ch) {
|
|
837
|
+
return ch.url !== channel.url;
|
|
838
|
+
});
|
|
839
|
+
|
|
840
|
+
if (typingMemberCount > 0) {
|
|
841
|
+
setTypingChannels(__spreadArray(__spreadArray([], channelList, true), [channel], false));
|
|
842
|
+
} else {
|
|
843
|
+
setTypingChannels(channelList);
|
|
844
|
+
}
|
|
845
|
+
};
|
|
846
|
+
|
|
847
|
+
sdk.addChannelHandler(handlerId, handler);
|
|
848
|
+
setTypingHandlerId(handlerId);
|
|
849
|
+
}
|
|
850
|
+
|
|
851
|
+
return function () {
|
|
852
|
+
if (sdk && sdk.removeChannelHandler) {
|
|
853
|
+
sdk.removeChannelHandler(typingHandlerId);
|
|
854
|
+
}
|
|
855
|
+
};
|
|
856
|
+
}, [(_a = sdk === null || sdk === void 0 ? void 0 : sdk.currentUser) === null || _a === void 0 ? void 0 : _a.userId]);
|
|
795
857
|
var queries_ = useMemo(function () {
|
|
796
858
|
return {
|
|
797
859
|
applicationUserListQuery: userFilledApplicationUserListQuery,
|
|
@@ -842,7 +904,10 @@ var ChannelListProvider = function ChannelListProvider(props) {
|
|
|
842
904
|
channelListDispatcher: channelListDispatcher,
|
|
843
905
|
channelSource: channelSource
|
|
844
906
|
}, channelListStore), {
|
|
845
|
-
allChannels: sortedChannels
|
|
907
|
+
allChannels: sortedChannels,
|
|
908
|
+
typingChannels: typingChannels,
|
|
909
|
+
isTypingIndicatorEnabled: isTypingIndicatorEnabled !== null ? isTypingIndicatorEnabled : isTypingIndicatorEnabledOnChannelList,
|
|
910
|
+
isMessageReceiptStatusEnabled: isMessageReceiptStatusEnabled !== null ? isMessageReceiptStatusEnabled : isMessageReceiptStatusEnabledOnChannelList
|
|
846
911
|
})
|
|
847
912
|
}, /*#__PURE__*/React__default.createElement(UserProfileProvider, {
|
|
848
913
|
disableUserProfile: userDefinedDisableUserProfile,
|
|
@@ -858,4 +923,4 @@ function useChannelListContext() {
|
|
|
858
923
|
}
|
|
859
924
|
|
|
860
925
|
export { ChannelListProvider as C, FETCH_CHANNELS_START as F, LEAVE_CHANNEL_SUCCESS as L, SET_CURRENT_CHANNEL as S, FETCH_CHANNELS_FAILURE as a, FETCH_CHANNELS_SUCCESS as b, useChannelListContext as u };
|
|
861
|
-
//# sourceMappingURL=ChannelListProvider-
|
|
926
|
+
//# sourceMappingURL=ChannelListProvider-d602a166.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChannelListProvider-d602a166.js","sources":["../src/smart-components/ChannelList/dux/actionTypes.js","../src/smart-components/ChannelList/utils.js","../src/smart-components/ChannelList/dux/initialState.js","../src/smart-components/ChannelList/dux/reducers.js","../src/smart-components/ChannelList/context/ChannelListProvider.tsx"],"sourcesContent":["export const RESET_CHANNEL_LIST = 'RESET_CHANNEL_LIST';\nexport const CREATE_CHANNEL = 'CREATE_CHANNEL';\nexport const UNLOAD_CHANNELS = 'UNLOAD_CHANNELS';\nexport const SET_CHANNEL_LOADING = 'SET_CHANNEL_LOADING';\nexport const SET_AUTO_SELECT_CHANNEL_ITEM = 'SET_AUTO_SELECT_CHANNEL_ITEM';\nexport const LEAVE_CHANNEL_SUCCESS = 'LEAVE_CHANNEL_SUCCESS';\n\nexport const SET_CURRENT_CHANNEL = 'SET_CURRENT_CHANNEL';\n\nexport const SHOW_CHANNEL_SETTINGS = 'SHOW_CHANNEL_SETTINGS';\nexport const HIDE_CHANNEL_SETTINGS = 'HIDE_CHANNEL_SETTINGS';\n\nexport const FETCH_CHANNELS_START = 'FETCH_CHANNELS_START';\nexport const FETCH_CHANNELS_SUCCESS = 'FETCH_CHANNELS_SUCCESS';\nexport const FETCH_CHANNELS_FAILURE = 'FETCH_CHANNELS_FAILURE';\n\nexport const INIT_CHANNELS_START = 'INIT_CHANNELS_START';\nexport const INIT_CHANNELS_SUCCESS = 'INIT_CHANNELS_SUCCESS';\nexport const INIT_CHANNELS_FAILURE = 'INIT_CHANNELS_FAILURE';\n\nexport const INVITE_MEMBERS_SUCESS = 'INVITE_MEMBERS_SUCESS';\n\nexport const ON_USER_JOINED = 'ON_USER_JOINED';\nexport const ON_CHANNEL_DELETED = 'ON_CHANNEL_DELETED';\nexport const ON_LAST_MESSAGE_UPDATED = 'ON_LAST_MESSAGE_UPDATED';\nexport const ON_USER_LEFT = 'ON_USER_LEFT';\nexport const ON_CHANNEL_CHANGED = 'ON_CHANNEL_CHANGED';\nexport const ON_CHANNEL_ARCHIVED = 'ON_CHANNEL_ARCHIVED';\nexport const ON_CHANNEL_FROZEN = 'ON_CHANNEL_FROZEN';\nexport const ON_CHANNEL_UNFROZEN = 'ON_CHANNEL_UNFROZEN';\n\nexport const ON_READ_RECEIPT_UPDATED = 'ON_READ_RECEIPT_UPDATED';\nexport const ON_DELIVERY_RECEIPT_UPDATED = 'ON_DELIVERY_RECEIPT_UPDATED';\n\nexport const CHANNEL_REPLACED_TO_TOP = 'CHANNEL_REPLACED_TO_TOP';\nexport const CHANNEL_LIST_PARAMS_UPDATED = 'CHANNEL_LIST_PARAMS_UPDATED';\n","import * as channelActions from './dux/actionTypes';\nimport * as topics from '../../lib/pubSub/topics';\n\nconst DELIVERY_RECIPT = 'delivery_receipt';\n\nconst createEventHandler = ({\n sdk,\n sdkChannelHandlerId,\n channelListDispatcher,\n logger,\n}) => {\n const ChannelHandler = new sdk.ChannelHandler();\n\n ChannelHandler.onChannelChanged = (channel) => {\n logger.info('ChannelList: onChannelChanged', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_CHANGED,\n payload: channel,\n });\n };\n ChannelHandler.onChannelDeleted = (channelUrl) => {\n logger.info('ChannelList: onChannelDeleted', channelUrl);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_DELETED,\n payload: channelUrl,\n });\n };\n ChannelHandler.onUserJoined = (channel) => {\n logger.info('ChannelList: onUserJoined', channel);\n if (channel.lastMessage) {\n channelListDispatcher({\n type: channelActions.ON_USER_JOINED,\n payload: channel,\n });\n }\n };\n ChannelHandler.onUserBanned = (channel, user) => {\n const { currentUser } = sdk;\n logger.info('Channel | useHandleChannelEvents: onUserBanned', channel);\n if (user.userId === currentUser.userId) {\n channelListDispatcher({\n type: channelActions.ON_USER_LEFT,\n payload: {\n channel,\n isMe: true,\n },\n });\n } else {\n channelListDispatcher({\n type: channelActions.ON_USER_LEFT,\n payload: {\n channel,\n isMe: false,\n },\n });\n }\n };\n ChannelHandler.onUserLeft = (channel, leftUser) => {\n const { currentUser } = sdk;\n const isMe = (currentUser.userId === leftUser.userId);\n logger.info('ChannelList: onUserLeft', channel);\n channelListDispatcher({\n type: channelActions.ON_USER_LEFT,\n payload: {\n channel,\n isMe,\n },\n });\n };\n\n ChannelHandler.onReadStatus = (channel) => {\n logger.info('ChannelList: onReadStatus', channel);\n channelListDispatcher({\n type: channelActions.ON_READ_RECEIPT_UPDATED,\n payload: channel,\n });\n };\n\n ChannelHandler.onDeliveryReceiptUpdated = (channel) => {\n logger.info('ChannelList: onDeliveryReceiptUpdated', channel);\n if (channel.lastMessage) {\n channelListDispatcher({\n type: channelActions.ON_DELIVERY_RECEIPT_UPDATED,\n payload: channel,\n });\n }\n };\n\n ChannelHandler.onMessageUpdated = (channel, message) => {\n if (channel.lastMessage.isEqual(message)) {\n logger.info('ChannelList: onMessageUpdated', channel);\n channelListDispatcher({\n type: channelActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n }\n };\n\n ChannelHandler.onChannelHidden = (channel) => {\n logger.info('ChannelList: onChannelHidden', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_ARCHIVED,\n payload: channel,\n });\n };\n\n ChannelHandler.onChannelFrozen = (channel) => {\n logger.info('ChannelList: onChannelFrozen', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_FROZEN,\n payload: channel,\n });\n };\n\n ChannelHandler.onChannelUnfrozen = (channel) => {\n logger.info('ChannelList: onChannelUnfrozen', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_UNFROZEN,\n payload: channel,\n });\n };\n\n logger.info('ChannelList: Added channelHandler');\n sdk.addChannelHandler(sdkChannelHandlerId, ChannelHandler);\n};\n\nconst createChannelListQuery = ({ sdk, userFilledChannelListQuery = {} }) => {\n const channelListQuery = sdk.GroupChannel.createMyGroupChannelListQuery();\n channelListQuery.includeEmpty = false;\n channelListQuery.order = 'latest_last_message'; // 'chronological', 'latest_last_message', 'channel_name_alphabetical', and 'metadata_value_alphabetical'\n channelListQuery.limit = 20; // The value of pagination limit could be set up to 100.\n\n if (userFilledChannelListQuery) {\n Object.keys(userFilledChannelListQuery).forEach((key) => {\n channelListQuery[key] = userFilledChannelListQuery[key];\n });\n }\n\n return channelListQuery;\n};\n\n/**\n * Setup event listener\n * create channel source query\n * addloading screen\n */\nfunction setupChannelList({\n sdk,\n sdkChannelHandlerId,\n channelListDispatcher,\n setChannelSource,\n onChannelSelect,\n userFilledChannelListQuery,\n logger,\n sortChannelList,\n disableAutoSelect,\n}) {\n if (sdk && sdk.ChannelHandler) {\n createEventHandler({\n sdk,\n channelListDispatcher,\n sdkChannelHandlerId,\n logger,\n });\n } else {\n logger.console.warning('ChannelList - createEventHandler: sdk or sdk.ChannelHandler does not exist', sdk);\n }\n\n logger.info('ChannelList - creating query', { userFilledChannelListQuery });\n const channelListQuery = createChannelListQuery({ sdk, userFilledChannelListQuery });\n logger.info('ChannelList - created query', channelListQuery);\n\n setChannelSource(channelListQuery);\n\n channelListDispatcher({\n type: channelActions.INIT_CHANNELS_START,\n });\n\n if (userFilledChannelListQuery) {\n logger.info('ChannelList - setting up channelListQuery', channelListQuery);\n channelListDispatcher({\n type: channelActions.CHANNEL_LIST_PARAMS_UPDATED,\n payload: {\n channelListQuery,\n currentUserId: sdk && sdk.currentUser && sdk.currentUser.userId,\n },\n });\n }\n\n logger.info('ChannelList - fetching channels');\n if (channelListQuery.hasNext) {\n channelListQuery.next((response, error) => {\n const swapParams = sdk.getErrorFirstCallback();\n let channelList = response;\n let err = error;\n if (swapParams) {\n channelList = error;\n err = response;\n }\n logger.info('ChannelList - fetched channels', channelList);\n if (err) {\n logger.error('ChannelList - couldnt fetch channels', err);\n channelListDispatcher({\n type: channelActions.INIT_CHANNELS_FAILURE,\n });\n return;\n }\n // select first channel\n logger.info('ChannelList - highlight channel', channelList[0]);\n let sortedChannelList = channelList;\n if (sortChannelList && typeof sortChannelList === 'function') {\n sortedChannelList = sortChannelList(channelList);\n logger.info('ChannelList - channel list sorted', sortedChannelList);\n }\n if (!disableAutoSelect) {\n onChannelSelect(sortedChannelList[0]);\n }\n channelListDispatcher({\n type: channelActions.INIT_CHANNELS_SUCCESS,\n payload: sortedChannelList,\n });\n const canSetMarkAsDelivered = sdk?.appInfo?.premiumFeatureList\n ?.find((feature) => (feature === DELIVERY_RECIPT));\n\n if (canSetMarkAsDelivered) {\n logger.info('ChannelList: Marking all channels as read');\n // eslint-disable-next-line no-unused-expressions\n channelList?.forEach((c, idx) => {\n // Plan-based rate limits - minimum limit is 5 requests per second\n setTimeout(() => {\n // eslint-disable-next-line no-unused-expressions\n sdk?.markAsDelivered(c?.url);\n }, 300 * idx);\n });\n }\n });\n } else {\n logger.warning('ChannelList - there are no more channels');\n }\n}\n\nexport const pubSubHandleRemover = (subscriber) => {\n subscriber.forEach((s) => {\n try {\n s.remove();\n } catch {\n //\n }\n });\n};\n\nexport const pubSubHandler = (pubSub, channelListDispatcher) => {\n const subScriber = new Map();\n if (!pubSub) return subScriber;\n subScriber.set(topics.CREATE_CHANNEL, pubSub.subscribe(topics.CREATE_CHANNEL, (msg) => {\n const { channel } = msg;\n channelListDispatcher({\n type: 'CREATE_CHANNEL',\n payload: channel,\n });\n }));\n\n subScriber.set(topics.UPDATE_USER_MESSAGE, pubSub.subscribe(topics.UPDATE_USER_MESSAGE, (msg) => {\n const { channel, message } = msg;\n const updatedChannel = channel;\n if (updatedChannel?.lastMessage?.messageId === message.messageId) {\n updatedChannel.lastMessage = message;\n }\n if (channel) {\n channelListDispatcher({\n type: channelActions.ON_LAST_MESSAGE_UPDATED,\n payload: updatedChannel,\n });\n }\n }));\n\n subScriber.set(topics.LEAVE_CHANNEL, pubSub.subscribe(topics.LEAVE_CHANNEL, (msg) => {\n const { channel } = msg;\n channelListDispatcher({\n type: channelActions.LEAVE_CHANNEL_SUCCESS,\n payload: channel.url,\n });\n }));\n\n subScriber.set(topics.SEND_MESSAGE_START, pubSub.subscribe(topics.SEND_MESSAGE_START, (msg) => {\n const { channel } = msg;\n channelListDispatcher({\n type: channelActions.CHANNEL_REPLACED_TO_TOP,\n payload: channel,\n });\n }));\n\n return subScriber;\n};\n\nexport default setupChannelList;\n","export default {\n // we might not need this initialized state -> should remove\n initialized: false,\n loading: false,\n allChannels: [],\n currentChannel: null,\n showSettings: false,\n channelListQuery: null,\n currentUserId: '',\n disableAutoSelect: false,\n};\n","import { filterChannelListParams, getChannelsWithUpsertedChannel } from '../../../utils';\nimport * as actions from './actionTypes';\nimport initialState from './initialState';\n\nexport default function reducer(state, action) {\n switch (action.type) {\n case actions.INIT_CHANNELS_START:\n return {\n ...state,\n loading: true,\n };\n case actions.RESET_CHANNEL_LIST:\n return initialState;\n case actions.INIT_CHANNELS_SUCCESS:\n return {\n ...state,\n initialized: true,\n loading: false,\n allChannels: action.payload,\n currentChannel: (\n !state.disableAutoSelect\n && action.payload\n && action.payload.length\n && action.payload.length > 0\n )\n ? action.payload[0]\n : null,\n };\n case actions.FETCH_CHANNELS_SUCCESS: {\n const currentChannels = state.allChannels.map((c) => c.url);\n const filteredChannels = action.payload.filter(\n ({ url }) => !(currentChannels.find((c) => c === url)),\n );\n return {\n ...state,\n allChannels: [\n ...state.allChannels,\n ...filteredChannels,\n ],\n };\n }\n case actions.CREATE_CHANNEL: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n return {\n ...state,\n currentChannel: channel,\n };\n }\n return {\n ...state,\n allChannels: [channel, ...state.allChannels.filter((ch) => ch.url !== channel.url)],\n currentChannel: channel,\n };\n }\n case actions.ON_CHANNEL_ARCHIVED: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n // TODO: Check if we have to set current channel\n }\n }\n const nextChannel = (channel.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel.url ? 1 : 0]\n : state.currentChannel;\n return {\n ...state,\n allChannels: state.allChannels.filter(({ url }) => url !== channel.url),\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n };\n }\n case actions.LEAVE_CHANNEL_SUCCESS:\n case actions.ON_CHANNEL_DELETED: {\n const channelUrl = action.payload;\n return {\n ...state,\n currentChannel: (channelUrl === state.currentChannel?.url)\n ? state.allChannels[0]\n : state.currentChannel,\n allChannels: state.allChannels.filter(({ url }) => url !== channelUrl),\n };\n }\n case actions.ON_USER_LEFT: {\n const { channel, isMe } = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n const filteredChannels = getChannelsWithUpsertedChannel(state.allChannels, channel);\n const nextChannel = (isMe && (channel.url === state.currentChannel?.url))\n ? filteredChannels[0]\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: filteredChannels,\n };\n }\n const nextChannel = (channel.url === state.currentChannel?.url)\n ? state.allChannels[0]\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: state.allChannels.filter(({ url }) => url !== channel.url),\n };\n }\n const filteredChannels = state.allChannels.filter((c) => !(c.url === channel.url && isMe));\n const nextChannel = (isMe && (channel.url === state.currentChannel?.url))\n ? filteredChannels[0]\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: filteredChannels,\n };\n }\n case actions.ON_USER_JOINED:\n case actions.ON_CHANNEL_CHANGED:\n case actions.ON_READ_RECEIPT_UPDATED:\n case actions.ON_DELIVERY_RECEIPT_UPDATED: {\n const { allChannels = [] } = state;\n const channel = action.payload;\n const { unreadMessageCount } = channel;\n if (!channel.lastMessage) return state;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(allChannels, channel),\n };\n }\n const nextChannel = (channel.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel.url ? 1 : 0]\n // if coming channel is first of channel list, current channel will be the next one\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: state.allChannels.filter(({ url }) => url !== channel.url),\n };\n }\n // if its only an unread message count change, dont push to top\n if (unreadMessageCount === 0) {\n const currentChannel = allChannels.find(({ url }) => url === channel.url);\n const currentUnreadCount = currentChannel && currentChannel.unreadMessageCount;\n if (currentUnreadCount === 0) {\n return {\n ...state,\n allChannels: state.allChannels.map((ch) => (ch.url === channel.url ? channel : ch)),\n };\n }\n }\n return {\n ...state,\n allChannels: [\n channel,\n ...state.allChannels.filter(({ url }) => url !== action.payload.url),\n ],\n };\n }\n case actions.SET_CURRENT_CHANNEL:\n return {\n ...state,\n currentChannel: action.payload,\n };\n case actions.SHOW_CHANNEL_SETTINGS:\n return {\n ...state,\n showSettings: true,\n };\n case actions.HIDE_CHANNEL_SETTINGS:\n return {\n ...state,\n showSettings: false,\n };\n case actions.ON_LAST_MESSAGE_UPDATED:\n return {\n ...state,\n allChannels: state.allChannels.map((channel) => (\n channel.url === action.payload.url ? action.payload : channel)),\n };\n case actions.ON_CHANNEL_FROZEN: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n const nextChannel = (channel.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel.url ? 1 : 0]\n // if coming channel is first of channel list, current channel will be the next one\n : state.currentChannel;\n return {\n ...state,\n allChannels: state.allChannels.filter(({ url }) => url !== channel.url),\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n };\n }\n return {\n ...state,\n allChannels: state.allChannels.map((ch) => {\n if (ch.url === channel.url) {\n // eslint-disable-next-line no-param-reassign\n ch.isFrozen = true;\n return ch;\n }\n return ch;\n }),\n };\n }\n case actions.ON_CHANNEL_UNFROZEN: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n const nextChannel = (channel.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel.url ? 1 : 0]\n // if coming channel is first of channel list, current channel will be the next one\n : state.currentChannel;\n return {\n ...state,\n allChannels: state.allChannels.filter(({ url }) => url !== channel.url),\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n };\n }\n return {\n ...state,\n allChannels: state.allChannels.map((ch) => {\n if (ch.url === channel.url) {\n // eslint-disable-next-line no-param-reassign\n ch.isFrozen = false;\n return ch;\n }\n return ch;\n }),\n };\n }\n case actions.CHANNEL_REPLACED_TO_TOP: {\n return {\n ...state,\n allChannels: [\n action.payload,\n ...state.allChannels.filter((channel) => channel.url !== action.payload.url),\n ],\n };\n }\n case actions.CHANNEL_LIST_PARAMS_UPDATED:\n return {\n ...state,\n currentUserId: action.payload.currentUserId,\n channelListQuery: action.payload.channelListQuery,\n };\n case actions.SET_AUTO_SELECT_CHANNEL_ITEM: {\n return {\n ...state,\n ableAutoSelect: action.payload,\n };\n }\n default:\n return state;\n }\n}\n","import React, {\n useState,\n useEffect,\n useContext,\n useReducer,\n useMemo,\n} from 'react';\nimport Sendbird from 'sendbird';\n\nimport { RenderUserProfileProps } from '../../../types';\n\nimport setupChannelList, {\n pubSubHandler,\n pubSubHandleRemover,\n} from '../utils';\nimport { uuidv4 } from '../../../utils/uuid';\nimport { noop } from '../../../utils/utils';\n\nimport * as channelListActions from '../dux/actionTypes';\n\nimport { UserProfileProvider } from '../../../lib/UserProfileContext';\nimport useSendbirdStateContext from '../../../hooks/useSendbirdStateContext';\nimport { CustomUseReducerDispatcher } from '../../../lib/SendbirdState';\nimport channelListReducers from '../dux/reducers';\nimport channelListInitialState from '../dux/initialState';\n\ninterface ApplicationUserListQuery {\n limit?: number;\n userIdsFilter?: Array<string>;\n metaDataKeyFilter?: string;\n metaDataValuesFilter?: Array<string>;\n}\n\ninterface GroupChannelListQuery {\n limit?: number;\n includeEmpty?: boolean;\n order?: 'latest_last_message' | 'chronological' | 'channel_name_alphabetical' | 'metadata_value_alphabetical';\n userIdsExactFilter?: Array<string>;\n userIdsIncludeFilter?: Array<string>;\n userIdsIncludeFilterQueryType?: 'AND' | 'OR';\n nicknameContainsFilter?: string;\n channelNameContainsFilter?: string;\n customTypesFilter?: Array<string>;\n customTypeStartsWithFilter?: string;\n channelUrlsFilter?: Array<string>;\n superChannelFilter?: 'all' | 'super' | 'nonsuper';\n publicChannelFilter?: 'all' | 'public' | 'private';\n metadataOrderKeyFilter?: string;\n memberStateFilter?: 'all' | 'joined_only' | 'invited_only' | 'invited_by_friend' | 'invited_by_non_friend';\n hiddenChannelFilter?: 'unhidden_only' | 'hidden_only' | 'hidden_allow_auto_unhide' | 'hidden_prevent_auto_unhide';\n unreadChannelFilter?: 'all' | 'unread_message';\n includeFrozen?: boolean;\n}\n\ninterface ChannelListQueries {\n applicationUserListQuery?: ApplicationUserListQuery;\n channelListQuery?: GroupChannelListQuery;\n}\n\nexport interface ChannelListProviderProps {\n allowProfileEdit?: boolean;\n onBeforeCreateChannel?(users: Array<string>): Sendbird.GroupChannelParams;\n onThemeChange?(theme: string): void;\n onProfileEditSuccess?(user: Sendbird.User): void;\n onChannelSelect?(channel: Sendbird.GroupChannel): void;\n sortChannelList?: (channels: Sendbird.GroupChannel[]) => Sendbird.GroupChannel[];\n queries?: ChannelListQueries;\n children?: React.ReactNode;\n className?: string | string[];\n renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;\n disableUserProfile?: boolean;\n disableAutoSelect?: boolean;\n typingChannels?: Array<Sendbird.GroupChannel>;\n isTypingIndicatorEnabled?: boolean;\n isMessageReceiptStatusEnabled?: boolean;\n}\n\nexport interface ChannelListProviderInterface extends ChannelListProviderProps {\n initialized: boolean;\n loading: boolean;\n allChannels: Sendbird.GroupChannel[];\n currentChannel: Sendbird.GroupChannel;\n showSettings: boolean;\n channelListQuery: GroupChannelListQuery;\n currentUserId: string;\n channelListDispatcher: CustomUseReducerDispatcher;\n channelSource: Sendbird.GroupChannelListQuery;\n}\n\ninterface ChannelListStoreInterface {\n initialized: boolean;\n loading: boolean;\n allChannels: Sendbird.GroupChannel[];\n currentChannel: Sendbird.GroupChannel;\n showSettings: boolean;\n channelListQuery: GroupChannelListQuery;\n currentUserId: string;\n}\n\nconst ChannelListContext = React.createContext<ChannelListProviderInterface | null>({\n disableUserProfile: true,\n allowProfileEdit: true,\n onBeforeCreateChannel: null,\n onThemeChange: null,\n onProfileEditSuccess: null,\n onChannelSelect: null,\n queries: {},\n className: null,\n initialized: false,\n loading: false,\n allChannels: [],\n currentChannel: null,\n showSettings: false,\n channelListQuery: {},\n currentUserId: null,\n channelListDispatcher: null,\n channelSource: null,\n typingChannels: [],\n});\n\nconst ChannelListProvider: React.FC<ChannelListProviderProps> = (props: ChannelListProviderProps) => {\n // destruct props\n const {\n children,\n className,\n disableUserProfile,\n allowProfileEdit,\n queries,\n onProfileEditSuccess,\n onThemeChange,\n onBeforeCreateChannel,\n sortChannelList,\n disableAutoSelect,\n isTypingIndicatorEnabled = null,\n isMessageReceiptStatusEnabled = null,\n } = props;\n const onChannelSelect = props?.onChannelSelect || noop;\n\n // fetch store from <SendbirdProvider />\n const globalStore = useSendbirdStateContext();\n const { config, stores } = globalStore;\n const { sdkStore } = stores;\n const { pubSub, logger } = config;\n const {\n isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabledOnChannelList,\n } = config;\n const { sdk } = sdkStore;\n\n // derive some variables\n // enable if it is true atleast once(both are flase by default)\n const userDefinedDisableUserProfile = disableUserProfile || config?.disableUserProfile;\n const userDefinedRenderProfile = config?.renderUserProfile;\n const enableEditProfile = allowProfileEdit || config?.allowProfileEdit;\n\n const userFilledChannelListQuery = queries?.channelListQuery;\n const userFilledApplicationUserListQuery = queries?.applicationUserListQuery;\n\n const sdkIntialized = sdkStore?.initialized;\n\n const [channelListStore, channelListDispatcher] = useReducer(\n channelListReducers,\n channelListInitialState,\n ) as [ChannelListStoreInterface, CustomUseReducerDispatcher];\n const { loading, currentChannel } = channelListStore;\n\n const [channelSource, setChannelSource] = useState<Sendbird.GroupChannelListQuery | null>();\n const [sdkChannelHandlerId, setSdkChannelHandlerId] = useState<string | null>(null);\n const [typingHandlerId, setTypingHandlerId] = useState<string | null>(null);\n const [typingChannels, setTypingChannels] = useState<Array<Sendbird.GroupChannel>>([]);\n\n useEffect(() => {\n const subscriber = pubSubHandler(pubSub, channelListDispatcher);\n return () => {\n pubSubHandleRemover(subscriber);\n };\n }, [sdkIntialized]);\n\n useEffect(() => {\n channelListDispatcher({\n type: channelListActions.SET_AUTO_SELECT_CHANNEL_ITEM,\n payload: disableAutoSelect,\n });\n }, [disableAutoSelect]);\n\n useEffect(() => {\n setSdkChannelHandlerId(uuidv4);\n if (sdkIntialized) {\n logger.info('ChannelList: Setup channelHandlers');\n setupChannelList({\n sdk,\n sdkChannelHandlerId,\n channelListDispatcher,\n setChannelSource,\n onChannelSelect,\n userFilledChannelListQuery,\n logger,\n sortChannelList,\n disableAutoSelect,\n });\n } else {\n logger.info('ChannelList: Removing channelHandlers');\n // remove previous channelHandlers\n if (sdk && sdk?.removeChannelHandler) {\n sdk.removeChannelHandler(sdkChannelHandlerId);\n }\n // remove channelSource\n setChannelSource(null);\n // cleanup\n channelListDispatcher({\n type: channelListActions.RESET_CHANNEL_LIST,\n payload: null,\n });\n }\n return () => {\n logger.info('ChannelList: Removing channelHandlers');\n if (sdk && sdk.removeChannelHandler) {\n sdk.removeChannelHandler(sdkChannelHandlerId);\n }\n };\n }, [sdkIntialized, userFilledChannelListQuery, sortChannelList]);\n\n useEffect(() => {\n if (sdk && sdk?.ChannelHandler) {\n const handlerId = uuidv4()\n const handler = new sdk.ChannelHandler()\n handler.onTypingStatusUpdated = (channel) => {\n const typingMemberCount = channel?.getTypingMembers()?.length\n const channelList = typingChannels.filter(ch => ch.url !== channel.url)\n if (typingMemberCount > 0) {\n setTypingChannels([...channelList, channel])\n } else {\n setTypingChannels(channelList)\n }\n }\n sdk.addChannelHandler(handlerId, handler)\n setTypingHandlerId(handlerId)\n }\n return () => {\n if (sdk && sdk.removeChannelHandler) {\n sdk.removeChannelHandler(typingHandlerId)\n }\n }\n }, [sdk?.currentUser?.userId]);\n\n const queries_ = useMemo(() => {\n return {\n applicationUserListQuery: userFilledApplicationUserListQuery,\n channelListQuery: userFilledChannelListQuery,\n };\n }, [\n userFilledApplicationUserListQuery,\n userFilledChannelListQuery,\n ])\n\n const { allChannels } = channelListStore;\n const sortedChannels = (sortChannelList && typeof sortChannelList === 'function')\n ? sortChannelList(allChannels)\n : allChannels;\n\n if (sortedChannels.length !== allChannels.length) {\n const warning = `ChannelList: You have removed/added extra channels on sortChannelList\n this could cause unexpected problems`;\n // eslint-disable-next-line no-console\n console.warn(warning, { before: allChannels, after: sortedChannels });\n logger.warning(warning, { before: allChannels, after: sortedChannels });\n }\n\n useEffect(() => {\n if (!sdk || !sdk.GroupChannel || !currentChannel || !currentChannel?.url) { return; }\n sdk.GroupChannel.getChannel(currentChannel.url, (groupChannel) => {\n if (groupChannel) {\n onChannelSelect(groupChannel);\n } else {\n onChannelSelect(null);\n }\n });\n }, [currentChannel?.url]);\n\n return (\n <ChannelListContext.Provider value={{\n className,\n disableUserProfile,\n queries: queries_,\n onProfileEditSuccess,\n onThemeChange,\n onBeforeCreateChannel,\n onChannelSelect,\n sortChannelList,\n loading,\n allowProfileEdit: enableEditProfile,\n channelListDispatcher,\n channelSource,\n ...channelListStore,\n allChannels: sortedChannels,\n typingChannels,\n isTypingIndicatorEnabled: (isTypingIndicatorEnabled !== null) ? isTypingIndicatorEnabled : isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabled: (isMessageReceiptStatusEnabled !== null) ? isMessageReceiptStatusEnabled : isMessageReceiptStatusEnabledOnChannelList,\n }}>\n <UserProfileProvider\n disableUserProfile={userDefinedDisableUserProfile}\n renderUserProfile={userDefinedRenderProfile}\n >\n <div className={`sendbird-channel-list ${className}`}>\n {children}\n </div>\n </UserProfileProvider>\n </ChannelListContext.Provider>\n );\n};\n\nfunction useChannelListContext(): ChannelListProviderInterface {\n const context: ChannelListProviderInterface = useContext(ChannelListContext);\n return context;\n}\n\nexport {\n ChannelListProvider,\n // ChannelListContext,\n useChannelListContext,\n};\n"],"names":["RESET_CHANNEL_LIST","CREATE_CHANNEL","SET_AUTO_SELECT_CHANNEL_ITEM","LEAVE_CHANNEL_SUCCESS","SET_CURRENT_CHANNEL","SHOW_CHANNEL_SETTINGS","HIDE_CHANNEL_SETTINGS","FETCH_CHANNELS_START","FETCH_CHANNELS_SUCCESS","FETCH_CHANNELS_FAILURE","INIT_CHANNELS_START","INIT_CHANNELS_SUCCESS","INIT_CHANNELS_FAILURE","ON_USER_JOINED","ON_CHANNEL_DELETED","ON_LAST_MESSAGE_UPDATED","ON_USER_LEFT","ON_CHANNEL_CHANGED","ON_CHANNEL_ARCHIVED","ON_CHANNEL_FROZEN","ON_CHANNEL_UNFROZEN","ON_READ_RECEIPT_UPDATED","ON_DELIVERY_RECEIPT_UPDATED","CHANNEL_REPLACED_TO_TOP","CHANNEL_LIST_PARAMS_UPDATED","DELIVERY_RECIPT","createEventHandler","sdk","sdkChannelHandlerId","channelListDispatcher","logger","ChannelHandler","onChannelChanged","channel","info","type","channelActions","payload","onChannelDeleted","channelUrl","onUserJoined","lastMessage","onUserBanned","user","currentUser","userId","isMe","onUserLeft","leftUser","onReadStatus","onDeliveryReceiptUpdated","onMessageUpdated","message","isEqual","onChannelHidden","onChannelFrozen","onChannelUnfrozen","addChannelHandler","createChannelListQuery","userFilledChannelListQuery","channelListQuery","GroupChannel","createMyGroupChannelListQuery","includeEmpty","order","limit","Object","keys","forEach","key","setupChannelList","setChannelSource","onChannelSelect","sortChannelList","disableAutoSelect","console","warning","currentUserId","hasNext","next","response","error","swapParams","getErrorFirstCallback","channelList","err","sortedChannelList","canSetMarkAsDelivered","appInfo","premiumFeatureList","find","feature","c","idx","setTimeout","markAsDelivered","url","pubSubHandleRemover","subscriber","s","remove","pubSubHandler","pubSub","subScriber","Map","set","topics","subscribe","msg","updatedChannel","messageId","initialized","loading","allChannels","currentChannel","showSettings","reducer","state","action","actions","initialState","length","currentChannels","map","filteredChannels","filter","filterChannelListParams","getChannelsWithUpsertedChannel","ch","nextChannel","unreadMessageCount","currentUnreadCount","isFrozen","ableAutoSelect","ChannelListContext","React","createContext","disableUserProfile","allowProfileEdit","onBeforeCreateChannel","onThemeChange","onProfileEditSuccess","queries","className","channelSource","typingChannels","ChannelListProvider","props","children","_b","isTypingIndicatorEnabled","_c","isMessageReceiptStatusEnabled","noop","globalStore","useSendbirdStateContext","config","stores","sdkStore","isTypingIndicatorEnabledOnChannelList","isMessageReceiptStatusEnabledOnChannelList","userDefinedDisableUserProfile","userDefinedRenderProfile","renderUserProfile","enableEditProfile","userFilledApplicationUserListQuery","applicationUserListQuery","sdkIntialized","_d","useReducer","channelListReducers","channelListInitialState","channelListStore","_e","useState","_f","setSdkChannelHandlerId","_g","typingHandlerId","setTypingHandlerId","_h","setTypingChannels","useEffect","channelListActions","uuidv4","removeChannelHandler","handlerId","handler","onTypingStatusUpdated","typingMemberCount","getTypingMembers","queries_","useMemo","sortedChannels","warn","before","after","getChannel","groupChannel","useChannelListContext","context","useContext"],"mappings":"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"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import React__default, { useEffect, useCallback, useRef, useMemo, useState, useReducer } from 'react';
|
|
2
|
-
import { U as UserProfileProvider } from './UserProfileContext-
|
|
2
|
+
import { U as UserProfileProvider } from './UserProfileContext-f4ff4291.js';
|
|
3
3
|
import useSendbirdStateContext from './useSendbirdStateContext.js';
|
|
4
|
-
import { b as _toConsumableArray, _ as _objectSpread2, a as _slicedToArray } from './_rollupPluginBabelHelpers-
|
|
5
|
-
import { f as format } from './index-
|
|
6
|
-
import { S as SEND_USER_MESSAGE, b as SEND_MESSAGE_START, a as SEND_FILE_MESSAGE, U as UPDATE_USER_MESSAGE, D as DELETE_MESSAGE } from './topics-
|
|
7
|
-
import { a as getOutgoingMessageStates, b as getSendingMessageStatus, c as filterMessageListParams } from './index-
|
|
8
|
-
import { c as compareIds } from './compareIds-
|
|
9
|
-
import {
|
|
4
|
+
import { b as _toConsumableArray, _ as _objectSpread2, a as _slicedToArray } from './_rollupPluginBabelHelpers-6bf18550.js';
|
|
5
|
+
import { f as format } from './index-1c2588aa.js';
|
|
6
|
+
import { S as SEND_USER_MESSAGE, b as SEND_MESSAGE_START, a as SEND_FILE_MESSAGE, U as UPDATE_USER_MESSAGE, D as DELETE_MESSAGE } from './topics-67738aac.js';
|
|
7
|
+
import { a as getOutgoingMessageStates, b as getSendingMessageStatus, c as filterMessageListParams } from './index-e6d0889d.js';
|
|
8
|
+
import { c as compareIds } from './compareIds-f01e0c3c.js';
|
|
9
|
+
import { N as NEXT_RESULT_SIZE, P as PREV_RESULT_SIZE } from './const-b6685801.js';
|
|
10
|
+
import { u as uuidv4 } from './uuid-0139dc21.js';
|
|
10
11
|
import { EmojiListItems } from './ui/ContextMenu.js';
|
|
11
12
|
import ReactionButton from './ui/ReactionButton.js';
|
|
12
13
|
import ImageRenderer from './ui/ImageRenderer.js';
|
|
@@ -304,9 +305,6 @@ var messagesInitialState = {
|
|
|
304
305
|
messageListParams: null
|
|
305
306
|
};
|
|
306
307
|
|
|
307
|
-
var PREV_RESULT_SIZE = 30;
|
|
308
|
-
var NEXT_RESULT_SIZE = 15;
|
|
309
|
-
|
|
310
308
|
var _getSendingMessageSta = getSendingMessageStatus(),
|
|
311
309
|
SUCCEEDED = _getSendingMessageSta.SUCCEEDED,
|
|
312
310
|
FAILED = _getSendingMessageSta.FAILED,
|
|
@@ -1290,14 +1288,31 @@ function useDeleteMessageCallback(_ref, _ref2) {
|
|
|
1290
1288
|
function useUpdateMessageCallback(_ref, _ref2) {
|
|
1291
1289
|
var currentGroupChannel = _ref.currentGroupChannel,
|
|
1292
1290
|
messagesDispatcher = _ref.messagesDispatcher,
|
|
1293
|
-
onBeforeUpdateUserMessage = _ref.onBeforeUpdateUserMessage
|
|
1291
|
+
onBeforeUpdateUserMessage = _ref.onBeforeUpdateUserMessage,
|
|
1292
|
+
isMentionEnabled = _ref.isMentionEnabled;
|
|
1294
1293
|
var logger = _ref2.logger,
|
|
1295
1294
|
pubSub = _ref2.pubSub,
|
|
1296
1295
|
sdk = _ref2.sdk;
|
|
1297
|
-
return useCallback(function (
|
|
1298
|
-
var
|
|
1296
|
+
return useCallback(function (props, callback) {
|
|
1297
|
+
var messageId = props.messageId,
|
|
1298
|
+
message = props.message,
|
|
1299
|
+
mentionedUsers = props.mentionedUsers,
|
|
1300
|
+
mentionTemplate = props.mentionTemplate;
|
|
1301
|
+
|
|
1302
|
+
var createParamsDefault = function createParamsDefault() {
|
|
1299
1303
|
var params = new sdk.UserMessageParams();
|
|
1300
|
-
params.message =
|
|
1304
|
+
params.message = message;
|
|
1305
|
+
|
|
1306
|
+
if (isMentionEnabled && (mentionedUsers === null || mentionedUsers === void 0 ? void 0 : mentionedUsers.length) > 0) {
|
|
1307
|
+
params.mentionedUsers = mentionedUsers;
|
|
1308
|
+
}
|
|
1309
|
+
|
|
1310
|
+
if (isMentionEnabled && mentionTemplate) {
|
|
1311
|
+
params.mentionedMessageTemplate = mentionTemplate;
|
|
1312
|
+
} else {
|
|
1313
|
+
params.mentionedMessageTemplate = message;
|
|
1314
|
+
}
|
|
1315
|
+
|
|
1301
1316
|
return params;
|
|
1302
1317
|
};
|
|
1303
1318
|
|
|
@@ -1307,33 +1322,33 @@ function useUpdateMessageCallback(_ref, _ref2) {
|
|
|
1307
1322
|
logger.info('Channel: creating params using onBeforeUpdateUserMessage', onBeforeUpdateUserMessage);
|
|
1308
1323
|
}
|
|
1309
1324
|
|
|
1310
|
-
var params = onBeforeUpdateUserMessage ? onBeforeUpdateUserMessage(
|
|
1325
|
+
var params = onBeforeUpdateUserMessage ? onBeforeUpdateUserMessage(message) : createParamsDefault();
|
|
1311
1326
|
currentGroupChannel.updateUserMessage(messageId, params, function (r, e) {
|
|
1312
1327
|
logger.info('Channel: Updating message!', params);
|
|
1313
1328
|
var swapParams = sdk.getErrorFirstCallback();
|
|
1314
|
-
var
|
|
1329
|
+
var msg = r;
|
|
1315
1330
|
var err = e;
|
|
1316
1331
|
|
|
1317
1332
|
if (swapParams) {
|
|
1318
|
-
|
|
1333
|
+
msg = e;
|
|
1319
1334
|
err = r;
|
|
1320
1335
|
}
|
|
1321
1336
|
|
|
1322
|
-
if (
|
|
1323
|
-
|
|
1337
|
+
if (callback) {
|
|
1338
|
+
callback(err, msg);
|
|
1324
1339
|
}
|
|
1325
1340
|
|
|
1326
1341
|
if (!err) {
|
|
1327
|
-
logger.info('Channel: Updating message success!',
|
|
1342
|
+
logger.info('Channel: Updating message success!', msg);
|
|
1328
1343
|
messagesDispatcher({
|
|
1329
1344
|
type: ON_MESSAGE_UPDATED,
|
|
1330
1345
|
payload: {
|
|
1331
1346
|
channel: currentGroupChannel,
|
|
1332
|
-
message:
|
|
1347
|
+
message: msg
|
|
1333
1348
|
}
|
|
1334
1349
|
});
|
|
1335
1350
|
pubSub.publish(UPDATE_USER_MESSAGE, {
|
|
1336
|
-
message:
|
|
1351
|
+
message: msg,
|
|
1337
1352
|
channel: currentGroupChannel
|
|
1338
1353
|
});
|
|
1339
1354
|
} else {
|
|
@@ -1429,21 +1444,34 @@ function useResendMessageCallback(_ref, _ref2) {
|
|
|
1429
1444
|
}
|
|
1430
1445
|
|
|
1431
1446
|
function useSendMessageCallback(_ref, _ref2) {
|
|
1432
|
-
var
|
|
1447
|
+
var isMentionEnabled = _ref.isMentionEnabled,
|
|
1448
|
+
currentGroupChannel = _ref.currentGroupChannel,
|
|
1433
1449
|
onBeforeSendUserMessage = _ref.onBeforeSendUserMessage;
|
|
1434
1450
|
var sdk = _ref2.sdk,
|
|
1435
1451
|
logger = _ref2.logger,
|
|
1436
1452
|
pubSub = _ref2.pubSub,
|
|
1437
1453
|
messagesDispatcher = _ref2.messagesDispatcher;
|
|
1438
1454
|
var messageInputRef = useRef(null);
|
|
1439
|
-
var sendMessage = useCallback(function () {
|
|
1440
|
-
var quoteMessage =
|
|
1441
|
-
|
|
1442
|
-
|
|
1443
|
-
|
|
1444
|
-
|
|
1455
|
+
var sendMessage = useCallback(function (props) {
|
|
1456
|
+
var _props$quoteMessage = props.quoteMessage,
|
|
1457
|
+
quoteMessage = _props$quoteMessage === void 0 ? null : _props$quoteMessage,
|
|
1458
|
+
message = props.message,
|
|
1459
|
+
mentionTemplate = props.mentionTemplate,
|
|
1460
|
+
mentionedUsers = props.mentionedUsers;
|
|
1461
|
+
|
|
1462
|
+
var createParamsDefault = function createParamsDefault() {
|
|
1445
1463
|
var params = new sdk.UserMessageParams();
|
|
1446
|
-
params.message = message;
|
|
1464
|
+
params.message = (message === null || message === void 0 ? void 0 : message.trim()) || message; // if (isMentionEnabled && mentionedUserIds?.length > 0) {
|
|
1465
|
+
|
|
1466
|
+
if (isMentionEnabled && (mentionedUsers === null || mentionedUsers === void 0 ? void 0 : mentionedUsers.length) > 0) {
|
|
1467
|
+
// params.mentionedUserIds = mentionedUserIds;
|
|
1468
|
+
params.mentionedUsers = mentionedUsers;
|
|
1469
|
+
} // if (isMentionEnabled && mentionTemplate && mentionedUserIds?.length > 0) {
|
|
1470
|
+
|
|
1471
|
+
|
|
1472
|
+
if (isMentionEnabled && mentionTemplate && (mentionedUsers === null || mentionedUsers === void 0 ? void 0 : mentionedUsers.length) > 0) {
|
|
1473
|
+
params.mentionedMessageTemplate = (mentionTemplate === null || mentionTemplate === void 0 ? void 0 : mentionTemplate.trim()) || mentionTemplate;
|
|
1474
|
+
}
|
|
1447
1475
|
|
|
1448
1476
|
if (quoteMessage) {
|
|
1449
1477
|
params.isReplyToChannel = true;
|
|
@@ -1459,15 +1487,15 @@ function useSendMessageCallback(_ref, _ref2) {
|
|
|
1459
1487
|
logger.info('Channel: creating params using onBeforeSendUserMessage', onBeforeSendUserMessage);
|
|
1460
1488
|
}
|
|
1461
1489
|
|
|
1462
|
-
var params = onBeforeSendUserMessage ? onBeforeSendUserMessage(
|
|
1490
|
+
var params = onBeforeSendUserMessage ? onBeforeSendUserMessage(message, quoteMessage) : createParamsDefault();
|
|
1463
1491
|
logger.info('Channel: Sending message has started', params);
|
|
1464
1492
|
var pendingMsg = currentGroupChannel.sendUserMessage(params, function (res, err) {
|
|
1465
1493
|
var swapParams = sdk.getErrorFirstCallback();
|
|
1466
|
-
var
|
|
1494
|
+
var msg = res;
|
|
1467
1495
|
var error = err;
|
|
1468
1496
|
|
|
1469
1497
|
if (swapParams) {
|
|
1470
|
-
|
|
1498
|
+
msg = err;
|
|
1471
1499
|
error = res;
|
|
1472
1500
|
} // sending params instead of pending message
|
|
1473
1501
|
// to make sure that we can resend the message once it fails
|
|
@@ -1475,19 +1503,19 @@ function useSendMessageCallback(_ref, _ref2) {
|
|
|
1475
1503
|
|
|
1476
1504
|
if (error) {
|
|
1477
1505
|
logger.warning('Channel: Sending message failed!', {
|
|
1478
|
-
|
|
1506
|
+
msg: msg
|
|
1479
1507
|
});
|
|
1480
1508
|
messagesDispatcher({
|
|
1481
1509
|
type: SEND_MESSAGEGE_FAILURE,
|
|
1482
|
-
payload:
|
|
1510
|
+
payload: msg
|
|
1483
1511
|
});
|
|
1484
1512
|
return;
|
|
1485
1513
|
}
|
|
1486
1514
|
|
|
1487
|
-
logger.info('Channel: Sending message success!',
|
|
1515
|
+
logger.info('Channel: Sending message success!', msg);
|
|
1488
1516
|
messagesDispatcher({
|
|
1489
1517
|
type: SEND_MESSAGEGE_SUCESS,
|
|
1490
|
-
payload:
|
|
1518
|
+
payload: msg
|
|
1491
1519
|
});
|
|
1492
1520
|
});
|
|
1493
1521
|
pubSub.publish(SEND_MESSAGE_START, {
|
|
@@ -1803,7 +1831,8 @@ var ChannelProvider = function ChannelProvider(props) {
|
|
|
1803
1831
|
logger = config.logger,
|
|
1804
1832
|
userId = config.userId,
|
|
1805
1833
|
isOnline = config.isOnline,
|
|
1806
|
-
imageCompression = config.imageCompression
|
|
1834
|
+
imageCompression = config.imageCompression,
|
|
1835
|
+
isMentionEnabled = config.isMentionEnabled;
|
|
1807
1836
|
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;
|
|
1808
1837
|
var sdkInit = (_d = (_c = globalStore === null || globalStore === void 0 ? void 0 : globalStore.stores) === null || _c === void 0 ? void 0 : _c.sdkStore) === null || _d === void 0 ? void 0 : _d.initialized;
|
|
1809
1838
|
|
|
@@ -1979,7 +2008,8 @@ var ChannelProvider = function ChannelProvider(props) {
|
|
|
1979
2008
|
var updateMessage = useUpdateMessageCallback({
|
|
1980
2009
|
currentGroupChannel: currentGroupChannel,
|
|
1981
2010
|
messagesDispatcher: messagesDispatcher,
|
|
1982
|
-
onBeforeUpdateUserMessage: onBeforeUpdateUserMessage
|
|
2011
|
+
onBeforeUpdateUserMessage: onBeforeUpdateUserMessage,
|
|
2012
|
+
isMentionEnabled: isMentionEnabled
|
|
1983
2013
|
}, {
|
|
1984
2014
|
logger: logger,
|
|
1985
2015
|
sdk: sdk,
|
|
@@ -1994,7 +2024,8 @@ var ChannelProvider = function ChannelProvider(props) {
|
|
|
1994
2024
|
|
|
1995
2025
|
var _k = useSendMessageCallback({
|
|
1996
2026
|
currentGroupChannel: currentGroupChannel,
|
|
1997
|
-
onBeforeSendUserMessage: onBeforeSendUserMessage
|
|
2027
|
+
onBeforeSendUserMessage: onBeforeSendUserMessage,
|
|
2028
|
+
isMentionEnabled: isMentionEnabled
|
|
1998
2029
|
}, {
|
|
1999
2030
|
sdk: sdk,
|
|
2000
2031
|
logger: logger,
|
|
@@ -2080,4 +2111,4 @@ var useChannel = function useChannel() {
|
|
|
2080
2111
|
};
|
|
2081
2112
|
|
|
2082
2113
|
export { ChannelProvider as C, MARK_AS_READ as M, isDisabledBecauseFrozen as a, isDisabledBecauseMuted as b, compareMessagesForGrouping as c, isOperator as d, isAboutSame as i, useChannel as u };
|
|
2083
|
-
//# sourceMappingURL=ChannelProvider-
|
|
2114
|
+
//# sourceMappingURL=ChannelProvider-cf8fc05a.js.map
|