@sendbird/uikit-react 3.4.9 → 3.5.0-feature-config-rc-0
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 +81 -62
- package/App.js.map +1 -1
- package/Channel/components/ChannelHeader.js +19 -18
- package/Channel/components/ChannelHeader.js.map +1 -1
- package/Channel/components/ChannelUI.js +44 -43
- package/Channel/components/ChannelUI.js.map +1 -1
- package/Channel/components/FileViewer.js +15 -14
- package/Channel/components/FileViewer.js.map +1 -1
- package/Channel/components/FrozenNotification.js +4 -4
- package/Channel/components/Message.js +38 -36
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +31 -29
- package/Channel/components/MessageInput.js.map +1 -1
- package/Channel/components/MessageList.js +38 -37
- 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 +17 -16
- package/Channel/components/SuggestedMentionList.js.map +1 -1
- package/Channel/components/TypingIndicator.js +15 -14
- package/Channel/components/TypingIndicator.js.map +1 -1
- package/Channel/components/UnreadCount.js +4 -4
- package/Channel/context.js +12 -11
- package/Channel/context.js.map +1 -1
- package/Channel.js +42 -41
- package/Channel.js.map +1 -1
- package/ChannelList/components/AddChannel.js +14 -14
- package/ChannelList/components/ChannelListHeader.js +6 -6
- package/ChannelList/components/ChannelListUI.js +30 -29
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +26 -25
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +13 -13
- package/ChannelList/context.js +7 -7
- package/ChannelList.js +30 -29
- package/ChannelList.js.map +1 -1
- package/{ChannelListProvider-21425002.js → ChannelListProvider-e9b9d9dc.js} +7 -7
- package/{ChannelListProvider-21425002.js.map → ChannelListProvider-e9b9d9dc.js.map} +1 -1
- package/{ChannelProvider-910bbc1f.js → ChannelProvider-e1ddeda2.js} +52 -30
- package/ChannelProvider-e1ddeda2.js.map +1 -0
- package/ChannelSettings/components/ChannelProfile.js +11 -11
- package/ChannelSettings/components/ChannelSettingsUI.js +17 -17
- package/ChannelSettings/components/EditDetailsModal.js +11 -11
- package/ChannelSettings/components/LeaveChannel.js +11 -11
- package/ChannelSettings/components/ModerationPanel.js +14 -14
- package/ChannelSettings/components/UserListItem.js +10 -10
- package/ChannelSettings/components/UserPanel.js +13 -13
- package/ChannelSettings/context.js +3 -3
- package/ChannelSettings.js +17 -17
- package/CreateChannel/components/CreateChannelUI.js +13 -13
- package/CreateChannel/components/InviteUsers.js +13 -13
- package/CreateChannel/components/SelectChannelType.js +10 -10
- package/CreateChannel/context.js +4 -4
- package/CreateChannel.js +13 -13
- package/{CreateChannelProvider-11c8b9a3.js → CreateChannelProvider-8c7aa9d6.js} +1 -1
- package/{CreateChannelProvider-11c8b9a3.js.map → CreateChannelProvider-8c7aa9d6.js.map} +1 -1
- package/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
- package/CreateOpenChannel/context.js +1 -1
- package/CreateOpenChannel.js +9 -9
- package/EditUserProfile/components/EditUserProfileUI.js +12 -12
- package/EditUserProfile.js +12 -12
- package/{LocalizationContext-076d6d2e.js → LocalizationContext-2a605cc6.js} +3 -3
- package/{LocalizationContext-076d6d2e.js.map → LocalizationContext-2a605cc6.js.map} +1 -1
- package/{MediaQueryContext-11f0e43f.js → MediaQueryContext-9a1ce18e.js} +2 -2
- package/MediaQueryContext-9a1ce18e.js.map +1 -0
- package/{MemberList-061d186f.js → MemberList-f74830e4.js} +8 -6
- package/{cjs/MemberList-c886fbc9.js.map → MemberList-f74830e4.js.map} +1 -1
- package/MessageSearch/components/MessageSearchUI.js +11 -11
- package/MessageSearch/context.js +1 -1
- package/MessageSearch.js +11 -11
- package/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/OpenChannel/components/OpenChannelHeader.js +12 -12
- package/OpenChannel/components/OpenChannelInput.js +22 -20
- package/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessage.js +37 -32
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +31 -31
- package/OpenChannel/components/OpenChannelUI.js +31 -31
- package/OpenChannel/context.js +8 -8
- package/OpenChannel.js +33 -33
- package/OpenChannelList/components/OpenChannelListUI.js +13 -13
- package/OpenChannelList/components/OpenChannelPreview.js +3 -3
- package/OpenChannelList/context.js +3 -3
- package/OpenChannelList.js +13 -13
- package/{OpenChannelListProvider-426cfb39.js → OpenChannelListProvider-1674b977.js} +3 -3
- package/{OpenChannelListProvider-426cfb39.js.map → OpenChannelListProvider-1674b977.js.map} +1 -1
- package/{OpenChannelProvider-d3a850e3.js → OpenChannelProvider-c1097360.js} +7 -7
- package/{OpenChannelProvider-d3a850e3.js.map → OpenChannelProvider-c1097360.js.map} +1 -1
- package/OpenChannelSettings/components/EditDetailsModal.js +12 -12
- package/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
- 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 +3 -3
- package/OpenChannelSettings.js +17 -17
- package/{RemoveMessageModal-78e395ad.js → RemoveMessageModal-103c3502.js} +3 -3
- package/{RemoveMessageModal-78e395ad.js.map → RemoveMessageModal-103c3502.js.map} +1 -1
- package/SendbirdProvider.js +69 -217
- package/SendbirdProvider.js.map +1 -1
- package/Thread/components/ParentMessageInfo.js +35 -32
- package/Thread/components/ParentMessageInfo.js.map +1 -1
- package/Thread/components/ParentMessageInfoItem.js +23 -21
- package/Thread/components/ParentMessageInfoItem.js.map +1 -1
- package/Thread/components/ThreadHeader.js +6 -6
- package/Thread/components/ThreadList.js +36 -35
- package/Thread/components/ThreadList.js.map +1 -1
- package/Thread/components/ThreadListItem.js +44 -38
- package/Thread/components/ThreadListItem.js.map +1 -1
- package/Thread/components/ThreadMessageInput.js +32 -30
- package/Thread/components/ThreadMessageInput.js.map +1 -1
- package/Thread/components/ThreadUI.js +40 -39
- package/Thread/components/ThreadUI.js.map +1 -1
- package/Thread/context.js +8 -8
- package/Thread.js +40 -39
- package/Thread.js.map +1 -1
- package/{ThreadProvider-3a4a4db0.js → ThreadProvider-1799dbab.js} +10 -10
- package/ThreadProvider-1799dbab.js.map +1 -0
- package/{UserProfileContext-9cfbab4d.js → UserProfileContext-cf8bb199.js} +1 -1
- package/{UserProfileContext-9cfbab4d.js.map → UserProfileContext-cf8bb199.js.map} +1 -1
- package/{VoiceMessageInputWrapper-dc459df1.js → VoiceMessageInputWrapper-276b625e.js} +8 -7
- package/VoiceMessageInputWrapper-276b625e.js.map +1 -0
- package/VoicePlayer/context.js +3 -3
- package/VoicePlayer/useVoicePlayer.js +15 -3
- package/VoicePlayer/useVoicePlayer.js.map +1 -1
- package/VoiceRecorder/context.js +42 -4
- package/VoiceRecorder/context.js.map +1 -1
- package/VoiceRecorder/useVoiceRecorder.js +14 -2
- package/VoiceRecorder/useVoiceRecorder.js.map +1 -1
- package/{WebAudioUtils-6df19fcc.js → WebAudioUtils-b2c9fae9.js} +1 -1
- package/{WebAudioUtils-6df19fcc.js.map → WebAudioUtils-b2c9fae9.js.map} +1 -1
- package/{_rollupPluginBabelHelpers-6bb0305c.js → _rollupPluginBabelHelpers-34fc6689.js} +1 -1
- package/_rollupPluginBabelHelpers-34fc6689.js.map +1 -0
- package/{actionTypes-ce6caec1.js → actionTypes-3f51c08a.js} +1 -1
- package/{actionTypes-ce6caec1.js.map → actionTypes-3f51c08a.js.map} +1 -1
- package/cjs/App.js +81 -62
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +19 -18
- package/cjs/Channel/components/ChannelHeader.js.map +1 -1
- package/cjs/Channel/components/ChannelUI.js +44 -43
- package/cjs/Channel/components/ChannelUI.js.map +1 -1
- package/cjs/Channel/components/FileViewer.js +15 -14
- package/cjs/Channel/components/FileViewer.js.map +1 -1
- package/cjs/Channel/components/FrozenNotification.js +4 -4
- package/cjs/Channel/components/Message.js +38 -36
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +31 -29
- package/cjs/Channel/components/MessageInput.js.map +1 -1
- package/cjs/Channel/components/MessageList.js +38 -37
- 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 +17 -16
- package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
- package/cjs/Channel/components/TypingIndicator.js +15 -14
- package/cjs/Channel/components/TypingIndicator.js.map +1 -1
- package/cjs/Channel/components/UnreadCount.js +4 -4
- package/cjs/Channel/context.js +12 -12
- package/cjs/Channel.js +42 -41
- package/cjs/Channel.js.map +1 -1
- package/cjs/ChannelList/components/AddChannel.js +14 -14
- package/cjs/ChannelList/components/ChannelListHeader.js +6 -6
- package/cjs/ChannelList/components/ChannelListUI.js +30 -29
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +26 -25
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +13 -13
- package/cjs/ChannelList/context.js +7 -7
- package/cjs/ChannelList.js +30 -29
- package/cjs/ChannelList.js.map +1 -1
- package/cjs/{ChannelListProvider-6f1b6689.js → ChannelListProvider-26cc6944.js} +7 -7
- package/cjs/{ChannelListProvider-6f1b6689.js.map → ChannelListProvider-26cc6944.js.map} +1 -1
- package/cjs/{ChannelProvider-da7b08a1.js → ChannelProvider-54bb28cc.js} +51 -30
- package/cjs/ChannelProvider-54bb28cc.js.map +1 -0
- package/cjs/ChannelSettings/components/ChannelProfile.js +11 -11
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +17 -17
- package/cjs/ChannelSettings/components/EditDetailsModal.js +11 -11
- package/cjs/ChannelSettings/components/LeaveChannel.js +11 -11
- package/cjs/ChannelSettings/components/ModerationPanel.js +14 -14
- package/cjs/ChannelSettings/components/UserListItem.js +10 -10
- package/cjs/ChannelSettings/components/UserPanel.js +13 -13
- package/cjs/ChannelSettings/context.js +3 -3
- package/cjs/ChannelSettings.js +17 -17
- package/cjs/CreateChannel/components/CreateChannelUI.js +13 -13
- package/cjs/CreateChannel/components/InviteUsers.js +13 -13
- package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
- package/cjs/CreateChannel/context.js +4 -4
- package/cjs/CreateChannel.js +13 -13
- package/cjs/{CreateChannelProvider-2f105a5c.js → CreateChannelProvider-8c106973.js} +1 -1
- package/cjs/{CreateChannelProvider-2f105a5c.js.map → CreateChannelProvider-8c106973.js.map} +1 -1
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
- package/cjs/CreateOpenChannel/context.js +1 -1
- package/cjs/CreateOpenChannel.js +9 -9
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
- package/cjs/EditUserProfile.js +12 -12
- package/cjs/{LocalizationContext-df436a16.js → LocalizationContext-bdc95952.js} +3 -3
- package/cjs/{LocalizationContext-df436a16.js.map → LocalizationContext-bdc95952.js.map} +1 -1
- package/cjs/{MediaQueryContext-f1e8fdbc.js → MediaQueryContext-28b81968.js} +2 -2
- package/cjs/MediaQueryContext-28b81968.js.map +1 -0
- package/cjs/{MemberList-c886fbc9.js → MemberList-5f5ab063.js} +8 -6
- package/cjs/MemberList-5f5ab063.js.map +1 -0
- package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
- package/cjs/MessageSearch/context.js +1 -1
- package/cjs/MessageSearch.js +11 -11
- package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
- package/cjs/OpenChannel/components/OpenChannelInput.js +22 -20
- package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessage.js +37 -32
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +31 -31
- package/cjs/OpenChannel/components/OpenChannelUI.js +31 -31
- package/cjs/OpenChannel/context.js +8 -8
- package/cjs/OpenChannel.js +33 -33
- package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
- package/cjs/OpenChannelList/components/OpenChannelPreview.js +3 -3
- package/cjs/OpenChannelList/context.js +3 -3
- package/cjs/OpenChannelList.js +13 -13
- package/cjs/{OpenChannelListProvider-b7914f1a.js → OpenChannelListProvider-da4fd54b.js} +3 -3
- package/cjs/{OpenChannelListProvider-b7914f1a.js.map → OpenChannelListProvider-da4fd54b.js.map} +1 -1
- package/cjs/{OpenChannelProvider-b431f910.js → OpenChannelProvider-c6295ecd.js} +7 -7
- package/cjs/{OpenChannelProvider-b431f910.js.map → OpenChannelProvider-c6295ecd.js.map} +1 -1
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +12 -12
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
- 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 +3 -3
- package/cjs/OpenChannelSettings.js +17 -17
- package/cjs/{RemoveMessageModal-bcf3c6fe.js → RemoveMessageModal-f4d8af47.js} +3 -3
- package/cjs/{RemoveMessageModal-bcf3c6fe.js.map → RemoveMessageModal-f4d8af47.js.map} +1 -1
- package/cjs/SendbirdProvider.js +70 -218
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfo.js +35 -32
- package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfoItem.js +23 -21
- package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
- package/cjs/Thread/components/ThreadHeader.js +6 -6
- package/cjs/Thread/components/ThreadList.js +36 -35
- package/cjs/Thread/components/ThreadList.js.map +1 -1
- package/cjs/Thread/components/ThreadListItem.js +44 -38
- package/cjs/Thread/components/ThreadListItem.js.map +1 -1
- package/cjs/Thread/components/ThreadMessageInput.js +32 -30
- package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
- package/cjs/Thread/components/ThreadUI.js +40 -39
- package/cjs/Thread/components/ThreadUI.js.map +1 -1
- package/cjs/Thread/context.js +8 -8
- package/cjs/Thread.js +40 -39
- package/cjs/Thread.js.map +1 -1
- package/cjs/{ThreadProvider-654b9db0.js → ThreadProvider-17ad9d05.js} +10 -10
- package/cjs/ThreadProvider-17ad9d05.js.map +1 -0
- package/cjs/{UserProfileContext-0c255fa6.js → UserProfileContext-27a5718b.js} +1 -1
- package/cjs/{UserProfileContext-0c255fa6.js.map → UserProfileContext-27a5718b.js.map} +1 -1
- package/cjs/{VoiceMessageInputWrapper-2aaed45b.js → VoiceMessageInputWrapper-1100905a.js} +8 -7
- package/cjs/VoiceMessageInputWrapper-1100905a.js.map +1 -0
- package/cjs/VoicePlayer/context.js +4 -3
- package/cjs/VoicePlayer/context.js.map +1 -1
- package/cjs/VoicePlayer/useVoicePlayer.js +15 -3
- package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -1
- package/cjs/VoiceRecorder/context.js +42 -4
- package/cjs/VoiceRecorder/context.js.map +1 -1
- package/cjs/VoiceRecorder/useVoiceRecorder.js +14 -2
- package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -1
- package/cjs/{WebAudioUtils-58f47b3f.js → WebAudioUtils-cd45fa51.js} +1 -1
- package/cjs/{WebAudioUtils-58f47b3f.js.map → WebAudioUtils-cd45fa51.js.map} +1 -1
- package/cjs/{_rollupPluginBabelHelpers-5fad415d.js → _rollupPluginBabelHelpers-d68672d6.js} +1 -1
- package/cjs/_rollupPluginBabelHelpers-d68672d6.js.map +1 -0
- package/cjs/{actionTypes-6cbf2054.js → actionTypes-bf093246.js} +1 -1
- package/cjs/{actionTypes-6cbf2054.js.map → actionTypes-bf093246.js.map} +1 -1
- package/cjs/{color-026d07a6.js → color-bb9924cb.js} +1 -1
- package/cjs/{color-026d07a6.js.map → color-bb9924cb.js.map} +1 -1
- package/cjs/{compareIds-f064c47d.js → compareIds-96cdd2a0.js} +1 -1
- package/cjs/{compareIds-f064c47d.js.map → compareIds-96cdd2a0.js.map} +1 -1
- package/cjs/{const-692d0039.js → const-44ddbe54.js} +1 -1
- package/cjs/{const-692d0039.js.map → const-44ddbe54.js.map} +1 -1
- package/cjs/{const-0a12bf51.js → const-73fbd467.js} +1 -1
- package/cjs/{const-0a12bf51.js.map → const-73fbd467.js.map} +1 -1
- package/cjs/{consts-f0dc64d0.js → consts-2dfc1883.js} +1 -1
- package/cjs/{consts-f0dc64d0.js.map → consts-2dfc1883.js.map} +1 -1
- package/cjs/{consts-2f667487.js → consts-40680de5.js} +1 -1
- package/cjs/{consts-2f667487.js.map → consts-40680de5.js.map} +1 -1
- package/cjs/{consts-25fc4351.js → consts-4fbdb1d6.js} +1 -1
- package/cjs/{consts-25fc4351.js.map → consts-4fbdb1d6.js.map} +1 -1
- package/cjs/{consts-297fdae1.js → consts-ccfad912.js} +1 -1
- package/cjs/{consts-297fdae1.js.map → consts-ccfad912.js.map} +1 -1
- package/cjs/{context-ec9b8da1.js → context-cdc5a8dd.js} +2 -2
- package/cjs/{context-ec9b8da1.js.map → context-cdc5a8dd.js.map} +1 -1
- package/cjs/dist/index.css +737 -732
- package/cjs/dist/index.css.map +1 -1
- package/cjs/{index-a715eaef.js → index-0d4b8939.js} +2 -2
- package/cjs/{index-a715eaef.js.map → index-0d4b8939.js.map} +1 -1
- package/cjs/{index-162396f5.js → index-1ee86976.js} +3 -3
- package/cjs/{index-162396f5.js.map → index-1ee86976.js.map} +1 -1
- package/cjs/{index-9b38e167.js → index-2044d323.js} +4 -4
- package/cjs/{index-9b38e167.js.map → index-2044d323.js.map} +1 -1
- package/cjs/{index-80fc14fe.js → index-4ff12eb9.js} +2 -2
- package/cjs/{index-80fc14fe.js.map → index-4ff12eb9.js.map} +1 -1
- package/cjs/{index-606495e5.js → index-6d959b4d.js} +5 -5
- package/cjs/{index-606495e5.js.map → index-6d959b4d.js.map} +1 -1
- package/cjs/{index-0f42efcf.js → index-71def451.js} +1 -1
- package/cjs/{index-0f42efcf.js.map → index-71def451.js.map} +1 -1
- package/cjs/{index-dd9bc361.js → index-77c91851.js} +1 -1
- package/cjs/{index-dd9bc361.js.map → index-77c91851.js.map} +1 -1
- package/cjs/{index-33b67e46.js → index-7a9d2024.js} +3 -5
- package/cjs/index-7a9d2024.js.map +1 -0
- package/cjs/{index-0bd8e5f3.js → index-7b19a3f7.js} +6 -6
- package/cjs/{index-0bd8e5f3.js.map → index-7b19a3f7.js.map} +1 -1
- package/cjs/{index-6e05ddef.js → index-89314643.js} +35 -20
- package/cjs/index-89314643.js.map +1 -0
- package/cjs/{index-450be53e.js → index-adcca875.js} +4 -4
- package/cjs/{index-450be53e.js.map → index-adcca875.js.map} +1 -1
- package/cjs/{index-45cee454.js → index-b1485c4a.js} +2 -2
- package/cjs/{index-45cee454.js.map → index-b1485c4a.js.map} +1 -1
- package/cjs/{index-21392a2e.js → index-b6a49cba.js} +3 -3
- package/cjs/{index-21392a2e.js.map → index-b6a49cba.js.map} +1 -1
- package/cjs/{index-4881e776.js → index-ca51d316.js} +6 -6
- package/cjs/{index-4881e776.js.map → index-ca51d316.js.map} +1 -1
- package/cjs/{index-12ce8274.js → index-dada883d.js} +62 -24
- package/cjs/index-dada883d.js.map +1 -0
- package/cjs/{index-c89616c9.js → index-e766176d.js} +2 -2
- package/cjs/{index-c89616c9.js.map → index-e766176d.js.map} +1 -1
- package/cjs/{index-bf4e62fb.js → index-f7b329d2.js} +2 -2
- package/cjs/{index-bf4e62fb.js.map → index-f7b329d2.js.map} +1 -1
- package/cjs/index.js +58 -56
- package/cjs/index.js.map +1 -1
- package/cjs/{index.module-e5552393.js → index.module-3e11d4a7.js} +1 -1
- package/cjs/{index.module-e5552393.js.map → index.module-3e11d4a7.js.map} +1 -1
- package/cjs/resolvedReplyType-42ff3f75.js +32 -0
- package/cjs/resolvedReplyType-42ff3f75.js.map +1 -0
- package/cjs/sendbirdSelectors.js +3 -3
- package/cjs/{stringSet-d7f78de0.js → stringSet-0cddd94a.js} +3 -1
- package/cjs/stringSet-0cddd94a.js.map +1 -0
- package/cjs/{tokenize-595877b4.js → tokenize-75ed25db.js} +2 -2
- package/cjs/{tokenize-595877b4.js.map → tokenize-75ed25db.js.map} +1 -1
- package/cjs/{topics-2431bb78.js → topics-3e3eb86d.js} +1 -1
- package/cjs/{topics-2431bb78.js.map → topics-3e3eb86d.js.map} +1 -1
- package/cjs/{types-ef51254c.js → types-2138565d.js} +1 -1
- package/cjs/types-2138565d.js.map +1 -0
- package/cjs/ui/Accordion.js +2 -2
- package/cjs/ui/AccordionGroup.js +2 -2
- package/cjs/ui/AdminMessage.js +2 -2
- package/cjs/ui/Avatar.js +1 -1
- package/cjs/ui/Badge.js +4 -4
- package/cjs/ui/BottomSheet.js +1 -1
- package/cjs/ui/Button.js +2 -2
- package/cjs/ui/ChannelAvatar.js +2 -2
- package/cjs/ui/ConnectionStatus.js +4 -4
- package/cjs/ui/ContextMenu.js +5 -5
- package/cjs/ui/DateSeparator.js +3 -3
- package/cjs/ui/EmojiReactions.js +13 -13
- package/cjs/ui/FileMessageItemBody.js +6 -6
- package/cjs/ui/FileViewer.js +8 -8
- package/cjs/ui/IconButton.js +1 -1
- package/cjs/ui/Input.js +2 -2
- package/cjs/ui/Label.js +2 -2
- package/cjs/ui/LinkLabel.js +2 -2
- package/cjs/ui/MentionLabel.js +10 -10
- package/cjs/ui/MentionUserLabel.js +1 -1
- package/cjs/ui/MessageContent.js +35 -33
- package/cjs/ui/MessageContent.js.map +1 -1
- package/cjs/ui/MessageInput.js +70 -17
- package/cjs/ui/MessageInput.js.map +1 -1
- package/cjs/ui/MessageItemMenu.js +8 -8
- package/cjs/ui/MessageItemReactionMenu.js +8 -8
- package/cjs/ui/MessageSearchFileItem.js +10 -10
- package/cjs/ui/MessageSearchItem.js +8 -8
- package/cjs/ui/MessageStatus.js +10 -10
- package/cjs/ui/Modal.js +7 -7
- package/cjs/ui/OGMessageItemBody.js +14 -14
- package/cjs/ui/OpenChannelAdminMessage.js +2 -2
- package/cjs/ui/OpenChannelAvatar.js +5 -5
- package/cjs/ui/OpenchannelConversationHeader.js +6 -6
- package/cjs/ui/OpenchannelFileMessage.js +17 -17
- package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
- package/cjs/ui/OpenchannelOGMessage.js +21 -21
- package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
- package/cjs/ui/OpenchannelThumbnailMessage.js +16 -16
- package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/cjs/ui/OpenchannelUserMessage.js +20 -21
- package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
- package/cjs/ui/PlaceHolder.js +5 -5
- package/cjs/ui/PlaybackTime.js +2 -2
- package/cjs/ui/QuoteMessage.js +7 -7
- package/cjs/ui/QuoteMessage.js.map +1 -1
- package/cjs/ui/QuoteMessageInput.js +6 -6
- package/cjs/ui/ReactionBadge.js +2 -2
- package/cjs/ui/ReactionButton.js +4 -4
- package/cjs/ui/SortByRow.js +1 -1
- package/cjs/ui/TextButton.js +1 -1
- package/cjs/ui/TextMessageItemBody.js +14 -14
- package/cjs/ui/ThreadReplies.js +5 -5
- package/cjs/ui/ThumbnailMessageItemBody.js +6 -13
- package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/cjs/ui/Toggle.js +1 -1
- package/cjs/ui/Tooltip.js +2 -2
- package/cjs/ui/UnknownMessageItemBody.js +6 -6
- package/cjs/ui/UserListItem.js +10 -10
- package/cjs/ui/UserProfile.js +9 -9
- package/cjs/ui/VoiceMessageItemBody.js +17 -6
- package/cjs/ui/VoiceMessageItemBody.js.map +1 -1
- package/cjs/ui/VoiceMessgeInput.js +7 -7
- package/cjs/ui/Word.js +10 -10
- package/cjs/{useDirtyGetMentions-cc7de01f.js → useDirtyGetMentions-9945a1c0.js} +1 -1
- package/cjs/{useDirtyGetMentions-cc7de01f.js.map → useDirtyGetMentions-9945a1c0.js.map} +1 -1
- package/cjs/{useLongPress-68ad7161.js → useLongPress-5174fd42.js} +3 -3
- package/cjs/{useLongPress-68ad7161.js.map → useLongPress-5174fd42.js.map} +1 -1
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/utils/message/isVoiceMessage.js +2 -2
- package/cjs/{utils-53aa911b.js → utils-2ef71eef.js} +1 -1
- package/cjs/{utils-53aa911b.js.map → utils-2ef71eef.js.map} +1 -1
- package/cjs/{utils-279e7553.js → utils-37a5dfde.js} +1 -1
- package/cjs/{utils-279e7553.js.map → utils-37a5dfde.js.map} +1 -1
- package/cjs/{utils-080f7835.js → utils-a7008e7b.js} +2 -2
- package/cjs/{utils-080f7835.js.map → utils-a7008e7b.js.map} +1 -1
- package/cjs/{utils-58e012fb.js → utils-f1c0d384.js} +1 -1
- package/cjs/{utils-58e012fb.js.map → utils-f1c0d384.js.map} +1 -1
- package/cjs/{uuid-2953f4dd.js → uuid-075367f7.js} +1 -1
- package/cjs/{uuid-2953f4dd.js.map → uuid-075367f7.js.map} +1 -1
- package/cjs/withSendbird.js +1 -1
- package/{color-879cc347.js → color-85cde5a7.js} +1 -1
- package/{color-879cc347.js.map → color-85cde5a7.js.map} +1 -1
- package/{compareIds-defe2bb3.js → compareIds-3e3591cb.js} +1 -1
- package/{compareIds-defe2bb3.js.map → compareIds-3e3591cb.js.map} +1 -1
- package/{const-b3f02313.js → const-2109eff9.js} +1 -1
- package/{const-b3f02313.js.map → const-2109eff9.js.map} +1 -1
- package/{const-221c6a89.js → const-91fefb8e.js} +1 -1
- package/{const-221c6a89.js.map → const-91fefb8e.js.map} +1 -1
- package/{consts-81544e52.js → consts-b6194fdf.js} +1 -1
- package/{consts-81544e52.js.map → consts-b6194fdf.js.map} +1 -1
- package/{consts-95d8566e.js → consts-bd5c0783.js} +1 -1
- package/{consts-95d8566e.js.map → consts-bd5c0783.js.map} +1 -1
- package/{consts-c41580ae.js → consts-d9de055a.js} +1 -1
- package/{consts-c41580ae.js.map → consts-d9de055a.js.map} +1 -1
- package/{consts-ff014656.js → consts-fafa501c.js} +1 -1
- package/{consts-ff014656.js.map → consts-fafa501c.js.map} +1 -1
- package/{context-63cbe5bd.js → context-b6e563d1.js} +2 -2
- package/{context-63cbe5bd.js.map → context-b6e563d1.js.map} +1 -1
- package/dist/index.css +737 -732
- package/dist/index.css.map +1 -1
- package/{index-cef1cfff.js → index-10472187.js} +3 -3
- package/{index-cef1cfff.js.map → index-10472187.js.map} +1 -1
- package/{index-fb8a5bc3.js → index-1a6d4397.js} +5 -5
- package/{index-fb8a5bc3.js.map → index-1a6d4397.js.map} +1 -1
- package/{index-f7ec60a8.js → index-2f7c2c8a.js} +2 -2
- package/{index-f7ec60a8.js.map → index-2f7c2c8a.js.map} +1 -1
- package/{index-2c3e11ea.js → index-31eb43c8.js} +4 -4
- package/{index-2c3e11ea.js.map → index-31eb43c8.js.map} +1 -1
- package/{index-99aabd9e.js → index-3515f8f3.js} +1 -1
- package/{index-99aabd9e.js.map → index-3515f8f3.js.map} +1 -1
- package/{index-7eb65acf.js → index-39f0a98e.js} +4 -5
- package/index-39f0a98e.js.map +1 -0
- package/{index-e6e562c5.js → index-3a6d5e45.js} +4 -4
- package/{index-e6e562c5.js.map → index-3a6d5e45.js.map} +1 -1
- package/{index-eaf0d65b.js → index-76929e40.js} +6 -6
- package/{index-eaf0d65b.js.map → index-76929e40.js.map} +1 -1
- package/{index-63949de5.js → index-8fb5d71a.js} +2 -2
- package/{index-63949de5.js.map → index-8fb5d71a.js.map} +1 -1
- package/{index-9e49ffe3.js → index-94ed0e50.js} +2 -2
- package/{index-9e49ffe3.js.map → index-94ed0e50.js.map} +1 -1
- package/{index-aca30408.js → index-9730aae6.js} +35 -20
- package/index-9730aae6.js.map +1 -0
- package/{index-38e61c64.js → index-a27543ed.js} +1 -1
- package/{index-38e61c64.js.map → index-a27543ed.js.map} +1 -1
- package/{index-fe932783.js → index-b05a5803.js} +2 -2
- package/{index-fe932783.js.map → index-b05a5803.js.map} +1 -1
- package/{index-306bc4ab.js → index-bbf4f597.js} +3 -3
- package/{index-306bc4ab.js.map → index-bbf4f597.js.map} +1 -1
- package/{index-5c1b672d.js → index-bf4f0a7e.js} +6 -6
- package/{index-5c1b672d.js.map → index-bf4f0a7e.js.map} +1 -1
- package/{index-5c985608.js → index-c54a357d.js} +62 -25
- package/index-c54a357d.js.map +1 -0
- package/{index-7cdd58b8.js → index-d847ae45.js} +2 -2
- package/{index-7cdd58b8.js.map → index-d847ae45.js.map} +1 -1
- package/index.d.ts +7 -3
- package/index.js +58 -56
- package/index.js.map +1 -1
- package/{index.module-54d57ec3.js → index.module-9faf1703.js} +1 -1
- package/{index.module-54d57ec3.js.map → index.module-9faf1703.js.map} +1 -1
- package/package.json +3 -2
- package/resolvedReplyType-f5cc6c0b.js +29 -0
- package/resolvedReplyType-f5cc6c0b.js.map +1 -0
- package/sendbirdSelectors.js +3 -3
- package/{stringSet-13bbd4a2.js → stringSet-d0b92983.js} +3 -1
- package/stringSet-d0b92983.js.map +1 -0
- package/{tokenize-c40f2b57.js → tokenize-fd0af52f.js} +2 -2
- package/{tokenize-c40f2b57.js.map → tokenize-fd0af52f.js.map} +1 -1
- package/{topics-b2b77fb9.js → topics-8aa96837.js} +1 -1
- package/{topics-b2b77fb9.js.map → topics-8aa96837.js.map} +1 -1
- package/{types-4ff4177c.js → types-7f0754fd.js} +1 -1
- package/types-7f0754fd.js.map +1 -0
- package/ui/Accordion.js +2 -2
- package/ui/AccordionGroup.js +2 -2
- package/ui/AdminMessage.js +2 -2
- package/ui/Avatar.js +1 -1
- package/ui/Badge.js +4 -4
- package/ui/BottomSheet.js +1 -1
- package/ui/Button.js +2 -2
- package/ui/ChannelAvatar.js +2 -2
- package/ui/ConnectionStatus.js +4 -4
- package/ui/ContextMenu.js +5 -5
- package/ui/DateSeparator.js +3 -3
- package/ui/EmojiReactions.js +13 -13
- package/ui/FileMessageItemBody.js +6 -6
- package/ui/FileViewer.js +8 -8
- package/ui/IconButton.js +1 -1
- package/ui/Input.js +2 -2
- package/ui/Label.js +2 -2
- package/ui/LinkLabel.js +2 -2
- package/ui/MentionLabel.js +10 -10
- package/ui/MentionUserLabel.js +1 -1
- package/ui/MessageContent.js +35 -33
- package/ui/MessageContent.js.map +1 -1
- package/ui/MessageInput.js +71 -18
- package/ui/MessageInput.js.map +1 -1
- package/ui/MessageItemMenu.js +8 -8
- package/ui/MessageItemReactionMenu.js +8 -8
- package/ui/MessageSearchFileItem.js +10 -10
- package/ui/MessageSearchItem.js +8 -8
- package/ui/MessageStatus.js +10 -10
- package/ui/Modal.js +7 -7
- package/ui/OGMessageItemBody.js +14 -14
- package/ui/OpenChannelAdminMessage.js +2 -2
- package/ui/OpenChannelAvatar.js +5 -5
- package/ui/OpenchannelConversationHeader.js +6 -6
- package/ui/OpenchannelFileMessage.js +17 -17
- package/ui/OpenchannelFileMessage.js.map +1 -1
- package/ui/OpenchannelOGMessage.js +21 -21
- package/ui/OpenchannelOGMessage.js.map +1 -1
- package/ui/OpenchannelThumbnailMessage.js +16 -16
- package/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/ui/OpenchannelUserMessage.js +20 -21
- package/ui/OpenchannelUserMessage.js.map +1 -1
- package/ui/PlaceHolder.js +5 -5
- package/ui/PlaybackTime.js +2 -2
- package/ui/QuoteMessage.js +7 -7
- package/ui/QuoteMessage.js.map +1 -1
- package/ui/QuoteMessageInput.js +6 -6
- package/ui/ReactionBadge.js +2 -2
- package/ui/ReactionButton.js +4 -4
- package/ui/SortByRow.js +1 -1
- package/ui/TextButton.js +1 -1
- package/ui/TextMessageItemBody.js +14 -14
- package/ui/ThreadReplies.js +5 -5
- package/ui/ThumbnailMessageItemBody.js +6 -13
- package/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/ui/Toggle.js +1 -1
- package/ui/Tooltip.js +2 -2
- package/ui/UnknownMessageItemBody.js +6 -6
- package/ui/UserListItem.js +10 -10
- package/ui/UserProfile.js +9 -9
- package/ui/VoiceMessageItemBody.js +17 -6
- package/ui/VoiceMessageItemBody.js.map +1 -1
- package/ui/VoiceMessgeInput.js +7 -7
- package/ui/Word.js +10 -10
- package/{useDirtyGetMentions-aa730e2c.js → useDirtyGetMentions-5b631226.js} +1 -1
- package/{useDirtyGetMentions-aa730e2c.js.map → useDirtyGetMentions-5b631226.js.map} +1 -1
- package/{useLongPress-1303953d.js → useLongPress-700ef78f.js} +3 -3
- package/{useLongPress-1303953d.js.map → useLongPress-700ef78f.js.map} +1 -1
- package/useSendbirdStateContext.js +1 -1
- package/utils/message/isVoiceMessage.js +2 -2
- package/{utils-4bbbca2c.js → utils-0e2c993e.js} +1 -1
- package/{utils-4bbbca2c.js.map → utils-0e2c993e.js.map} +1 -1
- package/{utils-d86ad6ab.js → utils-6763f910.js} +1 -1
- package/{utils-d86ad6ab.js.map → utils-6763f910.js.map} +1 -1
- package/{utils-a2009c36.js → utils-8c4a9896.js} +1 -1
- package/{utils-a2009c36.js.map → utils-8c4a9896.js.map} +1 -1
- package/{utils-30d3ca65.js → utils-9de25bcb.js} +2 -2
- package/{utils-30d3ca65.js.map → utils-9de25bcb.js.map} +1 -1
- package/{uuid-1adedf62.js → uuid-eadf9a09.js} +1 -1
- package/{uuid-1adedf62.js.map → uuid-eadf9a09.js.map} +1 -1
- package/withSendbird.js +1 -1
- package/ChannelProvider-910bbc1f.js.map +0 -1
- package/MediaQueryContext-11f0e43f.js.map +0 -1
- package/MemberList-061d186f.js.map +0 -1
- package/ThreadProvider-3a4a4db0.js.map +0 -1
- package/VoiceMessageInputWrapper-dc459df1.js.map +0 -1
- package/_rollupPluginBabelHelpers-6bb0305c.js.map +0 -1
- package/cjs/ChannelProvider-da7b08a1.js.map +0 -1
- package/cjs/MediaQueryContext-f1e8fdbc.js.map +0 -1
- package/cjs/ThreadProvider-654b9db0.js.map +0 -1
- package/cjs/VoiceMessageInputWrapper-2aaed45b.js.map +0 -1
- package/cjs/_rollupPluginBabelHelpers-5fad415d.js.map +0 -1
- package/cjs/index-12ce8274.js.map +0 -1
- package/cjs/index-33b67e46.js.map +0 -1
- package/cjs/index-6e05ddef.js.map +0 -1
- package/cjs/stringSet-d7f78de0.js.map +0 -1
- package/cjs/types-ef51254c.js.map +0 -1
- package/index-5c985608.js.map +0 -1
- package/index-7eb65acf.js.map +0 -1
- package/index-aca30408.js.map +0 -1
- package/stringSet-13bbd4a2.js.map +0 -1
- package/types-4ff4177c.js.map +0 -1
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
|
-
var index$1 = require('../../index-
|
|
5
|
-
var LocalizationContext = require('../../LocalizationContext-
|
|
4
|
+
var index$1 = require('../../index-f7b329d2.js');
|
|
5
|
+
var LocalizationContext = require('../../LocalizationContext-bdc95952.js');
|
|
6
6
|
var ui_DateSeparator = require('../../ui/DateSeparator.js');
|
|
7
|
-
var ui_Label = require('../../index-
|
|
8
|
-
var RemoveMessageModal = require('../../RemoveMessageModal-
|
|
7
|
+
var ui_Label = require('../../index-e766176d.js');
|
|
8
|
+
var RemoveMessageModal = require('../../RemoveMessageModal-f4d8af47.js');
|
|
9
9
|
var ui_FileViewer = require('../../ui/FileViewer.js');
|
|
10
|
-
var Thread_context = require('../../ThreadProvider-
|
|
10
|
+
var Thread_context = require('../../ThreadProvider-17ad9d05.js');
|
|
11
11
|
var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
|
|
12
12
|
var Channel_components_SuggestedMentionList = require('../../Channel/components/SuggestedMentionList.js');
|
|
13
13
|
var ui_MessageInput = require('../../ui/MessageInput.js');
|
|
14
14
|
var Thread_context_types = require('../context/types.js');
|
|
15
|
-
var _const = require('../../const-
|
|
16
|
-
var _rollupPluginBabelHelpers = require('../../_rollupPluginBabelHelpers-
|
|
15
|
+
var _const = require('../../const-73fbd467.js');
|
|
16
|
+
var _rollupPluginBabelHelpers = require('../../_rollupPluginBabelHelpers-d68672d6.js');
|
|
17
17
|
var ui_ContextMenu = require('../../ui/ContextMenu.js');
|
|
18
18
|
var ui_Avatar = require('../../ui/Avatar.js');
|
|
19
|
-
var UserProfileContext = require('../../UserProfileContext-
|
|
19
|
+
var UserProfileContext = require('../../UserProfileContext-27a5718b.js');
|
|
20
20
|
var ui_UserProfile = require('../../ui/UserProfile.js');
|
|
21
21
|
var ui_MessageItemMenu = require('../../ui/MessageItemMenu.js');
|
|
22
22
|
var ui_MessageItemReactionMenu = require('../../ui/MessageItemReactionMenu.js');
|
|
23
|
-
var index = require('../../index-
|
|
24
|
-
var ui_MessageStatus = require('../../index-
|
|
23
|
+
var index = require('../../index-7a9d2024.js');
|
|
24
|
+
var ui_MessageStatus = require('../../index-ca51d316.js');
|
|
25
25
|
var ui_EmojiReactions = require('../../ui/EmojiReactions.js');
|
|
26
26
|
var ui_TextMessageItemBody = require('../../ui/TextMessageItemBody.js');
|
|
27
27
|
var ui_OGMessageItemBody = require('../../ui/OGMessageItemBody.js');
|
|
@@ -29,45 +29,47 @@ var ui_FileMessageItemBody = require('../../ui/FileMessageItemBody.js');
|
|
|
29
29
|
var ui_ThumbnailMessageItemBody = require('../../ui/ThumbnailMessageItemBody.js');
|
|
30
30
|
var ui_UnknownMessageItemBody = require('../../ui/UnknownMessageItemBody.js');
|
|
31
31
|
var ui_VoiceMessageItemBody = require('../../ui/VoiceMessageItemBody.js');
|
|
32
|
-
var MediaQueryContext = require('../../MediaQueryContext-
|
|
33
|
-
var useLongPress = require('../../useLongPress-
|
|
34
|
-
var index$2 = require('../../index-
|
|
35
|
-
var types = require('../../types-
|
|
36
|
-
var useDirtyGetMentions = require('../../useDirtyGetMentions-
|
|
37
|
-
var Channel_context = require('../../ChannelProvider-
|
|
38
|
-
require('../../index-
|
|
39
|
-
require('../../stringSet-
|
|
40
|
-
require('../../color-
|
|
32
|
+
var MediaQueryContext = require('../../MediaQueryContext-28b81968.js');
|
|
33
|
+
var useLongPress = require('../../useLongPress-5174fd42.js');
|
|
34
|
+
var index$2 = require('../../index-89314643.js');
|
|
35
|
+
var types = require('../../types-2138565d.js');
|
|
36
|
+
var useDirtyGetMentions = require('../../useDirtyGetMentions-9945a1c0.js');
|
|
37
|
+
var Channel_context = require('../../ChannelProvider-54bb28cc.js');
|
|
38
|
+
require('../../index-71def451.js');
|
|
39
|
+
require('../../stringSet-0cddd94a.js');
|
|
40
|
+
require('../../color-bb9924cb.js');
|
|
41
41
|
require('prop-types');
|
|
42
42
|
require('../../ui/Modal.js');
|
|
43
43
|
require('react-dom');
|
|
44
|
-
require('../../index-
|
|
44
|
+
require('../../index-77c91851.js');
|
|
45
45
|
require('../../ui/Button.js');
|
|
46
46
|
require('../../ui/Icon.js');
|
|
47
47
|
require('../../ui/IconButton.js');
|
|
48
48
|
require('../../utils/message/getOutgoingMessageState.js');
|
|
49
49
|
require('../../ui/ImageRenderer.js');
|
|
50
|
-
require('../../uuid-
|
|
50
|
+
require('../../uuid-075367f7.js');
|
|
51
51
|
require('@sendbird/chat');
|
|
52
|
-
require('../../topics-
|
|
52
|
+
require('../../topics-3e3eb86d.js');
|
|
53
53
|
require('@sendbird/chat/groupChannel');
|
|
54
54
|
require('@sendbird/chat/message');
|
|
55
|
-
require('../../consts-
|
|
55
|
+
require('../../consts-ccfad912.js');
|
|
56
56
|
require('../../withSendbird.js');
|
|
57
|
-
require('../../const-
|
|
58
|
-
require('../../compareIds-
|
|
57
|
+
require('../../const-44ddbe54.js');
|
|
58
|
+
require('../../compareIds-96cdd2a0.js');
|
|
59
|
+
require('../../resolvedReplyType-42ff3f75.js');
|
|
59
60
|
require('dompurify');
|
|
60
|
-
require('../../consts-
|
|
61
|
-
require('../../consts-
|
|
62
|
-
require('../../consts-
|
|
63
|
-
require('../../tokenize-
|
|
61
|
+
require('../../consts-40680de5.js');
|
|
62
|
+
require('../../consts-2dfc1883.js');
|
|
63
|
+
require('../../consts-4fbdb1d6.js');
|
|
64
|
+
require('../../tokenize-75ed25db.js');
|
|
65
|
+
require('../../index.module-3e11d4a7.js');
|
|
64
66
|
require('../../ui/SortByRow.js');
|
|
65
67
|
require('../../sendbirdSelectors.js');
|
|
66
|
-
require('../../utils-
|
|
68
|
+
require('../../utils-37a5dfde.js');
|
|
67
69
|
require('../../ui/ReactionButton.js');
|
|
68
70
|
require('../../ui/Loader.js');
|
|
69
|
-
require('../../index-
|
|
70
|
-
require('../../index-
|
|
71
|
+
require('../../index-b6a49cba.js');
|
|
72
|
+
require('../../index-4ff12eb9.js');
|
|
71
73
|
require('../../ui/ReactionBadge.js');
|
|
72
74
|
require('../../ui/BottomSheet.js');
|
|
73
75
|
require('../../ui/UserListItem.js');
|
|
@@ -76,14 +78,13 @@ require('../../ui/Checkbox.js');
|
|
|
76
78
|
require('../../ui/Tooltip.js');
|
|
77
79
|
require('../../ui/TooltipWrapper.js');
|
|
78
80
|
require('../../Message/context.js');
|
|
79
|
-
require('../../index-
|
|
80
|
-
require('../../index.module-e5552393.js');
|
|
81
|
+
require('../../index-adcca875.js');
|
|
81
82
|
require('../../ui/MentionLabel.js');
|
|
82
83
|
require('../../ui/LinkLabel.js');
|
|
83
84
|
require('../../ui/TextButton.js');
|
|
84
85
|
require('../../ui/ProgressBar.js');
|
|
85
86
|
require('../../VoicePlayer/useVoicePlayer.js');
|
|
86
|
-
require('../../index-
|
|
87
|
+
require('../../index-dada883d.js');
|
|
87
88
|
require('../../VoiceRecorder/context.js');
|
|
88
89
|
require('../../ui/PlaybackTime.js');
|
|
89
90
|
|
|
@@ -121,6 +122,9 @@ function ThreadListItemContent(_ref) {
|
|
|
121
122
|
const {
|
|
122
123
|
dateLocale
|
|
123
124
|
} = LocalizationContext.useLocalization();
|
|
125
|
+
const {
|
|
126
|
+
config
|
|
127
|
+
} = useSendbirdStateContext();
|
|
124
128
|
const [supposedHover, setSupposedHover] = React.useState(false);
|
|
125
129
|
const {
|
|
126
130
|
disableUserProfile,
|
|
@@ -131,6 +135,7 @@ function ThreadListItemContent(_ref) {
|
|
|
131
135
|
const useReplying = !!((replyType === 'QUOTE_REPLY' || replyType === 'THREAD') && message !== null && message !== void 0 && message.parentMessageId && message !== null && message !== void 0 && message.parentMessage && !disableQuoteMessage);
|
|
132
136
|
const supposedHoverClassName = supposedHover ? 'sendbird-mouse-hover' : '';
|
|
133
137
|
const isReactionEnabledInChannel = isReactionEnabled && !(channel !== null && channel !== void 0 && channel.isEphemeral);
|
|
138
|
+
const isOgMessageEnabledInGroupChannel = channel.isGroupChannel() && config.groupChannel.enableOgtag;
|
|
134
139
|
|
|
135
140
|
// Mobile
|
|
136
141
|
const mobileMenuRef = React.useRef(null);
|
|
@@ -225,13 +230,13 @@ function ThreadListItemContent(_ref) {
|
|
|
225
230
|
}, /*#__PURE__*/React__default["default"].createElement(ui_MessageStatus.MessageStatus, {
|
|
226
231
|
message: message,
|
|
227
232
|
channel: channel
|
|
228
|
-
}))), index.
|
|
233
|
+
}))), isOgMessageEnabledInGroupChannel && index.isOGMessage(message) ? /*#__PURE__*/React__default["default"].createElement(ui_OGMessageItemBody, {
|
|
229
234
|
className: "sendbird-thread-list-item-content__middle__message-item-body",
|
|
230
235
|
message: message,
|
|
231
236
|
isByMe: isByMe,
|
|
232
237
|
isMentionEnabled: isMentionEnabled,
|
|
233
238
|
isReactionEnabled: isReactionEnabledInChannel
|
|
234
|
-
})
|
|
239
|
+
}) : index.isTextMessage(message) && /*#__PURE__*/React__default["default"].createElement(ui_TextMessageItemBody, {
|
|
235
240
|
className: "sendbird-thread-list-item-content__middle__message-item-body",
|
|
236
241
|
message: message,
|
|
237
242
|
isByMe: isByMe,
|
|
@@ -265,7 +270,7 @@ function ThreadListItemContent(_ref) {
|
|
|
265
270
|
isByMe: isByMe,
|
|
266
271
|
isReactionEnabled: isReactionEnabledInChannel
|
|
267
272
|
}), isReactionEnabledInChannel && (message === null || message === void 0 ? void 0 : (_message$reactions = message.reactions) === null || _message$reactions === void 0 ? void 0 : _message$reactions.length) > 0 && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
268
|
-
className: index.getClassName(['sendbird-thread-list-item-content-reactions', !isByMe || index.isThumbnailMessage(message) || index.isOGMessage(message) ? '' : 'primary'])
|
|
273
|
+
className: index.getClassName(['sendbird-thread-list-item-content-reactions', !isByMe || index.isThumbnailMessage(message) || isOgMessageEnabledInGroupChannel && index.isOGMessage(message) ? '' : 'primary'])
|
|
269
274
|
}, /*#__PURE__*/React__default["default"].createElement(ui_EmojiReactions, {
|
|
270
275
|
userId: userId,
|
|
271
276
|
message: message,
|
|
@@ -457,6 +462,7 @@ function ThreadListItem(_ref) {
|
|
|
457
462
|
maxSuggestionCount: userMention === null || userMention === void 0 ? void 0 : userMention.maxSuggestionCount
|
|
458
463
|
}), /*#__PURE__*/React__default["default"].createElement(ui_MessageInput, {
|
|
459
464
|
isEdit: true,
|
|
465
|
+
channel: currentChannel,
|
|
460
466
|
disabled: disabled,
|
|
461
467
|
ref: editMessageInputRef,
|
|
462
468
|
mentionSelectedUser: selectedUser,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThreadListItem.js","sources":["../../../../src/modules/Thread/components/ThreadList/ThreadListItemContent.tsx","../../../../src/modules/Thread/components/ThreadList/ThreadListItem.tsx"],"sourcesContent":["import React, { useContext, useRef, useState } from 'react';\nimport { EmojiContainer } from '@sendbird/chat';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\n\nimport './ThreadListItemContent.scss';\n\nimport { ReplyType } from '../../../../types';\nimport ContextMenu, { MenuItems } from '../../../../ui/ContextMenu';\nimport Avatar from '../../../../ui/Avatar';\nimport { UserProfileContext } from '../../../../lib/UserProfileContext';\nimport { UserProfileContextInterface } from '../../../../ui/MessageContent';\nimport UserProfile from '../../../../ui/UserProfile';\nimport MessageItemMenu from '../../../../ui/MessageItemMenu';\nimport MessageItemReactionMenu from '../../../../ui/MessageItemReactionMenu';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { getClassName, getSenderName, getUIKitMessageType, getUIKitMessageTypes, isOGMessage, isTextMessage, isThumbnailMessage, isVoiceMessage } from '../../../../utils';\nimport MessageStatus from '../../../../ui/MessageStatus';\nimport EmojiReactions from '../../../../ui/EmojiReactions';\nimport format from 'date-fns/format';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport TextMessageItemBody from '../../../../ui/TextMessageItemBody';\nimport OGMessageItemBody from '../../../../ui/OGMessageItemBody';\nimport FileMessageItemBody from '../../../../ui/FileMessageItemBody';\nimport ThumbnailMessageItemBody from '../../../../ui/ThumbnailMessageItemBody';\nimport UnknownMessageItemBody from '../../../../ui/UnknownMessageItemBody';\nimport VoiceMessageItemBody from '../../../../ui/VoiceMessageItemBody';\nimport { useMediaQueryContext } from '../../../../lib/MediaQueryContext';\nimport useLongPress from '../../../../hooks/useLongPress';\nimport MobileMenu from '../../../../ui/MobileMenu';\n\nexport interface ThreadListItemContentProps {\n className?: string;\n userId: string;\n channel: GroupChannel;\n message: UserMessage | FileMessage;\n disabled?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n isMentionEnabled?: boolean;\n isReactionEnabled?: boolean;\n disableQuoteMessage?: boolean;\n replyType?: ReplyType;\n nicknamesMap?: Map<string, string>;\n emojiContainer?: EmojiContainer;\n showEdit?: (bool: boolean) => void;\n showRemove?: (bool: boolean) => void;\n showFileViewer?: (bool: boolean) => void;\n resendMessage?: (message: UserMessage | FileMessage) => void;\n toggleReaction?: (message: UserMessage | FileMessage, reactionKey: string, isReacted: boolean) => void;\n onReplyInThread?: (props: { message: UserMessage | FileMessage }) => void;\n}\n\nexport default function ThreadListItemContent({\n className,\n userId,\n channel,\n message,\n disabled = false,\n chainTop = false,\n chainBottom = false,\n isMentionEnabled = false,\n isReactionEnabled = false,\n disableQuoteMessage = false,\n replyType,\n nicknamesMap,\n emojiContainer,\n showEdit,\n showRemove,\n showFileViewer,\n resendMessage,\n toggleReaction,\n onReplyInThread,\n}: ThreadListItemContentProps): React.ReactElement {\n const messageTypes = getUIKitMessageTypes();\n const { isMobile } = useMediaQueryContext();\n const { dateLocale } = useLocalization();\n const [supposedHover, setSupposedHover] = useState(false);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext<UserProfileContextInterface>(UserProfileContext);\n const avatarRef = useRef(null);\n\n const isByMe = (userId === (message as UserMessage | FileMessage)?.sender?.userId)\n || ((message as UserMessage | FileMessage)?.sendingStatus === 'pending')\n || ((message as UserMessage | FileMessage)?.sendingStatus === 'failed');\n const useReplying = !!((replyType === 'QUOTE_REPLY' || replyType === 'THREAD')\n && message?.parentMessageId && message?.parentMessage\n && !disableQuoteMessage\n );\n const supposedHoverClassName = supposedHover ? 'sendbird-mouse-hover' : '';\n const isReactionEnabledInChannel = isReactionEnabled && !channel?.isEphemeral;\n\n // Mobile\n const mobileMenuRef = useRef(null);\n const [showMobileMenu, setShowMobileMenu] = useState(false);\n const longPress = useLongPress({\n onLongPress: () => {\n if (isMobile) {\n setShowMobileMenu(true);\n }\n },\n }, {\n shouldPreventDefault: false,\n });\n\n return (\n <div\n className={`sendbird-thread-list-item-content ${className} ${isByMe ? 'outgoing' : 'incoming'}`}\n ref={mobileMenuRef}\n >\n <div className={`sendbird-thread-list-item-content__left ${isReactionEnabledInChannel ? 'use-reaction' : ''} ${isByMe ? 'outgoing' : 'incoming'}`}>\n {(!isByMe && !chainBottom) && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-thread-list-item-content__left__avatar\"\n src={channel?.members?.find((member) => member?.userId === message?.sender?.userId)?.profileUrl || message?.sender?.profileUrl || ''}\n ref={avatarRef}\n width=\"28px\"\n height=\"28px\"\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown?.();\n }\n }}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={avatarRef}\n parentContainRef={avatarRef}\n closeDropdown={closeDropdown}\n style={{ paddingTop: '0px', paddingBottom: '0px' }}\n >\n {renderUserProfile\n ? renderUserProfile({ user: message?.sender, close: closeDropdown })\n : <UserProfile user={message?.sender} onSuccess={closeDropdown} />\n }\n </MenuItems>\n )}\n />\n )}\n {(isByMe && !isMobile) && (\n <div\n className={`sendbird-thread-list-item-content-menu ${isReactionEnabledInChannel ? 'use-reaction' : ''\n } ${isByMe ? 'outgoing' : 'incoming'\n } ${supposedHoverClassName}`}\n >\n <MessageItemMenu\n className=\"sendbird-thread-list-item-content-menu__normal-menu\"\n channel={channel}\n message={message as UserMessage | FileMessage}\n isByMe={isByMe}\n replyType={replyType}\n disabled={disabled}\n showEdit={showEdit}\n showRemove={showRemove}\n resendMessage={resendMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={onReplyInThread}\n />\n {isReactionEnabledInChannel && (\n <MessageItemReactionMenu\n className=\"sendbird-thread-list-item-content-menu__reaction-menu\"\n message={message as UserMessage | FileMessage}\n userId={userId}\n spaceFromTrigger={{}}\n emojiContainer={emojiContainer}\n toggleReaction={toggleReaction}\n setSupposedHover={setSupposedHover}\n />\n )}\n </div>\n )}\n </div>\n <div\n className=\"sendbird-thread-list-item-content__middle\"\n {...(isMobile) ? { ...longPress } : {}}\n >\n {(!isByMe && !chainTop && !useReplying) && (\n <Label\n className=\"sendbird-thread-list-item-content__middle__sender-name\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {\n channel?.members?.find((member) => member?.userId === message?.sender?.userId)?.nickname\n || getSenderName(message as UserMessage | FileMessage)\n // TODO: Divide getting profileUrl logic to utils\n }\n </Label>\n )}\n <div className={getClassName(['sendbird-thread-list-item-content__middle__body-container'])} >\n {/* message status component */}\n {(isByMe && !chainBottom) && (\n <div className={getClassName(['sendbird-thread-list-item-content__middle__body-container__created-at', 'left', supposedHoverClassName])}>\n <div className=\"sendbird-thread-list-item-content__middle__body-container__created-at__component-container\">\n <MessageStatus\n message={message as UserMessage | FileMessage}\n channel={channel}\n />\n </div>\n </div>\n )}\n {/* message item body components */}\n {isTextMessage(message as UserMessage) && (\n <TextMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n isMentionEnabled={isMentionEnabled}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {(isOGMessage(message as UserMessage)) && (\n <OGMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n isMentionEnabled={isMentionEnabled}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {isVoiceMessage(message as FileMessage) && (\n <VoiceMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n channelUrl={channel?.url}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.FILE) && (\n <FileMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n truncateLimit={isByMe ? 18 : 14}\n />\n )}\n {(isThumbnailMessage(message as FileMessage)) && (\n <ThumbnailMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n showFileViewer={showFileViewer}\n style={{\n width: isMobile ? '100%' : '200px',\n height: '148px',\n }}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.UNKNOWN) && (\n <UnknownMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {/* reactions */}\n {(isReactionEnabledInChannel && message?.reactions?.length > 0) && (\n <div className={getClassName([\n 'sendbird-thread-list-item-content-reactions',\n (!isByMe || isThumbnailMessage(message as FileMessage) || isOGMessage(message as UserMessage)) ? '' : 'primary',\n ])}>\n <EmojiReactions\n userId={userId}\n message={message as UserMessage | FileMessage}\n channel={channel}\n isByMe={isByMe}\n emojiContainer={emojiContainer}\n memberNicknamesMap={nicknamesMap}\n toggleReaction={toggleReaction}\n />\n </div>\n )}\n {(!isByMe && !chainBottom) && (\n <Label\n className={getClassName(['sendbird-thread-list-item-content__middle__body-container__created-at', 'right', supposedHoverClassName])}\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {format(message?.createdAt || 0, 'p', {\n locale: dateLocale,\n })}\n </Label>\n )}\n </div>\n </div>\n <div\n className={`sendbird-thread-list-item-content__right ${chainTop ? 'chain-top' : ''\n } ${isByMe ? 'outgoing' : 'incoming'}`}\n >\n {(!isByMe && !isMobile) && (\n <div className={`sendbird-thread-list-item-content-menu ${supposedHoverClassName}`}>\n {isReactionEnabledInChannel && (\n <MessageItemReactionMenu\n className=\"sendbird-thread-list-item-content-menu__reaction-menu\"\n message={message as UserMessage | FileMessage}\n userId={userId}\n spaceFromTrigger={{}}\n emojiContainer={emojiContainer}\n toggleReaction={toggleReaction}\n setSupposedHover={setSupposedHover}\n />\n )}\n <MessageItemMenu\n className=\"sendbird-thread-list-item-content-menu__normal-menu\"\n channel={channel}\n message={message as UserMessage | FileMessage}\n isByMe={isByMe}\n replyType={replyType}\n disabled={disabled}\n showRemove={showRemove}\n resendMessage={resendMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={onReplyInThread}\n />\n </div>\n )}\n </div>\n {showMobileMenu && (\n <MobileMenu\n parentRef={mobileMenuRef}\n channel={channel}\n message={message}\n userId={userId}\n replyType={replyType}\n hideMenu={() => {\n setShowMobileMenu(false);\n }}\n isReactionEnabled={isReactionEnabled}\n isByMe={isByMe}\n emojiContainer={emojiContainer}\n showEdit={showEdit}\n showRemove={showRemove}\n toggleReaction={toggleReaction}\n isOpenedFromThread\n />\n )}\n </div>\n );\n}\n","import React, { useMemo, useState, useRef, useEffect, useLayoutEffect } from 'react';\nimport format from 'date-fns/format';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport RemoveMessage from '../RemoveMessageModal';\nimport FileViewer from '../../../../ui/FileViewer';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport SuggestedMentionList from '../../../Channel/components/SuggestedMentionList';\nimport MessageInput from '../../../../ui/MessageInput';\nimport { ThreadListStateTypes } from '../../types';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport ThreadListItemContent from './ThreadListItemContent';\nimport { Role } from '../../../../lib/types';\nimport { useDirtyGetMentions } from '../../../Message/hooks/useDirtyGetMentions';\nimport { getIsReactionEnabled } from '../../../../utils/getIsReactionEnabled';\n\nexport interface ThreadListItemProps {\n className?: string;\n message: UserMessage | FileMessage;\n chainTop?: boolean;\n chainBottom?: boolean;\n hasSeparator?: boolean;\n renderCustomSeparator?: (props: { message: UserMessage | FileMessage }) => React.ReactElement;\n handleScroll?: () => void;\n}\n\nexport default function ThreadListItem({\n className,\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n renderCustomSeparator,\n handleScroll,\n}: ThreadListItemProps): React.ReactElement {\n const { stores, config } = useSendbirdStateContext();\n const {\n isReactionEnabled,\n isMentionEnabled,\n isOnline,\n replyType,\n userMention,\n logger,\n } = config;\n const userId = stores?.userStore?.user?.userId;\n const { dateLocale } = useLocalization();\n const threadContext = useThreadContext?.();\n const {\n currentChannel,\n nicknamesMap,\n emojiContainer,\n toggleReaction,\n threadListState,\n updateMessage,\n resendMessage,\n deleteMessage,\n isMuted,\n isChannelFrozen,\n } = threadContext;\n const openingMessage = threadContext?.message;\n\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const usingReaction = getIsReactionEnabled({\n globalLevel: isReactionEnabled,\n isSuper: currentChannel.isSuper,\n isBroadcast: currentChannel.isBroadcast,\n });\n\n // Move to message\n const messageScrollRef = useRef(null);\n useLayoutEffect(() => {\n if (openingMessage?.messageId === message?.messageId && messageScrollRef?.current) {\n messageScrollRef.current?.scrollIntoView({ block: 'center', inline: 'center' });\n }\n }, [openingMessage, messageScrollRef?.current]);\n\n // reactions\n useLayoutEffect(() => {\n handleScroll?.();\n }, [showEdit, message?.reactions?.length]);\n\n // mention\n const editMessageInputRef = useRef(null);\n const [mentionNickname, setMentionNickname] = useState('');\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isMuted\n && !(isChannelFrozen && !(currentChannel.myRole === Role.OPERATOR));\n\n const mentionNodes = useDirtyGetMentions({ ref: editMessageInputRef }, { logger });\n const ableMention = mentionNodes?.length < userMention?.maxMentionCount;\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n // edit input\n const disabled = !(threadListState === ThreadListStateTypes.INITIALIZED)\n || !isOnline\n || isMuted\n || isChannelFrozen;\n\n // memorize\n const MemorizedSeparator = useMemo(() => {\n if (typeof renderCustomSeparator === 'function') {\n return renderCustomSeparator?.({ message });\n }\n }, [message, renderCustomSeparator]);\n\n // Edit message\n if (showEdit && message.isUserMessage()) {\n return (\n <>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n // renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={userMention?.maxMentionCount}\n maxSuggestionCount={userMention?.maxSuggestionCount}\n />\n )\n }\n <MessageInput\n isEdit\n disabled={disabled}\n ref={editMessageInputRef}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n message={message}\n onStartTyping={() => {\n currentChannel?.startTyping?.();\n }}\n onUpdateMessage={({ messageId, message, mentionTemplate }) => {\n updateMessage({\n messageId,\n message,\n mentionedUsers,\n mentionTemplate,\n });\n setShowEdit(false);\n currentChannel?.endTyping?.();\n }}\n onCancelEdit={() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setMentionSuggestedUsers([]);\n setShowEdit(false);\n currentChannel?.endTyping?.();\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n </>\n );\n }\n\n return (\n <div\n ref={messageScrollRef}\n className={`sendbird-thread-list-item ${className}`}\n >\n {/* date separator */}\n {\n hasSeparator && message?.createdAt && (MemorizedSeparator || (\n <DateSeparator>\n <Label\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {format(message?.createdAt, 'MMM dd, yyyy', { locale: dateLocale })}\n </Label>\n </DateSeparator>\n ))\n }\n <ThreadListItemContent\n userId={userId}\n channel={currentChannel}\n message={message}\n chainTop={chainTop}\n chainBottom={chainBottom}\n isReactionEnabled={usingReaction}\n isMentionEnabled={isMentionEnabled}\n disableQuoteMessage\n replyType={replyType}\n nicknamesMap={nicknamesMap}\n emojiContainer={emojiContainer}\n resendMessage={resendMessage}\n showRemove={setShowRemove}\n showFileViewer={setShowFileViewer}\n toggleReaction={toggleReaction}\n showEdit={setShowEdit}\n />\n {/* modal */}\n {showRemove && (\n <RemoveMessage\n message={message}\n onCancel={() => setShowRemove(false)}\n />\n )}\n {showFileViewer && (\n <FileViewer\n message={message as FileMessage}\n isByMe={message?.sender?.userId === userId}\n onClose={() => setShowFileViewer(false)}\n onDelete={() => {\n deleteMessage(message);\n setShowFileViewer(false);\n }}\n />\n )}\n </div>\n );\n}\n"],"names":["ThreadListItemContent","_ref","_sender","_channel$members2","_channel$members2$fin","_message$reactions","className","userId","channel","message","disabled","chainTop","chainBottom","isMentionEnabled","isReactionEnabled","disableQuoteMessage","replyType","nicknamesMap","emojiContainer","showEdit","showRemove","showFileViewer","resendMessage","toggleReaction","onReplyInThread","messageTypes","getUIKitMessageTypes","isMobile","useMediaQueryContext","dateLocale","useLocalization","supposedHover","setSupposedHover","useState","disableUserProfile","renderUserProfile","useContext","UserProfileContext","avatarRef","useRef","isByMe","sender","sendingStatus","useReplying","parentMessageId","parentMessage","supposedHoverClassName","isReactionEnabledInChannel","isEphemeral","mobileMenuRef","showMobileMenu","setShowMobileMenu","longPress","useLongPress","onLongPress","shouldPreventDefault","React","createElement","ref","ContextMenu","menuTrigger","toggleDropdown","_channel$members","_channel$members$find","_message$sender2","Avatar","src","members","find","member","_message$sender","profileUrl","width","height","onClick","menuItems","closeDropdown","MenuItems","parentRef","parentContainRef","style","paddingTop","paddingBottom","user","close","UserProfile","onSuccess","MessageItemMenu","MessageItemReactionMenu","spaceFromTrigger","_extends","_objectSpread","Label","type","LabelTypography","CAPTION_2","color","LabelColors","ONBACKGROUND_2","_message$sender3","nickname","getSenderName","getClassName","MessageStatus","isTextMessage","TextMessageItemBody","isOGMessage","OGMessageItemBody","isVoiceMessage","VoiceMessageItemBody","channelUrl","url","getUIKitMessageType","FILE","FileMessageItemBody","truncateLimit","isThumbnailMessage","ThumbnailMessageItemBody","UNKNOWN","UnknownMessageItemBody","reactions","length","EmojiReactions","memberNicknamesMap","CAPTION_3","format","createdAt","locale","MobileMenu","hideMenu","isOpenedFromThread","ThreadListItem","_stores$userStore","_stores$userStore$use","hasSeparator","renderCustomSeparator","handleScroll","stores","config","useSendbirdStateContext","isOnline","userMention","logger","userStore","threadContext","useThreadContext","currentChannel","threadListState","updateMessage","deleteMessage","isMuted","isChannelFrozen","openingMessage","setShowEdit","setShowRemove","setShowFileViewer","usingReaction","getIsReactionEnabled","globalLevel","isSuper","isBroadcast","messageScrollRef","useLayoutEffect","messageId","current","_messageScrollRef$cur","scrollIntoView","block","inline","editMessageInputRef","mentionNickname","setMentionNickname","mentionedUsers","setMentionedUsers","mentionedUserIds","setMentionedUserIds","messageInputEvent","setMessageInputEvent","selectedUser","setSelectedUser","mentionSuggestedUsers","setMentionSuggestedUsers","displaySuggestedMentionList","myRole","Role","OPERATOR","mentionNodes","useDirtyGetMentions","ableMention","maxMentionCount","useEffect","filter","_ref2","i","indexOf","splice","ThreadListStateTypes","INITIALIZED","MemorizedSeparator","useMemo","isUserMessage","Fragment","SuggestedMentionList","targetNickname","inputEvent","onUserItemClick","onFocusItemChange","onFetchUsers","users","ableAddMention","maxSuggestionCount","MessageInput","isEdit","mentionSelectedUser","onStartTyping","_currentChannel$start","startTyping","call","onUpdateMessage","_ref3","_currentChannel$endTy","mentionTemplate","endTyping","onCancelEdit","_currentChannel$endTy2","onUserMentioned","onMentionStringChange","mentionText","onMentionedUserIdsUpdated","userIds","onKeyDown","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","DateSeparator","RemoveMessage","onCancel","FileViewer","onClose","onDelete"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ThreadListItem.js","sources":["../../../../src/modules/Thread/components/ThreadList/ThreadListItemContent.tsx","../../../../src/modules/Thread/components/ThreadList/ThreadListItem.tsx"],"sourcesContent":["import React, { useContext, useRef, useState } from 'react';\nimport { EmojiContainer } from '@sendbird/chat';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\n\nimport './ThreadListItemContent.scss';\n\nimport { ReplyType } from '../../../../types';\nimport ContextMenu, { MenuItems } from '../../../../ui/ContextMenu';\nimport Avatar from '../../../../ui/Avatar';\nimport { UserProfileContext } from '../../../../lib/UserProfileContext';\nimport { UserProfileContextInterface } from '../../../../ui/MessageContent';\nimport UserProfile from '../../../../ui/UserProfile';\nimport MessageItemMenu from '../../../../ui/MessageItemMenu';\nimport MessageItemReactionMenu from '../../../../ui/MessageItemReactionMenu';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { getClassName, getSenderName, getUIKitMessageType, getUIKitMessageTypes, isOGMessage, isTextMessage, isThumbnailMessage, isVoiceMessage } from '../../../../utils';\nimport MessageStatus from '../../../../ui/MessageStatus';\nimport EmojiReactions from '../../../../ui/EmojiReactions';\nimport format from 'date-fns/format';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport TextMessageItemBody from '../../../../ui/TextMessageItemBody';\nimport OGMessageItemBody from '../../../../ui/OGMessageItemBody';\nimport FileMessageItemBody from '../../../../ui/FileMessageItemBody';\nimport ThumbnailMessageItemBody from '../../../../ui/ThumbnailMessageItemBody';\nimport UnknownMessageItemBody from '../../../../ui/UnknownMessageItemBody';\nimport VoiceMessageItemBody from '../../../../ui/VoiceMessageItemBody';\nimport { useMediaQueryContext } from '../../../../lib/MediaQueryContext';\nimport useLongPress from '../../../../hooks/useLongPress';\nimport MobileMenu from '../../../../ui/MobileMenu';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nexport interface ThreadListItemContentProps {\n className?: string;\n userId: string;\n channel: GroupChannel;\n message: UserMessage | FileMessage;\n disabled?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n isMentionEnabled?: boolean;\n isReactionEnabled?: boolean;\n disableQuoteMessage?: boolean;\n replyType?: ReplyType;\n nicknamesMap?: Map<string, string>;\n emojiContainer?: EmojiContainer;\n showEdit?: (bool: boolean) => void;\n showRemove?: (bool: boolean) => void;\n showFileViewer?: (bool: boolean) => void;\n resendMessage?: (message: UserMessage | FileMessage) => void;\n toggleReaction?: (message: UserMessage | FileMessage, reactionKey: string, isReacted: boolean) => void;\n onReplyInThread?: (props: { message: UserMessage | FileMessage }) => void;\n}\n\nexport default function ThreadListItemContent({\n className,\n userId,\n channel,\n message,\n disabled = false,\n chainTop = false,\n chainBottom = false,\n isMentionEnabled = false,\n isReactionEnabled = false,\n disableQuoteMessage = false,\n replyType,\n nicknamesMap,\n emojiContainer,\n showEdit,\n showRemove,\n showFileViewer,\n resendMessage,\n toggleReaction,\n onReplyInThread,\n}: ThreadListItemContentProps): React.ReactElement {\n const messageTypes = getUIKitMessageTypes();\n const { isMobile } = useMediaQueryContext();\n const { dateLocale } = useLocalization();\n const { config } = useSendbirdStateContext();\n const [supposedHover, setSupposedHover] = useState(false);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext<UserProfileContextInterface>(UserProfileContext);\n const avatarRef = useRef(null);\n\n const isByMe = (userId === (message as UserMessage | FileMessage)?.sender?.userId)\n || ((message as UserMessage | FileMessage)?.sendingStatus === 'pending')\n || ((message as UserMessage | FileMessage)?.sendingStatus === 'failed');\n const useReplying = !!((replyType === 'QUOTE_REPLY' || replyType === 'THREAD')\n && message?.parentMessageId && message?.parentMessage\n && !disableQuoteMessage\n );\n const supposedHoverClassName = supposedHover ? 'sendbird-mouse-hover' : '';\n const isReactionEnabledInChannel = isReactionEnabled && !channel?.isEphemeral;\n const isOgMessageEnabledInGroupChannel = channel.isGroupChannel() && config.groupChannel.enableOgtag;\n\n // Mobile\n const mobileMenuRef = useRef(null);\n const [showMobileMenu, setShowMobileMenu] = useState(false);\n const longPress = useLongPress({\n onLongPress: () => {\n if (isMobile) {\n setShowMobileMenu(true);\n }\n },\n }, {\n shouldPreventDefault: false,\n });\n\n return (\n <div\n className={`sendbird-thread-list-item-content ${className} ${isByMe ? 'outgoing' : 'incoming'}`}\n ref={mobileMenuRef}\n >\n <div className={`sendbird-thread-list-item-content__left ${isReactionEnabledInChannel ? 'use-reaction' : ''} ${isByMe ? 'outgoing' : 'incoming'}`}>\n {(!isByMe && !chainBottom) && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-thread-list-item-content__left__avatar\"\n src={channel?.members?.find((member) => member?.userId === message?.sender?.userId)?.profileUrl || message?.sender?.profileUrl || ''}\n ref={avatarRef}\n width=\"28px\"\n height=\"28px\"\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown?.();\n }\n }}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={avatarRef}\n parentContainRef={avatarRef}\n closeDropdown={closeDropdown}\n style={{ paddingTop: '0px', paddingBottom: '0px' }}\n >\n {renderUserProfile\n ? renderUserProfile({ user: message?.sender, close: closeDropdown })\n : <UserProfile user={message?.sender} onSuccess={closeDropdown} />\n }\n </MenuItems>\n )}\n />\n )}\n {(isByMe && !isMobile) && (\n <div\n className={`sendbird-thread-list-item-content-menu ${isReactionEnabledInChannel ? 'use-reaction' : ''\n } ${isByMe ? 'outgoing' : 'incoming'\n } ${supposedHoverClassName}`}\n >\n <MessageItemMenu\n className=\"sendbird-thread-list-item-content-menu__normal-menu\"\n channel={channel}\n message={message as UserMessage | FileMessage}\n isByMe={isByMe}\n replyType={replyType}\n disabled={disabled}\n showEdit={showEdit}\n showRemove={showRemove}\n resendMessage={resendMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={onReplyInThread}\n />\n {isReactionEnabledInChannel && (\n <MessageItemReactionMenu\n className=\"sendbird-thread-list-item-content-menu__reaction-menu\"\n message={message as UserMessage | FileMessage}\n userId={userId}\n spaceFromTrigger={{}}\n emojiContainer={emojiContainer}\n toggleReaction={toggleReaction}\n setSupposedHover={setSupposedHover}\n />\n )}\n </div>\n )}\n </div>\n <div\n className=\"sendbird-thread-list-item-content__middle\"\n {...(isMobile) ? { ...longPress } : {}}\n >\n {(!isByMe && !chainTop && !useReplying) && (\n <Label\n className=\"sendbird-thread-list-item-content__middle__sender-name\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {\n channel?.members?.find((member) => member?.userId === message?.sender?.userId)?.nickname\n || getSenderName(message as UserMessage | FileMessage)\n // TODO: Divide getting profileUrl logic to utils\n }\n </Label>\n )}\n <div className={getClassName(['sendbird-thread-list-item-content__middle__body-container'])} >\n {/* message status component */}\n {(isByMe && !chainBottom) && (\n <div className={getClassName(['sendbird-thread-list-item-content__middle__body-container__created-at', 'left', supposedHoverClassName])}>\n <div className=\"sendbird-thread-list-item-content__middle__body-container__created-at__component-container\">\n <MessageStatus\n message={message as UserMessage | FileMessage}\n channel={channel}\n />\n </div>\n </div>\n )}\n {/* message item body components */}\n {isOgMessageEnabledInGroupChannel && isOGMessage(message as UserMessage)\n ? (<OGMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n isMentionEnabled={isMentionEnabled}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n ) : isTextMessage(message as UserMessage) && (\n <TextMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n isMentionEnabled={isMentionEnabled}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {isVoiceMessage(message as FileMessage) && (\n <VoiceMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n channelUrl={channel?.url}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.FILE) && (\n <FileMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n truncateLimit={isByMe ? 18 : 14}\n />\n )}\n {(isThumbnailMessage(message as FileMessage)) && (\n <ThumbnailMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n showFileViewer={showFileViewer}\n style={{\n width: isMobile ? '100%' : '200px',\n height: '148px',\n }}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.UNKNOWN) && (\n <UnknownMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {/* reactions */}\n {(isReactionEnabledInChannel && message?.reactions?.length > 0) && (\n <div className={getClassName([\n 'sendbird-thread-list-item-content-reactions',\n (!isByMe || isThumbnailMessage(message as FileMessage) || (isOgMessageEnabledInGroupChannel && isOGMessage(message as UserMessage))) ? '' : 'primary',\n ])}>\n <EmojiReactions\n userId={userId}\n message={message as UserMessage | FileMessage}\n channel={channel}\n isByMe={isByMe}\n emojiContainer={emojiContainer}\n memberNicknamesMap={nicknamesMap}\n toggleReaction={toggleReaction}\n />\n </div>\n )}\n {(!isByMe && !chainBottom) && (\n <Label\n className={getClassName(['sendbird-thread-list-item-content__middle__body-container__created-at', 'right', supposedHoverClassName])}\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {format(message?.createdAt || 0, 'p', {\n locale: dateLocale,\n })}\n </Label>\n )}\n </div>\n </div>\n <div\n className={`sendbird-thread-list-item-content__right ${chainTop ? 'chain-top' : ''\n } ${isByMe ? 'outgoing' : 'incoming'}`}\n >\n {(!isByMe && !isMobile) && (\n <div className={`sendbird-thread-list-item-content-menu ${supposedHoverClassName}`}>\n {isReactionEnabledInChannel && (\n <MessageItemReactionMenu\n className=\"sendbird-thread-list-item-content-menu__reaction-menu\"\n message={message as UserMessage | FileMessage}\n userId={userId}\n spaceFromTrigger={{}}\n emojiContainer={emojiContainer}\n toggleReaction={toggleReaction}\n setSupposedHover={setSupposedHover}\n />\n )}\n <MessageItemMenu\n className=\"sendbird-thread-list-item-content-menu__normal-menu\"\n channel={channel}\n message={message as UserMessage | FileMessage}\n isByMe={isByMe}\n replyType={replyType}\n disabled={disabled}\n showRemove={showRemove}\n resendMessage={resendMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={onReplyInThread}\n />\n </div>\n )}\n </div>\n {showMobileMenu && (\n <MobileMenu\n parentRef={mobileMenuRef}\n channel={channel}\n message={message}\n userId={userId}\n replyType={replyType}\n hideMenu={() => {\n setShowMobileMenu(false);\n }}\n isReactionEnabled={isReactionEnabled}\n isByMe={isByMe}\n emojiContainer={emojiContainer}\n showEdit={showEdit}\n showRemove={showRemove}\n toggleReaction={toggleReaction}\n isOpenedFromThread\n />\n )}\n </div>\n );\n}\n","import React, { useMemo, useState, useRef, useEffect, useLayoutEffect } from 'react';\nimport format from 'date-fns/format';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport RemoveMessage from '../RemoveMessageModal';\nimport FileViewer from '../../../../ui/FileViewer';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport SuggestedMentionList from '../../../Channel/components/SuggestedMentionList';\nimport MessageInput from '../../../../ui/MessageInput';\nimport { ThreadListStateTypes } from '../../types';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport ThreadListItemContent from './ThreadListItemContent';\nimport { Role } from '../../../../lib/types';\nimport { useDirtyGetMentions } from '../../../Message/hooks/useDirtyGetMentions';\nimport { getIsReactionEnabled } from '../../../../utils/getIsReactionEnabled';\n\nexport interface ThreadListItemProps {\n className?: string;\n message: UserMessage | FileMessage;\n chainTop?: boolean;\n chainBottom?: boolean;\n hasSeparator?: boolean;\n renderCustomSeparator?: (props: { message: UserMessage | FileMessage }) => React.ReactElement;\n handleScroll?: () => void;\n}\n\nexport default function ThreadListItem({\n className,\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n renderCustomSeparator,\n handleScroll,\n}: ThreadListItemProps): React.ReactElement {\n const { stores, config } = useSendbirdStateContext();\n const {\n isReactionEnabled,\n isMentionEnabled,\n isOnline,\n replyType,\n userMention,\n logger,\n } = config;\n const userId = stores?.userStore?.user?.userId;\n const { dateLocale } = useLocalization();\n const threadContext = useThreadContext?.();\n const {\n currentChannel,\n nicknamesMap,\n emojiContainer,\n toggleReaction,\n threadListState,\n updateMessage,\n resendMessage,\n deleteMessage,\n isMuted,\n isChannelFrozen,\n } = threadContext;\n const openingMessage = threadContext?.message;\n\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const usingReaction = getIsReactionEnabled({\n globalLevel: isReactionEnabled,\n isSuper: currentChannel.isSuper,\n isBroadcast: currentChannel.isBroadcast,\n });\n\n // Move to message\n const messageScrollRef = useRef(null);\n useLayoutEffect(() => {\n if (openingMessage?.messageId === message?.messageId && messageScrollRef?.current) {\n messageScrollRef.current?.scrollIntoView({ block: 'center', inline: 'center' });\n }\n }, [openingMessage, messageScrollRef?.current]);\n\n // reactions\n useLayoutEffect(() => {\n handleScroll?.();\n }, [showEdit, message?.reactions?.length]);\n\n // mention\n const editMessageInputRef = useRef(null);\n const [mentionNickname, setMentionNickname] = useState('');\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isMuted\n && !(isChannelFrozen && !(currentChannel.myRole === Role.OPERATOR));\n\n const mentionNodes = useDirtyGetMentions({ ref: editMessageInputRef }, { logger });\n const ableMention = mentionNodes?.length < userMention?.maxMentionCount;\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n // edit input\n const disabled = !(threadListState === ThreadListStateTypes.INITIALIZED)\n || !isOnline\n || isMuted\n || isChannelFrozen;\n\n // memorize\n const MemorizedSeparator = useMemo(() => {\n if (typeof renderCustomSeparator === 'function') {\n return renderCustomSeparator?.({ message });\n }\n }, [message, renderCustomSeparator]);\n\n // Edit message\n if (showEdit && message.isUserMessage()) {\n return (\n <>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n // renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={userMention?.maxMentionCount}\n maxSuggestionCount={userMention?.maxSuggestionCount}\n />\n )\n }\n <MessageInput\n isEdit\n channel={currentChannel}\n disabled={disabled}\n ref={editMessageInputRef}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n message={message}\n onStartTyping={() => {\n currentChannel?.startTyping?.();\n }}\n onUpdateMessage={({ messageId, message, mentionTemplate }) => {\n updateMessage({\n messageId,\n message,\n mentionedUsers,\n mentionTemplate,\n });\n setShowEdit(false);\n currentChannel?.endTyping?.();\n }}\n onCancelEdit={() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setMentionSuggestedUsers([]);\n setShowEdit(false);\n currentChannel?.endTyping?.();\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n </>\n );\n }\n\n return (\n <div\n ref={messageScrollRef}\n className={`sendbird-thread-list-item ${className}`}\n >\n {/* date separator */}\n {\n hasSeparator && message?.createdAt && (MemorizedSeparator || (\n <DateSeparator>\n <Label\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {format(message?.createdAt, 'MMM dd, yyyy', { locale: dateLocale })}\n </Label>\n </DateSeparator>\n ))\n }\n <ThreadListItemContent\n userId={userId}\n channel={currentChannel}\n message={message}\n chainTop={chainTop}\n chainBottom={chainBottom}\n isReactionEnabled={usingReaction}\n isMentionEnabled={isMentionEnabled}\n disableQuoteMessage\n replyType={replyType}\n nicknamesMap={nicknamesMap}\n emojiContainer={emojiContainer}\n resendMessage={resendMessage}\n showRemove={setShowRemove}\n showFileViewer={setShowFileViewer}\n toggleReaction={toggleReaction}\n showEdit={setShowEdit}\n />\n {/* modal */}\n {showRemove && (\n <RemoveMessage\n message={message}\n onCancel={() => setShowRemove(false)}\n />\n )}\n {showFileViewer && (\n <FileViewer\n message={message as FileMessage}\n isByMe={message?.sender?.userId === userId}\n onClose={() => setShowFileViewer(false)}\n onDelete={() => {\n deleteMessage(message);\n setShowFileViewer(false);\n }}\n />\n )}\n </div>\n );\n}\n"],"names":["ThreadListItemContent","_ref","_sender","_channel$members2","_channel$members2$fin","_message$reactions","className","userId","channel","message","disabled","chainTop","chainBottom","isMentionEnabled","isReactionEnabled","disableQuoteMessage","replyType","nicknamesMap","emojiContainer","showEdit","showRemove","showFileViewer","resendMessage","toggleReaction","onReplyInThread","messageTypes","getUIKitMessageTypes","isMobile","useMediaQueryContext","dateLocale","useLocalization","config","useSendbirdStateContext","supposedHover","setSupposedHover","useState","disableUserProfile","renderUserProfile","useContext","UserProfileContext","avatarRef","useRef","isByMe","sender","sendingStatus","useReplying","parentMessageId","parentMessage","supposedHoverClassName","isReactionEnabledInChannel","isEphemeral","isOgMessageEnabledInGroupChannel","isGroupChannel","groupChannel","enableOgtag","mobileMenuRef","showMobileMenu","setShowMobileMenu","longPress","useLongPress","onLongPress","shouldPreventDefault","React","createElement","ref","ContextMenu","menuTrigger","toggleDropdown","_channel$members","_channel$members$find","_message$sender2","Avatar","src","members","find","member","_message$sender","profileUrl","width","height","onClick","menuItems","closeDropdown","MenuItems","parentRef","parentContainRef","style","paddingTop","paddingBottom","user","close","UserProfile","onSuccess","MessageItemMenu","MessageItemReactionMenu","spaceFromTrigger","_extends","_objectSpread","Label","type","LabelTypography","CAPTION_2","color","LabelColors","ONBACKGROUND_2","_message$sender3","nickname","getSenderName","getClassName","MessageStatus","isOGMessage","OGMessageItemBody","isTextMessage","TextMessageItemBody","isVoiceMessage","VoiceMessageItemBody","channelUrl","url","getUIKitMessageType","FILE","FileMessageItemBody","truncateLimit","isThumbnailMessage","ThumbnailMessageItemBody","UNKNOWN","UnknownMessageItemBody","reactions","length","EmojiReactions","memberNicknamesMap","CAPTION_3","format","createdAt","locale","MobileMenu","hideMenu","isOpenedFromThread","ThreadListItem","_stores$userStore","_stores$userStore$use","hasSeparator","renderCustomSeparator","handleScroll","stores","isOnline","userMention","logger","userStore","threadContext","useThreadContext","currentChannel","threadListState","updateMessage","deleteMessage","isMuted","isChannelFrozen","openingMessage","setShowEdit","setShowRemove","setShowFileViewer","usingReaction","getIsReactionEnabled","globalLevel","isSuper","isBroadcast","messageScrollRef","useLayoutEffect","messageId","current","_messageScrollRef$cur","scrollIntoView","block","inline","editMessageInputRef","mentionNickname","setMentionNickname","mentionedUsers","setMentionedUsers","mentionedUserIds","setMentionedUserIds","messageInputEvent","setMessageInputEvent","selectedUser","setSelectedUser","mentionSuggestedUsers","setMentionSuggestedUsers","displaySuggestedMentionList","myRole","Role","OPERATOR","mentionNodes","useDirtyGetMentions","ableMention","maxMentionCount","useEffect","filter","_ref2","i","indexOf","splice","ThreadListStateTypes","INITIALIZED","MemorizedSeparator","useMemo","isUserMessage","Fragment","SuggestedMentionList","targetNickname","inputEvent","onUserItemClick","onFocusItemChange","onFetchUsers","users","ableAddMention","maxSuggestionCount","MessageInput","isEdit","mentionSelectedUser","onStartTyping","_currentChannel$start","startTyping","call","onUpdateMessage","_ref3","_currentChannel$endTy","mentionTemplate","endTyping","onCancelEdit","_currentChannel$endTy2","onUserMentioned","onMentionStringChange","mentionText","onMentionedUserIdsUpdated","userIds","onKeyDown","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","DateSeparator","RemoveMessage","onCancel","FileViewer","onClose","onDelete"],"mappings":"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"}
|
|
@@ -4,55 +4,57 @@ var React = require('react');
|
|
|
4
4
|
var groupChannel = require('@sendbird/chat/groupChannel');
|
|
5
5
|
var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
|
|
6
6
|
var ui_MessageInput = require('../../ui/MessageInput.js');
|
|
7
|
-
var _const = require('../../const-
|
|
7
|
+
var _const = require('../../const-73fbd467.js');
|
|
8
8
|
var Channel_components_SuggestedMentionList = require('../../Channel/components/SuggestedMentionList.js');
|
|
9
|
-
var Thread_context = require('../../ThreadProvider-
|
|
10
|
-
var LocalizationContext = require('../../LocalizationContext-
|
|
11
|
-
var VoiceMessageInputWrapper = require('../../VoiceMessageInputWrapper-
|
|
12
|
-
var types = require('../../types-
|
|
13
|
-
var useDirtyGetMentions = require('../../useDirtyGetMentions-
|
|
14
|
-
var Channel_context = require('../../ChannelProvider-
|
|
9
|
+
var Thread_context = require('../../ThreadProvider-17ad9d05.js');
|
|
10
|
+
var LocalizationContext = require('../../LocalizationContext-bdc95952.js');
|
|
11
|
+
var VoiceMessageInputWrapper = require('../../VoiceMessageInputWrapper-1100905a.js');
|
|
12
|
+
var types = require('../../types-2138565d.js');
|
|
13
|
+
var useDirtyGetMentions = require('../../useDirtyGetMentions-9945a1c0.js');
|
|
14
|
+
var Channel_context = require('../../ChannelProvider-54bb28cc.js');
|
|
15
15
|
require('../../withSendbird.js');
|
|
16
|
-
require('../../_rollupPluginBabelHelpers-
|
|
16
|
+
require('../../_rollupPluginBabelHelpers-d68672d6.js');
|
|
17
17
|
require('prop-types');
|
|
18
|
-
require('../../const-
|
|
18
|
+
require('../../const-44ddbe54.js');
|
|
19
19
|
require('../../ui/IconButton.js');
|
|
20
20
|
require('../../ui/Button.js');
|
|
21
|
-
require('../../index-
|
|
22
|
-
require('../../stringSet-
|
|
21
|
+
require('../../index-e766176d.js');
|
|
22
|
+
require('../../stringSet-0cddd94a.js');
|
|
23
23
|
require('dompurify');
|
|
24
|
-
require('../../consts-
|
|
24
|
+
require('../../consts-40680de5.js');
|
|
25
25
|
require('../../ui/Icon.js');
|
|
26
|
-
require('../../index-
|
|
26
|
+
require('../../index-7a9d2024.js');
|
|
27
27
|
require('../../utils/message/getOutgoingMessageState.js');
|
|
28
|
-
require('../../consts-
|
|
29
|
-
require('../../consts-
|
|
30
|
-
require('../../tokenize-
|
|
31
|
-
require('../../index-
|
|
28
|
+
require('../../consts-2dfc1883.js');
|
|
29
|
+
require('../../consts-4fbdb1d6.js');
|
|
30
|
+
require('../../tokenize-75ed25db.js');
|
|
31
|
+
require('../../index.module-3e11d4a7.js');
|
|
32
|
+
require('../../index-71def451.js');
|
|
32
33
|
require('../../ui/Avatar.js');
|
|
33
34
|
require('../../ui/ImageRenderer.js');
|
|
34
|
-
require('../../uuid-
|
|
35
|
-
require('../../UserProfileContext-
|
|
36
|
-
require('../../index-
|
|
37
|
-
require('../../topics-
|
|
38
|
-
require('../../compareIds-
|
|
35
|
+
require('../../uuid-075367f7.js');
|
|
36
|
+
require('../../UserProfileContext-27a5718b.js');
|
|
37
|
+
require('../../index-f7b329d2.js');
|
|
38
|
+
require('../../topics-3e3eb86d.js');
|
|
39
|
+
require('../../compareIds-96cdd2a0.js');
|
|
39
40
|
require('@sendbird/chat/message');
|
|
40
|
-
require('../../consts-
|
|
41
|
+
require('../../consts-ccfad912.js');
|
|
42
|
+
require('../../resolvedReplyType-42ff3f75.js');
|
|
41
43
|
require('../context/types.js');
|
|
42
44
|
require('@sendbird/chat');
|
|
43
45
|
require('../../VoicePlayer/useVoicePlayer.js');
|
|
44
|
-
require('../../index-
|
|
46
|
+
require('../../index-dada883d.js');
|
|
45
47
|
require('../../VoiceRecorder/context.js');
|
|
48
|
+
require('../../ui/Modal.js');
|
|
49
|
+
require('react-dom');
|
|
50
|
+
require('../../index-77c91851.js');
|
|
51
|
+
require('../../MediaQueryContext-28b81968.js');
|
|
46
52
|
require('../../VoiceRecorder/useVoiceRecorder.js');
|
|
47
|
-
require('../../index-
|
|
53
|
+
require('../../index-2044d323.js');
|
|
48
54
|
require('../../ui/PlaybackTime.js');
|
|
49
55
|
require('../../ui/ProgressBar.js');
|
|
50
56
|
require('../../ui/TextButton.js');
|
|
51
|
-
require('../../color-
|
|
52
|
-
require('../../ui/Modal.js');
|
|
53
|
-
require('react-dom');
|
|
54
|
-
require('../../index-dd9bc361.js');
|
|
55
|
-
require('../../MediaQueryContext-f1e8fdbc.js');
|
|
57
|
+
require('../../color-bb9924cb.js');
|
|
56
58
|
|
|
57
59
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
58
60
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThreadMessageInput.js","sources":["../../../../src/modules/Thread/components/ThreadMessageInput/index.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport { MutedState } from '@sendbird/chat/groupChannel';\n\nimport './index.scss';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport MessageInput from '../../../../ui/MessageInput';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport SuggestedMentionList from '../../../Channel/components/SuggestedMentionList';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport VoiceMessageInputWrapper from '../../../Channel/components/MessageInput/VoiceMessageInputWrapper';\nimport { Role } from '../../../../lib/types';\nimport { useDirtyGetMentions } from '../../../Message/hooks/useDirtyGetMentions';\nimport { isDisabledBecauseFrozen, isDisabledBecauseMuted } from '../../../Channel/context/utils';\n\nexport interface ThreadMessageInputProps {\n className?: string;\n disabled?: boolean;\n renderFileUploadIcon?: () => React.ReactElement;\n renderVoiceMessageIcon?: () => React.ReactElement;\n renderSendMessageIcon?: () => React.ReactElement;\n}\n\nconst ThreadMessageInput = (\n props: ThreadMessageInputProps,\n ref: React.MutableRefObject<any>,\n): React.ReactElement => {\n const {\n className,\n renderFileUploadIcon,\n renderVoiceMessageIcon,\n renderSendMessageIcon,\n } = props;\n const propsDisabled = props.disabled;\n const { config } = useSendbirdStateContext();\n const { stringSet } = useLocalization();\n const {\n isMentionEnabled,\n isOnline,\n userMention,\n isVoiceMessageEnabled,\n logger,\n } = config;\n const {\n currentChannel,\n parentMessage,\n sendMessage,\n sendFileMessage,\n sendVoiceMessage,\n isMuted,\n isChannelFrozen,\n allThreadMessages,\n } = useThreadContext();\n const messageInputRef = useRef();\n\n const disabled = propsDisabled\n || isMuted\n || (!(currentChannel?.myRole === Role.OPERATOR) && isChannelFrozen) || parentMessage === null;\n\n // mention\n const [mentionNickname, setMentionNickname] = useState('');\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [showVoiceMessageInput, setShowVoiceMessageInput] = useState(false);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isDisabledBecauseFrozen(currentChannel)\n && !isDisabledBecauseMuted(currentChannel)\n && !currentChannel?.isBroadcast;\n\n // Reset when changing channel\n useEffect(() => {\n setShowVoiceMessageInput(false);\n }, [currentChannel?.url]);\n\n const mentionNodes = useDirtyGetMentions({ ref: ref || messageInputRef }, { logger });\n const ableMention = mentionNodes?.length < userMention?.maxMentionCount;\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n if (currentChannel?.isBroadcast && currentChannel?.myRole !== Role.OPERATOR) {\n return null;\n }\n\n return (\n <div className={`sendbird-thread-message-input${showVoiceMessageInput ? '--voice-message' : ''} ${className}`}>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n // renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={userMention?.maxMentionCount}\n maxSuggestionCount={userMention?.maxSuggestionCount}\n />\n )\n }\n {\n showVoiceMessageInput\n ? (\n <VoiceMessageInputWrapper\n channel={currentChannel}\n onSubmitClick={(recordedFile, duration) => {\n sendVoiceMessage(recordedFile, duration, parentMessage);\n setShowVoiceMessageInput(false);\n }}\n onCancelClick={() => {\n setShowVoiceMessageInput(false);\n }}\n />\n )\n : (\n <MessageInput\n className=\"sendbird-thread-message-input__message-input\"\n messageFieldId=\"sendbird-message-input-text-field--thread\"\n disabled={disabled}\n channel={currentChannel}\n setMentionedUsers={setMentionedUsers}\n channelUrl={currentChannel?.url}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n isVoiceMessageEnabled={isVoiceMessageEnabled}\n onVoiceMessageIconClick={() => {\n setShowVoiceMessageInput(true);\n }}\n renderFileUploadIcon={renderFileUploadIcon}\n renderVoiceMessageIcon={renderVoiceMessageIcon}\n renderSendMessageIcon={renderSendMessageIcon}\n ref={ref || messageInputRef}\n placeholder={\n (currentChannel?.isFrozen && !(currentChannel?.myRole === Role.OPERATOR) && stringSet.MESSAGE_INPUT__PLACE_HOLDER__DISABLED)\n || (currentChannel?.myMutedState === MutedState.MUTED && stringSet.MESSAGE_INPUT__PLACE_HOLDER__MUTED_SHORT)\n || (allThreadMessages.length > 0\n ? stringSet.THREAD__INPUT__REPLY_TO_THREAD\n : stringSet.THREAD__INPUT__REPLY_IN_THREAD\n )\n }\n onStartTyping={() => {\n currentChannel?.startTyping?.();\n }}\n onSendMessage={({ message, mentionTemplate }) => {\n sendMessage({\n message: message,\n mentionedUsers,\n mentionTemplate: mentionTemplate,\n quoteMessage: parentMessage,\n });\n setMentionNickname('');\n setMentionedUsers([]);\n currentChannel?.endTyping?.();\n }}\n onFileUpload={(file) => {\n sendFileMessage(file, parentMessage);\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n )\n }\n </div>\n );\n};\n\nexport default React.forwardRef(ThreadMessageInput);\n"],"names":["ThreadMessageInput","props","ref","className","renderFileUploadIcon","renderVoiceMessageIcon","renderSendMessageIcon","propsDisabled","disabled","config","useSendbirdStateContext","stringSet","useLocalization","isMentionEnabled","isOnline","userMention","isVoiceMessageEnabled","logger","currentChannel","parentMessage","sendMessage","sendFileMessage","sendVoiceMessage","isMuted","isChannelFrozen","allThreadMessages","useThreadContext","messageInputRef","useRef","myRole","Role","OPERATOR","mentionNickname","setMentionNickname","useState","mentionedUsers","setMentionedUsers","mentionedUserIds","setMentionedUserIds","selectedUser","setSelectedUser","mentionSuggestedUsers","setMentionSuggestedUsers","messageInputEvent","setMessageInputEvent","showVoiceMessageInput","setShowVoiceMessageInput","displaySuggestedMentionList","length","isDisabledBecauseFrozen","isDisabledBecauseMuted","isBroadcast","useEffect","url","mentionNodes","useDirtyGetMentions","ableMention","maxMentionCount","filter","_ref","userId","i","indexOf","splice","React","createElement","SuggestedMentionList","targetNickname","inputEvent","onUserItemClick","user","onFocusItemChange","onFetchUsers","users","ableAddMention","maxSuggestionCount","VoiceMessageInputWrapper","channel","onSubmitClick","recordedFile","duration","onCancelClick","MessageInput","messageFieldId","channelUrl","mentionSelectedUser","onVoiceMessageIconClick","placeholder","isFrozen","MESSAGE_INPUT__PLACE_HOLDER__DISABLED","myMutedState","MutedState","MUTED","MESSAGE_INPUT__PLACE_HOLDER__MUTED_SHORT","THREAD__INPUT__REPLY_TO_THREAD","THREAD__INPUT__REPLY_IN_THREAD","onStartTyping","_currentChannel$start","startTyping","call","onSendMessage","_ref2","_currentChannel$endTy","message","mentionTemplate","quoteMessage","endTyping","onFileUpload","file","onUserMentioned","onMentionStringChange","mentionText","onMentionedUserIdsUpdated","userIds","onKeyDown","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","forwardRef"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ThreadMessageInput.js","sources":["../../../../src/modules/Thread/components/ThreadMessageInput/index.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport { MutedState } from '@sendbird/chat/groupChannel';\n\nimport './index.scss';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport MessageInput from '../../../../ui/MessageInput';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport SuggestedMentionList from '../../../Channel/components/SuggestedMentionList';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport VoiceMessageInputWrapper from '../../../Channel/components/MessageInput/VoiceMessageInputWrapper';\nimport { Role } from '../../../../lib/types';\nimport { useDirtyGetMentions } from '../../../Message/hooks/useDirtyGetMentions';\nimport { isDisabledBecauseFrozen, isDisabledBecauseMuted } from '../../../Channel/context/utils';\n\nexport interface ThreadMessageInputProps {\n className?: string;\n disabled?: boolean;\n renderFileUploadIcon?: () => React.ReactElement;\n renderVoiceMessageIcon?: () => React.ReactElement;\n renderSendMessageIcon?: () => React.ReactElement;\n}\n\nconst ThreadMessageInput = (\n props: ThreadMessageInputProps,\n ref: React.MutableRefObject<any>,\n): React.ReactElement => {\n const {\n className,\n renderFileUploadIcon,\n renderVoiceMessageIcon,\n renderSendMessageIcon,\n } = props;\n const propsDisabled = props.disabled;\n const { config } = useSendbirdStateContext();\n const { stringSet } = useLocalization();\n const {\n isMentionEnabled,\n isOnline,\n userMention,\n isVoiceMessageEnabled,\n logger,\n } = config;\n const {\n currentChannel,\n parentMessage,\n sendMessage,\n sendFileMessage,\n sendVoiceMessage,\n isMuted,\n isChannelFrozen,\n allThreadMessages,\n } = useThreadContext();\n const messageInputRef = useRef();\n\n const disabled = propsDisabled\n || isMuted\n || (!(currentChannel?.myRole === Role.OPERATOR) && isChannelFrozen) || parentMessage === null;\n\n // mention\n const [mentionNickname, setMentionNickname] = useState('');\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [showVoiceMessageInput, setShowVoiceMessageInput] = useState(false);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isDisabledBecauseFrozen(currentChannel)\n && !isDisabledBecauseMuted(currentChannel)\n && !currentChannel?.isBroadcast;\n\n // Reset when changing channel\n useEffect(() => {\n setShowVoiceMessageInput(false);\n }, [currentChannel?.url]);\n\n const mentionNodes = useDirtyGetMentions({ ref: ref || messageInputRef }, { logger });\n const ableMention = mentionNodes?.length < userMention?.maxMentionCount;\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n if (currentChannel?.isBroadcast && currentChannel?.myRole !== Role.OPERATOR) {\n return null;\n }\n\n return (\n <div className={`sendbird-thread-message-input${showVoiceMessageInput ? '--voice-message' : ''} ${className}`}>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n // renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={userMention?.maxMentionCount}\n maxSuggestionCount={userMention?.maxSuggestionCount}\n />\n )\n }\n {\n showVoiceMessageInput\n ? (\n <VoiceMessageInputWrapper\n channel={currentChannel}\n onSubmitClick={(recordedFile, duration) => {\n sendVoiceMessage(recordedFile, duration, parentMessage);\n setShowVoiceMessageInput(false);\n }}\n onCancelClick={() => {\n setShowVoiceMessageInput(false);\n }}\n />\n )\n : (\n <MessageInput\n className=\"sendbird-thread-message-input__message-input\"\n messageFieldId=\"sendbird-message-input-text-field--thread\"\n disabled={disabled}\n channel={currentChannel}\n setMentionedUsers={setMentionedUsers}\n channelUrl={currentChannel?.url}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n isVoiceMessageEnabled={isVoiceMessageEnabled}\n onVoiceMessageIconClick={() => {\n setShowVoiceMessageInput(true);\n }}\n renderFileUploadIcon={renderFileUploadIcon}\n renderVoiceMessageIcon={renderVoiceMessageIcon}\n renderSendMessageIcon={renderSendMessageIcon}\n ref={ref || messageInputRef}\n placeholder={\n (currentChannel?.isFrozen && !(currentChannel?.myRole === Role.OPERATOR) && stringSet.MESSAGE_INPUT__PLACE_HOLDER__DISABLED)\n || (currentChannel?.myMutedState === MutedState.MUTED && stringSet.MESSAGE_INPUT__PLACE_HOLDER__MUTED_SHORT)\n || (allThreadMessages.length > 0\n ? stringSet.THREAD__INPUT__REPLY_TO_THREAD\n : stringSet.THREAD__INPUT__REPLY_IN_THREAD\n )\n }\n onStartTyping={() => {\n currentChannel?.startTyping?.();\n }}\n onSendMessage={({ message, mentionTemplate }) => {\n sendMessage({\n message: message,\n mentionedUsers,\n mentionTemplate: mentionTemplate,\n quoteMessage: parentMessage,\n });\n setMentionNickname('');\n setMentionedUsers([]);\n currentChannel?.endTyping?.();\n }}\n onFileUpload={(file) => {\n sendFileMessage(file, parentMessage);\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n )\n }\n </div>\n );\n};\n\nexport default React.forwardRef(ThreadMessageInput);\n"],"names":["ThreadMessageInput","props","ref","className","renderFileUploadIcon","renderVoiceMessageIcon","renderSendMessageIcon","propsDisabled","disabled","config","useSendbirdStateContext","stringSet","useLocalization","isMentionEnabled","isOnline","userMention","isVoiceMessageEnabled","logger","currentChannel","parentMessage","sendMessage","sendFileMessage","sendVoiceMessage","isMuted","isChannelFrozen","allThreadMessages","useThreadContext","messageInputRef","useRef","myRole","Role","OPERATOR","mentionNickname","setMentionNickname","useState","mentionedUsers","setMentionedUsers","mentionedUserIds","setMentionedUserIds","selectedUser","setSelectedUser","mentionSuggestedUsers","setMentionSuggestedUsers","messageInputEvent","setMessageInputEvent","showVoiceMessageInput","setShowVoiceMessageInput","displaySuggestedMentionList","length","isDisabledBecauseFrozen","isDisabledBecauseMuted","isBroadcast","useEffect","url","mentionNodes","useDirtyGetMentions","ableMention","maxMentionCount","filter","_ref","userId","i","indexOf","splice","React","createElement","SuggestedMentionList","targetNickname","inputEvent","onUserItemClick","user","onFocusItemChange","onFetchUsers","users","ableAddMention","maxSuggestionCount","VoiceMessageInputWrapper","channel","onSubmitClick","recordedFile","duration","onCancelClick","MessageInput","messageFieldId","channelUrl","mentionSelectedUser","onVoiceMessageIconClick","placeholder","isFrozen","MESSAGE_INPUT__PLACE_HOLDER__DISABLED","myMutedState","MutedState","MUTED","MESSAGE_INPUT__PLACE_HOLDER__MUTED_SHORT","THREAD__INPUT__REPLY_TO_THREAD","THREAD__INPUT__REPLY_IN_THREAD","onStartTyping","_currentChannel$start","startTyping","call","onSendMessage","_ref2","_currentChannel$endTy","message","mentionTemplate","quoteMessage","endTyping","onFileUpload","file","onUserMentioned","onMentionStringChange","mentionText","onMentionedUserIdsUpdated","userIds","onKeyDown","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","forwardRef"],"mappings":"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"}
|