@sendbird/uikit-react 3.5.0-rc.1 → 3.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/App.js +323 -238
- package/App.js.map +1 -1
- package/CHANGELOG.md +556 -0
- package/Channel/components/ChannelHeader.js +46 -41
- package/Channel/components/ChannelHeader.js.map +1 -1
- package/Channel/components/ChannelUI.js +104 -131
- package/Channel/components/ChannelUI.js.map +1 -1
- package/Channel/components/FileViewer.js +56 -52
- package/Channel/components/FileViewer.js.map +1 -1
- package/Channel/components/FrozenNotification.js +12 -7
- package/Channel/components/FrozenNotification.js.map +1 -1
- package/Channel/components/Message.js +240 -230
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +152 -129
- package/Channel/components/MessageInput.js.map +1 -1
- package/Channel/components/MessageList.js +270 -175
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +34 -30
- package/Channel/components/RemoveMessageModal.js.map +1 -1
- package/Channel/components/SuggestedMentionList.js +139 -193
- package/Channel/components/SuggestedMentionList.js.map +1 -1
- package/Channel/components/TypingIndicator.js +44 -61
- package/Channel/components/TypingIndicator.js.map +1 -1
- package/Channel/components/UnreadCount.js +18 -20
- package/Channel/components/UnreadCount.js.map +1 -1
- package/Channel/context.js +12 -19
- package/Channel/context.js.map +1 -1
- package/Channel.js +69 -44
- package/Channel.js.map +1 -1
- package/ChannelList/components/AddChannel.js +29 -30
- package/ChannelList/components/AddChannel.js.map +1 -1
- package/ChannelList/components/ChannelListHeader.js +32 -28
- package/ChannelList/components/ChannelListHeader.js.map +1 -1
- package/ChannelList/components/ChannelListUI.js +101 -142
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +72 -82
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +36 -36
- package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
- package/ChannelList/context.js +7 -8
- package/ChannelList/context.js.map +1 -1
- package/ChannelList.js +32 -31
- package/ChannelList.js.map +1 -1
- package/{ChannelListProvider-1d36e2e9.js → ChannelListProvider-643a2b47.js} +234 -286
- package/ChannelListProvider-643a2b47.js.map +1 -0
- package/{ChannelProvider-289cd35f.js → ChannelProvider-33559192.js} +661 -727
- package/ChannelProvider-33559192.js.map +1 -0
- package/ChannelSettings/components/ChannelProfile.js +33 -46
- package/ChannelSettings/components/ChannelProfile.js.map +1 -1
- package/ChannelSettings/components/ChannelSettingsUI.js +45 -48
- package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
- package/ChannelSettings/components/EditDetailsModal.js +47 -58
- package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/ChannelSettings/components/LeaveChannel.js +40 -46
- package/ChannelSettings/components/LeaveChannel.js.map +1 -1
- package/ChannelSettings/components/ModerationPanel.js +522 -605
- package/ChannelSettings/components/ModerationPanel.js.map +1 -1
- package/ChannelSettings/components/UserListItem.js +71 -72
- package/ChannelSettings/components/UserListItem.js.map +1 -1
- package/ChannelSettings/components/UserPanel.js +29 -32
- package/ChannelSettings/components/UserPanel.js.map +1 -1
- package/ChannelSettings/context.js +55 -58
- package/ChannelSettings/context.js.map +1 -1
- package/ChannelSettings.js +20 -20
- package/ChannelSettings.js.map +1 -1
- package/CreateChannel/components/CreateChannelUI.js +24 -24
- package/CreateChannel/components/CreateChannelUI.js.map +1 -1
- package/CreateChannel/components/InviteUsers.js +102 -124
- package/CreateChannel/components/InviteUsers.js.map +1 -1
- package/CreateChannel/components/SelectChannelType.js +41 -42
- package/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/CreateChannel/context.js +4 -4
- package/CreateChannel.js +22 -21
- package/CreateChannel.js.map +1 -1
- package/CreateChannelProvider-5b006b58.js +44 -0
- package/CreateChannelProvider-5b006b58.js.map +1 -0
- package/CreateOpenChannel/components/CreateOpenChannelUI.js +33 -43
- package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
- package/CreateOpenChannel/context.js +33 -33
- package/CreateOpenChannel/context.js.map +1 -1
- package/CreateOpenChannel.js +18 -17
- package/CreateOpenChannel.js.map +1 -1
- package/EditUserProfile/components/EditUserProfileUI.js +12 -13
- package/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
- package/EditUserProfile/context.js +0 -2
- package/EditUserProfile/context.js.map +1 -1
- package/EditUserProfile.js +18 -17
- package/EditUserProfile.js.map +1 -1
- package/LocalizationContext-25d6694d.js +20 -0
- package/{LocalizationContext-289c1917.js.map → LocalizationContext-25d6694d.js.map} +1 -1
- package/MediaQueryContext-94c9086a.js +87 -0
- package/MediaQueryContext-94c9086a.js.map +1 -0
- package/MemberList-9f8950db.js +403 -0
- package/MemberList-9f8950db.js.map +1 -0
- package/Message/context.js +31 -0
- package/Message/context.js.map +1 -0
- package/MessageSearch/components/MessageSearchUI.js +62 -71
- package/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/MessageSearch/context.js +201 -224
- package/MessageSearch/context.js.map +1 -1
- package/MessageSearch.js +46 -58
- package/MessageSearch.js.map +1 -1
- package/OpenChannel/components/FrozenChannelNotification.js +8 -6
- package/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
- package/OpenChannel/components/OpenChannelHeader.js +27 -25
- package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
- package/OpenChannel/components/OpenChannelInput.js +50 -35
- package/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessage.js +174 -191
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +72 -92
- package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/OpenChannel/components/OpenChannelUI.js +52 -49
- package/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/OpenChannel/context.js +8 -9
- package/OpenChannel/context.js.map +1 -1
- package/OpenChannel.js +36 -30
- package/OpenChannel.js.map +1 -1
- package/OpenChannelList/components/OpenChannelListUI.js +61 -76
- package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
- package/OpenChannelList/components/OpenChannelPreview.js +21 -22
- package/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
- package/OpenChannelList/context.js +3 -4
- package/OpenChannelList/context.js.map +1 -1
- package/OpenChannelList.js +26 -24
- package/OpenChannelList.js.map +1 -1
- package/OpenChannelListProvider-7c6b2f84.js +429 -0
- package/OpenChannelListProvider-7c6b2f84.js.map +1 -0
- package/OpenChannelProvider-18fa6128.js +1885 -0
- package/OpenChannelProvider-18fa6128.js.map +1 -0
- package/OpenChannelSettings/components/EditDetailsModal.js +47 -56
- package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/OpenChannelSettings/components/OpenChannelProfile.js +26 -31
- package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +45 -43
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
- package/OpenChannelSettings/components/OperatorUI.js +516 -586
- package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/OpenChannelSettings/components/ParticipantUI.js +15 -16
- package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
- package/OpenChannelSettings/context.js +57 -70
- package/OpenChannelSettings/context.js.map +1 -1
- package/OpenChannelSettings.js +19 -20
- package/OpenChannelSettings.js.map +1 -1
- package/README.md +62 -13
- package/RemoveMessageModal-9c0350c0.js +36 -0
- package/RemoveMessageModal-9c0350c0.js.map +1 -0
- package/SendbirdProvider.js +749 -408
- package/SendbirdProvider.js.map +1 -1
- package/Thread/components/ParentMessageInfo.js +238 -217
- package/Thread/components/ParentMessageInfo.js.map +1 -1
- package/Thread/components/ParentMessageInfoItem.js +112 -89
- package/Thread/components/ParentMessageInfoItem.js.map +1 -1
- package/Thread/components/ThreadHeader.js +22 -23
- package/Thread/components/ThreadHeader.js.map +1 -1
- package/Thread/components/ThreadList.js +108 -83
- package/Thread/components/ThreadList.js.map +1 -1
- package/Thread/components/ThreadListItem.js +306 -276
- package/Thread/components/ThreadListItem.js.map +1 -1
- package/Thread/components/ThreadMessageInput.js +146 -113
- package/Thread/components/ThreadMessageInput.js.map +1 -1
- package/Thread/components/ThreadUI.js +169 -138
- package/Thread/components/ThreadUI.js.map +1 -1
- package/Thread/context/types.js +9 -14
- package/Thread/context/types.js.map +1 -1
- package/Thread/context.js +8 -8
- package/Thread.js +87 -57
- package/Thread.js.map +1 -1
- package/ThreadProvider-6ae0b041.js +1695 -0
- package/ThreadProvider-6ae0b041.js.map +1 -0
- package/{UserProfileContext-e3530842.js → UserProfileContext-a56cc682.js} +1 -4
- package/{UserProfileContext-e3530842.js.map → UserProfileContext-a56cc682.js.map} +1 -1
- package/VoiceMessageInputWrapper-69ac1f5a.js +170 -0
- package/VoiceMessageInputWrapper-69ac1f5a.js.map +1 -0
- package/VoicePlayer/context.js +7 -0
- package/{NotificationChannel → VoicePlayer}/context.js.map +1 -1
- package/VoicePlayer/useVoicePlayer.js +84 -0
- package/VoicePlayer/useVoicePlayer.js.map +1 -0
- package/VoiceRecorder/context.js +156 -0
- package/VoiceRecorder/context.js.map +1 -0
- package/VoiceRecorder/useVoiceRecorder.js +121 -0
- package/VoiceRecorder/useVoiceRecorder.js.map +1 -0
- package/WebAudioUtils-16540f03.js +123 -0
- package/WebAudioUtils-16540f03.js.map +1 -0
- package/{_rollupPluginBabelHelpers-519f674b.js → _rollupPluginBabelHelpers-1be219c2.js} +17 -11
- package/_rollupPluginBabelHelpers-1be219c2.js.map +1 -0
- package/actionTypes-a8140d53.js +8 -0
- package/actionTypes-a8140d53.js.map +1 -0
- package/cjs/App.js +324 -239
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +46 -41
- package/cjs/Channel/components/ChannelHeader.js.map +1 -1
- package/cjs/Channel/components/ChannelUI.js +102 -129
- package/cjs/Channel/components/ChannelUI.js.map +1 -1
- package/cjs/Channel/components/FileViewer.js +56 -52
- package/cjs/Channel/components/FileViewer.js.map +1 -1
- package/cjs/Channel/components/FrozenNotification.js +12 -7
- package/cjs/Channel/components/FrozenNotification.js.map +1 -1
- package/cjs/Channel/components/Message.js +243 -233
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +151 -128
- package/cjs/Channel/components/MessageInput.js.map +1 -1
- package/cjs/Channel/components/MessageList.js +270 -175
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +34 -30
- package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
- package/cjs/Channel/components/SuggestedMentionList.js +139 -193
- package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
- package/cjs/Channel/components/TypingIndicator.js +44 -61
- package/cjs/Channel/components/TypingIndicator.js.map +1 -1
- package/cjs/Channel/components/UnreadCount.js +18 -20
- package/cjs/Channel/components/UnreadCount.js.map +1 -1
- package/cjs/Channel/context.js +12 -23
- package/cjs/Channel/context.js.map +1 -1
- package/cjs/Channel.js +69 -44
- package/cjs/Channel.js.map +1 -1
- package/cjs/ChannelList/components/AddChannel.js +29 -30
- package/cjs/ChannelList/components/AddChannel.js.map +1 -1
- package/cjs/ChannelList/components/ChannelListHeader.js +32 -28
- package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -1
- package/cjs/ChannelList/components/ChannelListUI.js +100 -141
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +72 -82
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +36 -36
- package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
- package/cjs/ChannelList/context.js +7 -8
- package/cjs/ChannelList/context.js.map +1 -1
- package/cjs/ChannelList.js +32 -31
- package/cjs/ChannelList.js.map +1 -1
- package/cjs/{ChannelListProvider-0de52d2b.js → ChannelListProvider-1d4a8060.js} +233 -285
- package/cjs/ChannelListProvider-1d4a8060.js.map +1 -0
- package/cjs/{ChannelProvider-fc58e60e.js → ChannelProvider-2c7ec64b.js} +659 -725
- package/cjs/ChannelProvider-2c7ec64b.js.map +1 -0
- package/cjs/ChannelSettings/components/ChannelProfile.js +33 -46
- package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +45 -48
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
- package/cjs/ChannelSettings/components/EditDetailsModal.js +47 -58
- package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/cjs/ChannelSettings/components/LeaveChannel.js +40 -46
- package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
- package/cjs/ChannelSettings/components/ModerationPanel.js +522 -605
- package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
- package/cjs/ChannelSettings/components/UserListItem.js +71 -72
- package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
- package/cjs/ChannelSettings/components/UserPanel.js +29 -32
- package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
- package/cjs/ChannelSettings/context.js +57 -60
- package/cjs/ChannelSettings/context.js.map +1 -1
- package/cjs/ChannelSettings.js +20 -20
- package/cjs/ChannelSettings.js.map +1 -1
- package/cjs/CreateChannel/components/CreateChannelUI.js +24 -24
- package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
- package/cjs/CreateChannel/components/InviteUsers.js +102 -124
- package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
- package/cjs/CreateChannel/components/SelectChannelType.js +41 -42
- package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/cjs/CreateChannel/context.js +4 -4
- package/cjs/CreateChannel.js +22 -21
- package/cjs/CreateChannel.js.map +1 -1
- package/cjs/CreateChannelProvider-f7d36126.js +52 -0
- package/cjs/CreateChannelProvider-f7d36126.js.map +1 -0
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +33 -43
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
- package/cjs/CreateOpenChannel/context.js +33 -33
- package/cjs/CreateOpenChannel/context.js.map +1 -1
- package/cjs/CreateOpenChannel.js +18 -17
- package/cjs/CreateOpenChannel.js.map +1 -1
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -13
- package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
- package/cjs/EditUserProfile/context.js +0 -2
- package/cjs/EditUserProfile/context.js.map +1 -1
- package/cjs/EditUserProfile.js +18 -17
- package/cjs/EditUserProfile.js.map +1 -1
- package/cjs/{LocalizationContext-bddc5c2b.js → LocalizationContext-bd54275c.js} +9 -11
- package/cjs/{LocalizationContext-bddc5c2b.js.map → LocalizationContext-bd54275c.js.map} +1 -1
- package/cjs/MediaQueryContext-ebcb159a.js +94 -0
- package/cjs/MediaQueryContext-ebcb159a.js.map +1 -0
- package/cjs/MemberList-2204c0b1.js +409 -0
- package/cjs/MemberList-2204c0b1.js.map +1 -0
- package/cjs/Message/context.js +40 -0
- package/cjs/Message/context.js.map +1 -0
- package/cjs/MessageSearch/components/MessageSearchUI.js +61 -70
- package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/cjs/MessageSearch/context.js +201 -224
- package/cjs/MessageSearch/context.js.map +1 -1
- package/cjs/MessageSearch.js +46 -58
- package/cjs/MessageSearch.js.map +1 -1
- package/cjs/OpenChannel/components/FrozenChannelNotification.js +8 -6
- package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelHeader.js +27 -25
- package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelInput.js +50 -35
- package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessage.js +174 -191
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +72 -92
- package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelUI.js +52 -49
- package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/cjs/OpenChannel/context.js +8 -9
- package/cjs/OpenChannel/context.js.map +1 -1
- package/cjs/OpenChannel.js +36 -30
- package/cjs/OpenChannel.js.map +1 -1
- package/cjs/OpenChannelList/components/OpenChannelListUI.js +61 -76
- package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
- package/cjs/OpenChannelList/components/OpenChannelPreview.js +21 -22
- package/cjs/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
- package/cjs/OpenChannelList/context.js +3 -4
- package/cjs/OpenChannelList/context.js.map +1 -1
- package/cjs/OpenChannelList.js +26 -24
- package/cjs/OpenChannelList.js.map +1 -1
- package/cjs/OpenChannelListProvider-865700d5.js +439 -0
- package/cjs/OpenChannelListProvider-865700d5.js.map +1 -0
- package/cjs/OpenChannelProvider-083e5628.js +1894 -0
- package/cjs/OpenChannelProvider-083e5628.js.map +1 -0
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +47 -56
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +26 -31
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +45 -43
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OperatorUI.js +516 -586
- package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -16
- package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
- package/cjs/OpenChannelSettings/context.js +58 -71
- package/cjs/OpenChannelSettings/context.js.map +1 -1
- package/cjs/OpenChannelSettings.js +19 -20
- package/cjs/OpenChannelSettings.js.map +1 -1
- package/cjs/{RemoveMessageModal-9169766a.js → RemoveMessageModal-822e0fac.js} +19 -14
- package/cjs/RemoveMessageModal-822e0fac.js.map +1 -0
- package/cjs/SendbirdProvider.js +748 -408
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfo.js +237 -216
- package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfoItem.js +111 -88
- package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
- package/cjs/Thread/components/ThreadHeader.js +22 -23
- package/cjs/Thread/components/ThreadHeader.js.map +1 -1
- package/cjs/Thread/components/ThreadList.js +108 -83
- package/cjs/Thread/components/ThreadList.js.map +1 -1
- package/cjs/Thread/components/ThreadListItem.js +305 -275
- package/cjs/Thread/components/ThreadListItem.js.map +1 -1
- package/cjs/Thread/components/ThreadMessageInput.js +146 -113
- package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
- package/cjs/Thread/components/ThreadUI.js +170 -139
- package/cjs/Thread/components/ThreadUI.js.map +1 -1
- package/cjs/Thread/context/types.js +13 -14
- package/cjs/Thread/context/types.js.map +1 -1
- package/cjs/Thread/context.js +8 -8
- package/cjs/Thread.js +87 -57
- package/cjs/Thread.js.map +1 -1
- package/cjs/ThreadProvider-09392c06.js +1704 -0
- package/cjs/ThreadProvider-09392c06.js.map +1 -0
- package/cjs/{UserProfileContext-8d0dee57.js → UserProfileContext-10e1ac24.js} +1 -4
- package/cjs/{UserProfileContext-8d0dee57.js.map → UserProfileContext-10e1ac24.js.map} +1 -1
- package/cjs/VoiceMessageInputWrapper-fee2ede6.js +176 -0
- package/cjs/VoiceMessageInputWrapper-fee2ede6.js.map +1 -0
- package/cjs/VoicePlayer/context.js +17 -0
- package/cjs/{NotificationChannel → VoicePlayer}/context.js.map +1 -1
- package/cjs/VoicePlayer/useVoicePlayer.js +88 -0
- package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -0
- package/cjs/VoiceRecorder/context.js +166 -0
- package/cjs/VoiceRecorder/context.js.map +1 -0
- package/cjs/VoiceRecorder/useVoiceRecorder.js +126 -0
- package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -0
- package/cjs/WebAudioUtils-9dfbd5a9.js +126 -0
- package/cjs/WebAudioUtils-9dfbd5a9.js.map +1 -0
- package/cjs/{_rollupPluginBabelHelpers-fed1e122.js → _rollupPluginBabelHelpers-53e83515.js} +17 -10
- package/cjs/_rollupPluginBabelHelpers-53e83515.js.map +1 -0
- package/cjs/actionTypes-b1275c7f.js +10 -0
- package/cjs/actionTypes-b1275c7f.js.map +1 -0
- package/cjs/{color-f47044b3.js → color-e7fbb496.js} +13 -21
- package/cjs/color-e7fbb496.js.map +1 -0
- package/cjs/{compareIds-4124b297.js → compareIds-03cd7437.js} +5 -6
- package/cjs/compareIds-03cd7437.js.map +1 -0
- package/cjs/{const-fd64914b.js → const-8728e4b6.js} +4 -4
- package/cjs/const-8728e4b6.js.map +1 -0
- package/cjs/const-b3585ae0.js +20 -0
- package/cjs/const-b3585ae0.js.map +1 -0
- package/cjs/consts-6bd1cfe3.js +6 -0
- package/cjs/consts-6bd1cfe3.js.map +1 -0
- package/cjs/consts-a006bc78.js +6 -0
- package/cjs/consts-a006bc78.js.map +1 -0
- package/cjs/consts-a0e35044.js +6 -0
- package/cjs/consts-a0e35044.js.map +1 -0
- package/cjs/consts-aa056322.js +41 -0
- package/cjs/consts-aa056322.js.map +1 -0
- package/cjs/{context-7a0e057b.js → context-ad45a982.js} +6 -5
- package/cjs/{context-7a0e057b.js.map → context-ad45a982.js.map} +1 -1
- package/cjs/dist/index.css +1847 -1394
- package/cjs/dist/index.css.map +1 -1
- package/cjs/handlers/OpenChannelHandler.js.map +1 -1
- package/cjs/handlers/SessionHandler.js.map +1 -1
- package/cjs/{index-343cd84a.js → index-165d52b7.js} +2 -2
- package/cjs/{index-343cd84a.js.map → index-165d52b7.js.map} +1 -1
- package/cjs/index-288afd10.js +367 -0
- package/cjs/index-288afd10.js.map +1 -0
- package/cjs/{index-9ca07037.js → index-2f206bb6.js} +29 -37
- package/cjs/index-2f206bb6.js.map +1 -0
- package/cjs/index-32244c73.js +585 -0
- package/cjs/index-32244c73.js.map +1 -0
- package/cjs/index-35d641f7.js +202 -0
- package/cjs/index-35d641f7.js.map +1 -0
- package/cjs/{index-c475c3c8.js → index-3e924a85.js} +55 -63
- package/cjs/index-3e924a85.js.map +1 -0
- package/cjs/index-4a2ec2ae.js +456 -0
- package/cjs/index-4a2ec2ae.js.map +1 -0
- package/cjs/{index-d14a43c4.js → index-745c9ce1.js} +1 -1
- package/cjs/{index-d14a43c4.js.map → index-745c9ce1.js.map} +1 -1
- package/cjs/index-7bd7f678.js +79 -0
- package/cjs/index-7bd7f678.js.map +1 -0
- package/cjs/index-7d2d89a2.js +330 -0
- package/cjs/index-7d2d89a2.js.map +1 -0
- package/cjs/{index-c5cd589d.js → index-8ada6055.js} +1 -1
- package/cjs/index-8ada6055.js.map +1 -0
- package/cjs/{index-3a4f8219.js → index-9a94e768.js} +42 -51
- package/cjs/index-9a94e768.js.map +1 -0
- package/cjs/index-9f2a1c52.js +161 -0
- package/cjs/index-9f2a1c52.js.map +1 -0
- package/cjs/{index-abbc8024.js → index-9feae73e.js} +57 -3
- package/cjs/index-9feae73e.js.map +1 -0
- package/cjs/{index-8de8f28a.js → index-a01673e9.js} +2 -2
- package/cjs/{index-8de8f28a.js.map → index-a01673e9.js.map} +1 -1
- package/cjs/index-d0b4f3c0.js +57 -0
- package/cjs/index-d0b4f3c0.js.map +1 -0
- package/cjs/{index-5d5497c2.js → index-f6621210.js} +11 -25
- package/cjs/index-f6621210.js.map +1 -0
- package/cjs/index.js +84 -63
- package/cjs/index.js.map +1 -1
- package/cjs/index.module-02ae6df9.js +6 -0
- package/cjs/index.module-02ae6df9.js.map +1 -0
- package/cjs/lame.all.js +2541 -0
- package/cjs/lame.all.js.map +1 -0
- package/cjs/resolvedReplyType-da86056c.js +32 -0
- package/cjs/resolvedReplyType-da86056c.js.map +1 -0
- package/cjs/sendbirdSelectors.js +307 -417
- package/cjs/sendbirdSelectors.js.map +1 -1
- package/cjs/{stringSet-3e6167ef.js → stringSet-d212a015.js} +112 -90
- package/cjs/stringSet-d212a015.js.map +1 -0
- package/cjs/tokenize-b019fb84.js +164 -0
- package/cjs/tokenize-b019fb84.js.map +1 -0
- package/cjs/topics-77576a9c.js +18 -0
- package/cjs/topics-77576a9c.js.map +1 -0
- package/cjs/types-36ee2d00.js +17 -0
- package/cjs/types-36ee2d00.js.map +1 -0
- package/cjs/ui/Accordion.js +21 -24
- package/cjs/ui/Accordion.js.map +1 -1
- package/cjs/ui/AccordionGroup.js +10 -13
- package/cjs/ui/AccordionGroup.js.map +1 -1
- package/cjs/ui/AdminMessage.js +10 -13
- package/cjs/ui/AdminMessage.js.map +1 -1
- package/cjs/ui/Avatar.js +57 -79
- package/cjs/ui/Avatar.js.map +1 -1
- package/cjs/ui/Badge.js +16 -15
- package/cjs/ui/Badge.js.map +1 -1
- package/cjs/ui/BottomSheet.js +14 -12
- package/cjs/ui/BottomSheet.js.map +1 -1
- package/cjs/ui/Button.js +20 -35
- package/cjs/ui/Button.js.map +1 -1
- package/cjs/ui/ChannelAvatar.js +38 -41
- package/cjs/ui/ChannelAvatar.js.map +1 -1
- package/cjs/ui/Checkbox.js +11 -13
- package/cjs/ui/Checkbox.js.map +1 -1
- package/cjs/ui/ConnectionStatus.js +7 -5
- package/cjs/ui/ConnectionStatus.js.map +1 -1
- package/cjs/ui/ContextMenu.js +175 -199
- package/cjs/ui/ContextMenu.js.map +1 -1
- package/cjs/ui/DateSeparator.js +12 -14
- package/cjs/ui/DateSeparator.js.map +1 -1
- package/cjs/ui/EmojiReactions.js +299 -107
- package/cjs/ui/EmojiReactions.js.map +1 -1
- package/cjs/ui/FileMessageItemBody.js +22 -23
- package/cjs/ui/FileMessageItemBody.js.map +1 -1
- package/cjs/ui/FileViewer.js +36 -36
- package/cjs/ui/FileViewer.js.map +1 -1
- package/cjs/ui/Icon.js +447 -623
- package/cjs/ui/Icon.js.map +1 -1
- package/cjs/ui/IconButton.js +20 -31
- package/cjs/ui/IconButton.js.map +1 -1
- package/cjs/ui/ImageRenderer.js +34 -43
- package/cjs/ui/ImageRenderer.js.map +1 -1
- package/cjs/ui/Input.js +16 -16
- package/cjs/ui/Input.js.map +1 -1
- package/cjs/ui/Label.js +2 -2
- package/cjs/ui/LinkLabel.js +4 -3
- package/cjs/ui/LinkLabel.js.map +1 -1
- package/cjs/ui/Loader.js +10 -12
- package/cjs/ui/Loader.js.map +1 -1
- package/cjs/ui/MentionLabel.js +58 -65
- package/cjs/ui/MentionLabel.js.map +1 -1
- package/cjs/ui/MentionUserLabel.js +12 -10
- package/cjs/ui/MentionUserLabel.js.map +1 -1
- package/cjs/ui/MessageContent.js +216 -550
- package/cjs/ui/MessageContent.js.map +1 -1
- package/cjs/ui/MessageInput.js +392 -119
- package/cjs/ui/MessageInput.js.map +1 -1
- package/cjs/ui/MessageItemMenu.js +83 -83
- package/cjs/ui/MessageItemMenu.js.map +1 -1
- package/cjs/ui/MessageItemReactionMenu.js +58 -62
- package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
- package/cjs/ui/MessageSearchFileItem.js +56 -51
- package/cjs/ui/MessageSearchFileItem.js.map +1 -1
- package/cjs/ui/MessageSearchItem.js +42 -41
- package/cjs/ui/MessageSearchItem.js.map +1 -1
- package/cjs/ui/MessageStatus.js +10 -11
- package/cjs/ui/MessageStatus.js.map +1 -1
- package/cjs/ui/Modal.js +52 -46
- package/cjs/ui/Modal.js.map +1 -1
- package/cjs/ui/MutedAvatarOverlay.js +10 -10
- package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
- package/cjs/ui/OGMessageItemBody.js +67 -63
- package/cjs/ui/OGMessageItemBody.js.map +1 -1
- package/cjs/ui/OpenChannelAdminMessage.js +8 -7
- package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
- package/cjs/ui/OpenChannelAvatar.js +18 -17
- package/cjs/ui/OpenChannelAvatar.js.map +1 -1
- package/cjs/ui/OpenchannelConversationHeader.js +17 -13
- package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
- package/cjs/ui/OpenchannelFileMessage.js +140 -151
- package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
- package/cjs/ui/OpenchannelOGMessage.js +204 -233
- package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
- package/cjs/ui/OpenchannelThumbnailMessage.js +215 -222
- package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/cjs/ui/OpenchannelUserMessage.js +168 -178
- package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
- package/cjs/ui/PlaceHolder.js +5 -6
- package/cjs/ui/PlaceHolder.js.map +1 -1
- package/cjs/ui/PlaybackTime.js +35 -0
- package/cjs/ui/PlaybackTime.js.map +1 -0
- package/cjs/ui/ProgressBar.js +40 -0
- package/cjs/ui/ProgressBar.js.map +1 -0
- package/cjs/ui/QuoteMessage.js +50 -44
- package/cjs/ui/QuoteMessage.js.map +1 -1
- package/cjs/ui/QuoteMessageInput.js +31 -29
- package/cjs/ui/QuoteMessageInput.js.map +1 -1
- package/cjs/ui/ReactionBadge.js +13 -21
- package/cjs/ui/ReactionBadge.js.map +1 -1
- package/cjs/ui/ReactionButton.js +30 -27
- package/cjs/ui/ReactionButton.js.map +1 -1
- package/cjs/ui/SortByRow.js +14 -18
- package/cjs/ui/SortByRow.js.map +1 -1
- package/cjs/ui/TextButton.js +13 -21
- package/cjs/ui/TextButton.js.map +1 -1
- package/cjs/ui/TextMessageItemBody.js +41 -48
- package/cjs/ui/TextMessageItemBody.js.map +1 -1
- package/cjs/ui/ThreadReplies.js +25 -22
- package/cjs/ui/ThreadReplies.js.map +1 -1
- package/cjs/ui/ThumbnailMessageItemBody.js +36 -45
- package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/cjs/ui/Toggle.js +202 -0
- package/cjs/ui/Toggle.js.map +1 -0
- package/cjs/ui/Tooltip.js +8 -9
- package/cjs/ui/Tooltip.js.map +1 -1
- package/cjs/ui/TooltipWrapper.js +17 -20
- package/cjs/ui/TooltipWrapper.js.map +1 -1
- package/cjs/ui/UnknownMessageItemBody.js +21 -22
- package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
- package/cjs/ui/UserListItem.js +76 -76
- package/cjs/ui/UserListItem.js.map +1 -1
- package/cjs/ui/UserProfile.js +31 -29
- package/cjs/ui/UserProfile.js.map +1 -1
- package/cjs/ui/VoiceMessageItemBody.js +119 -0
- package/cjs/ui/VoiceMessageItemBody.js.map +1 -0
- package/cjs/ui/VoiceMessgeInput.js +22 -0
- package/cjs/ui/VoiceMessgeInput.js.map +1 -0
- package/cjs/ui/Word.js +31 -39
- package/cjs/ui/Word.js.map +1 -1
- package/cjs/useDirtyGetMentions-792a65af.js +77 -0
- package/cjs/useDirtyGetMentions-792a65af.js.map +1 -0
- package/cjs/useLongPress-50d2028a.js +87 -0
- package/cjs/useLongPress-50d2028a.js.map +1 -0
- package/cjs/useSendbirdStateContext.js +2 -3
- package/cjs/useSendbirdStateContext.js.map +1 -1
- package/cjs/utils/message/getOutgoingMessageState.js +16 -21
- package/cjs/utils/message/getOutgoingMessageState.js.map +1 -1
- package/cjs/utils/message/isVoiceMessage.js +12 -0
- package/cjs/utils/message/isVoiceMessage.js.map +1 -0
- package/cjs/{utils-374d57b4.js → utils-85ff9137.js} +1 -1
- package/cjs/{utils-374d57b4.js.map → utils-85ff9137.js.map} +1 -1
- package/cjs/{utils-5f86a394.js → utils-8ce3a247.js} +3 -7
- package/cjs/{utils-5f86a394.js.map → utils-8ce3a247.js.map} +1 -1
- package/cjs/utils-c2543c4d.js +31 -0
- package/cjs/utils-c2543c4d.js.map +1 -0
- package/cjs/utils-d2648e7d.js +35 -0
- package/cjs/utils-d2648e7d.js.map +1 -0
- package/cjs/uuid-97ce2508.js +15 -0
- package/cjs/{uuid-2475ef6c.js.map → uuid-97ce2508.js.map} +1 -1
- package/cjs/withSendbird.js +5 -6
- package/cjs/withSendbird.js.map +1 -1
- package/{color-163ba24d.js → color-04427a41.js} +5 -14
- package/{color-163ba24d.js.map → color-04427a41.js.map} +1 -1
- package/{compareIds-ef41eb2c.js → compareIds-e75af4f9.js} +5 -6
- package/compareIds-e75af4f9.js.map +1 -0
- package/{const-76d87f47.js → const-8d418b81.js} +4 -4
- package/const-8d418b81.js.map +1 -0
- package/const-ec18f7f8.js +13 -0
- package/const-ec18f7f8.js.map +1 -0
- package/consts-01a1e3c0.js +4 -0
- package/consts-01a1e3c0.js.map +1 -0
- package/consts-4d93ce13.js +4 -0
- package/consts-4d93ce13.js.map +1 -0
- package/consts-a5106683.js +4 -0
- package/consts-a5106683.js.map +1 -0
- package/consts-e6fdc559.js +27 -0
- package/consts-e6fdc559.js.map +1 -0
- package/context-6272efa3.js +13 -0
- package/{context-10475c77.js.map → context-6272efa3.js.map} +1 -1
- package/dist/index.css +1847 -1394
- package/dist/index.css.map +1 -1
- package/handlers/OpenChannelHandler.js.map +1 -1
- package/handlers/SessionHandler.js.map +1 -1
- package/{index-12754b45.js → index-19daf00f.js} +55 -63
- package/index-19daf00f.js.map +1 -0
- package/index-24f4354d.js +450 -0
- package/index-24f4354d.js.map +1 -0
- package/index-2d858f6d.js +187 -0
- package/index-2d858f6d.js.map +1 -0
- package/{index-232388fa.js → index-32a56033.js} +29 -37
- package/index-32a56033.js.map +1 -0
- package/index-36d49e08.js +154 -0
- package/index-36d49e08.js.map +1 -0
- package/{index-2f346069.js → index-5819e39d.js} +1 -1
- package/index-5819e39d.js.map +1 -0
- package/index-7ff2c073.js +360 -0
- package/index-7ff2c073.js.map +1 -0
- package/index-9a62272f.js +51 -0
- package/index-9a62272f.js.map +1 -0
- package/{index-4ebfc7a7.js → index-a4552c13.js} +1 -1
- package/{index-4ebfc7a7.js.map → index-a4552c13.js.map} +1 -1
- package/index-b3c3e1aa.js +76 -0
- package/index-b3c3e1aa.js.map +1 -0
- package/index-c589f349.js +540 -0
- package/index-c589f349.js.map +1 -0
- package/{index-2784bdd8.js → index-d88e3ef9.js} +11 -25
- package/index-d88e3ef9.js.map +1 -0
- package/{index-751f97ce.js → index-dcaf3cb8.js} +57 -4
- package/index-dcaf3cb8.js.map +1 -0
- package/{index-a02da5bd.js → index-dd8e8ea1.js} +2 -2
- package/{index-a02da5bd.js.map → index-dd8e8ea1.js.map} +1 -1
- package/index-f4374646.js +320 -0
- package/index-f4374646.js.map +1 -0
- package/{index-aea7b7d6.js → index-fe7ed4c0.js} +39 -48
- package/index-fe7ed4c0.js.map +1 -0
- package/{index-3c013a28.js → index-fea4f7d3.js} +2 -2
- package/{index-3c013a28.js.map → index-fea4f7d3.js.map} +1 -1
- package/index.d.ts +176 -124
- package/index.js +84 -63
- package/index.js.map +1 -1
- package/index.module-1ba8586e.js +4 -0
- package/index.module-1ba8586e.js.map +1 -0
- package/lame.all.js +2537 -0
- package/lame.all.js.map +1 -0
- package/package.json +62 -41
- package/resolvedReplyType-94a089b3.js +29 -0
- package/resolvedReplyType-94a089b3.js.map +1 -0
- package/sendbirdSelectors.js +307 -417
- package/sendbirdSelectors.js.map +1 -1
- package/{stringSet-9ae71b7d.js → stringSet-3649b375.js} +112 -90
- package/stringSet-3649b375.js.map +1 -0
- package/tokenize-053e921e.js +159 -0
- package/tokenize-053e921e.js.map +1 -0
- package/topics-d0dcd2f2.js +16 -0
- package/topics-d0dcd2f2.js.map +1 -0
- package/types-54edb45d.js +15 -0
- package/types-54edb45d.js.map +1 -0
- package/ui/Accordion.js +21 -24
- package/ui/Accordion.js.map +1 -1
- package/ui/AccordionGroup.js +10 -13
- package/ui/AccordionGroup.js.map +1 -1
- package/ui/AdminMessage.js +10 -13
- package/ui/AdminMessage.js.map +1 -1
- package/ui/Avatar.js +57 -79
- package/ui/Avatar.js.map +1 -1
- package/ui/Badge.js +16 -15
- package/ui/Badge.js.map +1 -1
- package/ui/BottomSheet.js +14 -12
- package/ui/BottomSheet.js.map +1 -1
- package/ui/Button.js +20 -35
- package/ui/Button.js.map +1 -1
- package/ui/ChannelAvatar.js +38 -41
- package/ui/ChannelAvatar.js.map +1 -1
- package/ui/Checkbox.js +11 -13
- package/ui/Checkbox.js.map +1 -1
- package/ui/ConnectionStatus.js +7 -5
- package/ui/ConnectionStatus.js.map +1 -1
- package/ui/ContextMenu.js +176 -200
- package/ui/ContextMenu.js.map +1 -1
- package/ui/DateSeparator.js +12 -14
- package/ui/DateSeparator.js.map +1 -1
- package/ui/EmojiReactions.js +300 -108
- package/ui/EmojiReactions.js.map +1 -1
- package/ui/FileMessageItemBody.js +22 -23
- package/ui/FileMessageItemBody.js.map +1 -1
- package/ui/FileViewer.js +36 -36
- package/ui/FileViewer.js.map +1 -1
- package/ui/Icon.js +448 -622
- package/ui/Icon.js.map +1 -1
- package/ui/IconButton.js +20 -31
- package/ui/IconButton.js.map +1 -1
- package/ui/ImageRenderer.js +34 -43
- package/ui/ImageRenderer.js.map +1 -1
- package/ui/Input.js +16 -16
- package/ui/Input.js.map +1 -1
- package/ui/Label.js +2 -2
- package/ui/LinkLabel.js +4 -3
- package/ui/LinkLabel.js.map +1 -1
- package/ui/Loader.js +10 -12
- package/ui/Loader.js.map +1 -1
- package/ui/MentionLabel.js +58 -65
- package/ui/MentionLabel.js.map +1 -1
- package/ui/MentionUserLabel.js +12 -10
- package/ui/MentionUserLabel.js.map +1 -1
- package/ui/MessageContent.js +219 -553
- package/ui/MessageContent.js.map +1 -1
- package/ui/MessageInput.js +392 -120
- package/ui/MessageInput.js.map +1 -1
- package/ui/MessageItemMenu.js +83 -83
- package/ui/MessageItemMenu.js.map +1 -1
- package/ui/MessageItemReactionMenu.js +58 -62
- package/ui/MessageItemReactionMenu.js.map +1 -1
- package/ui/MessageSearchFileItem.js +55 -50
- package/ui/MessageSearchFileItem.js.map +1 -1
- package/ui/MessageSearchItem.js +41 -40
- package/ui/MessageSearchItem.js.map +1 -1
- package/ui/MessageStatus.js +10 -11
- package/ui/MessageStatus.js.map +1 -1
- package/ui/Modal.js +52 -46
- package/ui/Modal.js.map +1 -1
- package/ui/MutedAvatarOverlay.js +10 -10
- package/ui/MutedAvatarOverlay.js.map +1 -1
- package/ui/OGMessageItemBody.js +68 -64
- package/ui/OGMessageItemBody.js.map +1 -1
- package/ui/OpenChannelAdminMessage.js +8 -7
- package/ui/OpenChannelAdminMessage.js.map +1 -1
- package/ui/OpenChannelAvatar.js +18 -17
- package/ui/OpenChannelAvatar.js.map +1 -1
- package/ui/OpenchannelConversationHeader.js +17 -13
- package/ui/OpenchannelConversationHeader.js.map +1 -1
- package/ui/OpenchannelFileMessage.js +140 -151
- package/ui/OpenchannelFileMessage.js.map +1 -1
- package/ui/OpenchannelOGMessage.js +204 -233
- package/ui/OpenchannelOGMessage.js.map +1 -1
- package/ui/OpenchannelThumbnailMessage.js +215 -222
- package/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/ui/OpenchannelUserMessage.js +168 -178
- package/ui/OpenchannelUserMessage.js.map +1 -1
- package/ui/PlaceHolder.js +5 -6
- package/ui/PlaceHolder.js.map +1 -1
- package/ui/PlaybackTime.js +26 -0
- package/ui/PlaybackTime.js.map +1 -0
- package/ui/ProgressBar.js +30 -0
- package/ui/ProgressBar.js.map +1 -0
- package/ui/QuoteMessage.js +50 -44
- package/ui/QuoteMessage.js.map +1 -1
- package/ui/QuoteMessageInput.js +31 -29
- package/ui/QuoteMessageInput.js.map +1 -1
- package/ui/ReactionBadge.js +13 -21
- package/ui/ReactionBadge.js.map +1 -1
- package/ui/ReactionButton.js +30 -27
- package/ui/ReactionButton.js.map +1 -1
- package/ui/SortByRow.js +14 -18
- package/ui/SortByRow.js.map +1 -1
- package/ui/TextButton.js +13 -21
- package/ui/TextButton.js.map +1 -1
- package/ui/TextMessageItemBody.js +41 -48
- package/ui/TextMessageItemBody.js.map +1 -1
- package/ui/ThreadReplies.js +25 -22
- package/ui/ThreadReplies.js.map +1 -1
- package/ui/ThumbnailMessageItemBody.js +36 -45
- package/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/ui/Toggle.js +191 -0
- package/ui/Toggle.js.map +1 -0
- package/ui/Tooltip.js +8 -9
- package/ui/Tooltip.js.map +1 -1
- package/ui/TooltipWrapper.js +17 -20
- package/ui/TooltipWrapper.js.map +1 -1
- package/ui/UnknownMessageItemBody.js +21 -22
- package/ui/UnknownMessageItemBody.js.map +1 -1
- package/ui/UserListItem.js +76 -76
- package/ui/UserListItem.js.map +1 -1
- package/ui/UserProfile.js +31 -29
- package/ui/UserProfile.js.map +1 -1
- package/ui/VoiceMessageItemBody.js +110 -0
- package/ui/VoiceMessageItemBody.js.map +1 -0
- package/ui/VoiceMessgeInput.js +14 -0
- package/ui/VoiceMessgeInput.js.map +1 -0
- package/ui/Word.js +31 -39
- package/ui/Word.js.map +1 -1
- package/useDirtyGetMentions-b9a9c21b.js +75 -0
- package/useDirtyGetMentions-b9a9c21b.js.map +1 -0
- package/useLongPress-5e28b292.js +85 -0
- package/useLongPress-5e28b292.js.map +1 -0
- package/useSendbirdStateContext.js +2 -3
- package/useSendbirdStateContext.js.map +1 -1
- package/utils/message/getOutgoingMessageState.js +9 -15
- package/utils/message/getOutgoingMessageState.js.map +1 -1
- package/utils/message/isVoiceMessage.js +8 -0
- package/utils/message/isVoiceMessage.js.map +1 -0
- package/utils-1f5c8b6c.js +29 -0
- package/utils-1f5c8b6c.js.map +1 -0
- package/{utils-ddb0df4c.js → utils-712b81f7.js} +3 -7
- package/{utils-ddb0df4c.js.map → utils-712b81f7.js.map} +1 -1
- package/{utils-ea66f822.js → utils-a1f2aa01.js} +1 -1
- package/{utils-ea66f822.js.map → utils-a1f2aa01.js.map} +1 -1
- package/utils-cbae9afc.js +31 -0
- package/utils-cbae9afc.js.map +1 -0
- package/uuid-8c96bee0.js +13 -0
- package/{uuid-7e004f47.js.map → uuid-8c96bee0.js.map} +1 -1
- package/withSendbird.js +5 -6
- package/withSendbird.js.map +1 -1
- package/ChannelListProvider-1d36e2e9.js.map +0 -1
- package/ChannelProvider-289cd35f.js.map +0 -1
- package/CreateChannelProvider-72b655e9.js +0 -55
- package/CreateChannelProvider-72b655e9.js.map +0 -1
- package/LocalizationContext-289c1917.js +0 -22
- package/MediaQueryContext-273d29f6.js +0 -90
- package/MediaQueryContext-273d29f6.js.map +0 -1
- package/MemberList-7ad0fa0b.js +0 -435
- package/MemberList-7ad0fa0b.js.map +0 -1
- package/NotificationChannel/components/NotificationChannelUI.js +0 -119
- package/NotificationChannel/components/NotificationChannelUI.js.map +0 -1
- package/NotificationChannel/components/NotificationList.js +0 -111
- package/NotificationChannel/components/NotificationList.js.map +0 -1
- package/NotificationChannel/components/NotificationMessageWrap.js +0 -136
- package/NotificationChannel/components/NotificationMessageWrap.js.map +0 -1
- package/NotificationChannel/context.js +0 -12
- package/NotificationChannel.js +0 -58
- package/NotificationChannel.js.map +0 -1
- package/NotificationChannelProvider-ad556c64.js +0 -535
- package/NotificationChannelProvider-ad556c64.js.map +0 -1
- package/OpenChannelListProvider-0febf8b2.js +0 -434
- package/OpenChannelListProvider-0febf8b2.js.map +0 -1
- package/OpenChannelProvider-c254c663.js +0 -2000
- package/OpenChannelProvider-c254c663.js.map +0 -1
- package/RemoveMessageModal-d6cbf9fa.js +0 -31
- package/RemoveMessageModal-d6cbf9fa.js.map +0 -1
- package/ThreadProvider-8696ef31.js +0 -1644
- package/ThreadProvider-8696ef31.js.map +0 -1
- package/_rollupPluginBabelHelpers-519f674b.js.map +0 -1
- package/actionTypes-9f87e87f.js +0 -6
- package/actionTypes-9f87e87f.js.map +0 -1
- package/cjs/ChannelListProvider-0de52d2b.js.map +0 -1
- package/cjs/ChannelProvider-fc58e60e.js.map +0 -1
- package/cjs/CreateChannelProvider-a82d20f4.js +0 -62
- package/cjs/CreateChannelProvider-a82d20f4.js.map +0 -1
- package/cjs/MediaQueryContext-4711a81f.js +0 -97
- package/cjs/MediaQueryContext-4711a81f.js.map +0 -1
- package/cjs/MemberList-b2623166.js +0 -441
- package/cjs/MemberList-b2623166.js.map +0 -1
- package/cjs/NotificationChannel/components/NotificationChannelUI.js +0 -125
- package/cjs/NotificationChannel/components/NotificationChannelUI.js.map +0 -1
- package/cjs/NotificationChannel/components/NotificationList.js +0 -117
- package/cjs/NotificationChannel/components/NotificationList.js.map +0 -1
- package/cjs/NotificationChannel/components/NotificationMessageWrap.js +0 -142
- package/cjs/NotificationChannel/components/NotificationMessageWrap.js.map +0 -1
- package/cjs/NotificationChannel/context.js +0 -21
- package/cjs/NotificationChannel.js +0 -64
- package/cjs/NotificationChannel.js.map +0 -1
- package/cjs/NotificationChannelProvider-2cdc7ff4.js +0 -543
- package/cjs/NotificationChannelProvider-2cdc7ff4.js.map +0 -1
- package/cjs/OpenChannelListProvider-60bc3c69.js +0 -443
- package/cjs/OpenChannelListProvider-60bc3c69.js.map +0 -1
- package/cjs/OpenChannelProvider-3ed4eb6e.js +0 -2009
- package/cjs/OpenChannelProvider-3ed4eb6e.js.map +0 -1
- package/cjs/RemoveMessageModal-9169766a.js.map +0 -1
- package/cjs/ThreadProvider-389f5031.js +0 -1653
- package/cjs/ThreadProvider-389f5031.js.map +0 -1
- package/cjs/_rollupPluginBabelHelpers-fed1e122.js.map +0 -1
- package/cjs/actionTypes-2f90e726.js +0 -10
- package/cjs/actionTypes-2f90e726.js.map +0 -1
- package/cjs/color-f47044b3.js.map +0 -1
- package/cjs/compareIds-4124b297.js.map +0 -1
- package/cjs/const-015e5589.js +0 -20
- package/cjs/const-015e5589.js.map +0 -1
- package/cjs/const-fd64914b.js.map +0 -1
- package/cjs/index-30c97863.js +0 -194
- package/cjs/index-30c97863.js.map +0 -1
- package/cjs/index-3a4f8219.js.map +0 -1
- package/cjs/index-40e4653a.js +0 -59
- package/cjs/index-40e4653a.js.map +0 -1
- package/cjs/index-5d5497c2.js.map +0 -1
- package/cjs/index-62c1bdfc.js +0 -701
- package/cjs/index-62c1bdfc.js.map +0 -1
- package/cjs/index-9ca07037.js.map +0 -1
- package/cjs/index-9f3670d0.js +0 -360
- package/cjs/index-9f3670d0.js.map +0 -1
- package/cjs/index-abbc8024.js.map +0 -1
- package/cjs/index-c475c3c8.js.map +0 -1
- package/cjs/index-c5cd589d.js.map +0 -1
- package/cjs/stringSet-3e6167ef.js.map +0 -1
- package/cjs/topics-56842e14.js +0 -22
- package/cjs/topics-56842e14.js.map +0 -1
- package/cjs/tslib.es6-b8ba50ef.js +0 -110
- package/cjs/tslib.es6-b8ba50ef.js.map +0 -1
- package/cjs/useLongPress-99c66f7f.js +0 -118
- package/cjs/useLongPress-99c66f7f.js.map +0 -1
- package/cjs/utils-9adfd244.js +0 -38
- package/cjs/utils-9adfd244.js.map +0 -1
- package/cjs/utils-f6a96ebf.js +0 -32
- package/cjs/utils-f6a96ebf.js.map +0 -1
- package/cjs/uuid-2475ef6c.js +0 -19
- package/compareIds-ef41eb2c.js.map +0 -1
- package/const-76d87f47.js.map +0 -1
- package/const-da6f3d34.js +0 -14
- package/const-da6f3d34.js.map +0 -1
- package/context-10475c77.js +0 -12
- package/index-12754b45.js.map +0 -1
- package/index-1e46e582.js +0 -179
- package/index-1e46e582.js.map +0 -1
- package/index-232388fa.js.map +0 -1
- package/index-2784bdd8.js.map +0 -1
- package/index-2f346069.js.map +0 -1
- package/index-4637b0de.js +0 -57
- package/index-4637b0de.js.map +0 -1
- package/index-4900e890.js +0 -353
- package/index-4900e890.js.map +0 -1
- package/index-751f97ce.js.map +0 -1
- package/index-855ef33d.js +0 -662
- package/index-855ef33d.js.map +0 -1
- package/index-aea7b7d6.js.map +0 -1
- package/stringSet-9ae71b7d.js.map +0 -1
- package/topics-e2963bba.js +0 -13
- package/topics-e2963bba.js.map +0 -1
- package/tslib.es6-72df3331.js +0 -104
- package/tslib.es6-72df3331.js.map +0 -1
- package/useLongPress-1a777e9e.js +0 -116
- package/useLongPress-1a777e9e.js.map +0 -1
- package/utils-2976f2c1.js +0 -30
- package/utils-2976f2c1.js.map +0 -1
- package/utils-6b69fb18.js +0 -34
- package/utils-6b69fb18.js.map +0 -1
- package/uuid-7e004f47.js +0 -17
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SuggestedMentionList.js","sources":["../../../../src/smart-components/Channel/components/SuggestedMentionList/SuggestedUserMentionItem.tsx","../../../../src/smart-components/Channel/components/SuggestedMentionList/index.tsx"],"sourcesContent":["import React, { useContext, useEffect, useMemo, useRef } from 'react';\nimport type { Member } from '@sendbird/chat/groupChannel';\nimport type { User } from '@sendbird/chat';\n\nimport Avatar from '../../../../ui/Avatar';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { MentionItemUIEvent } from '../../../..';\nimport uuidv4 from '../../../../utils/uuid';\n\ninterface SuggestedUserMentionItemProps {\n member: User | Member;\n isFocused?: boolean;\n parentScrollRef?: React.RefObject<HTMLDivElement>;\n onClick?: (props: MentionItemUIEvent) => void;\n onMouseOver?: (props: MentionItemUIEvent) => void;\n onMouseMove?: (props: MentionItemUIEvent) => void;\n renderUserMentionItem?: (props: { user: User | Member }) => JSX.Element;\n}\n\nfunction SuggestedUserMentionItem(props: SuggestedUserMentionItemProps): JSX.Element {\n const {\n member,\n isFocused = false,\n parentScrollRef,\n onClick,\n onMouseOver,\n onMouseMove,\n renderUserMentionItem,\n } = props;\n const scrollRef = useRef(null);\n const { stringSet = {} } = useContext(LocalizationContext);\n useEffect(() => {\n if (isFocused) {\n if (parentScrollRef?.current?.scrollTop >= scrollRef?.current?.offsetTop) {\n scrollRef?.current?.scrollIntoView({ block: \"nearest\", inline: \"nearest\" });\n } else if (parentScrollRef?.current?.scrollTop + parentScrollRef?.current?.clientHeight <= scrollRef?.current?.offsetTop) {\n scrollRef?.current?.scrollIntoView({ block: \"nearest\", inline: \"nearest\" });\n }\n }\n }, [isFocused]);\n const customMentionItem = useMemo(() => {\n if (renderUserMentionItem) {\n return (\n <div\n className=\"sendbird-mention-suggest-list__user-item\"\n onClick={(event) => onClick?.({ event, member: (member as Member), itemRef: scrollRef })}\n onMouseOver={(event) => onMouseOver?.({ event, member: (member as Member), itemRef: scrollRef })}\n onMouseMove={(event) => onMouseMove?.({ event, member: (member as Member), itemRef: scrollRef })}\n key={member?.userId || uuidv4()}\n ref={scrollRef}\n >\n {renderUserMentionItem({ user: member })}\n </div>\n );\n }\n }, [renderUserMentionItem]);\n if (customMentionItem) {\n return customMentionItem;\n }\n return (\n <div\n className={`sendbird-mention-suggest-list__user-item ${isFocused ? 'focused' : ''}`}\n onClick={(event) => onClick?.({ event, member: (member as Member), itemRef: scrollRef })}\n onMouseOver={(event) => onMouseOver?.({ event, member: (member as Member), itemRef: scrollRef })}\n onMouseMove={(event) => onMouseMove?.({ event, member: (member as Member), itemRef: scrollRef })}\n key={member?.userId || uuidv4()}\n ref={scrollRef}\n >\n <Avatar\n className=\"sendbird-mention-suggest-list__user-item__avatar\"\n src={member?.profileUrl}\n alt=\"user-profile\"\n width=\"24px\"\n height=\"24px\"\n />\n <Label\n className=\"sendbird-mention-suggest-list__user-item__nickname\"\n type={LabelTypography.SUBTITLE_2}\n color={member?.nickname ? LabelColors.ONBACKGROUND_1 : LabelColors.ONBACKGROUND_3}\n >\n {member?.nickname || stringSet?.MENTION_NAME__NO_NAME}\n </Label>\n <Label\n className=\"sendbird-mention-suggest-list__user-item__user-id\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {member?.userId}\n </Label>\n </div>\n );\n}\n\nexport default SuggestedUserMentionItem;\n","import './index.scss';\nimport React, { useState, useEffect, useContext, useRef } from 'react';\nimport type { User } from '@sendbird/chat';\nimport type { Member } from '@sendbird/chat/groupChannel';\n\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport SuggestedUserMentionItem from './SuggestedUserMentionItem';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { MAX_USER_MENTION_COUNT, MAX_USER_SUGGESTION_COUNT, USER_MENTION_TEMP_CHAR } from '../../context/const';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport uuidv4 from '../../../../utils/uuid';\nimport { useThreadContext } from '../../../Thread/context/ThreadProvider';\n\nexport interface SuggestedMentionListProps {\n className?: string;\n targetNickname: string;\n memberListQuery?: Record<string, string>;\n onUserItemClick?: (member: User) => void;\n onFocusItemChange?: (member: User) => void;\n onFetchUsers?: (users: Array<User>) => void;\n renderUserMentionItem?: (props: { user: User }) => JSX.Element;\n ableAddMention: boolean;\n maxMentionCount?: number;\n maxSuggestionCount?: number;\n inputEvent?: React.KeyboardEvent<HTMLDivElement>;\n}\n\nconst DEBOUNCING_TIME = 300;\n\nfunction SuggestedMentionList(props: SuggestedMentionListProps): JSX.Element {\n const {\n className,\n targetNickname = '',\n // memberListQuery,\n onUserItemClick,\n onFocusItemChange,\n onFetchUsers,\n renderUserMentionItem,\n inputEvent,\n ableAddMention = true,\n maxMentionCount = MAX_USER_MENTION_COUNT,\n maxSuggestionCount = MAX_USER_SUGGESTION_COUNT,\n } = props;\n const currentGroupChannel = useChannelContext?.()?.currentGroupChannel;\n const currentChannel = useThreadContext?.()?.currentChannel;\n const channelInstance = currentGroupChannel || currentChannel;\n const { config, stores } = useSendbirdStateContext();\n const { logger } = config;\n const currentUserId = stores?.sdkStore?.sdk?.currentUser?.userId || '';\n const scrollRef = useRef(null);\n const { stringSet } = useContext(LocalizationContext);\n const [timer, setTimer] = useState(null);\n const [searchString, setSearchString] = useState('');\n const [lastSearchString, setLastSearchString] = useState('');\n const [currentUser, setCurrentUser] = useState<User>(null);\n const [currentMemberList, setCurrentMemberList] = useState<Array<Member>>([]);\n\n useEffect(() => {\n clearTimeout(timer);\n setTimer(\n setTimeout(() => {\n setSearchString(targetNickname);\n }, DEBOUNCING_TIME)\n );\n }, [targetNickname]);\n\n useEffect(() => {\n if (inputEvent?.key === MessageInputKeys.Enter) {\n if (currentMemberList.length > 0) {\n onUserItemClick(currentUser);\n }\n }\n if (inputEvent?.key === MessageInputKeys.ArrowUp) {\n const currentUserIndex = currentMemberList.findIndex((member) => (\n member?.userId === currentUser?.userId\n ));\n if (0 < currentUserIndex) {\n setCurrentUser(currentMemberList[currentUserIndex - 1]);\n onFocusItemChange(currentMemberList[currentUserIndex - 1]);\n }\n }\n if (inputEvent?.key === MessageInputKeys.ArrowDown) {\n const currentUserIndex = currentMemberList.findIndex((member) => (\n member?.userId === currentUser?.userId\n ));\n if (currentUserIndex < currentMemberList.length - 1) {\n setCurrentUser(currentMemberList[currentUserIndex + 1]);\n onFocusItemChange(currentMemberList[currentUserIndex + 1]);\n }\n }\n }, [inputEvent]);\n\n /* Fetch member list */\n useEffect(() => {\n if (!channelInstance?.createMemberListQuery) {\n logger.warning('SuggestedMentionList: Creating member list query failed');\n return;\n }\n if (lastSearchString && searchString.indexOf(lastSearchString) === 0 && currentMemberList.length === 0) {\n // Don't need to request query again\n return;\n }\n\n const query = channelInstance?.createMemberListQuery({\n limit: maxSuggestionCount + 1, // because current user could be included\n nicknameStartsWithFilter: searchString.slice(USER_MENTION_TEMP_CHAR.length),\n });\n // Add member list query for customization\n query.next()\n .then((memberList) => {\n const suggestingMembers = memberList\n .filter((member) => currentUserId !== member?.userId)\n .slice(0, maxSuggestionCount);\n if (suggestingMembers.length < 1) {\n logger.info('SuggestedMentionList: Fetched member list is empty');\n } else {\n logger.info('SuggestedMentionList: Fetching member list succeeded', { memberListQuery: query, memberList: suggestingMembers });\n setCurrentUser(suggestingMembers[0]);\n }\n setLastSearchString(searchString);\n onFetchUsers(suggestingMembers);\n setCurrentMemberList(suggestingMembers);\n })\n .catch((error) => {\n if (error) {\n logger.error('SuggestedMentionList: Fetching member list failed', error);\n }\n });\n }, [channelInstance?.url, searchString]);\n\n if (!ableAddMention && currentMemberList.length === 0) {\n return null;\n }\n\n return (\n <div\n className={`sendbird-mention-suggest-list ${className}`}\n key=\"sendbird-mention-suggest-list\"\n ref={scrollRef}\n >\n {\n ableAddMention && currentMemberList?.map((member) => (\n <SuggestedUserMentionItem\n key={member?.userId || uuidv4()}\n member={member}\n isFocused={member?.userId === currentUser?.userId}\n parentScrollRef={scrollRef}\n onClick={({ member }) => {\n onUserItemClick(member);\n }}\n onMouseOver={({ member }) => {\n setCurrentUser(member);\n }}\n renderUserMentionItem={renderUserMentionItem}\n />\n ))\n }\n {\n !ableAddMention && (\n <div className=\"sendbird-mention-suggest-list__notice-item\">\n <Icon\n className=\"sendbird-mention-suggest-list__notice-item__icon\"\n type={IconTypes.INFO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"20px\"\n height=\"20px\"\n />\n <Label\n className=\"sendbird-mention-suggest-list__notice-item__text\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {stringSet.MENTION_COUNT__OVER_LIMIT.replace('%d', maxMentionCount)}\n </Label>\n </div>\n )\n }\n </div>\n );\n}\n\nexport default SuggestedMentionList;\n"],"names":["SuggestedUserMentionItem","props","member","_a","isFocused","parentScrollRef","onClick","onMouseOver","onMouseMove","renderUserMentionItem","scrollRef","useRef","_b","useContext","LocalizationContext","stringSet","useEffect","current","scrollTop","offsetTop","_c","scrollIntoView","block","inline","_d","_e","clientHeight","_f","_g","customMentionItem","useMemo","React","event","itemRef","userId","uuidv4","user","concat","Avatar","profileUrl","Label","LabelTypography","SUBTITLE_2","nickname","LabelColors","ONBACKGROUND_1","ONBACKGROUND_3","MENTION_NAME__NO_NAME","ONBACKGROUND_2","DEBOUNCING_TIME","SuggestedMentionList","className","targetNickname","onUserItemClick","onFocusItemChange","onFetchUsers","inputEvent","ableAddMention","_h","maxMentionCount","MAX_USER_MENTION_COUNT","_j","maxSuggestionCount","MAX_USER_SUGGESTION_COUNT","currentGroupChannel","useChannelContext","currentChannel","useThreadContext","channelInstance","_k","useSendbirdStateContext","config","stores","logger","currentUserId","sdkStore","sdk","currentUser","_l","useState","timer","setTimer","_m","searchString","setSearchString","_o","lastSearchString","setLastSearchString","_p","setCurrentUser","_q","currentMemberList","setCurrentMemberList","clearTimeout","setTimeout","key","MessageInputKeys","Enter","length","ArrowUp","currentUserIndex","findIndex","ArrowDown","createMemberListQuery","warning","indexOf","query","limit","nicknameStartsWithFilter","slice","USER_MENTION_TEMP_CHAR","next","then","memberList","suggestingMembers","filter","info","memberListQuery","catch","error","url","map","Icon","IconTypes","INFO","IconColors","ON_BACKGROUND_2","MENTION_COUNT__OVER_LIMIT","replace"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SuggestedMentionList.js","sources":["../../../../src/modules/Channel/components/SuggestedMentionList/SuggestedUserMentionItem.tsx","../../../../src/modules/Channel/components/SuggestedMentionList/index.tsx"],"sourcesContent":["import React, { useContext, useEffect, useMemo, useRef } from 'react';\nimport type { Member } from '@sendbird/chat/groupChannel';\nimport type { User } from '@sendbird/chat';\n\nimport Avatar from '../../../../ui/Avatar';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { MentionItemUIEvent } from '../../../..';\nimport uuidv4 from '../../../../utils/uuid';\n\ninterface SuggestedUserMentionItemProps {\n member: User | Member;\n isFocused?: boolean;\n parentScrollRef?: React.RefObject<HTMLDivElement>;\n onClick?: (props: MentionItemUIEvent) => void;\n onMouseOver?: (props: MentionItemUIEvent) => void;\n onMouseMove?: (props: MentionItemUIEvent) => void;\n renderUserMentionItem?: (props: { user: User | Member }) => JSX.Element;\n}\n\nfunction SuggestedUserMentionItem(props: SuggestedUserMentionItemProps): JSX.Element {\n const {\n member,\n isFocused = false,\n parentScrollRef,\n onClick,\n onMouseOver,\n onMouseMove,\n renderUserMentionItem,\n } = props;\n const scrollRef = useRef<HTMLDivElement>(null);\n const { stringSet = {} } = useContext(LocalizationContext);\n useEffect(() => {\n if (isFocused && parentScrollRef?.current != null && scrollRef?.current != null\n && (parentScrollRef.current.scrollTop >= scrollRef.current.offsetTop\n || parentScrollRef.current.scrollTop + parentScrollRef.current.clientHeight <= scrollRef.current.offsetTop\n )) {\n scrollRef.current.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n }\n }, [isFocused]);\n const customMentionItem = useMemo(() => {\n if (renderUserMentionItem) {\n return (\n <div\n className=\"sendbird-mention-suggest-list__user-item\"\n onClick={(event) => onClick?.({ event, member: (member as Member), itemRef: scrollRef })}\n onMouseOver={(event) => onMouseOver?.({ event, member: (member as Member), itemRef: scrollRef })}\n onMouseMove={(event) => onMouseMove?.({ event, member: (member as Member), itemRef: scrollRef })}\n key={member?.userId || uuidv4()}\n ref={scrollRef}\n >\n {renderUserMentionItem({ user: member })}\n </div>\n );\n }\n }, [renderUserMentionItem]);\n if (customMentionItem) {\n return customMentionItem;\n }\n return (\n <div\n className={`sendbird-mention-suggest-list__user-item ${isFocused ? 'focused' : ''}`}\n onClick={(event) => onClick?.({ event, member: (member as Member), itemRef: scrollRef })}\n onMouseOver={(event) => onMouseOver?.({ event, member: (member as Member), itemRef: scrollRef })}\n onMouseMove={(event) => onMouseMove?.({ event, member: (member as Member), itemRef: scrollRef })}\n key={member?.userId || uuidv4()}\n ref={scrollRef}\n >\n <Avatar\n className=\"sendbird-mention-suggest-list__user-item__avatar\"\n src={member?.profileUrl}\n alt=\"user-profile\"\n width=\"24px\"\n height=\"24px\"\n />\n <Label\n className=\"sendbird-mention-suggest-list__user-item__nickname\"\n type={LabelTypography.SUBTITLE_2}\n color={member?.nickname ? LabelColors.ONBACKGROUND_1 : LabelColors.ONBACKGROUND_3}\n >\n {member?.nickname || stringSet?.MENTION_NAME__NO_NAME}\n </Label>\n <Label\n className=\"sendbird-mention-suggest-list__user-item__user-id\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {member?.userId}\n </Label>\n </div>\n );\n}\n\nexport default SuggestedUserMentionItem;\n","import './index.scss';\nimport React, { useState, useEffect, useContext, useRef } from 'react';\nimport type { User } from '@sendbird/chat';\nimport type { Member } from '@sendbird/chat/groupChannel';\n\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport SuggestedUserMentionItem from './SuggestedUserMentionItem';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { MAX_USER_MENTION_COUNT, MAX_USER_SUGGESTION_COUNT, USER_MENTION_TEMP_CHAR } from '../../context/const';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport uuidv4 from '../../../../utils/uuid';\nimport { useThreadContext } from '../../../Thread/context/ThreadProvider';\n\nexport interface SuggestedMentionListProps {\n className?: string;\n targetNickname: string;\n memberListQuery?: Record<string, string>;\n onUserItemClick?: (member: User) => void;\n onFocusItemChange?: (member: User) => void;\n onFetchUsers?: (users: Array<User>) => void;\n renderUserMentionItem?: (props: { user: User }) => JSX.Element;\n ableAddMention: boolean;\n maxMentionCount?: number;\n maxSuggestionCount?: number;\n inputEvent?: React.KeyboardEvent<HTMLDivElement>;\n}\n\nconst DEBOUNCING_TIME = 300;\n\nfunction SuggestedMentionList(props: SuggestedMentionListProps): JSX.Element {\n const {\n className,\n targetNickname = '',\n // memberListQuery,\n onUserItemClick,\n onFocusItemChange,\n onFetchUsers,\n renderUserMentionItem,\n inputEvent,\n ableAddMention = true,\n maxMentionCount = MAX_USER_MENTION_COUNT,\n maxSuggestionCount = MAX_USER_SUGGESTION_COUNT,\n } = props;\n const currentGroupChannel = useChannelContext?.()?.currentGroupChannel;\n const currentChannel = useThreadContext?.()?.currentChannel;\n const channelInstance = currentGroupChannel || currentChannel;\n const { config, stores } = useSendbirdStateContext();\n const { logger } = config;\n const currentUserId = stores?.sdkStore?.sdk?.currentUser?.userId || '';\n const scrollRef = useRef(null);\n const { stringSet } = useContext(LocalizationContext);\n const [timer, setTimer] = useState(null);\n const [searchString, setSearchString] = useState('');\n const [lastSearchString, setLastSearchString] = useState('');\n const [currentUser, setCurrentUser] = useState<User>(null);\n const [currentMemberList, setCurrentMemberList] = useState<Array<Member>>([]);\n\n useEffect(() => {\n clearTimeout(timer);\n setTimer(\n setTimeout(() => {\n setSearchString(targetNickname);\n }, DEBOUNCING_TIME),\n );\n }, [targetNickname]);\n\n useEffect(() => {\n if (inputEvent?.key === MessageInputKeys.Enter) {\n if (currentMemberList.length > 0) {\n onUserItemClick(currentUser);\n }\n }\n if (inputEvent?.key === MessageInputKeys.ArrowUp) {\n const currentUserIndex = currentMemberList.findIndex((member) => (\n member?.userId === currentUser?.userId\n ));\n if (0 < currentUserIndex) {\n setCurrentUser(currentMemberList[currentUserIndex - 1]);\n onFocusItemChange(currentMemberList[currentUserIndex - 1]);\n }\n }\n if (inputEvent?.key === MessageInputKeys.ArrowDown) {\n const currentUserIndex = currentMemberList.findIndex((member) => (\n member?.userId === currentUser?.userId\n ));\n if (currentUserIndex < currentMemberList.length - 1) {\n setCurrentUser(currentMemberList[currentUserIndex + 1]);\n onFocusItemChange(currentMemberList[currentUserIndex + 1]);\n }\n }\n }, [inputEvent]);\n\n /* Fetch member list */\n useEffect(() => {\n if (!channelInstance?.createMemberListQuery) {\n logger.warning('SuggestedMentionList: Creating member list query failed');\n return;\n }\n if (lastSearchString && searchString.indexOf(lastSearchString) === 0 && currentMemberList.length === 0) {\n // Don't need to request query again\n return;\n }\n\n const query = channelInstance?.createMemberListQuery({\n limit: maxSuggestionCount + 1, // because current user could be included\n nicknameStartsWithFilter: searchString.slice(USER_MENTION_TEMP_CHAR.length),\n });\n // Add member list query for customization\n query.next()\n .then((memberList) => {\n const suggestingMembers = memberList\n .filter((member) => currentUserId !== member?.userId)\n .slice(0, maxSuggestionCount);\n if (suggestingMembers.length < 1) {\n logger.info('SuggestedMentionList: Fetched member list is empty');\n } else {\n logger.info('SuggestedMentionList: Fetching member list succeeded', { memberListQuery: query, memberList: suggestingMembers });\n setCurrentUser(suggestingMembers[0]);\n }\n setLastSearchString(searchString);\n onFetchUsers(suggestingMembers);\n setCurrentMemberList(suggestingMembers);\n })\n .catch((error) => {\n if (error) {\n logger.error('SuggestedMentionList: Fetching member list failed', error);\n }\n });\n }, [channelInstance?.url, searchString]);\n\n if (!ableAddMention && currentMemberList.length === 0) {\n return null;\n }\n\n return (\n <div\n className={`sendbird-mention-suggest-list ${className}`}\n key=\"sendbird-mention-suggest-list\"\n ref={scrollRef}\n >\n {\n ableAddMention && currentMemberList?.map((member) => (\n <SuggestedUserMentionItem\n key={member?.userId || uuidv4()}\n member={member}\n isFocused={member?.userId === currentUser?.userId}\n parentScrollRef={scrollRef}\n onClick={({ member }) => {\n onUserItemClick(member);\n }}\n onMouseOver={({ member }) => {\n setCurrentUser(member);\n }}\n renderUserMentionItem={renderUserMentionItem}\n />\n ))\n }\n {\n !ableAddMention && (\n <div className=\"sendbird-mention-suggest-list__notice-item\">\n <Icon\n className=\"sendbird-mention-suggest-list__notice-item__icon\"\n type={IconTypes.INFO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"20px\"\n height=\"20px\"\n />\n <Label\n className=\"sendbird-mention-suggest-list__notice-item__text\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {stringSet.MENTION_COUNT__OVER_LIMIT.replace('%d', maxMentionCount)}\n </Label>\n </div>\n )\n }\n </div>\n );\n}\n\nexport default SuggestedMentionList;\n"],"names":["SuggestedUserMentionItem","props","member","isFocused","parentScrollRef","onClick","onMouseOver","onMouseMove","renderUserMentionItem","scrollRef","useRef","stringSet","useContext","LocalizationContext","useEffect","current","scrollTop","offsetTop","clientHeight","scrollIntoView","block","inline","customMentionItem","useMemo","React","createElement","className","event","itemRef","key","userId","uuidv4","ref","user","Avatar","src","profileUrl","alt","width","height","Label","type","LabelTypography","SUBTITLE_2","color","nickname","LabelColors","ONBACKGROUND_1","ONBACKGROUND_3","MENTION_NAME__NO_NAME","ONBACKGROUND_2","DEBOUNCING_TIME","SuggestedMentionList","_useChannelContext","_useThreadContext","_stores$sdkStore","_stores$sdkStore$sdk","_stores$sdkStore$sdk$","targetNickname","onUserItemClick","onFocusItemChange","onFetchUsers","inputEvent","ableAddMention","maxMentionCount","MAX_USER_MENTION_COUNT","maxSuggestionCount","MAX_USER_SUGGESTION_COUNT","currentGroupChannel","useChannelContext","currentChannel","useThreadContext","channelInstance","config","stores","useSendbirdStateContext","logger","currentUserId","sdkStore","sdk","currentUser","timer","setTimer","useState","searchString","setSearchString","lastSearchString","setLastSearchString","setCurrentUser","currentMemberList","setCurrentMemberList","clearTimeout","setTimeout","MessageInputKeys","Enter","length","ArrowUp","currentUserIndex","findIndex","ArrowDown","createMemberListQuery","warning","indexOf","query","limit","nicknameStartsWithFilter","slice","USER_MENTION_TEMP_CHAR","next","then","memberList","suggestingMembers","filter","info","memberListQuery","catch","error","url","map","_ref","_ref2","Icon","IconTypes","INFO","fillColor","IconColors","ON_BACKGROUND_2","MENTION_COUNT__OVER_LIMIT","replace"],"mappings":"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"}
|
|
@@ -4,84 +4,70 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var React = require('react');
|
|
6
6
|
var groupChannel = require('@sendbird/chat/groupChannel');
|
|
7
|
-
var LocalizationContext = require('../../LocalizationContext-
|
|
8
|
-
var uuid = require('../../uuid-
|
|
9
|
-
var ui_Label = require('../../index-
|
|
10
|
-
var Channel_context = require('../../ChannelProvider-
|
|
7
|
+
var LocalizationContext = require('../../LocalizationContext-bd54275c.js');
|
|
8
|
+
var uuid = require('../../uuid-97ce2508.js');
|
|
9
|
+
var ui_Label = require('../../index-f6621210.js');
|
|
10
|
+
var Channel_context = require('../../ChannelProvider-2c7ec64b.js');
|
|
11
11
|
var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
|
|
12
|
-
require('../../stringSet-
|
|
13
|
-
require('../../index-
|
|
12
|
+
require('../../stringSet-d212a015.js');
|
|
13
|
+
require('../../index-745c9ce1.js');
|
|
14
14
|
require('prop-types');
|
|
15
|
-
require('../../UserProfileContext-
|
|
16
|
-
require('../../
|
|
17
|
-
require('../../
|
|
18
|
-
require('../../
|
|
19
|
-
require('../../
|
|
15
|
+
require('../../UserProfileContext-10e1ac24.js');
|
|
16
|
+
require('../../const-b3585ae0.js');
|
|
17
|
+
require('../../index-a01673e9.js');
|
|
18
|
+
require('../../topics-77576a9c.js');
|
|
19
|
+
require('../../index-32244c73.js');
|
|
20
|
+
require('../../_rollupPluginBabelHelpers-53e83515.js');
|
|
20
21
|
require('../../utils/message/getOutgoingMessageState.js');
|
|
21
|
-
require('../../
|
|
22
|
-
require('../../compareIds-4124b297.js');
|
|
23
|
-
require('../../const-015e5589.js');
|
|
22
|
+
require('../../compareIds-03cd7437.js');
|
|
24
23
|
require('@sendbird/chat/message');
|
|
25
|
-
require('../../
|
|
26
|
-
require('
|
|
27
|
-
require('../../ui/SortByRow.js');
|
|
28
|
-
require('../../ui/ReactionButton.js');
|
|
29
|
-
require('../../ui/ImageRenderer.js');
|
|
30
|
-
require('../../ui/Icon.js');
|
|
24
|
+
require('../../consts-aa056322.js');
|
|
25
|
+
require('../../resolvedReplyType-da86056c.js');
|
|
31
26
|
require('../../withSendbird.js');
|
|
32
27
|
|
|
33
28
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
34
29
|
|
|
35
30
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
36
31
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
32
|
+
const TypingIndicatorText = _ref => {
|
|
33
|
+
let {
|
|
34
|
+
members
|
|
35
|
+
} = _ref;
|
|
36
|
+
const {
|
|
37
|
+
stringSet
|
|
38
|
+
} = React.useContext(LocalizationContext.LocalizationContext);
|
|
41
39
|
if (!members || members.length === 0) {
|
|
42
40
|
return '';
|
|
43
41
|
}
|
|
44
|
-
|
|
45
42
|
if (members && members.length === 1) {
|
|
46
|
-
return
|
|
43
|
+
return `${members[0].nickname} ${stringSet.TYPING_INDICATOR__IS_TYPING}`;
|
|
47
44
|
}
|
|
48
|
-
|
|
49
45
|
if (members && members.length === 2) {
|
|
50
|
-
return
|
|
46
|
+
return `${members[0].nickname} ${stringSet.TYPING_INDICATOR__AND} ${members[1].nickname} ${stringSet.TYPING_INDICATOR__ARE_TYPING}`;
|
|
51
47
|
}
|
|
52
|
-
|
|
53
48
|
return stringSet.TYPING_INDICATOR__MULTIPLE_TYPING;
|
|
54
49
|
};
|
|
55
|
-
|
|
56
|
-
var
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
var _e = React.useState([]),
|
|
69
|
-
typingMembers = _e[0],
|
|
70
|
-
setTypingMembers = _e[1];
|
|
71
|
-
|
|
72
|
-
React.useEffect(function () {
|
|
73
|
-
var _a;
|
|
74
|
-
|
|
75
|
-
if ((_a = sb === null || sb === void 0 ? void 0 : sb.groupChannel) === null || _a === void 0 ? void 0 : _a.addGroupChannelHandler) {
|
|
50
|
+
const TypingIndicator = () => {
|
|
51
|
+
var _globalStore$stores, _globalStore$stores$s, _globalStore$config;
|
|
52
|
+
const {
|
|
53
|
+
channelUrl
|
|
54
|
+
} = Channel_context.useChannelContext();
|
|
55
|
+
const globalStore = useSendbirdStateContext();
|
|
56
|
+
const sb = globalStore === null || globalStore === void 0 ? void 0 : (_globalStore$stores = globalStore.stores) === null || _globalStore$stores === void 0 ? void 0 : (_globalStore$stores$s = _globalStore$stores.sdkStore) === null || _globalStore$stores$s === void 0 ? void 0 : _globalStore$stores$s.sdk;
|
|
57
|
+
const logger = globalStore === null || globalStore === void 0 ? void 0 : (_globalStore$config = globalStore.config) === null || _globalStore$config === void 0 ? void 0 : _globalStore$config.logger;
|
|
58
|
+
const [handlerId, setHandlerId] = React.useState(uuid.uuidv4());
|
|
59
|
+
const [typingMembers, setTypingMembers] = React.useState([]);
|
|
60
|
+
React.useEffect(() => {
|
|
61
|
+
var _sb$groupChannel;
|
|
62
|
+
if (sb !== null && sb !== void 0 && (_sb$groupChannel = sb.groupChannel) !== null && _sb$groupChannel !== void 0 && _sb$groupChannel.addGroupChannelHandler) {
|
|
76
63
|
sb.groupChannel.removeGroupChannelHandler(handlerId);
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
onTypingStatusUpdated:
|
|
64
|
+
const newHandlerId = uuid.uuidv4();
|
|
65
|
+
const handler = new groupChannel.GroupChannelHandler({
|
|
66
|
+
onTypingStatusUpdated: groupChannel => {
|
|
80
67
|
// there is a possible warning in here - setState called after unmount
|
|
81
68
|
logger.info('Channel > Typing Indicator: onTypingStatusUpdated', groupChannel);
|
|
82
|
-
|
|
83
69
|
if (groupChannel.url === channelUrl) {
|
|
84
|
-
|
|
70
|
+
const members = groupChannel.getTypingUsers();
|
|
85
71
|
setTypingMembers(members);
|
|
86
72
|
}
|
|
87
73
|
}
|
|
@@ -89,13 +75,10 @@ var TypingIndicator = function () {
|
|
|
89
75
|
sb.groupChannel.addGroupChannelHandler(newHandlerId, handler);
|
|
90
76
|
setHandlerId(newHandlerId);
|
|
91
77
|
}
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
var _a;
|
|
95
|
-
|
|
78
|
+
return () => {
|
|
79
|
+
var _sb$groupChannel2;
|
|
96
80
|
setTypingMembers([]);
|
|
97
|
-
|
|
98
|
-
if ((_a = sb === null || sb === void 0 ? void 0 : sb.groupChannel) === null || _a === void 0 ? void 0 : _a.removeGroupChannelHandler) {
|
|
81
|
+
if (sb !== null && sb !== void 0 && (_sb$groupChannel2 = sb.groupChannel) !== null && _sb$groupChannel2 !== void 0 && _sb$groupChannel2.removeGroupChannelHandler) {
|
|
99
82
|
sb.groupChannel.removeGroupChannelHandler(handlerId);
|
|
100
83
|
}
|
|
101
84
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TypingIndicator.js","sources":["../../../../src/
|
|
1
|
+
{"version":3,"file":"TypingIndicator.js","sources":["../../../../src/modules/Channel/components/TypingIndicator.tsx"],"sourcesContent":["import React, { useEffect, useState, useContext } from 'react';\nimport {\n GroupChannelHandler,\n Member,\n SendbirdGroupChat,\n} from '@sendbird/chat/groupChannel';\n\nimport { LocalizationContext } from '../../../lib/LocalizationContext';\nimport { uuidv4 } from '../../../utils/uuid';\nimport Label, { LabelTypography, LabelColors } from '../../../ui/Label';\nimport { useChannelContext } from '../context/ChannelProvider';\nimport useSendbirdStateContext from '../../../hooks/useSendbirdStateContext';\n\nexport interface TypingIndicatorTextProps {\n members: Member[];\n}\n\nexport const TypingIndicatorText: React.FC<TypingIndicatorTextProps> = ({ members }: TypingIndicatorTextProps) => {\n const { stringSet } = useContext(LocalizationContext);\n if (!members || members.length === 0) {\n return '';\n }\n\n if (members && members.length === 1) {\n return `${members[0].nickname} ${stringSet.TYPING_INDICATOR__IS_TYPING}`;\n }\n\n if (members && members.length === 2) {\n return `${members[0].nickname} ${stringSet.TYPING_INDICATOR__AND} ${members[1].nickname} ${stringSet.TYPING_INDICATOR__ARE_TYPING}`;\n }\n\n return stringSet.TYPING_INDICATOR__MULTIPLE_TYPING;\n};\n\nconst TypingIndicator: React.FC = () => {\n const { channelUrl } = useChannelContext();\n const globalStore = useSendbirdStateContext();\n const sb = globalStore?.stores?.sdkStore?.sdk as SendbirdGroupChat;\n const logger = globalStore?.config?.logger;\n const [handlerId, setHandlerId] = useState(uuidv4());\n const [typingMembers, setTypingMembers] = useState<Member[]>([]);\n\n useEffect(() => {\n if (sb?.groupChannel?.addGroupChannelHandler) {\n sb.groupChannel.removeGroupChannelHandler(handlerId);\n const newHandlerId = uuidv4();\n const handler = new GroupChannelHandler({\n onTypingStatusUpdated: (groupChannel) => {\n // there is a possible warning in here - setState called after unmount\n logger.info('Channel > Typing Indicator: onTypingStatusUpdated', groupChannel);\n if (groupChannel.url === channelUrl) {\n const members = groupChannel.getTypingUsers();\n setTypingMembers(members);\n }\n },\n });\n sb.groupChannel.addGroupChannelHandler(newHandlerId, handler);\n setHandlerId(newHandlerId);\n }\n\n return () => {\n setTypingMembers([]);\n if (sb?.groupChannel?.removeGroupChannelHandler) {\n sb.groupChannel.removeGroupChannelHandler(handlerId);\n }\n };\n }, [channelUrl]);\n\n return (\n <Label\n className=\"sendbird-conversation__footer__typing-indicator__text\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n <TypingIndicatorText members={typingMembers} />\n </Label>\n );\n};\n\nexport default TypingIndicator;\n"],"names":["TypingIndicatorText","_ref","members","stringSet","useContext","LocalizationContext","length","nickname","TYPING_INDICATOR__IS_TYPING","TYPING_INDICATOR__AND","TYPING_INDICATOR__ARE_TYPING","TYPING_INDICATOR__MULTIPLE_TYPING","TypingIndicator","_globalStore$stores","_globalStore$stores$s","_globalStore$config","channelUrl","useChannelContext","globalStore","useSendbirdStateContext","sb","stores","sdkStore","sdk","logger","config","handlerId","setHandlerId","useState","uuidv4","typingMembers","setTypingMembers","useEffect","_sb$groupChannel","groupChannel","addGroupChannelHandler","removeGroupChannelHandler","newHandlerId","handler","GroupChannelHandler","onTypingStatusUpdated","info","url","getTypingUsers","_sb$groupChannel2","React","createElement","Label","className","type","LabelTypography","CAPTION_2","color","LabelColors","ONBACKGROUND_2"],"mappings":"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"}
|
|
@@ -1,40 +1,38 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
|
-
var LocalizationContext = require('../../LocalizationContext-
|
|
5
|
-
var ui_Label = require('../../index-
|
|
4
|
+
var LocalizationContext = require('../../LocalizationContext-bd54275c.js');
|
|
5
|
+
var ui_Label = require('../../index-f6621210.js');
|
|
6
6
|
var ui_Icon = require('../../ui/Icon.js');
|
|
7
|
-
require('../../stringSet-
|
|
8
|
-
require('../../index-
|
|
7
|
+
require('../../stringSet-d212a015.js');
|
|
8
|
+
require('../../index-745c9ce1.js');
|
|
9
9
|
require('prop-types');
|
|
10
10
|
|
|
11
11
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
12
12
|
|
|
13
13
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
var
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
15
|
+
const UnreadCount = _ref => {
|
|
16
|
+
var _time$toString, _time$toString$call;
|
|
17
|
+
let {
|
|
18
|
+
className = '',
|
|
19
|
+
count = 0,
|
|
20
|
+
time = '',
|
|
21
|
+
onClick
|
|
22
|
+
} = _ref;
|
|
23
|
+
const {
|
|
24
|
+
stringSet
|
|
25
|
+
} = React.useContext(LocalizationContext.LocalizationContext);
|
|
26
|
+
const timeArray = (time === null || time === void 0 ? void 0 : (_time$toString = time.toString) === null || _time$toString === void 0 ? void 0 : (_time$toString$call = _time$toString.call(time)) === null || _time$toString$call === void 0 ? void 0 : _time$toString$call.split(' ')) || [];
|
|
24
27
|
timeArray === null || timeArray === void 0 ? void 0 : timeArray.splice(-2, 0, stringSet.CHANNEL__MESSAGE_LIST__NOTIFICATION__ON);
|
|
25
|
-
|
|
26
|
-
if (count < 1) {
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
28
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
31
|
-
className:
|
|
29
|
+
className: `sendbird-notification${count < 1 ? '--hide' : ''} ${className}`,
|
|
32
30
|
onClick: onClick
|
|
33
31
|
}, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
|
|
34
32
|
className: "sendbird-notification__text",
|
|
35
33
|
color: ui_Label.LabelColors.ONCONTENT_1,
|
|
36
34
|
type: ui_Label.LabelTypography.CAPTION_2
|
|
37
|
-
},
|
|
35
|
+
}, `${count} `, stringSet.CHANNEL__MESSAGE_LIST__NOTIFICATION__NEW_MESSAGE, ` ${timeArray.join(' ')}`), /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
38
36
|
width: "24px",
|
|
39
37
|
height: "24px",
|
|
40
38
|
type: ui_Icon.IconTypes.CHEVRON_DOWN,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UnreadCount.js","sources":["../../../../src/
|
|
1
|
+
{"version":3,"file":"UnreadCount.js","sources":["../../../../src/modules/Channel/components/UnreadCount/index.tsx"],"sourcesContent":["import React, { useContext } from 'react';\n\nimport './unread-count.scss';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\n\nexport interface UnreadCountProps {\n className?: string;\n count: number | undefined;\n time: string;\n onClick(): void;\n}\n\nconst UnreadCount: React.FC<UnreadCountProps> = ({\n className = '',\n count = 0,\n time = '',\n onClick,\n}: UnreadCountProps) => {\n const { stringSet } = useContext(LocalizationContext);\n const timeArray = time?.toString?.()?.split(' ') || [];\n timeArray?.splice(-2, 0, stringSet.CHANNEL__MESSAGE_LIST__NOTIFICATION__ON);\n\n return (\n <div\n className={`sendbird-notification${count < 1 ? '--hide' : ''} ${className}`}\n onClick={onClick}\n >\n <Label className=\"sendbird-notification__text\" color={LabelColors.ONCONTENT_1} type={LabelTypography.CAPTION_2}>\n {`${count} `}\n {stringSet.CHANNEL__MESSAGE_LIST__NOTIFICATION__NEW_MESSAGE}\n {` ${timeArray.join(' ')}`}\n </Label>\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.CHEVRON_DOWN}\n fillColor={IconColors.CONTENT}\n />\n </div>\n );\n};\n\nexport default UnreadCount;\n"],"names":["UnreadCount","_ref","_time$toString","_time$toString$call","className","count","time","onClick","stringSet","useContext","LocalizationContext","timeArray","toString","call","split","splice","CHANNEL__MESSAGE_LIST__NOTIFICATION__ON","React","createElement","Label","color","LabelColors","ONCONTENT_1","type","LabelTypography","CAPTION_2","CHANNEL__MESSAGE_LIST__NOTIFICATION__NEW_MESSAGE","join","Icon","width","height","IconTypes","CHEVRON_DOWN","fillColor","IconColors","CONTENT"],"mappings":";;;;;;;;;;;;;;AAcMA,MAAAA,WAAuC,GAAGC,IAAA,IAKxB;EAAA,IAAAC,cAAA,EAAAC,mBAAA,CAAA;EAAA,IALyB;AAC/CC,IAAAA,SAAS,GAAG,EAAE;AACdC,IAAAA,KAAK,GAAG,CAAC;AACTC,IAAAA,IAAI,GAAG,EAAE;AACTC,IAAAA,OAAAA;AACgB,GAAC,GAAAN,IAAA,CAAA;EACjB,MAAM;AAAEO,IAAAA,SAAAA;AAAU,GAAC,GAAGC,gBAAU,CAACC,uCAAmB,CAAC,CAAA;AACrD,EAAA,MAAMC,SAAS,GAAG,CAAAL,IAAI,aAAJA,IAAI,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,CAAAJ,cAAA,GAAJI,IAAI,CAAEM,QAAQ,MAAA,IAAA,IAAAV,cAAA,KAAAC,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAAA,mBAAA,GAAdD,cAAA,CAAAW,IAAA,CAAAP,IAAI,CAAc,MAAAH,IAAAA,IAAAA,mBAAA,KAAlBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,mBAAA,CAAoBW,KAAK,CAAC,GAAG,CAAC,KAAI,EAAE,CAAA;AACtDH,EAAAA,SAAS,KAATA,IAAAA,IAAAA,SAAS,KAATA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,SAAS,CAAEI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAEP,SAAS,CAACQ,uCAAuC,CAAC,CAAA;EAE3E,oBACEC,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IACEd,SAAS,EAAG,CAAuBC,qBAAAA,EAAAA,KAAK,GAAG,CAAC,GAAG,QAAQ,GAAG,EAAG,CAAGD,CAAAA,EAAAA,SAAU,CAAE,CAAA;AAC5EG,IAAAA,OAAO,EAAEA,OAAAA;AAAQ,GAAA,eAEjBU,yBAAA,CAAAC,aAAA,CAACC,cAAK,EAAA;AAACf,IAAAA,SAAS,EAAC,6BAA6B;IAACgB,KAAK,EAAEC,oBAAW,CAACC,WAAY;IAACC,IAAI,EAAEC,wBAAe,CAACC,SAAAA;GACjG,EAAA,CAAA,EAAEpB,KAAM,CAAE,CAAA,CAAA,EACXG,SAAS,CAACkB,gDAAgD,EACzD,CAAA,CAAA,EAAGf,SAAS,CAACgB,IAAI,CAAC,GAAG,CAAE,CAAC,CAAA,CACpB,eACRV,yBAAA,CAAAC,aAAA,CAACU,kBAAI,EAAA;AACHC,IAAAA,KAAK,EAAC,MAAM;AACZC,IAAAA,MAAM,EAAC,MAAM;IACbP,IAAI,EAAEQ,iBAAS,CAACC,YAAa;IAC7BC,SAAS,EAAEC,kBAAU,CAACC,OAAAA;AAAQ,GAAA,CAC9B,CACE,CAAA;AAEV;;;;"}
|
package/cjs/Channel/context.js
CHANGED
|
@@ -3,38 +3,27 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
require('react');
|
|
6
|
-
require('../UserProfileContext-
|
|
6
|
+
require('../UserProfileContext-10e1ac24.js');
|
|
7
7
|
require('../useSendbirdStateContext.js');
|
|
8
|
-
|
|
8
|
+
require('../const-b3585ae0.js');
|
|
9
|
+
var Channel_context = require('../ChannelProvider-2c7ec64b.js');
|
|
10
|
+
require('../resolvedReplyType-da86056c.js');
|
|
9
11
|
require('prop-types');
|
|
10
12
|
require('../withSendbird.js');
|
|
11
|
-
require('../_rollupPluginBabelHelpers-
|
|
12
|
-
require('../index-
|
|
13
|
-
require('../index-
|
|
14
|
-
require('../topics-
|
|
15
|
-
require('../index-
|
|
16
|
-
require('../tslib.es6-b8ba50ef.js');
|
|
13
|
+
require('../_rollupPluginBabelHelpers-53e83515.js');
|
|
14
|
+
require('../index-a01673e9.js');
|
|
15
|
+
require('../index-745c9ce1.js');
|
|
16
|
+
require('../topics-77576a9c.js');
|
|
17
|
+
require('../index-32244c73.js');
|
|
17
18
|
require('../utils/message/getOutgoingMessageState.js');
|
|
18
|
-
require('../compareIds-
|
|
19
|
-
require('../const-015e5589.js');
|
|
19
|
+
require('../compareIds-03cd7437.js');
|
|
20
20
|
require('@sendbird/chat/groupChannel');
|
|
21
|
-
require('../uuid-
|
|
21
|
+
require('../uuid-97ce2508.js');
|
|
22
22
|
require('@sendbird/chat/message');
|
|
23
|
-
require('../
|
|
24
|
-
require('react-dom');
|
|
25
|
-
require('../ui/SortByRow.js');
|
|
26
|
-
require('../index-5d5497c2.js');
|
|
27
|
-
require('../stringSet-3e6167ef.js');
|
|
28
|
-
require('../ui/ReactionButton.js');
|
|
29
|
-
require('../ui/ImageRenderer.js');
|
|
30
|
-
require('../ui/Icon.js');
|
|
23
|
+
require('../consts-aa056322.js');
|
|
31
24
|
|
|
32
25
|
|
|
33
26
|
|
|
34
27
|
exports.ChannelProvider = Channel_context.ChannelProvider;
|
|
35
|
-
Object.defineProperty(exports, 'ThreadReplySelectType', {
|
|
36
|
-
enumerable: true,
|
|
37
|
-
get: function () { return Channel_context.ThreadReplySelectType; }
|
|
38
|
-
});
|
|
39
28
|
exports.useChannelContext = Channel_context.useChannelContext;
|
|
40
29
|
//# sourceMappingURL=context.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"context.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|