@sendbird/uikit-react 3.4.6-0 → 3.4.6-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/App.js +46 -45
- package/App.js.map +1 -1
- package/CHANGELOG.md +16 -0
- package/Channel/components/ChannelHeader.js +20 -20
- package/Channel/components/ChannelHeader.js.map +1 -1
- package/Channel/components/ChannelUI.js +39 -38
- package/Channel/components/ChannelUI.js.map +1 -1
- package/Channel/components/FileViewer.js +15 -15
- package/Channel/components/FrozenNotification.js +4 -4
- package/Channel/components/Message.js +43 -42
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +27 -28
- package/Channel/components/MessageInput.js.map +1 -1
- package/Channel/components/MessageList.js +41 -59
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +17 -17
- package/Channel/components/RemoveMessageModal.js.map +1 -1
- package/Channel/components/SuggestedMentionList.js +23 -30
- package/Channel/components/SuggestedMentionList.js.map +1 -1
- package/Channel/components/TypingIndicator.js +15 -15
- package/Channel/components/TypingIndicator.js.map +1 -1
- package/Channel/components/UnreadCount.js +4 -4
- package/Channel/context.js +14 -14
- package/Channel.js +39 -38
- package/Channel.js.map +1 -1
- package/ChannelList/components/AddChannel.js +15 -15
- package/ChannelList/components/ChannelListHeader.js +6 -6
- package/ChannelList/components/ChannelListUI.js +30 -30
- package/ChannelList/components/ChannelPreview.js +27 -27
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/ChannelList/context.js +8 -8
- package/ChannelList.js +30 -30
- package/{ChannelListProvider-b7ce527e.js → ChannelListProvider-32bd4597.js} +8 -8
- package/ChannelListProvider-32bd4597.js.map +1 -0
- package/{ChannelProvider-cd9afff3.js → ChannelProvider-4e33aa60.js} +12 -12
- package/ChannelProvider-4e33aa60.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/ModerationPanel.js.map +1 -1
- package/ChannelSettings/components/UserListItem.js +10 -10
- package/ChannelSettings/components/UserPanel.js +14 -14
- package/ChannelSettings/components/UserPanel.js.map +1 -1
- package/ChannelSettings/context.js +3 -3
- package/ChannelSettings/context.js.map +1 -1
- package/ChannelSettings.js +17 -17
- package/CreateChannel/components/CreateChannelUI.js +13 -13
- package/CreateChannel/components/InviteUsers.js +16 -14
- package/CreateChannel/components/InviteUsers.js.map +1 -1
- package/CreateChannel/components/SelectChannelType.js +10 -10
- package/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/CreateChannel/context.js +4 -4
- package/CreateChannel.js +13 -13
- package/{CreateChannelProvider-d7e8a10f.js → CreateChannelProvider-96aa4ed0.js} +1 -1
- package/{CreateChannelProvider-d7e8a10f.js.map → CreateChannelProvider-96aa4ed0.js.map} +1 -1
- package/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
- package/CreateOpenChannel/context.js +1 -1
- package/CreateOpenChannel.js +9 -9
- package/CreateOpenChannel.js.map +1 -1
- package/EditUserProfile/components/EditUserProfileUI.js +12 -12
- package/EditUserProfile.js +12 -12
- package/{LocalizationContext-43b10f97.js → LocalizationContext-62966630.js} +3 -3
- package/{LocalizationContext-43b10f97.js.map → LocalizationContext-62966630.js.map} +1 -1
- package/{MediaQueryContext-f2df2472.js → MediaQueryContext-17146a37.js} +7 -7
- package/{MediaQueryContext-f2df2472.js.map → MediaQueryContext-17146a37.js.map} +1 -1
- package/{MemberList-70806978.js → MemberList-ef0a35ad.js} +5 -5
- package/MemberList-ef0a35ad.js.map +1 -0
- package/MessageSearch/components/MessageSearchUI.js +11 -11
- package/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/MessageSearch/context.js +1 -1
- package/MessageSearch/context.js.map +1 -1
- package/MessageSearch.js +11 -11
- package/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/OpenChannel/components/OpenChannelHeader.js +12 -12
- package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
- package/OpenChannel/components/OpenChannelInput.js +19 -19
- package/OpenChannel/components/OpenChannelMessage.js +28 -27
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +33 -67
- package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/OpenChannel/components/OpenChannelUI.js +32 -30
- package/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/OpenChannel/context.js +8 -8
- package/OpenChannel.js +32 -30
- package/OpenChannel.js.map +1 -1
- package/OpenChannelList/components/OpenChannelListUI.js +13 -13
- package/OpenChannelList/components/OpenChannelPreview.js +4 -4
- package/OpenChannelList/context.js +3 -3
- package/OpenChannelList.js +13 -13
- package/OpenChannelList.js.map +1 -1
- package/{OpenChannelListProvider-22244a14.js → OpenChannelListProvider-8be6450e.js} +6 -4
- package/OpenChannelListProvider-8be6450e.js.map +1 -0
- package/{OpenChannelProvider-36270182.js → OpenChannelProvider-98df8b74.js} +8 -8
- package/OpenChannelProvider-98df8b74.js.map +1 -0
- 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/OperatorUI.js.map +1 -1
- package/OpenChannelSettings/components/ParticipantUI.js +14 -14
- package/OpenChannelSettings/context.js +3 -3
- package/OpenChannelSettings.js +17 -17
- package/{RemoveMessageModal-d0a5c64c.js → RemoveMessageModal-0efd9201.js} +3 -3
- package/{RemoveMessageModal-d0a5c64c.js.map → RemoveMessageModal-0efd9201.js.map} +1 -1
- package/SendbirdProvider.js +138 -111
- package/SendbirdProvider.js.map +1 -1
- package/Thread/components/ParentMessageInfo.js +30 -30
- package/Thread/components/ParentMessageInfoItem.js +18 -18
- package/Thread/components/ThreadHeader.js +6 -6
- package/Thread/components/ThreadList.js +34 -33
- package/Thread/components/ThreadList.js.map +1 -1
- package/Thread/components/ThreadListItem.js +33 -33
- package/Thread/components/ThreadListItem.js.map +1 -1
- package/Thread/components/ThreadMessageInput.js +28 -29
- package/Thread/components/ThreadMessageInput.js.map +1 -1
- package/Thread/components/ThreadUI.js +37 -37
- package/Thread/context.js +8 -8
- package/Thread.js +37 -37
- package/{ThreadProvider-533e9025.js → ThreadProvider-1798360b.js} +9 -9
- package/ThreadProvider-1798360b.js.map +1 -0
- package/{UserProfileContext-12b6fabf.js → UserProfileContext-7083bd82.js} +1 -1
- package/{UserProfileContext-12b6fabf.js.map → UserProfileContext-7083bd82.js.map} +1 -1
- package/{VoiceMessageInputWrapper-c74412de.js → VoiceMessageInputWrapper-4479a1bd.js} +19 -14
- package/VoiceMessageInputWrapper-4479a1bd.js.map +1 -0
- package/VoicePlayer/context.js +3 -3
- package/VoicePlayer/useVoicePlayer.js +3 -4
- package/VoicePlayer/useVoicePlayer.js.map +1 -1
- package/VoiceRecorder/context.js +22 -125
- package/VoiceRecorder/context.js.map +1 -1
- package/VoiceRecorder/useVoiceRecorder.js +2 -3
- package/VoiceRecorder/useVoiceRecorder.js.map +1 -1
- package/WebAudioUtils-f57301b1.js +123 -0
- package/WebAudioUtils-f57301b1.js.map +1 -0
- package/{_rollupPluginBabelHelpers-3756a6a3.js → _rollupPluginBabelHelpers-48b56150.js} +1 -1
- package/_rollupPluginBabelHelpers-48b56150.js.map +1 -0
- package/actionTypes-9badb1b4.js +8 -0
- package/actionTypes-9badb1b4.js.map +1 -0
- package/cjs/App.js +46 -45
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +20 -20
- package/cjs/Channel/components/ChannelHeader.js.map +1 -1
- package/cjs/Channel/components/ChannelUI.js +39 -38
- package/cjs/Channel/components/ChannelUI.js.map +1 -1
- package/cjs/Channel/components/FileViewer.js +15 -15
- package/cjs/Channel/components/FrozenNotification.js +4 -4
- package/cjs/Channel/components/Message.js +47 -46
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +27 -28
- package/cjs/Channel/components/MessageInput.js.map +1 -1
- package/cjs/Channel/components/MessageList.js +41 -59
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +17 -17
- package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
- package/cjs/Channel/components/SuggestedMentionList.js +23 -30
- package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
- package/cjs/Channel/components/TypingIndicator.js +15 -15
- package/cjs/Channel/components/TypingIndicator.js.map +1 -1
- package/cjs/Channel/components/UnreadCount.js +4 -4
- package/cjs/Channel/context.js +14 -14
- package/cjs/Channel.js +39 -38
- package/cjs/Channel.js.map +1 -1
- package/cjs/ChannelList/components/AddChannel.js +15 -15
- package/cjs/ChannelList/components/ChannelListHeader.js +6 -6
- package/cjs/ChannelList/components/ChannelListUI.js +30 -30
- package/cjs/ChannelList/components/ChannelPreview.js +27 -27
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/cjs/ChannelList/context.js +8 -8
- package/cjs/ChannelList.js +30 -30
- package/cjs/{ChannelListProvider-d8f65b18.js → ChannelListProvider-c90e6d9b.js} +8 -8
- package/cjs/ChannelListProvider-c90e6d9b.js.map +1 -0
- package/cjs/{ChannelProvider-473548f7.js → ChannelProvider-6da44044.js} +12 -12
- package/cjs/ChannelProvider-6da44044.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/ModerationPanel.js.map +1 -1
- package/cjs/ChannelSettings/components/UserListItem.js +10 -10
- package/cjs/ChannelSettings/components/UserPanel.js +14 -14
- package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
- package/cjs/ChannelSettings/context.js +3 -3
- package/cjs/ChannelSettings/context.js.map +1 -1
- package/cjs/ChannelSettings.js +17 -17
- package/cjs/CreateChannel/components/CreateChannelUI.js +13 -13
- package/cjs/CreateChannel/components/InviteUsers.js +16 -14
- package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
- package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
- package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/cjs/CreateChannel/context.js +4 -4
- package/cjs/CreateChannel.js +13 -13
- package/cjs/{CreateChannelProvider-387290bb.js → CreateChannelProvider-ff9bb9da.js} +1 -1
- package/cjs/{CreateChannelProvider-387290bb.js.map → CreateChannelProvider-ff9bb9da.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/CreateOpenChannel.js.map +1 -1
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
- package/cjs/EditUserProfile.js +12 -12
- package/cjs/{LocalizationContext-e4a874cf.js → LocalizationContext-4c1a8e44.js} +3 -3
- package/cjs/{LocalizationContext-e4a874cf.js.map → LocalizationContext-4c1a8e44.js.map} +1 -1
- package/cjs/{MediaQueryContext-fcd92c17.js → MediaQueryContext-9f3958fe.js} +7 -7
- package/cjs/{MediaQueryContext-fcd92c17.js.map → MediaQueryContext-9f3958fe.js.map} +1 -1
- package/cjs/{MemberList-dbd3a4b4.js → MemberList-1ad4eda5.js} +5 -5
- package/cjs/MemberList-1ad4eda5.js.map +1 -0
- package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
- package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/cjs/MessageSearch/context.js +1 -1
- package/cjs/MessageSearch/context.js.map +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/OpenChannelHeader.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelInput.js +19 -19
- package/cjs/OpenChannel/components/OpenChannelMessage.js +28 -27
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +37 -71
- package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelUI.js +32 -30
- package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/cjs/OpenChannel/context.js +8 -8
- package/cjs/OpenChannel.js +32 -30
- package/cjs/OpenChannel.js.map +1 -1
- package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
- package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
- package/cjs/OpenChannelList/context.js +3 -3
- package/cjs/OpenChannelList.js +13 -13
- package/cjs/OpenChannelList.js.map +1 -1
- package/cjs/{OpenChannelListProvider-89659c0b.js → OpenChannelListProvider-f7387ce4.js} +6 -4
- package/cjs/OpenChannelListProvider-f7387ce4.js.map +1 -0
- package/cjs/{OpenChannelProvider-3d3d606e.js → OpenChannelProvider-0bbac562.js} +8 -8
- package/cjs/OpenChannelProvider-0bbac562.js.map +1 -0
- 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/OperatorUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
- package/cjs/OpenChannelSettings/context.js +3 -3
- package/cjs/OpenChannelSettings.js +17 -17
- package/cjs/{RemoveMessageModal-21a7c6ac.js → RemoveMessageModal-63e870f4.js} +3 -3
- package/cjs/{RemoveMessageModal-21a7c6ac.js.map → RemoveMessageModal-63e870f4.js.map} +1 -1
- package/cjs/SendbirdProvider.js +142 -115
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfo.js +30 -30
- package/cjs/Thread/components/ParentMessageInfoItem.js +18 -18
- package/cjs/Thread/components/ThreadHeader.js +6 -6
- package/cjs/Thread/components/ThreadList.js +34 -33
- package/cjs/Thread/components/ThreadList.js.map +1 -1
- package/cjs/Thread/components/ThreadListItem.js +33 -33
- package/cjs/Thread/components/ThreadListItem.js.map +1 -1
- package/cjs/Thread/components/ThreadMessageInput.js +28 -29
- package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
- package/cjs/Thread/components/ThreadUI.js +37 -37
- package/cjs/Thread/context.js +8 -8
- package/cjs/Thread.js +37 -37
- package/cjs/{ThreadProvider-572d67c0.js → ThreadProvider-ca9e5e4f.js} +9 -9
- package/cjs/ThreadProvider-ca9e5e4f.js.map +1 -0
- package/cjs/{UserProfileContext-ce0c283c.js → UserProfileContext-34f6be33.js} +1 -1
- package/cjs/{UserProfileContext-ce0c283c.js.map → UserProfileContext-34f6be33.js.map} +1 -1
- package/cjs/{VoiceMessageInputWrapper-88ad4670.js → VoiceMessageInputWrapper-770a185c.js} +18 -13
- package/cjs/VoiceMessageInputWrapper-770a185c.js.map +1 -0
- package/cjs/VoicePlayer/context.js +3 -3
- package/cjs/VoicePlayer/useVoicePlayer.js +3 -4
- package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -1
- package/cjs/VoiceRecorder/context.js +21 -124
- package/cjs/VoiceRecorder/context.js.map +1 -1
- package/cjs/VoiceRecorder/useVoiceRecorder.js +2 -3
- package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -1
- package/cjs/WebAudioUtils-70bcccc3.js +126 -0
- package/cjs/WebAudioUtils-70bcccc3.js.map +1 -0
- package/cjs/{_rollupPluginBabelHelpers-6ab4baac.js → _rollupPluginBabelHelpers-8164e35a.js} +1 -1
- package/cjs/_rollupPluginBabelHelpers-8164e35a.js.map +1 -0
- package/cjs/actionTypes-4a2939b3.js +10 -0
- package/cjs/actionTypes-4a2939b3.js.map +1 -0
- package/cjs/{color-168c1d53.js → color-f43f059a.js} +1 -1
- package/cjs/{color-168c1d53.js.map → color-f43f059a.js.map} +1 -1
- package/cjs/{compareIds-441b4983.js → compareIds-e5f7db38.js} +1 -1
- package/cjs/{compareIds-441b4983.js.map → compareIds-e5f7db38.js.map} +1 -1
- package/cjs/{const-cf4cec6a.js → const-611ac2dd.js} +1 -1
- package/cjs/{const-cf4cec6a.js.map → const-611ac2dd.js.map} +1 -1
- package/cjs/{const-0273bf9e.js → const-e7388711.js} +1 -1
- package/cjs/{const-0273bf9e.js.map → const-e7388711.js.map} +1 -1
- package/cjs/{consts-b8c0be49.js → consts-82dce75d.js} +1 -1
- package/cjs/{consts-b8c0be49.js.map → consts-82dce75d.js.map} +1 -1
- package/cjs/{consts-e193b1b8.js → consts-d9ecf2d7.js} +1 -1
- package/cjs/{consts-e193b1b8.js.map → consts-d9ecf2d7.js.map} +1 -1
- package/cjs/{consts-472d9347.js → consts-e0f44b83.js} +1 -1
- package/cjs/{consts-472d9347.js.map → consts-e0f44b83.js.map} +1 -1
- package/cjs/{consts-2e23914f.js → consts-f8bd3346.js} +1 -1
- package/cjs/{consts-2e23914f.js.map → consts-f8bd3346.js.map} +1 -1
- package/cjs/{context-d718fff1.js → context-32080e3d.js} +2 -2
- package/cjs/{context-d718fff1.js.map → context-32080e3d.js.map} +1 -1
- package/cjs/dist/index.css +143 -142
- package/cjs/dist/index.css.map +1 -1
- package/cjs/handlers/OpenChannelHandler.js.map +1 -1
- package/cjs/handlers/SessionHandler.js.map +1 -1
- package/cjs/{index-b2e4a79e.js → index-0f5a2c3b.js} +7 -7
- package/cjs/index-0f5a2c3b.js.map +1 -0
- package/cjs/{index-9dd8a18a.js → index-1837f392.js} +6 -6
- package/cjs/index-1837f392.js.map +1 -0
- package/cjs/{index-f2d71843.js → index-450c5c4a.js} +113 -30
- package/cjs/index-450c5c4a.js.map +1 -0
- package/cjs/{index-813deccc.js → index-584a87f3.js} +1 -1
- package/cjs/{index-813deccc.js.map → index-584a87f3.js.map} +1 -1
- package/cjs/{index-630f7132.js → index-58bddb18.js} +14 -14
- package/cjs/index-58bddb18.js.map +1 -0
- package/cjs/{index-44341b78.js → index-6253d289.js} +6 -3
- package/cjs/index-6253d289.js.map +1 -0
- package/cjs/{index-0e43cd69.js → index-6295003c.js} +2 -2
- package/cjs/{index-0e43cd69.js.map → index-6295003c.js.map} +1 -1
- package/cjs/{index-ba9683ca.js → index-911b358f.js} +7 -3
- package/cjs/index-911b358f.js.map +1 -0
- package/cjs/{index-5075f3b2.js → index-946fe9b8.js} +14 -14
- package/cjs/index-946fe9b8.js.map +1 -0
- package/cjs/{index-3d08adec.js → index-a9a828c4.js} +4 -4
- package/cjs/index-a9a828c4.js.map +1 -0
- package/cjs/index-bddcf750.js +41 -0
- package/cjs/index-bddcf750.js.map +1 -0
- package/cjs/{index-4894fc55.js → index-cc5b51fb.js} +7 -7
- package/cjs/index-cc5b51fb.js.map +1 -0
- package/cjs/{index-d3b05e98.js → index-d217a491.js} +2 -2
- package/cjs/index-d217a491.js.map +1 -0
- package/cjs/{index-903c0f93.js → index-ecac7544.js} +24 -3
- package/cjs/index-ecac7544.js.map +1 -0
- package/cjs/{index-3a7584a0.js → index-f2afea13.js} +28 -29
- package/cjs/index-f2afea13.js.map +1 -0
- package/cjs/{index-47105c4f.js → index-fc3f351f.js} +2 -2
- package/cjs/index-fc3f351f.js.map +1 -0
- package/cjs/index.js +50 -49
- package/cjs/index.js.map +1 -1
- package/cjs/index.module-d62bc038.js +6 -0
- package/cjs/index.module-d62bc038.js.map +1 -0
- package/cjs/sendbirdSelectors.js +2 -2
- package/cjs/sendbirdSelectors.js.map +1 -1
- package/cjs/{stringSet-76f7df68.js → stringSet-9717efda.js} +1 -1
- package/cjs/{stringSet-76f7df68.js.map → stringSet-9717efda.js.map} +1 -1
- package/cjs/{tokenize-5071d1a6.js → tokenize-b42df26a.js} +19 -5
- package/cjs/tokenize-b42df26a.js.map +1 -0
- package/cjs/{topics-f70c5e0f.js → topics-11bf2ffa.js} +1 -1
- package/cjs/topics-11bf2ffa.js.map +1 -0
- package/cjs/tslib.es6-b412d11d.js +97 -0
- package/cjs/tslib.es6-b412d11d.js.map +1 -0
- package/cjs/{types-43ef9367.js → types-997d2578.js} +1 -1
- package/cjs/types-997d2578.js.map +1 -0
- package/cjs/ui/Accordion.js +3 -3
- package/cjs/ui/AccordionGroup.js +2 -2
- package/cjs/ui/AdminMessage.js +3 -3
- package/cjs/ui/Avatar.js +2 -2
- package/cjs/ui/Badge.js +5 -5
- package/cjs/ui/BottomSheet.js +1 -1
- package/cjs/ui/BottomSheet.js.map +1 -1
- package/cjs/ui/Button.js +3 -3
- package/cjs/ui/Button.js.map +1 -1
- package/cjs/ui/ChannelAvatar.js +3 -3
- package/cjs/ui/ChannelAvatar.js.map +1 -1
- package/cjs/ui/Checkbox.js +2 -2
- package/cjs/ui/Checkbox.js.map +1 -1
- package/cjs/ui/ConnectionStatus.js +4 -4
- package/cjs/ui/ContextMenu.js +6 -6
- package/cjs/ui/ContextMenu.js.map +1 -1
- package/cjs/ui/DateSeparator.js +4 -4
- package/cjs/ui/EmojiReactions.js +7 -7
- package/cjs/ui/FileMessageItemBody.js +6 -6
- package/cjs/ui/FileViewer.js +8 -8
- package/cjs/ui/IconButton.js +1 -1
- package/cjs/ui/IconButton.js.map +1 -1
- package/cjs/ui/ImageRenderer.js +1 -1
- package/cjs/ui/ImageRenderer.js.map +1 -1
- package/cjs/ui/Input.js +2 -2
- package/cjs/ui/Label.js +2 -2
- package/cjs/ui/LinkLabel.js +2 -2
- package/cjs/ui/Loader.js +1 -1
- package/cjs/ui/MentionLabel.js +10 -10
- package/cjs/ui/MentionUserLabel.js +1 -1
- package/cjs/ui/MessageContent.js +28 -28
- package/cjs/ui/MessageContent.js.map +1 -1
- package/cjs/ui/MessageInput.js +24 -23
- package/cjs/ui/MessageInput.js.map +1 -1
- package/cjs/ui/MessageItemMenu.js +8 -8
- package/cjs/ui/MessageItemMenu.js.map +1 -1
- package/cjs/ui/MessageItemReactionMenu.js +5 -5
- package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
- package/cjs/ui/MessageSearchFileItem.js +11 -11
- package/cjs/ui/MessageSearchFileItem.js.map +1 -1
- package/cjs/ui/MessageSearchItem.js +9 -9
- package/cjs/ui/MessageSearchItem.js.map +1 -1
- package/cjs/ui/MessageStatus.js +10 -10
- package/cjs/ui/Modal.js +7 -7
- package/cjs/ui/Modal.js.map +1 -1
- package/cjs/ui/OGMessageItemBody.js +14 -13
- package/cjs/ui/OGMessageItemBody.js.map +1 -1
- package/cjs/ui/OpenChannelAdminMessage.js +3 -3
- package/cjs/ui/OpenChannelAvatar.js +6 -6
- package/cjs/ui/OpenChannelAvatar.js.map +1 -1
- package/cjs/ui/OpenchannelConversationHeader.js +6 -6
- package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
- package/cjs/ui/OpenchannelFileMessage.js +16 -16
- package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
- package/cjs/ui/OpenchannelOGMessage.js +19 -18
- package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
- package/cjs/ui/OpenchannelThumbnailMessage.js +15 -15
- package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/cjs/ui/OpenchannelUserMessage.js +16 -16
- package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
- package/cjs/ui/PlaceHolder.js +6 -6
- package/cjs/ui/PlaybackTime.js +2 -2
- package/cjs/ui/ProgressBar.js.map +1 -1
- package/cjs/ui/QuoteMessage.js +6 -6
- package/cjs/ui/QuoteMessage.js.map +1 -1
- package/cjs/ui/QuoteMessageInput.js +6 -6
- package/cjs/ui/ReactionBadge.js +3 -3
- package/cjs/ui/ReactionBadge.js.map +1 -1
- package/cjs/ui/ReactionButton.js +1 -1
- package/cjs/ui/SortByRow.js +2 -2
- package/cjs/ui/TextButton.js +2 -2
- package/cjs/ui/TextButton.js.map +1 -1
- package/cjs/ui/TextMessageItemBody.js +14 -13
- package/cjs/ui/TextMessageItemBody.js.map +1 -1
- package/cjs/ui/ThreadReplies.js +6 -6
- package/cjs/ui/ThumbnailMessageItemBody.js +4 -4
- package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/cjs/ui/Tooltip.js +3 -3
- package/cjs/ui/Tooltip.js.map +1 -1
- package/cjs/ui/TooltipWrapper.js +1 -1
- package/cjs/ui/UnknownMessageItemBody.js +6 -6
- package/cjs/ui/UserListItem.js +11 -11
- package/cjs/ui/UserListItem.js.map +1 -1
- package/cjs/ui/UserProfile.js +9 -9
- package/cjs/ui/VoiceMessageItemBody.js +5 -6
- package/cjs/ui/VoiceMessageItemBody.js.map +1 -1
- package/cjs/ui/VoiceMessgeInput.js +8 -8
- package/cjs/ui/Word.js +11 -11
- package/cjs/ui/Word.js.map +1 -1
- package/cjs/{useLongPress-3582b310.js → useLongPress-0b0040bb.js} +3 -3
- package/cjs/{useLongPress-3582b310.js.map → useLongPress-0b0040bb.js.map} +1 -1
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/useSendbirdStateContext.js.map +1 -1
- package/cjs/utils/message/isVoiceMessage.js +2 -2
- package/cjs/utils/message/isVoiceMessage.js.map +1 -1
- package/cjs/{utils-39eb2189.js → utils-301360ec.js} +2 -2
- package/cjs/utils-301360ec.js.map +1 -0
- package/cjs/{utils-39a3f99e.js → utils-43d14023.js} +1 -1
- package/cjs/utils-43d14023.js.map +1 -0
- package/cjs/{utils-1ebf89f9.js → utils-aeadc058.js} +1 -1
- package/cjs/{utils-1ebf89f9.js.map → utils-aeadc058.js.map} +1 -1
- package/cjs/{utils-fdfc9b0a.js → utils-d40c9909.js} +1 -1
- package/cjs/{utils-fdfc9b0a.js.map → utils-d40c9909.js.map} +1 -1
- package/cjs/{uuid-f23c161c.js → uuid-d0a9c040.js} +1 -1
- package/cjs/{uuid-f23c161c.js.map → uuid-d0a9c040.js.map} +1 -1
- package/cjs/withSendbird.js +1 -1
- package/{color-e54d3ed7.js → color-4ecee870.js} +1 -1
- package/{color-e54d3ed7.js.map → color-4ecee870.js.map} +1 -1
- package/{compareIds-3e30a438.js → compareIds-bc4cf9bf.js} +1 -1
- package/{compareIds-3e30a438.js.map → compareIds-bc4cf9bf.js.map} +1 -1
- package/{const-71bd6867.js → const-34b3294d.js} +1 -1
- package/{const-71bd6867.js.map → const-34b3294d.js.map} +1 -1
- package/{const-48a3200e.js → const-8a7444d1.js} +1 -1
- package/{const-48a3200e.js.map → const-8a7444d1.js.map} +1 -1
- package/{consts-665331c7.js → consts-165100af.js} +1 -1
- package/{consts-665331c7.js.map → consts-165100af.js.map} +1 -1
- package/{consts-4b1e008b.js → consts-7a61df9f.js} +1 -1
- package/{consts-4b1e008b.js.map → consts-7a61df9f.js.map} +1 -1
- package/{consts-e4e1a8fc.js → consts-81c7d9ed.js} +1 -1
- package/{consts-e4e1a8fc.js.map → consts-81c7d9ed.js.map} +1 -1
- package/{consts-30f09302.js → consts-96859f90.js} +1 -1
- package/{consts-30f09302.js.map → consts-96859f90.js.map} +1 -1
- package/{context-993ee0c3.js → context-c54bc9b4.js} +2 -2
- package/{context-993ee0c3.js.map → context-c54bc9b4.js.map} +1 -1
- package/dist/index.css +143 -142
- package/dist/index.css.map +1 -1
- package/handlers/OpenChannelHandler.js.map +1 -1
- package/handlers/SessionHandler.js.map +1 -1
- package/{index-cd1a9173.js → index-1db30515.js} +14 -14
- package/index-1db30515.js.map +1 -0
- package/index-2ea26b17.js +39 -0
- package/index-2ea26b17.js.map +1 -0
- package/{index-d75ba9c0.js → index-3ac8a689.js} +4 -4
- package/index-3ac8a689.js.map +1 -0
- package/{index-207577d6.js → index-47ba6604.js} +7 -3
- package/index-47ba6604.js.map +1 -0
- package/{index-8f0ae983.js → index-538fa479.js} +2 -2
- package/{index-8f0ae983.js.map → index-538fa479.js.map} +1 -1
- package/{index-8a52a6f4.js → index-5cfaecc9.js} +113 -30
- package/index-5cfaecc9.js.map +1 -0
- package/{index-0f373e79.js → index-6574e8fd.js} +24 -3
- package/index-6574e8fd.js.map +1 -0
- package/{index-5c20d787.js → index-6f66895e.js} +1 -1
- package/{index-5c20d787.js.map → index-6f66895e.js.map} +1 -1
- package/{index-a90edcd2.js → index-77a24725.js} +7 -7
- package/index-77a24725.js.map +1 -0
- package/{index-95f0372d.js → index-adfdd634.js} +2 -2
- package/index-adfdd634.js.map +1 -0
- package/{index-ec8cbdfb.js → index-af95f2b0.js} +14 -14
- package/index-af95f2b0.js.map +1 -0
- package/{index-2932882f.js → index-c4ff34e4.js} +6 -3
- package/index-c4ff34e4.js.map +1 -0
- package/{index-c77693d8.js → index-df6b2fc4.js} +2 -2
- package/index-df6b2fc4.js.map +1 -0
- package/{index-88523047.js → index-e2834120.js} +7 -7
- package/index-e2834120.js.map +1 -0
- package/{index-10377bc5.js → index-e5062739.js} +6 -6
- package/index-e5062739.js.map +1 -0
- package/index-f5d419ec.js +53 -0
- package/index-f5d419ec.js.map +1 -0
- package/index.d.ts +1 -1
- package/index.js +50 -49
- package/index.js.map +1 -1
- package/index.module-a2145ffe.js +4 -0
- package/index.module-a2145ffe.js.map +1 -0
- package/package.json +4 -2
- package/sendbirdSelectors.js +2 -2
- package/sendbirdSelectors.js.map +1 -1
- package/{stringSet-2d42f6ff.js → stringSet-e0fd81b2.js} +1 -1
- package/{stringSet-2d42f6ff.js.map → stringSet-e0fd81b2.js.map} +1 -1
- package/{tokenize-cd9c48bb.js → tokenize-22d48b61.js} +19 -6
- package/tokenize-22d48b61.js.map +1 -0
- package/{topics-6d4bf2ed.js → topics-bc5fee43.js} +1 -1
- package/topics-bc5fee43.js.map +1 -0
- package/tslib.es6-85bcd95d.js +92 -0
- package/tslib.es6-85bcd95d.js.map +1 -0
- package/{types-2fb5793c.js → types-84207ac4.js} +1 -1
- package/types-84207ac4.js.map +1 -0
- package/ui/Accordion.js +3 -3
- package/ui/AccordionGroup.js +2 -2
- package/ui/AdminMessage.js +3 -3
- package/ui/Avatar.js +2 -2
- package/ui/Badge.js +5 -5
- package/ui/BottomSheet.js +1 -1
- package/ui/BottomSheet.js.map +1 -1
- package/ui/Button.js +3 -3
- package/ui/Button.js.map +1 -1
- package/ui/ChannelAvatar.js +3 -3
- package/ui/ChannelAvatar.js.map +1 -1
- package/ui/Checkbox.js +2 -2
- package/ui/Checkbox.js.map +1 -1
- package/ui/ConnectionStatus.js +4 -4
- package/ui/ContextMenu.js +6 -6
- package/ui/ContextMenu.js.map +1 -1
- package/ui/DateSeparator.js +4 -4
- package/ui/EmojiReactions.js +7 -7
- package/ui/FileMessageItemBody.js +6 -6
- package/ui/FileViewer.js +8 -8
- package/ui/IconButton.js +1 -1
- package/ui/IconButton.js.map +1 -1
- package/ui/ImageRenderer.js +1 -1
- package/ui/ImageRenderer.js.map +1 -1
- package/ui/Input.js +2 -2
- package/ui/Label.js +2 -2
- package/ui/LinkLabel.js +2 -2
- package/ui/Loader.js +1 -1
- package/ui/MentionLabel.js +10 -10
- package/ui/MentionUserLabel.js +1 -1
- package/ui/MessageContent.js +28 -28
- package/ui/MessageContent.js.map +1 -1
- package/ui/MessageInput.js +24 -23
- package/ui/MessageInput.js.map +1 -1
- package/ui/MessageItemMenu.js +8 -8
- package/ui/MessageItemMenu.js.map +1 -1
- package/ui/MessageItemReactionMenu.js +5 -5
- package/ui/MessageItemReactionMenu.js.map +1 -1
- package/ui/MessageSearchFileItem.js +11 -11
- package/ui/MessageSearchFileItem.js.map +1 -1
- package/ui/MessageSearchItem.js +9 -9
- package/ui/MessageSearchItem.js.map +1 -1
- package/ui/MessageStatus.js +10 -10
- package/ui/Modal.js +7 -7
- package/ui/Modal.js.map +1 -1
- package/ui/OGMessageItemBody.js +14 -13
- package/ui/OGMessageItemBody.js.map +1 -1
- package/ui/OpenChannelAdminMessage.js +3 -3
- package/ui/OpenChannelAvatar.js +6 -6
- package/ui/OpenChannelAvatar.js.map +1 -1
- package/ui/OpenchannelConversationHeader.js +6 -6
- package/ui/OpenchannelConversationHeader.js.map +1 -1
- package/ui/OpenchannelFileMessage.js +16 -16
- package/ui/OpenchannelFileMessage.js.map +1 -1
- package/ui/OpenchannelOGMessage.js +19 -18
- package/ui/OpenchannelOGMessage.js.map +1 -1
- package/ui/OpenchannelThumbnailMessage.js +15 -15
- package/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/ui/OpenchannelUserMessage.js +16 -16
- package/ui/OpenchannelUserMessage.js.map +1 -1
- package/ui/PlaceHolder.js +6 -6
- package/ui/PlaybackTime.js +2 -2
- package/ui/ProgressBar.js.map +1 -1
- package/ui/QuoteMessage.js +6 -6
- package/ui/QuoteMessage.js.map +1 -1
- package/ui/QuoteMessageInput.js +6 -6
- package/ui/ReactionBadge.js +3 -3
- package/ui/ReactionBadge.js.map +1 -1
- package/ui/ReactionButton.js +1 -1
- package/ui/SortByRow.js +2 -2
- package/ui/TextButton.js +2 -2
- package/ui/TextButton.js.map +1 -1
- package/ui/TextMessageItemBody.js +14 -13
- package/ui/TextMessageItemBody.js.map +1 -1
- package/ui/ThreadReplies.js +6 -6
- package/ui/ThumbnailMessageItemBody.js +4 -4
- package/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/ui/Tooltip.js +3 -3
- package/ui/Tooltip.js.map +1 -1
- package/ui/TooltipWrapper.js +1 -1
- package/ui/UnknownMessageItemBody.js +6 -6
- package/ui/UserListItem.js +11 -11
- package/ui/UserListItem.js.map +1 -1
- package/ui/UserProfile.js +9 -9
- package/ui/VoiceMessageItemBody.js +5 -6
- package/ui/VoiceMessageItemBody.js.map +1 -1
- package/ui/VoiceMessgeInput.js +8 -8
- package/ui/Word.js +11 -11
- package/ui/Word.js.map +1 -1
- package/{useLongPress-c1a00d6e.js → useLongPress-08d9369b.js} +3 -3
- package/{useLongPress-c1a00d6e.js.map → useLongPress-08d9369b.js.map} +1 -1
- package/useSendbirdStateContext.js +1 -1
- package/useSendbirdStateContext.js.map +1 -1
- package/utils/message/isVoiceMessage.js +2 -2
- package/utils/message/isVoiceMessage.js.map +1 -1
- package/{utils-3c726d0f.js → utils-13ac01f0.js} +2 -2
- package/utils-13ac01f0.js.map +1 -0
- package/{utils-4c1f97d4.js → utils-3c97842b.js} +1 -1
- package/{utils-4c1f97d4.js.map → utils-3c97842b.js.map} +1 -1
- package/{utils-760413c9.js → utils-4aea6ebc.js} +1 -1
- package/utils-4aea6ebc.js.map +1 -0
- package/{utils-a7563986.js → utils-7dc80efd.js} +1 -1
- package/{utils-a7563986.js.map → utils-7dc80efd.js.map} +1 -1
- package/{uuid-368c5040.js → uuid-39d923b9.js} +1 -1
- package/{uuid-368c5040.js.map → uuid-39d923b9.js.map} +1 -1
- package/withSendbird.js +1 -1
- package/.yarn/install-state.gz +0 -0
- package/ChannelListProvider-b7ce527e.js.map +0 -1
- package/ChannelProvider-cd9afff3.js.map +0 -1
- package/MemberList-70806978.js.map +0 -1
- package/OpenChannelListProvider-22244a14.js.map +0 -1
- package/OpenChannelProvider-36270182.js.map +0 -1
- package/ThreadProvider-533e9025.js.map +0 -1
- package/VoiceMessageInputWrapper-c74412de.js.map +0 -1
- package/_rollupPluginBabelHelpers-3756a6a3.js.map +0 -1
- package/actionTypes-f6400d21.js +0 -6
- package/actionTypes-f6400d21.js.map +0 -1
- package/cjs/ChannelListProvider-d8f65b18.js.map +0 -1
- package/cjs/ChannelProvider-473548f7.js.map +0 -1
- package/cjs/MemberList-dbd3a4b4.js.map +0 -1
- package/cjs/OpenChannelListProvider-89659c0b.js.map +0 -1
- package/cjs/OpenChannelProvider-3d3d606e.js.map +0 -1
- package/cjs/ThreadProvider-572d67c0.js.map +0 -1
- package/cjs/VoiceMessageInputWrapper-88ad4670.js.map +0 -1
- package/cjs/_rollupPluginBabelHelpers-6ab4baac.js.map +0 -1
- package/cjs/actionTypes-1b068888.js +0 -10
- package/cjs/actionTypes-1b068888.js.map +0 -1
- package/cjs/index-3a7584a0.js.map +0 -1
- package/cjs/index-3d08adec.js.map +0 -1
- package/cjs/index-44341b78.js.map +0 -1
- package/cjs/index-47105c4f.js.map +0 -1
- package/cjs/index-4894fc55.js.map +0 -1
- package/cjs/index-5075f3b2.js.map +0 -1
- package/cjs/index-630f7132.js.map +0 -1
- package/cjs/index-903c0f93.js.map +0 -1
- package/cjs/index-9dd8a18a.js.map +0 -1
- package/cjs/index-b2e4a79e.js.map +0 -1
- package/cjs/index-ba9683ca.js.map +0 -1
- package/cjs/index-d3b05e98.js.map +0 -1
- package/cjs/index-f2d71843.js.map +0 -1
- package/cjs/tokenize-5071d1a6.js.map +0 -1
- package/cjs/topics-f70c5e0f.js.map +0 -1
- package/cjs/tslib.es6-67bdb021.js +0 -176
- package/cjs/tslib.es6-67bdb021.js.map +0 -1
- package/cjs/types-43ef9367.js.map +0 -1
- package/cjs/utils-39a3f99e.js.map +0 -1
- package/cjs/utils-39eb2189.js.map +0 -1
- package/index-0f373e79.js.map +0 -1
- package/index-10377bc5.js.map +0 -1
- package/index-207577d6.js.map +0 -1
- package/index-2932882f.js.map +0 -1
- package/index-88523047.js.map +0 -1
- package/index-8a52a6f4.js.map +0 -1
- package/index-95f0372d.js.map +0 -1
- package/index-a90edcd2.js.map +0 -1
- package/index-c77693d8.js.map +0 -1
- package/index-cc626895.js +0 -54
- package/index-cc626895.js.map +0 -1
- package/index-cd1a9173.js.map +0 -1
- package/index-d75ba9c0.js.map +0 -1
- package/index-ec8cbdfb.js.map +0 -1
- package/tokenize-cd9c48bb.js.map +0 -1
- package/topics-6d4bf2ed.js.map +0 -1
- package/tslib.es6-5180f9d1.js +0 -171
- package/tslib.es6-5180f9d1.js.map +0 -1
- package/types-2fb5793c.js.map +0 -1
- package/utils-3c726d0f.js.map +0 -1
- package/utils-760413c9.js.map +0 -1
package/ui/MessageContent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageContent.js","sources":["../../src/ui/MobileMenu/MobileContextMenu.tsx","../../src/ui/MobileMenu/MobileBottomSheet.tsx","../../src/ui/MobileMenu/index.tsx","../../src/ui/MessageContent/index.tsx"],"sourcesContent":["import React from 'react';\nimport type { BaseMenuProps } from './types';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport type { GroupChannel } from '@sendbird/chat/groupChannel';\n\nimport ContextMenu, { MenuItems, MenuItem } from '../ContextMenu';\n\nimport {\n isFailedMessage,\n isPendingMessage,\n isSentMessage,\n isUserMessage,\n copyToClipboard,\n isFileMessage,\n} from '../../utils';\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelTypography } from '../Label';\n\nconst MobileContextMenu: React.FunctionComponent<BaseMenuProps> = (props: BaseMenuProps) => {\n const {\n hideMenu,\n channel,\n message,\n replyType,\n userId,\n resendMessage,\n showEdit,\n showRemove,\n setQuoteMessage,\n parentRef,\n } = props;\n const isByMe = message?.sender?.userId === userId;\n const { stringSet } = useLocalization();\n const showMenuItemCopy: boolean = isUserMessage(message as UserMessage);\n const showMenuItemEdit: boolean = (isUserMessage(message as UserMessage) && isSentMessage(message) && isByMe);\n const showMenuItemResend: boolean = (isFailedMessage(message) && message?.isResendable && isByMe);\n const showMenuItemDelete: boolean = !isPendingMessage(message) && isByMe;\n const showMenuItemDownload: boolean = !isPendingMessage(message) && isFileMessage(message);\n const showMenuItemReply: boolean = (replyType === 'QUOTE_REPLY')\n && !isFailedMessage(message)\n && !isPendingMessage(message)\n && (channel?.isGroupChannel() && !(channel as GroupChannel)?.isBroadcast);\n\n const fileMessage = message as FileMessage;\n return (\n <ContextMenu\n isOpen\n menuItems={() => (\n <MenuItems\n className=\"sendbird-message__mobile-context-menu\"\n parentRef={parentRef}\n parentContainRef={parentRef}\n closeDropdown={hideMenu}\n >\n {showMenuItemCopy && (\n <MenuItem\n className=\"sendbird-message__mobile-context-menu-item menu-item-copy\"\n onClick={() => {\n hideMenu();\n copyToClipboard((message as UserMessage)?.message);\n }}\n >\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet?.MESSAGE_MENU__COPY}\n </Label>\n <Icon\n type={IconTypes.COPY}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </MenuItem>\n )}\n {showMenuItemReply && (\n <MenuItem\n className=\"sendbird-message__mobile-context-menu-item menu-item-reply\"\n onClick={() => {\n hideMenu();\n setQuoteMessage(message);\n }}\n disable={message?.parentMessageId > 0}\n >\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet.MESSAGE_MENU__REPLY}\n </Label>\n <Icon\n type={IconTypes.REPLY}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </MenuItem>\n )}\n {showMenuItemEdit && (\n <MenuItem\n className=\"sendbird-message__mobile-context-menu-item menu-item-edit\"\n onClick={() => {\n hideMenu();\n showEdit(true);\n }}\n >\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet.MESSAGE_MENU__EDIT}\n </Label>\n <Icon\n type={IconTypes.EDIT}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </MenuItem>\n )}\n {showMenuItemResend && (\n <MenuItem\n className=\"sendbird-message__mobile-context-menu-item menu-item-resend\"\n onClick={() => {\n hideMenu();\n resendMessage(message);\n }}\n >\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet.MESSAGE_MENU__RESEND}\n </Label>\n <Icon\n type={IconTypes.REFRESH}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </MenuItem>\n )}\n {showMenuItemDelete && (\n <MenuItem\n className=\"sendbird-message__mobile-context-menu-item menu-item-delete\"\n onClick={() => {\n hideMenu();\n showRemove(true);\n }}\n disable={message?.threadInfo?.replyCount > 0}\n >\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet.MESSAGE_MENU__DELETE}\n </Label>\n <Icon\n type={IconTypes.DELETE}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </MenuItem>\n )}\n {showMenuItemDownload && (\n <MenuItem\n className=\"sendbird-message__mobile-context-menu-item menu-item-save\"\n onClick={() => {\n hideMenu();\n }}\n >\n <a\n className=\"sendbird-message__contextmenu--hyperlink\"\n rel=\"noopener noreferrer\"\n href={fileMessage?.url}\n target=\"_blank\"\n >\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet.MESSAGE_MENU__SAVE}\n </Label>\n <Icon\n type={IconTypes.DOWNLOAD}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </a>\n </MenuItem>\n )}\n </MenuItems>\n )}\n />\n );\n};\n\nexport default MobileContextMenu;\n","import type { Emoji } from '@sendbird/chat';\nimport { FileMessage, Reaction, UserMessage } from '@sendbird/chat/message';\nimport React, { useState } from 'react';\n\nimport type { MobileBottomSheetProps } from './types';\nimport type { GroupChannel } from '@sendbird/chat/groupChannel';\n\nimport {\n getEmojiListAll,\n isFailedMessage,\n isPendingMessage,\n isSentMessage,\n isUserMessage,\n copyToClipboard,\n isFileMessage,\n} from '../../utils';\nimport BottomSheet from '../BottomSheet';\nimport ImageRenderer from '../ImageRenderer';\nimport ReactionButton from '../ReactionButton';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport { useLocalization } from '../../lib/LocalizationContext';\n\nconst EMOJI_SIZE = 38;\n\nconst MobileBottomSheet: React.FunctionComponent<MobileBottomSheetProps> = (props: MobileBottomSheetProps) => {\n const {\n hideMenu,\n channel,\n emojiContainer,\n message,\n replyType,\n userId,\n resendMessage,\n toggleReaction,\n isReactionEnabled,\n showEdit,\n showRemove,\n setQuoteMessage,\n } = props;\n const isByMe = message?.sender?.userId === userId;\n const { stringSet } = useLocalization();\n const showMenuItemCopy: boolean = isUserMessage(message as UserMessage);\n const showMenuItemEdit: boolean = (isUserMessage(message as UserMessage) && isSentMessage(message) && isByMe);\n const showMenuItemResend: boolean = (isFailedMessage(message) && message?.isResendable && isByMe);\n const showMenuItemDelete: boolean = !isPendingMessage(message) && isByMe;\n const showMenuItemDownload: boolean = !isPendingMessage(message) && isFileMessage(message);\n const showReaction: boolean = !isFailedMessage(message) && !isPendingMessage(message) && isReactionEnabled;\n const showMenuItemReply: boolean = (replyType === 'QUOTE_REPLY')\n && !isFailedMessage(message)\n && !isPendingMessage(message)\n && (channel?.isGroupChannel() && !(channel as GroupChannel)?.isBroadcast);\n const disableReaction = message?.parentMessageId > 0;\n\n const fileMessage = message as FileMessage;\n const maxEmojisPerRow = Math.floor(window?.innerWidth / EMOJI_SIZE) - 1;\n const [showEmojisOnly, setShowEmojisOnly] = useState<boolean>(false);\n const emojis = getEmojiListAll(emojiContainer);\n // calculate max emojis that can be shown in screen\n const visibleEmojis = showEmojisOnly\n ? emojis\n : emojis?.slice(0, maxEmojisPerRow);\n const canShowMoreEmojis = emojis.length > maxEmojisPerRow;\n return (\n <BottomSheet onBackdropClick={hideMenu}>\n <div className='sendbird-message__bottomsheet'>\n {\n showReaction && (\n <div className='sendbird-message__bottomsheet-reactions'>\n <ul\n className=\"sendbird-message__bottomsheet-reaction-bar\"\n >\n <div\n className={`\n sendbird-message__bottomsheet-reaction-bar__row\n ${showEmojisOnly ? 'sendbird-message__bottomsheet-reaction-bar__all' : ''}\n `}\n >\n {visibleEmojis.map((emoji: Emoji): React.ReactElement => {\n const isReacted: boolean = message?.reactions\n ?.filter((reaction: Reaction): boolean => reaction.key === emoji.key)[0]\n ?.userIds\n ?.some((reactorId: string): boolean => reactorId === userId);\n return (\n <ReactionButton\n key={emoji.key}\n width={`${EMOJI_SIZE}px`}\n height={`${EMOJI_SIZE}px`}\n selected={isReacted}\n onClick={(): void => {\n hideMenu();\n toggleReaction(message, emoji.key, isReacted);\n }}\n >\n <ImageRenderer\n url={emoji?.url || ''}\n width=\"28px\"\n height=\"28px\"\n placeHolder={(style: Record<string, unknown>): ReactElement => (\n <div style={style}>\n <Icon\n type={IconTypes.QUESTION}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"28px\"\n height=\"28px\"\n />\n </div>\n )}\n />\n </ReactionButton>\n );\n })}\n {\n canShowMoreEmojis && !showEmojisOnly && (\n <ReactionButton\n key=\"emoji_more\"\n width=\"38px\"\n height=\"38px\"\n onClick={(): void => {\n setShowEmojisOnly(true);\n }}\n >\n <ImageRenderer\n url={''}\n width=\"28px\"\n height=\"28px\"\n placeHolder={(style: Record<string, unknown>): React.ReactElement => (\n <div style={style}>\n <Icon\n type={IconTypes.EMOJI_MORE}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"28px\"\n height=\"28px\"\n />\n </div>\n )}\n />\n </ReactionButton>\n )\n }\n </div>\n </ul>\n </div>\n )\n }\n {\n !showEmojisOnly && (\n <div className='sendbird-message__bottomsheet--actions'>\n {showMenuItemCopy && (\n <div\n className='sendbird-message__bottomsheet--action'\n onClick={() => {\n hideMenu();\n copyToClipboard((message as UserMessage)?.message);\n }}\n >\n <Icon\n type={IconTypes.COPY}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet?.MESSAGE_MENU__COPY}\n </Label>\n </div>\n )}\n {\n showMenuItemEdit && (\n <div\n className='sendbird-message__bottomsheet--action'\n onClick={() => {\n hideMenu();\n showEdit(true);\n }}\n >\n <Icon\n type={IconTypes.EDIT}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet?.MESSAGE_MENU__EDIT}\n </Label>\n </div>\n )\n }\n {\n showMenuItemResend && (\n <div\n className='sendbird-message__bottomsheet--action'\n onClick={() => {\n hideMenu();\n resendMessage(message);\n }}\n >\n <Icon\n type={IconTypes.REFRESH}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet?.MESSAGE_MENU__RESEND}\n </Label>\n </div>\n )\n }\n {\n showMenuItemReply && (\n\n <div\n className={`sendbird-message__bottomsheet--action\n ${disableReaction ? 'sendbird-message__bottomsheet--action-disabled': ''}\n `}\n role=\"menuitem\"\n aria-disabled={disableReaction ? true : false}\n onClick={() => {\n if(!disableReaction) {\n hideMenu();\n setQuoteMessage(message);\n }\n }}\n >\n <Icon\n type={IconTypes.REPLY}\n fillColor={disableReaction\n ? IconColors.ON_BACKGROUND_3\n : IconColors.PRIMARY\n }\n width=\"24px\"\n height=\"24px\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={disableReaction && LabelColors.ONBACKGROUND_4}\n >\n {stringSet?.MESSAGE_MENU__REPLY}\n </Label>\n </div>\n )\n }\n {\n showMenuItemDelete && (\n <div\n className='sendbird-message__bottomsheet--action'\n onClick={() => {\n hideMenu();\n showRemove(true);\n }}\n >\n <Icon\n type={IconTypes.DELETE}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet?.MESSAGE_MENU__DELETE}\n </Label>\n </div>\n )\n }\n {\n showMenuItemDownload && (\n <div\n className='sendbird-message__bottomsheet--action'\n onClick={() => {\n hideMenu();\n }}\n >\n <a\n className=\"sendbird-message__bottomsheet--hyperlink\"\n rel=\"noopener noreferrer\"\n href={fileMessage?.url}\n target=\"_blank\"\n >\n <Icon\n type={IconTypes.DOWNLOAD}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet?.MESSAGE_MENU__SAVE}\n </Label>\n </a>\n </div>\n )\n }\n </div>\n )\n }\n </div>\n </BottomSheet>\n );\n};\n\nexport default MobileBottomSheet;\n","import './mobile-menu.scss';\n\nimport React from 'react';\nimport MobileContextMenu from './MobileContextMenu';\nimport MobileBottomSheet from './MobileBottomSheet';\nimport type { MobileBottomSheetProps } from './types';\n\nconst MobileMenu: React.FC<MobileBottomSheetProps> = (props: MobileBottomSheetProps) => {\n const {\n message,\n hideMenu,\n userId,\n channel,\n isReactionEnabled = false,\n isByMe,\n replyType,\n disabled,\n showRemove,\n showEdit,\n resendMessage,\n setQuoteMessage,\n emojiContainer,\n toggleReaction,\n parentRef,\n } = props;\n return (\n <>\n {\n isReactionEnabled\n ? (\n <MobileBottomSheet\n channel={channel}\n message={message}\n hideMenu={hideMenu}\n isByMe={isByMe}\n userId={userId}\n replyType={replyType}\n disabled={disabled}\n showRemove={showRemove}\n showEdit={showEdit}\n resendMessage={resendMessage}\n setQuoteMessage={setQuoteMessage}\n emojiContainer={emojiContainer}\n toggleReaction={toggleReaction}\n isReactionEnabled={isReactionEnabled}\n />\n ): (\n <MobileContextMenu\n channel={channel}\n userId={userId}\n message={message}\n hideMenu={hideMenu}\n isByMe={isByMe}\n showEdit={showEdit}\n replyType={replyType}\n disabled={disabled}\n showRemove={showRemove}\n resendMessage={resendMessage}\n setQuoteMessage={setQuoteMessage}\n parentRef={parentRef}\n />\n )\n }\n </>\n );\n};\n\nexport default MobileMenu;\n","import React, {\n ReactElement,\n useContext,\n useRef,\n useState,\n} from 'react';\nimport format from 'date-fns/format';\nimport './index.scss';\n\nimport Avatar from '../Avatar';\nimport UserProfile from '../UserProfile';\nimport MessageStatus from '../MessageStatus';\nimport MessageItemMenu from '../MessageItemMenu';\nimport MessageItemReactionMenu from '../MessageItemReactionMenu';\nimport ContextMenu, { MenuItems } from '../ContextMenu';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport EmojiReactions from '../EmojiReactions';\n\nimport ClientAdminMessage from '../AdminMessage';\nimport TextMessageItemBody from '../TextMessageItemBody';\nimport FileMessageItemBody from '../FileMessageItemBody';\nimport ThumbnailMessageItemBody from '../ThumbnailMessageItemBody';\nimport OGMessageItemBody from '../OGMessageItemBody';\nimport UnknownMessageItemBody from '../UnknownMessageItemBody';\nimport QuoteMessage from '../QuoteMessage';\n\nimport {\n getClassName,\n getUIKitMessageTypes,\n getUIKitMessageType,\n isTextMessage,\n isOGMessage,\n isThumbnailMessage,\n getSenderName,\n isSentMessage,\n isVoiceMessage,\n} from '../../utils';\nimport { UserProfileContext } from '../../lib/UserProfileContext';\nimport { ReplyType } from '../../index.js';\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../hooks/useSendbirdStateContext';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { EmojiContainer } from '@sendbird/chat';\nimport { AdminMessage, FileMessage, Sender, UserMessage } from '@sendbird/chat/message';\nimport useLongPress from '../../hooks/useLongPress';\nimport MobileMenu from '../MobileMenu';\nimport { useMediaQueryContext } from '../../lib/MediaQueryContext';\nimport ThreadReplies from '../ThreadReplies';\nimport { ThreadReplySelectType } from '../../smart-components/Channel/context/const';\nimport VoiceMessageItemBody from '../VoiceMessageItemBody';\n\n// should initialize in UserProfileContext.jsx\nexport interface UserProfileContextInterface {\n disableUserProfile: boolean;\n isOpenChannel: boolean;\n renderUserProfile?: (props: { user: Sender, close: () => void }) => React.ReactElement,\n}\n\ninterface Props {\n className?: string | Array<string>;\n userId: string;\n channel: GroupChannel;\n message: AdminMessage | UserMessage | FileMessage;\n disabled?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n isReactionEnabled?: boolean;\n disableQuoteMessage?: boolean;\n replyType?: ReplyType;\n threadReplySelectType?: ThreadReplySelectType;\n nicknamesMap?: Map<string, string>;\n emojiContainer?: EmojiContainer;\n scrollToMessage?: (createdAt: number, messageId: number) => void;\n showEdit?: (bool: boolean) => void;\n showRemove?: (bool: boolean) => void;\n showFileViewer?: (bool: boolean) => void;\n resendMessage?: (message: UserMessage | FileMessage) => Promise<UserMessage | FileMessage>;\n toggleReaction?: (message: UserMessage | FileMessage, reactionKey: string, isReacted: boolean) => void;\n setQuoteMessage?: (message: UserMessage | FileMessage) => void;\n onReplyInThread?: (props: { message: UserMessage | FileMessage }) => void;\n onQuoteMessageClick?: (props: { message: UserMessage | FileMessage }) => void;\n}\nexport default function MessageContent({\n className,\n userId,\n channel,\n message,\n disabled = false,\n chainTop = false,\n chainBottom = false,\n isReactionEnabled = false,\n disableQuoteMessage = false,\n replyType,\n threadReplySelectType,\n nicknamesMap,\n emojiContainer,\n scrollToMessage,\n showEdit,\n showRemove,\n showFileViewer,\n resendMessage,\n toggleReaction,\n setQuoteMessage,\n onReplyInThread,\n onQuoteMessageClick,\n}: Props): ReactElement {\n const messageTypes = getUIKitMessageTypes();\n const { dateLocale } = useLocalization();\n const { config } = useSendbirdStateContext?.() || {};\n const { disableUserProfile, renderUserProfile }: UserProfileContextInterface = useContext(UserProfileContext);\n const avatarRef = useRef(null);\n const contentRef = useRef(null);\n const { isMobile } = useMediaQueryContext();\n const [showMenu, setShowMenu] = useState(false);\n const [mouseHover, setMouseHover] = useState(false);\n const [supposedHover, setSupposedHover] = useState(false);\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 isByMeClassName = isByMe ? 'outgoing' : 'incoming';\n const chainTopClassName = chainTop ? 'chain-top' : '';\n const isReactionEnabledInChannel = isReactionEnabled && !channel?.isEphemeral;\n const isReactionEnabledClassName = isReactionEnabledInChannel ? 'use-reactions' : '';\n const supposedHoverClassName = supposedHover ? 'sendbird-mouse-hover' : '';\n const useReplying = !!((replyType === 'QUOTE_REPLY' || replyType === 'THREAD')\n && message?.parentMessageId && message?.parentMessage\n && !disableQuoteMessage\n );\n const useReplyingClassName = useReplying ? 'use-quote' : '';\n\n // Thread replies\n const displayThreadReplies = message?.threadInfo?.replyCount > 0 && replyType === 'THREAD';\n\n // onMouseDown: (e: React.MouseEvent<T>) => void;\n // onTouchStart: (e: React.TouchEvent<T>) => void;\n // onMouseUp: (e: React.MouseEvent<T>) => void;\n // onMouseLeave: (e: React.MouseEvent<T>) => void;\n // onTouchEnd: (e: React.TouchEvent<T>) => void;\n const longPress = useLongPress({\n onLongPress: () => {\n if (isMobile) {\n setShowMenu(true);\n }\n },\n onClick: () => {\n // @ts-ignore\n if (isMobile && isThumbnailMessage(message) && isSentMessage(message)) {\n showFileViewer(true);\n }\n },\n }, {\n delay: 300,\n });\n\n if (message?.isAdminMessage?.() || message?.messageType === 'admin') {\n return (<ClientAdminMessage message={message as AdminMessage} />);\n }\n return (\n <div\n className={getClassName([className, 'sendbird-message-content', isByMeClassName])}\n onMouseOver={() => setMouseHover(true)}\n onMouseLeave={() => setMouseHover(false)}\n >\n {/* left */}\n <div className={getClassName(['sendbird-message-content__left', isReactionEnabledClassName, isByMeClassName, useReplyingClassName])}>\n {(!isByMe && !chainBottom) && (\n /** user profile */\n <ContextMenu\n menuTrigger={(toggleDropdown: () => void): ReactElement => (\n <Avatar\n className={`sendbird-message-content__left__avatar ${displayThreadReplies ? 'use-thread-replies' : ''}`}\n // @ts-ignore\n src={channel?.members?.find((member) => member?.userId === message?.sender?.userId)?.profileUrl || message?.sender?.profileUrl || ''}\n // TODO: Divide getting profileUrl logic to utils\n ref={avatarRef}\n width=\"28px\"\n height=\"28px\"\n onClick={(): void => { if (!disableUserProfile) toggleDropdown() }}\n />\n )}\n menuItems={(closeDropdown: () => void): ReactElement => (\n <MenuItems\n /**\n * parentRef: For catching location(x, y) of MenuItems\n * parentContainRef: For toggling more options(menus & reactions)\n */\n parentRef={avatarRef}\n parentContainRef={avatarRef}\n closeDropdown={closeDropdown}\n style={{ paddingTop: '0px', paddingBottom: '0px' }}\n >\n {renderUserProfile\n // @ts-ignore\n ? renderUserProfile({ user: message?.sender, close: closeDropdown })\n // @ts-ignore\n : (<UserProfile user={message.sender} onSuccess={closeDropdown} />)\n }\n </MenuItems>\n )}\n />\n )}\n {/* outgoing menu */}\n {isByMe && !isMobile && (\n <div className={getClassName(['sendbird-message-content-menu', isReactionEnabledClassName, supposedHoverClassName, isByMeClassName])}>\n <MessageItemMenu\n className=\"sendbird-message-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 setQuoteMessage={setQuoteMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={({ message }) => {\n if (threadReplySelectType === ThreadReplySelectType.THREAD) {\n onReplyInThread({ message });\n } else if (threadReplySelectType === ThreadReplySelectType.PARENT) {\n scrollToMessage(message.parentMessage.createdAt, message.parentMessageId);\n }\n }}\n />\n {isReactionEnabledInChannel && (\n <MessageItemReactionMenu\n className=\"sendbird-message-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 {/* middle */}\n <div\n className=\"sendbird-message-content__middle\"\n {...(isMobile ? { ...longPress } : {})}\n ref={contentRef}\n >\n {(!isByMe && !chainTop && !useReplying) && (\n <Label\n className=\"sendbird-message-content__middle__sender-name\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {\n // @ts-ignore\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 {/* quote message */}\n {(useReplying) ? (\n <div className={getClassName(['sendbird-message-content__middle__quote-message', isByMe ? 'outgoing' : 'incoming', useReplyingClassName])}>\n <QuoteMessage\n message={message as UserMessage | FileMessage}\n userId={userId}\n isByMe={isByMe}\n isUnavailable={(replyType === 'THREAD' && (channel?.joinedAt * 1000) > message?.parentMessage?.createdAt)}\n onClick={() => {\n if (replyType === 'THREAD' && threadReplySelectType === ThreadReplySelectType.THREAD) {\n onQuoteMessageClick?.({ message: message as UserMessage | FileMessage });\n }\n if (\n (replyType === 'QUOTE_REPLY' || (replyType === 'THREAD' && threadReplySelectType === ThreadReplySelectType.PARENT))\n && message?.parentMessage?.createdAt && message?.parentMessageId\n ) {\n scrollToMessage(message.parentMessage.createdAt, message.parentMessageId);\n }\n }}\n />\n </div>\n ) : null}\n {/* container: message item body + emoji reactions */}\n <div className={getClassName(['sendbird-message-content__middle__body-container'])} >\n {/* message status component */}\n {(isByMe && !chainBottom) && (\n <div className={getClassName(['sendbird-message-content__middle__body-container__created-at', 'left', supposedHoverClassName])}>\n <div className=\"sendbird-message-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-message-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n mouseHover={mouseHover}\n isMentionEnabled={config?.isMentionEnabled || false}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {(isOGMessage(message as UserMessage)) && (\n <OGMessageItemBody\n className=\"sendbird-message-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n mouseHover={mouseHover}\n isMentionEnabled={config?.isMentionEnabled || false}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.FILE) && (\n <FileMessageItemBody\n className=\"sendbird-message-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n mouseHover={mouseHover}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {isVoiceMessage(message as FileMessage) && (\n <VoiceMessageItemBody\n className=\"sendbird-message-content__middle__message-item-body\"\n message={message as FileMessage}\n channelUrl={channel?.url}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {(isThumbnailMessage(message as FileMessage)) && (\n <ThumbnailMessageItemBody\n className=\"sendbird-message-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n mouseHover={mouseHover}\n isReactionEnabled={isReactionEnabledInChannel}\n showFileViewer={showFileViewer}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.UNKNOWN) && (\n <UnknownMessageItemBody\n className=\"sendbird-message-content__middle__message-item-body\"\n message={message}\n isByMe={isByMe}\n mouseHover={mouseHover}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {/* reactions */}\n {(isReactionEnabledInChannel && message?.reactions?.length > 0) && (\n <div className={getClassName([\n 'sendbird-message-content-reactions',\n (!isByMe || isThumbnailMessage(message as FileMessage) || isOGMessage(message as UserMessage)) ? '' : 'primary',\n mouseHover ? 'mouse-hover' : '',\n ])}>\n <EmojiReactions\n userId={userId}\n message={message as UserMessage | FileMessage}\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-message-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 {/* thread replies */}\n {displayThreadReplies && (\n <ThreadReplies\n className=\"sendbird-message-content__middle__thread-replies\"\n threadInfo={message?.threadInfo}\n onClick={() => onReplyInThread?.({ message: message as UserMessage | FileMessage })}\n />\n )}\n </div>\n {/* right */}\n <div className={getClassName(['sendbird-message-content__right', chainTopClassName, isReactionEnabledClassName, useReplyingClassName])}>\n {/* incoming menu */}\n {!isByMe && !isMobile && (\n <div className={getClassName(['sendbird-message-content-menu', chainTopClassName, supposedHoverClassName, isByMeClassName])}>\n {isReactionEnabledInChannel && (\n <MessageItemReactionMenu\n className=\"sendbird-message-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-message-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 setQuoteMessage={setQuoteMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={({ message }) => {\n if (threadReplySelectType === ThreadReplySelectType.THREAD) {\n onReplyInThread({ message });\n } else if (threadReplySelectType === ThreadReplySelectType.PARENT) {\n scrollToMessage(message.parentMessage.createdAt, message.parentMessageId);\n }\n }}\n />\n </div>\n )}\n </div>\n {\n showMenu && (\n message?.isUserMessage?.() || message?.isFileMessage?.()\n ) && (\n <MobileMenu\n parentRef={contentRef}\n channel={channel}\n hideMenu={() => { setShowMenu(false) }}\n message={message}\n isReactionEnabled={isReactionEnabledInChannel}\n isByMe={isByMe}\n userId={userId}\n replyType={replyType}\n disabled={disabled}\n showRemove={showRemove}\n emojiContainer={emojiContainer}\n resendMessage={resendMessage}\n setQuoteMessage={setQuoteMessage}\n toggleReaction={toggleReaction}\n showEdit={showEdit}\n />\n )\n }\n </div>\n );\n}\n"],"names":["MobileContextMenu","props","hideMenu","channel","message","replyType","userId","resendMessage","showEdit","showRemove","setQuoteMessage","parentRef","isByMe","_a","sender","stringSet","useLocalization","showMenuItemCopy","isUserMessage","showMenuItemEdit","isSentMessage","showMenuItemResend","isFailedMessage","isResendable","showMenuItemDelete","isPendingMessage","showMenuItemDownload","isFileMessage","showMenuItemReply","isGroupChannel","isBroadcast","fileMessage","React","createElement","ContextMenu","isOpen","menuItems","MenuItems","className","parentContainRef","closeDropdown","MenuItem","onClick","copyToClipboard","Label","type","LabelTypography","SUBTITLE_1","MESSAGE_MENU__COPY","Icon","IconTypes","COPY","fillColor","IconColors","PRIMARY","width","height","disable","parentMessageId","MESSAGE_MENU__REPLY","REPLY","MESSAGE_MENU__EDIT","EDIT","MESSAGE_MENU__RESEND","REFRESH","threadInfo","replyCount","MESSAGE_MENU__DELETE","DELETE","rel","href","url","target","MESSAGE_MENU__SAVE","DOWNLOAD","EMOJI_SIZE","MobileBottomSheet","emojiContainer","toggleReaction","isReactionEnabled","showReaction","disableReaction","maxEmojisPerRow","Math","floor","window","innerWidth","_b","useState","showEmojisOnly","setShowEmojisOnly","emojis","getEmojiListAll","visibleEmojis","slice","canShowMoreEmojis","length","BottomSheet","onBackdropClick","map","emoji","isReacted","_c","reactions","filter","reaction","key","userIds","some","reactorId","ReactionButton","concat","selected","ImageRenderer","placeHolder","style","QUESTION","ON_BACKGROUND_3","EMOJI_MORE","role","color","LabelColors","ONBACKGROUND_4","MobileMenu","disabled","Fragment","MessageContent","_l","_m","chainTop","_o","chainBottom","_p","_q","disableQuoteMessage","threadReplySelectType","nicknamesMap","scrollToMessage","showFileViewer","onReplyInThread","onQuoteMessageClick","messageTypes","getUIKitMessageTypes","dateLocale","config","useSendbirdStateContext","_r","useContext","UserProfileContext","disableUserProfile","renderUserProfile","avatarRef","useRef","contentRef","isMobile","useMediaQueryContext","_s","showMenu","setShowMenu","_t","mouseHover","setMouseHover","_u","supposedHover","setSupposedHover","sendingStatus","isByMeClassName","chainTopClassName","isReactionEnabledInChannel","isEphemeral","isReactionEnabledClassName","supposedHoverClassName","useReplying","parentMessage","useReplyingClassName","displayThreadReplies","longPress","useLongPress","onLongPress","isThumbnailMessage","delay","isAdminMessage","_d","call","messageType","ClientAdminMessage","getClassName","onMouseOver","onMouseLeave","menuTrigger","toggleDropdown","Avatar","src","members","find","member","profileUrl","ref","paddingTop","paddingBottom","user","close","UserProfile","onSuccess","MessageItemMenu","ThreadReplySelectType","THREAD","PARENT","createdAt","MessageItemReactionMenu","spaceFromTrigger","_extends","__assign","CAPTION_2","ONBACKGROUND_2","_e","nickname","getSenderName","QuoteMessage","isUnavailable","joinedAt","_g","MessageStatus","isTextMessage","TextMessageItemBody","isMentionEnabled","isOGMessage","OGMessageItemBody","getUIKitMessageType","FILE","FileMessageItemBody","isVoiceMessage","VoiceMessageItemBody","channelUrl","ThumbnailMessageItemBody","UNKNOWN","UnknownMessageItemBody","_h","EmojiReactions","memberNicknamesMap","CAPTION_3","format","locale","ThreadReplies","_j","_k"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MessageContent.js","sources":["../../src/ui/MobileMenu/MobileContextMenu.tsx","../../src/ui/MobileMenu/MobileBottomSheet.tsx","../../src/ui/MobileMenu/index.tsx","../../src/ui/MessageContent/index.tsx"],"sourcesContent":["import React from 'react';\nimport type { BaseMenuProps } from './types';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport type { GroupChannel } from '@sendbird/chat/groupChannel';\n\nimport ContextMenu, { MenuItems, MenuItem } from '../ContextMenu';\n\nimport {\n isFailedMessage,\n isPendingMessage,\n isSentMessage,\n isUserMessage,\n copyToClipboard,\n isFileMessage,\n} from '../../utils';\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelTypography } from '../Label';\n\nconst MobileContextMenu: React.FunctionComponent<BaseMenuProps> = (props: BaseMenuProps) => {\n const {\n hideMenu,\n channel,\n message,\n replyType,\n userId,\n resendMessage,\n showEdit,\n showRemove,\n setQuoteMessage,\n parentRef,\n } = props;\n const isByMe = message?.sender?.userId === userId;\n const { stringSet } = useLocalization();\n const showMenuItemCopy: boolean = isUserMessage(message as UserMessage);\n const showMenuItemEdit: boolean = (isUserMessage(message as UserMessage) && isSentMessage(message) && isByMe);\n const showMenuItemResend: boolean = (isFailedMessage(message) && message?.isResendable && isByMe);\n const showMenuItemDelete: boolean = !isPendingMessage(message) && isByMe;\n const showMenuItemDownload: boolean = !isPendingMessage(message) && isFileMessage(message);\n const showMenuItemReply: boolean = (replyType === 'QUOTE_REPLY')\n && !isFailedMessage(message)\n && !isPendingMessage(message)\n && (channel?.isGroupChannel() && !(channel as GroupChannel)?.isBroadcast);\n\n const fileMessage = message as FileMessage;\n return (\n <ContextMenu\n isOpen\n menuItems={() => (\n <MenuItems\n className=\"sendbird-message__mobile-context-menu\"\n parentRef={parentRef}\n parentContainRef={parentRef}\n closeDropdown={hideMenu}\n >\n {showMenuItemCopy && (\n <MenuItem\n className=\"sendbird-message__mobile-context-menu-item menu-item-copy\"\n onClick={() => {\n hideMenu();\n copyToClipboard((message as UserMessage)?.message);\n }}\n >\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet?.MESSAGE_MENU__COPY}\n </Label>\n <Icon\n type={IconTypes.COPY}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </MenuItem>\n )}\n {showMenuItemReply && (\n <MenuItem\n className=\"sendbird-message__mobile-context-menu-item menu-item-reply\"\n onClick={() => {\n hideMenu();\n setQuoteMessage(message);\n }}\n disable={message?.parentMessageId > 0}\n >\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet.MESSAGE_MENU__REPLY}\n </Label>\n <Icon\n type={IconTypes.REPLY}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </MenuItem>\n )}\n {showMenuItemEdit && (\n <MenuItem\n className=\"sendbird-message__mobile-context-menu-item menu-item-edit\"\n onClick={() => {\n hideMenu();\n showEdit(true);\n }}\n >\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet.MESSAGE_MENU__EDIT}\n </Label>\n <Icon\n type={IconTypes.EDIT}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </MenuItem>\n )}\n {showMenuItemResend && (\n <MenuItem\n className=\"sendbird-message__mobile-context-menu-item menu-item-resend\"\n onClick={() => {\n hideMenu();\n resendMessage(message);\n }}\n >\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet.MESSAGE_MENU__RESEND}\n </Label>\n <Icon\n type={IconTypes.REFRESH}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </MenuItem>\n )}\n {showMenuItemDelete && (\n <MenuItem\n className=\"sendbird-message__mobile-context-menu-item menu-item-delete\"\n onClick={() => {\n hideMenu();\n showRemove(true);\n }}\n disable={message?.threadInfo?.replyCount > 0}\n >\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet.MESSAGE_MENU__DELETE}\n </Label>\n <Icon\n type={IconTypes.DELETE}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </MenuItem>\n )}\n {showMenuItemDownload && (\n <MenuItem\n className=\"sendbird-message__mobile-context-menu-item menu-item-save\"\n onClick={() => {\n hideMenu();\n }}\n >\n <a\n className=\"sendbird-message__contextmenu--hyperlink\"\n rel=\"noopener noreferrer\"\n href={fileMessage?.url}\n target=\"_blank\"\n >\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet.MESSAGE_MENU__SAVE}\n </Label>\n <Icon\n type={IconTypes.DOWNLOAD}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </a>\n </MenuItem>\n )}\n </MenuItems>\n )}\n />\n );\n};\n\nexport default MobileContextMenu;\n","import type { Emoji } from '@sendbird/chat';\nimport { FileMessage, Reaction, UserMessage } from '@sendbird/chat/message';\nimport React, { useState } from 'react';\n\nimport type { MobileBottomSheetProps } from './types';\nimport type { GroupChannel } from '@sendbird/chat/groupChannel';\n\nimport {\n getEmojiListAll,\n isFailedMessage,\n isPendingMessage,\n isSentMessage,\n isUserMessage,\n copyToClipboard,\n isFileMessage,\n} from '../../utils';\nimport BottomSheet from '../BottomSheet';\nimport ImageRenderer from '../ImageRenderer';\nimport ReactionButton from '../ReactionButton';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport { useLocalization } from '../../lib/LocalizationContext';\n\nconst EMOJI_SIZE = 38;\n\nconst MobileBottomSheet: React.FunctionComponent<MobileBottomSheetProps> = (props: MobileBottomSheetProps) => {\n const {\n hideMenu,\n channel,\n emojiContainer,\n message,\n replyType,\n userId,\n resendMessage,\n toggleReaction,\n isReactionEnabled,\n showEdit,\n showRemove,\n setQuoteMessage,\n } = props;\n const isByMe = message?.sender?.userId === userId;\n const { stringSet } = useLocalization();\n const showMenuItemCopy: boolean = isUserMessage(message as UserMessage);\n const showMenuItemEdit: boolean = (isUserMessage(message as UserMessage) && isSentMessage(message) && isByMe);\n const showMenuItemResend: boolean = (isFailedMessage(message) && message?.isResendable && isByMe);\n const showMenuItemDelete: boolean = !isPendingMessage(message) && isByMe;\n const showMenuItemDownload: boolean = !isPendingMessage(message) && isFileMessage(message);\n const showReaction: boolean = !isFailedMessage(message) && !isPendingMessage(message) && isReactionEnabled;\n const showMenuItemReply: boolean = (replyType === 'QUOTE_REPLY')\n && !isFailedMessage(message)\n && !isPendingMessage(message)\n && (channel?.isGroupChannel() && !(channel as GroupChannel)?.isBroadcast);\n const disableReaction = message?.parentMessageId > 0;\n\n const fileMessage = message as FileMessage;\n const maxEmojisPerRow = Math.floor(window?.innerWidth / EMOJI_SIZE) - 1;\n const [showEmojisOnly, setShowEmojisOnly] = useState<boolean>(false);\n const emojis = getEmojiListAll(emojiContainer);\n // calculate max emojis that can be shown in screen\n const visibleEmojis = showEmojisOnly\n ? emojis\n : emojis?.slice(0, maxEmojisPerRow);\n const canShowMoreEmojis = emojis.length > maxEmojisPerRow;\n return (\n <BottomSheet onBackdropClick={hideMenu}>\n <div className='sendbird-message__bottomsheet'>\n {\n showReaction && (\n <div className='sendbird-message__bottomsheet-reactions'>\n <ul\n className=\"sendbird-message__bottomsheet-reaction-bar\"\n >\n <div\n className={`\n sendbird-message__bottomsheet-reaction-bar__row\n ${showEmojisOnly ? 'sendbird-message__bottomsheet-reaction-bar__all' : ''}\n `}\n >\n {visibleEmojis.map((emoji: Emoji): React.ReactElement => {\n const isReacted: boolean = message?.reactions\n ?.filter((reaction: Reaction): boolean => reaction.key === emoji.key)[0]\n ?.userIds\n ?.some((reactorId: string): boolean => reactorId === userId);\n return (\n <ReactionButton\n key={emoji.key}\n width={`${EMOJI_SIZE}px`}\n height={`${EMOJI_SIZE}px`}\n selected={isReacted}\n onClick={(): void => {\n hideMenu();\n toggleReaction(message, emoji.key, isReacted);\n }}\n >\n <ImageRenderer\n url={emoji?.url || ''}\n width=\"28px\"\n height=\"28px\"\n placeHolder={(style: Record<string, unknown>): ReactElement => (\n <div style={style}>\n <Icon\n type={IconTypes.QUESTION}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"28px\"\n height=\"28px\"\n />\n </div>\n )}\n />\n </ReactionButton>\n );\n })}\n {\n canShowMoreEmojis && !showEmojisOnly && (\n <ReactionButton\n key=\"emoji_more\"\n width=\"38px\"\n height=\"38px\"\n onClick={(): void => {\n setShowEmojisOnly(true);\n }}\n >\n <ImageRenderer\n url={''}\n width=\"28px\"\n height=\"28px\"\n placeHolder={(style: Record<string, unknown>): React.ReactElement => (\n <div style={style}>\n <Icon\n type={IconTypes.EMOJI_MORE}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"28px\"\n height=\"28px\"\n />\n </div>\n )}\n />\n </ReactionButton>\n )\n }\n </div>\n </ul>\n </div>\n )\n }\n {\n !showEmojisOnly && (\n <div className='sendbird-message__bottomsheet--actions'>\n {showMenuItemCopy && (\n <div\n className='sendbird-message__bottomsheet--action'\n onClick={() => {\n hideMenu();\n copyToClipboard((message as UserMessage)?.message);\n }}\n >\n <Icon\n type={IconTypes.COPY}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet?.MESSAGE_MENU__COPY}\n </Label>\n </div>\n )}\n {\n showMenuItemEdit && (\n <div\n className='sendbird-message__bottomsheet--action'\n onClick={() => {\n hideMenu();\n showEdit(true);\n }}\n >\n <Icon\n type={IconTypes.EDIT}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet?.MESSAGE_MENU__EDIT}\n </Label>\n </div>\n )\n }\n {\n showMenuItemResend && (\n <div\n className='sendbird-message__bottomsheet--action'\n onClick={() => {\n hideMenu();\n resendMessage(message);\n }}\n >\n <Icon\n type={IconTypes.REFRESH}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet?.MESSAGE_MENU__RESEND}\n </Label>\n </div>\n )\n }\n {\n showMenuItemReply && (\n\n <div\n className={`sendbird-message__bottomsheet--action\n ${disableReaction ? 'sendbird-message__bottomsheet--action-disabled' : ''}\n `}\n role=\"menuitem\"\n aria-disabled={disableReaction ? true : false}\n onClick={() => {\n if (!disableReaction) {\n hideMenu();\n setQuoteMessage(message);\n }\n }}\n >\n <Icon\n type={IconTypes.REPLY}\n fillColor={disableReaction\n ? IconColors.ON_BACKGROUND_3\n : IconColors.PRIMARY\n }\n width=\"24px\"\n height=\"24px\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={disableReaction && LabelColors.ONBACKGROUND_4}\n >\n {stringSet?.MESSAGE_MENU__REPLY}\n </Label>\n </div>\n )\n }\n {\n showMenuItemDelete && (\n <div\n className='sendbird-message__bottomsheet--action'\n onClick={() => {\n hideMenu();\n showRemove(true);\n }}\n >\n <Icon\n type={IconTypes.DELETE}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet?.MESSAGE_MENU__DELETE}\n </Label>\n </div>\n )\n }\n {\n showMenuItemDownload && (\n <div\n className='sendbird-message__bottomsheet--action'\n onClick={() => {\n hideMenu();\n }}\n >\n <a\n className=\"sendbird-message__bottomsheet--hyperlink\"\n rel=\"noopener noreferrer\"\n href={fileMessage?.url}\n target=\"_blank\"\n >\n <Icon\n type={IconTypes.DOWNLOAD}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n <Label type={LabelTypography.SUBTITLE_1}>\n {stringSet?.MESSAGE_MENU__SAVE}\n </Label>\n </a>\n </div>\n )\n }\n </div>\n )\n }\n </div>\n </BottomSheet>\n );\n};\n\nexport default MobileBottomSheet;\n","import './mobile-menu.scss';\n\nimport React from 'react';\nimport MobileContextMenu from './MobileContextMenu';\nimport MobileBottomSheet from './MobileBottomSheet';\nimport type { MobileBottomSheetProps } from './types';\n\nconst MobileMenu: React.FC<MobileBottomSheetProps> = (props: MobileBottomSheetProps) => {\n const {\n message,\n hideMenu,\n userId,\n channel,\n isReactionEnabled = false,\n isByMe,\n replyType,\n disabled,\n showRemove,\n showEdit,\n resendMessage,\n setQuoteMessage,\n emojiContainer,\n toggleReaction,\n parentRef,\n } = props;\n return (\n <>\n {\n isReactionEnabled\n ? (\n <MobileBottomSheet\n channel={channel}\n message={message}\n hideMenu={hideMenu}\n isByMe={isByMe}\n userId={userId}\n replyType={replyType}\n disabled={disabled}\n showRemove={showRemove}\n showEdit={showEdit}\n resendMessage={resendMessage}\n setQuoteMessage={setQuoteMessage}\n emojiContainer={emojiContainer}\n toggleReaction={toggleReaction}\n isReactionEnabled={isReactionEnabled}\n />\n ) : (\n <MobileContextMenu\n channel={channel}\n userId={userId}\n message={message}\n hideMenu={hideMenu}\n isByMe={isByMe}\n showEdit={showEdit}\n replyType={replyType}\n disabled={disabled}\n showRemove={showRemove}\n resendMessage={resendMessage}\n setQuoteMessage={setQuoteMessage}\n parentRef={parentRef}\n />\n )\n }\n </>\n );\n};\n\nexport default MobileMenu;\n","import React, {\n ReactElement,\n useContext,\n useRef,\n useState,\n} from 'react';\nimport format from 'date-fns/format';\nimport './index.scss';\n\nimport Avatar from '../Avatar';\nimport UserProfile from '../UserProfile';\nimport MessageStatus from '../MessageStatus';\nimport MessageItemMenu from '../MessageItemMenu';\nimport MessageItemReactionMenu from '../MessageItemReactionMenu';\nimport ContextMenu, { MenuItems } from '../ContextMenu';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport EmojiReactions from '../EmojiReactions';\n\nimport ClientAdminMessage from '../AdminMessage';\nimport TextMessageItemBody from '../TextMessageItemBody';\nimport FileMessageItemBody from '../FileMessageItemBody';\nimport ThumbnailMessageItemBody from '../ThumbnailMessageItemBody';\nimport OGMessageItemBody from '../OGMessageItemBody';\nimport UnknownMessageItemBody from '../UnknownMessageItemBody';\nimport QuoteMessage from '../QuoteMessage';\n\nimport {\n getClassName,\n getUIKitMessageTypes,\n getUIKitMessageType,\n isTextMessage,\n isOGMessage,\n isThumbnailMessage,\n getSenderName,\n isSentMessage,\n isVoiceMessage,\n} from '../../utils';\nimport { UserProfileContext } from '../../lib/UserProfileContext';\nimport { ReplyType } from '../../index';\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../hooks/useSendbirdStateContext';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { EmojiContainer } from '@sendbird/chat';\nimport { AdminMessage, FileMessage, Sender, UserMessage } from '@sendbird/chat/message';\nimport useLongPress from '../../hooks/useLongPress';\nimport MobileMenu from '../MobileMenu';\nimport { useMediaQueryContext } from '../../lib/MediaQueryContext';\nimport ThreadReplies from '../ThreadReplies';\nimport { ThreadReplySelectType } from '../../smart-components/Channel/context/const';\nimport VoiceMessageItemBody from '../VoiceMessageItemBody';\n\n// should initialize in UserProfileContext.jsx\nexport interface UserProfileContextInterface {\n disableUserProfile: boolean;\n isOpenChannel: boolean;\n renderUserProfile?: (props: { user: Sender, close: () => void }) => React.ReactElement,\n}\n\ninterface Props {\n className?: string | Array<string>;\n userId: string;\n channel: GroupChannel;\n message: AdminMessage | UserMessage | FileMessage;\n disabled?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n isReactionEnabled?: boolean;\n disableQuoteMessage?: boolean;\n replyType?: ReplyType;\n threadReplySelectType?: ThreadReplySelectType;\n nicknamesMap?: Map<string, string>;\n emojiContainer?: EmojiContainer;\n scrollToMessage?: (createdAt: number, messageId: number) => void;\n showEdit?: (bool: boolean) => void;\n showRemove?: (bool: boolean) => void;\n showFileViewer?: (bool: boolean) => void;\n resendMessage?: (message: UserMessage | FileMessage) => Promise<UserMessage | FileMessage>;\n toggleReaction?: (message: UserMessage | FileMessage, reactionKey: string, isReacted: boolean) => void;\n setQuoteMessage?: (message: UserMessage | FileMessage) => void;\n onReplyInThread?: (props: { message: UserMessage | FileMessage }) => void;\n onQuoteMessageClick?: (props: { message: UserMessage | FileMessage }) => void;\n}\nexport default function MessageContent({\n className,\n userId,\n channel,\n message,\n disabled = false,\n chainTop = false,\n chainBottom = false,\n isReactionEnabled = false,\n disableQuoteMessage = false,\n replyType,\n threadReplySelectType,\n nicknamesMap,\n emojiContainer,\n scrollToMessage,\n showEdit,\n showRemove,\n showFileViewer,\n resendMessage,\n toggleReaction,\n setQuoteMessage,\n onReplyInThread,\n onQuoteMessageClick,\n}: Props): ReactElement {\n const messageTypes = getUIKitMessageTypes();\n const { dateLocale } = useLocalization();\n const { config } = useSendbirdStateContext?.() || {};\n const { disableUserProfile, renderUserProfile }: UserProfileContextInterface = useContext(UserProfileContext);\n const avatarRef = useRef(null);\n const contentRef = useRef(null);\n const { isMobile } = useMediaQueryContext();\n const [showMenu, setShowMenu] = useState(false);\n const [mouseHover, setMouseHover] = useState(false);\n const [supposedHover, setSupposedHover] = useState(false);\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 isByMeClassName = isByMe ? 'outgoing' : 'incoming';\n const chainTopClassName = chainTop ? 'chain-top' : '';\n const isReactionEnabledInChannel = isReactionEnabled && !channel?.isEphemeral;\n const isReactionEnabledClassName = isReactionEnabledInChannel ? 'use-reactions' : '';\n const supposedHoverClassName = supposedHover ? 'sendbird-mouse-hover' : '';\n const useReplying = !!((replyType === 'QUOTE_REPLY' || replyType === 'THREAD')\n && message?.parentMessageId && message?.parentMessage\n && !disableQuoteMessage\n );\n const useReplyingClassName = useReplying ? 'use-quote' : '';\n\n // Thread replies\n const displayThreadReplies = message?.threadInfo?.replyCount > 0 && replyType === 'THREAD';\n\n // onMouseDown: (e: React.MouseEvent<T>) => void;\n // onTouchStart: (e: React.TouchEvent<T>) => void;\n // onMouseUp: (e: React.MouseEvent<T>) => void;\n // onMouseLeave: (e: React.MouseEvent<T>) => void;\n // onTouchEnd: (e: React.TouchEvent<T>) => void;\n const longPress = useLongPress({\n onLongPress: () => {\n if (isMobile) {\n setShowMenu(true);\n }\n },\n onClick: () => {\n // @ts-ignore\n if (isMobile && isThumbnailMessage(message) && isSentMessage(message)) {\n showFileViewer(true);\n }\n },\n }, {\n delay: 300,\n });\n\n if (message?.isAdminMessage?.() || message?.messageType === 'admin') {\n return (<ClientAdminMessage message={message as AdminMessage} />);\n }\n return (\n <div\n className={getClassName([className, 'sendbird-message-content', isByMeClassName])}\n onMouseOver={() => setMouseHover(true)}\n onMouseLeave={() => setMouseHover(false)}\n >\n {/* left */}\n <div className={getClassName(['sendbird-message-content__left', isReactionEnabledClassName, isByMeClassName, useReplyingClassName])}>\n {(!isByMe && !chainBottom) && (\n /** user profile */\n <ContextMenu\n menuTrigger={(toggleDropdown: () => void): ReactElement => (\n <Avatar\n className={`sendbird-message-content__left__avatar ${displayThreadReplies ? 'use-thread-replies' : ''}`}\n // @ts-ignore\n src={channel?.members?.find((member) => member?.userId === message?.sender?.userId)?.profileUrl || message?.sender?.profileUrl || ''}\n // TODO: Divide getting profileUrl logic to utils\n ref={avatarRef}\n width=\"28px\"\n height=\"28px\"\n onClick={(): void => { if (!disableUserProfile) toggleDropdown() }}\n />\n )}\n menuItems={(closeDropdown: () => void): ReactElement => (\n <MenuItems\n /**\n * parentRef: For catching location(x, y) of MenuItems\n * parentContainRef: For toggling more options(menus & reactions)\n */\n parentRef={avatarRef}\n parentContainRef={avatarRef}\n closeDropdown={closeDropdown}\n style={{ paddingTop: '0px', paddingBottom: '0px' }}\n >\n {renderUserProfile\n // @ts-ignore\n ? renderUserProfile({ user: message?.sender, close: closeDropdown })\n // @ts-ignore\n : (<UserProfile user={message.sender} onSuccess={closeDropdown} />)\n }\n </MenuItems>\n )}\n />\n )}\n {/* outgoing menu */}\n {isByMe && !isMobile && (\n <div className={getClassName(['sendbird-message-content-menu', isReactionEnabledClassName, supposedHoverClassName, isByMeClassName])}>\n <MessageItemMenu\n className=\"sendbird-message-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 setQuoteMessage={setQuoteMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={({ message }) => {\n if (threadReplySelectType === ThreadReplySelectType.THREAD) {\n onReplyInThread({ message });\n } else if (threadReplySelectType === ThreadReplySelectType.PARENT) {\n scrollToMessage(message.parentMessage.createdAt, message.parentMessageId);\n }\n }}\n />\n {isReactionEnabledInChannel && (\n <MessageItemReactionMenu\n className=\"sendbird-message-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 {/* middle */}\n <div\n className=\"sendbird-message-content__middle\"\n {...(isMobile ? { ...longPress } : {})}\n ref={contentRef}\n >\n {(!isByMe && !chainTop && !useReplying) && (\n <Label\n className=\"sendbird-message-content__middle__sender-name\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {\n // @ts-ignore\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 {/* quote message */}\n {(useReplying) ? (\n <div className={getClassName(['sendbird-message-content__middle__quote-message', isByMe ? 'outgoing' : 'incoming', useReplyingClassName])}>\n <QuoteMessage\n message={message as UserMessage | FileMessage}\n userId={userId}\n isByMe={isByMe}\n isUnavailable={(replyType === 'THREAD' && (channel?.joinedAt * 1000) > message?.parentMessage?.createdAt)}\n onClick={() => {\n if (replyType === 'THREAD' && threadReplySelectType === ThreadReplySelectType.THREAD) {\n onQuoteMessageClick?.({ message: message as UserMessage | FileMessage });\n }\n if (\n (replyType === 'QUOTE_REPLY' || (replyType === 'THREAD' && threadReplySelectType === ThreadReplySelectType.PARENT))\n && message?.parentMessage?.createdAt && message?.parentMessageId\n ) {\n scrollToMessage(message.parentMessage.createdAt, message.parentMessageId);\n }\n }}\n />\n </div>\n ) : null}\n {/* container: message item body + emoji reactions */}\n <div className={getClassName(['sendbird-message-content__middle__body-container'])} >\n {/* message status component */}\n {(isByMe && !chainBottom) && (\n <div className={getClassName(['sendbird-message-content__middle__body-container__created-at', 'left', supposedHoverClassName])}>\n <div className=\"sendbird-message-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-message-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n mouseHover={mouseHover}\n isMentionEnabled={config?.isMentionEnabled || false}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {(isOGMessage(message as UserMessage)) && (\n <OGMessageItemBody\n className=\"sendbird-message-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n mouseHover={mouseHover}\n isMentionEnabled={config?.isMentionEnabled || false}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.FILE) && (\n <FileMessageItemBody\n className=\"sendbird-message-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n mouseHover={mouseHover}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {isVoiceMessage(message as FileMessage) && (\n <VoiceMessageItemBody\n className=\"sendbird-message-content__middle__message-item-body\"\n message={message as FileMessage}\n channelUrl={channel?.url}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {(isThumbnailMessage(message as FileMessage)) && (\n <ThumbnailMessageItemBody\n className=\"sendbird-message-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n mouseHover={mouseHover}\n isReactionEnabled={isReactionEnabledInChannel}\n showFileViewer={showFileViewer}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.UNKNOWN) && (\n <UnknownMessageItemBody\n className=\"sendbird-message-content__middle__message-item-body\"\n message={message}\n isByMe={isByMe}\n mouseHover={mouseHover}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {/* reactions */}\n {(isReactionEnabledInChannel && message?.reactions?.length > 0) && (\n <div className={getClassName([\n 'sendbird-message-content-reactions',\n (!isByMe || isThumbnailMessage(message as FileMessage) || isOGMessage(message as UserMessage)) ? '' : 'primary',\n mouseHover ? 'mouse-hover' : '',\n ])}>\n <EmojiReactions\n userId={userId}\n message={message as UserMessage | FileMessage}\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-message-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 {/* thread replies */}\n {displayThreadReplies && (\n <ThreadReplies\n className=\"sendbird-message-content__middle__thread-replies\"\n threadInfo={message?.threadInfo}\n onClick={() => onReplyInThread?.({ message: message as UserMessage | FileMessage })}\n />\n )}\n </div>\n {/* right */}\n <div className={getClassName(['sendbird-message-content__right', chainTopClassName, isReactionEnabledClassName, useReplyingClassName])}>\n {/* incoming menu */}\n {!isByMe && !isMobile && (\n <div className={getClassName(['sendbird-message-content-menu', chainTopClassName, supposedHoverClassName, isByMeClassName])}>\n {isReactionEnabledInChannel && (\n <MessageItemReactionMenu\n className=\"sendbird-message-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-message-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 setQuoteMessage={setQuoteMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={({ message }) => {\n if (threadReplySelectType === ThreadReplySelectType.THREAD) {\n onReplyInThread({ message });\n } else if (threadReplySelectType === ThreadReplySelectType.PARENT) {\n scrollToMessage(message.parentMessage.createdAt, message.parentMessageId);\n }\n }}\n />\n </div>\n )}\n </div>\n {\n showMenu && (\n message?.isUserMessage?.() || message?.isFileMessage?.()\n ) && (\n <MobileMenu\n parentRef={contentRef}\n channel={channel}\n hideMenu={() => { setShowMenu(false) }}\n message={message}\n isReactionEnabled={isReactionEnabledInChannel}\n isByMe={isByMe}\n userId={userId}\n replyType={replyType}\n disabled={disabled}\n showRemove={showRemove}\n emojiContainer={emojiContainer}\n resendMessage={resendMessage}\n setQuoteMessage={setQuoteMessage}\n toggleReaction={toggleReaction}\n showEdit={showEdit}\n />\n )\n }\n </div>\n );\n}\n"],"names":["MobileContextMenu","props","hideMenu","channel","message","replyType","userId","resendMessage","showEdit","showRemove","setQuoteMessage","parentRef","isByMe","_a","sender","stringSet","useLocalization","showMenuItemCopy","isUserMessage","showMenuItemEdit","isSentMessage","showMenuItemResend","isFailedMessage","isResendable","showMenuItemDelete","isPendingMessage","showMenuItemDownload","isFileMessage","showMenuItemReply","isGroupChannel","isBroadcast","fileMessage","React","createElement","ContextMenu","isOpen","menuItems","MenuItems","className","parentContainRef","closeDropdown","MenuItem","onClick","copyToClipboard","Label","type","LabelTypography","SUBTITLE_1","MESSAGE_MENU__COPY","Icon","IconTypes","COPY","fillColor","IconColors","PRIMARY","width","height","disable","parentMessageId","MESSAGE_MENU__REPLY","REPLY","MESSAGE_MENU__EDIT","EDIT","MESSAGE_MENU__RESEND","REFRESH","threadInfo","replyCount","MESSAGE_MENU__DELETE","DELETE","rel","href","url","target","MESSAGE_MENU__SAVE","DOWNLOAD","EMOJI_SIZE","MobileBottomSheet","emojiContainer","toggleReaction","isReactionEnabled","showReaction","disableReaction","maxEmojisPerRow","Math","floor","window","innerWidth","_b","useState","showEmojisOnly","setShowEmojisOnly","emojis","getEmojiListAll","visibleEmojis","slice","canShowMoreEmojis","length","BottomSheet","onBackdropClick","map","emoji","isReacted","_c","reactions","filter","reaction","key","userIds","some","reactorId","ReactionButton","concat","selected","ImageRenderer","placeHolder","style","QUESTION","ON_BACKGROUND_3","EMOJI_MORE","role","color","LabelColors","ONBACKGROUND_4","MobileMenu","disabled","Fragment","MessageContent","_l","_m","chainTop","_o","chainBottom","_p","_q","disableQuoteMessage","threadReplySelectType","nicknamesMap","scrollToMessage","showFileViewer","onReplyInThread","onQuoteMessageClick","messageTypes","getUIKitMessageTypes","dateLocale","config","useSendbirdStateContext","_r","useContext","UserProfileContext","disableUserProfile","renderUserProfile","avatarRef","useRef","contentRef","isMobile","useMediaQueryContext","_s","showMenu","setShowMenu","_t","mouseHover","setMouseHover","_u","supposedHover","setSupposedHover","sendingStatus","isByMeClassName","chainTopClassName","isReactionEnabledInChannel","isEphemeral","isReactionEnabledClassName","supposedHoverClassName","useReplying","parentMessage","useReplyingClassName","displayThreadReplies","longPress","useLongPress","onLongPress","isThumbnailMessage","delay","isAdminMessage","_d","call","messageType","ClientAdminMessage","getClassName","onMouseOver","onMouseLeave","menuTrigger","toggleDropdown","Avatar","src","members","find","member","profileUrl","ref","paddingTop","paddingBottom","user","close","UserProfile","onSuccess","MessageItemMenu","ThreadReplySelectType","THREAD","PARENT","createdAt","MessageItemReactionMenu","spaceFromTrigger","_extends","__assign","CAPTION_2","ONBACKGROUND_2","_e","nickname","getSenderName","QuoteMessage","isUnavailable","joinedAt","_g","MessageStatus","isTextMessage","TextMessageItemBody","isMentionEnabled","isOGMessage","OGMessageItemBody","getUIKitMessageType","FILE","FileMessageItemBody","isVoiceMessage","VoiceMessageItemBody","channelUrl","ThumbnailMessageItemBody","UNKNOWN","UnknownMessageItemBody","_h","EmojiReactions","memberNicknamesMap","CAPTION_3","format","locale","ThreadReplies","_j","_k"],"mappings":"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"}
|
package/ui/MessageInput.js
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { _ as _objectSpread2 } from '../_rollupPluginBabelHelpers-
|
|
1
|
+
import { _ as _objectSpread2 } from '../_rollupPluginBabelHelpers-48b56150.js';
|
|
2
2
|
import React__default, { useCallback, useContext, useRef, useState, useMemo, useEffect } from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
|
-
import { N as NodeTypes, M as MessageInputKeys, a as NodeNames } from '../const-
|
|
5
|
-
import { U as USER_MENTION_TEMP_CHAR } from '../const-
|
|
4
|
+
import { N as NodeTypes, M as MessageInputKeys, a as NodeNames } from '../const-8a7444d1.js';
|
|
5
|
+
import { U as USER_MENTION_TEMP_CHAR } from '../const-34b3294d.js';
|
|
6
6
|
import IconButton from './IconButton.js';
|
|
7
7
|
import Button, { ButtonTypes, ButtonSizes } from './Button.js';
|
|
8
|
-
import { a as __spreadArray } from '../tslib.es6-
|
|
8
|
+
import { a as __spreadArray } from '../tslib.es6-85bcd95d.js';
|
|
9
9
|
import DOMPurify from 'dompurify';
|
|
10
|
-
import { M as MENTION_USER_LABEL_CLASSNAME } from '../consts-
|
|
10
|
+
import { M as MENTION_USER_LABEL_CLASSNAME } from '../consts-81c7d9ed.js';
|
|
11
11
|
import Icon, { IconTypes, IconColors } from './Icon.js';
|
|
12
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-
|
|
13
|
-
import { a as LocalizationContext } from '../LocalizationContext-
|
|
14
|
-
import { k as arrayEqual, j as getClassName } from '../index-
|
|
15
|
-
import { T as TEXT_MESSAGE_BODY_CLASSNAME } from '../consts-
|
|
16
|
-
import { O as OG_MESSAGE_BODY_CLASSNAME } from '../consts-
|
|
17
|
-
import { t as tokenizeMessage, T as TOKEN_TYPES, U as USER_MENTION_PREFIX } from '../tokenize-
|
|
18
|
-
import '../stringSet-
|
|
19
|
-
import '../index-
|
|
12
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-538fa479.js';
|
|
13
|
+
import { a as LocalizationContext } from '../LocalizationContext-62966630.js';
|
|
14
|
+
import { k as arrayEqual, j as getClassName } from '../index-1db30515.js';
|
|
15
|
+
import { T as TEXT_MESSAGE_BODY_CLASSNAME } from '../consts-165100af.js';
|
|
16
|
+
import { O as OG_MESSAGE_BODY_CLASSNAME } from '../consts-7a61df9f.js';
|
|
17
|
+
import { t as tokenizeMessage, T as TOKEN_TYPES, U as USER_MENTION_PREFIX } from '../tokenize-22d48b61.js';
|
|
18
|
+
import '../stringSet-e0fd81b2.js';
|
|
19
|
+
import '../index-6574e8fd.js';
|
|
20
20
|
import '../utils/message/getOutgoingMessageState.js';
|
|
21
21
|
|
|
22
22
|
function renderToString(_a) {
|
|
@@ -244,7 +244,7 @@ const initialTargetStringInfo = {
|
|
|
244
244
|
endOffsetIndex: null
|
|
245
245
|
};
|
|
246
246
|
const MessageInput = /*#__PURE__*/React__default.forwardRef((props, ref) => {
|
|
247
|
-
var
|
|
247
|
+
var _textField$innerText3, _textField$innerText5;
|
|
248
248
|
const {
|
|
249
249
|
className,
|
|
250
250
|
messageFieldId,
|
|
@@ -274,6 +274,7 @@ const MessageInput = /*#__PURE__*/React__default.forwardRef((props, ref) => {
|
|
|
274
274
|
renderSendMessageIcon,
|
|
275
275
|
setMentionedUsers
|
|
276
276
|
} = props;
|
|
277
|
+
const textField = ref === null || ref === void 0 ? void 0 : ref.current;
|
|
277
278
|
const textFieldId = messageFieldId || TEXT_FIELD_ID;
|
|
278
279
|
const {
|
|
279
280
|
stringSet
|
|
@@ -314,7 +315,7 @@ const MessageInput = /*#__PURE__*/React__default.forwardRef((props, ref) => {
|
|
|
314
315
|
displayCaret(textField, initialValue === null || initialValue === void 0 ? void 0 : initialValue.length);
|
|
315
316
|
} catch (_unused2) {}
|
|
316
317
|
setMentionedUserIds([]);
|
|
317
|
-
setIsInput((textField === null || textField === void 0 ? void 0 : (_textField$innerText = textField.innerText) === null || _textField$innerText === void 0 ? void 0 : _textField$innerText.length) > 0);
|
|
318
|
+
setIsInput((textField === null || textField === void 0 ? void 0 : (_textField$innerText = textField.innerText) === null || _textField$innerText === void 0 ? void 0 : _textField$innerText.trim().length) > 0);
|
|
318
319
|
setHeight();
|
|
319
320
|
}, [initialValue]);
|
|
320
321
|
|
|
@@ -359,7 +360,7 @@ const MessageInput = /*#__PURE__*/React__default.forwardRef((props, ref) => {
|
|
|
359
360
|
} catch (_unused3) {}
|
|
360
361
|
setMentionedUserIds([]);
|
|
361
362
|
}
|
|
362
|
-
setIsInput((textField === null || textField === void 0 ? void 0 : (_textField$innerText2 = textField.innerText) === null || _textField$innerText2 === void 0 ? void 0 : _textField$innerText2.length) > 0);
|
|
363
|
+
setIsInput((textField === null || textField === void 0 ? void 0 : (_textField$innerText2 = textField.innerText) === null || _textField$innerText2 === void 0 ? void 0 : _textField$innerText2.trim().length) > 0);
|
|
363
364
|
setHeight();
|
|
364
365
|
}
|
|
365
366
|
}, [isEdit, message]);
|
|
@@ -377,7 +378,7 @@ const MessageInput = /*#__PURE__*/React__default.forwardRef((props, ref) => {
|
|
|
377
378
|
setMentionedUserIds(newMentionedUserIds);
|
|
378
379
|
}
|
|
379
380
|
}
|
|
380
|
-
setIsInput(textField.innerText.length > 0);
|
|
381
|
+
setIsInput(textField.innerText.trim().length > 0);
|
|
381
382
|
}, [targetStringInfo, isMentionEnabled]);
|
|
382
383
|
|
|
383
384
|
// #Mention | Replace selected user nickname to the MentionedUserLabel
|
|
@@ -532,7 +533,7 @@ const MessageInput = /*#__PURE__*/React__default.forwardRef((props, ref) => {
|
|
|
532
533
|
setHeight();
|
|
533
534
|
}
|
|
534
535
|
};
|
|
535
|
-
const isEditDisabled = !(
|
|
536
|
+
const isEditDisabled = !(textField !== null && textField !== void 0 && (_textField$innerText3 = textField.innerText) !== null && _textField$innerText3 !== void 0 && _textField$innerText3.trim());
|
|
536
537
|
const editMessage = () => {
|
|
537
538
|
const textField = ref === null || ref === void 0 ? void 0 : ref.current;
|
|
538
539
|
const messageId = message === null || message === void 0 ? void 0 : message.messageId;
|
|
@@ -597,12 +598,12 @@ const MessageInput = /*#__PURE__*/React__default.forwardRef((props, ref) => {
|
|
|
597
598
|
if (preventEvent) {
|
|
598
599
|
e.preventDefault();
|
|
599
600
|
} else {
|
|
600
|
-
var _e$nativeEvent, _ref$
|
|
601
|
+
var _e$nativeEvent, _ref$current, _ref$current$childNod, _ref$current2, _ref$current2$childNo, _ref$current2$childNo2, _ref$current$childNod2, _ref$current$childNod3;
|
|
601
602
|
if (!e.shiftKey && e.key === MessageInputKeys.Enter && (e === null || e === void 0 ? void 0 : (_e$nativeEvent = e.nativeEvent) === null || _e$nativeEvent === void 0 ? void 0 : _e$nativeEvent.isComposing) !== true) {
|
|
602
603
|
e.preventDefault();
|
|
603
604
|
sendMessage();
|
|
604
605
|
}
|
|
605
|
-
if (e.key === MessageInputKeys.Backspace && (ref === null || ref === void 0 ? void 0 : (_ref$
|
|
606
|
+
if (e.key === MessageInputKeys.Backspace && (ref === null || ref === void 0 ? void 0 : (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : (_ref$current$childNod = _ref$current.childNodes) === null || _ref$current$childNod === void 0 ? void 0 : _ref$current$childNod.length) === 2 && !(ref !== null && ref !== void 0 && (_ref$current2 = ref.current) !== null && _ref$current2 !== void 0 && (_ref$current2$childNo = _ref$current2.childNodes) !== null && _ref$current2$childNo !== void 0 && (_ref$current2$childNo2 = _ref$current2$childNo[0]) !== null && _ref$current2$childNo2 !== void 0 && _ref$current2$childNo2.textContent) && (ref === null || ref === void 0 ? void 0 : (_ref$current$childNod2 = ref.current.childNodes) === null || _ref$current$childNod2 === void 0 ? void 0 : (_ref$current$childNod3 = _ref$current$childNod2[1]) === null || _ref$current$childNod3 === void 0 ? void 0 : _ref$current$childNod3.nodeType) === NodeTypes.ElementNode) {
|
|
606
607
|
ref === null || ref === void 0 ? void 0 : ref.current.removeChild(ref === null || ref === void 0 ? void 0 : ref.current.childNodes[1]);
|
|
607
608
|
}
|
|
608
609
|
}
|
|
@@ -619,14 +620,14 @@ const MessageInput = /*#__PURE__*/React__default.forwardRef((props, ref) => {
|
|
|
619
620
|
useMentionInputDetection();
|
|
620
621
|
},
|
|
621
622
|
onInput: () => {
|
|
622
|
-
var
|
|
623
|
+
var _textField$innerText4;
|
|
623
624
|
setHeight();
|
|
624
625
|
onStartTyping();
|
|
625
|
-
setIsInput((
|
|
626
|
+
setIsInput(((_textField$innerText4 = textField.innerText) === null || _textField$innerText4 === void 0 ? void 0 : _textField$innerText4.trim().length) > 0);
|
|
626
627
|
useMentionedLabelDetection();
|
|
627
628
|
},
|
|
628
629
|
onPaste: onPaste
|
|
629
|
-
}),
|
|
630
|
+
}), (textField === null || textField === void 0 ? void 0 : (_textField$innerText5 = textField.innerText) === null || _textField$innerText5 === void 0 ? void 0 : _textField$innerText5.length) === 0 && /*#__PURE__*/React__default.createElement(Label, {
|
|
630
631
|
className: "sendbird-message-input--placeholder",
|
|
631
632
|
type: LabelTypography.BODY_1,
|
|
632
633
|
color: disabled ? LabelColors.ONBACKGROUND_4 : LabelColors.ONBACKGROUND_3
|