@sendbird/uikit-react 3.4.6-0 → 3.4.6-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/App.js +45 -45
- package/CHANGELOG.md +14 -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 +29 -30
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- 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 +29 -30
- package/ChannelList.js.map +1 -1
- package/{ChannelListProvider-b7ce527e.js → ChannelListProvider-45cf488b.js} +8 -8
- package/ChannelListProvider-45cf488b.js.map +1 -0
- package/{ChannelProvider-cd9afff3.js → ChannelProvider-9a52ed96.js} +12 -12
- package/ChannelProvider-9a52ed96.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-8c395571.js} +1 -1
- package/{CreateChannelProvider-d7e8a10f.js.map → CreateChannelProvider-8c395571.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 +11 -12
- package/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
- package/EditUserProfile.js +11 -12
- package/EditUserProfile.js.map +1 -1
- package/{LocalizationContext-43b10f97.js → LocalizationContext-428ea690.js} +3 -3
- package/{LocalizationContext-43b10f97.js.map → LocalizationContext-428ea690.js.map} +1 -1
- package/{MediaQueryContext-f2df2472.js → MediaQueryContext-e4d4fb2a.js} +7 -7
- package/{MediaQueryContext-f2df2472.js.map → MediaQueryContext-e4d4fb2a.js.map} +1 -1
- package/{MemberList-70806978.js → MemberList-f0614320.js} +5 -5
- package/MemberList-f0614320.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-1657d7da.js} +6 -4
- package/OpenChannelListProvider-1657d7da.js.map +1 -0
- package/{OpenChannelProvider-36270182.js → OpenChannelProvider-de3ddd2b.js} +8 -8
- package/OpenChannelProvider-de3ddd2b.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-cced59b5.js} +3 -3
- package/{RemoveMessageModal-d0a5c64c.js.map → RemoveMessageModal-cced59b5.js.map} +1 -1
- package/SendbirdProvider.js +143 -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-c33f66a4.js} +9 -9
- package/ThreadProvider-c33f66a4.js.map +1 -0
- package/{UserProfileContext-12b6fabf.js → UserProfileContext-576f1ef9.js} +1 -1
- package/{UserProfileContext-12b6fabf.js.map → UserProfileContext-576f1ef9.js.map} +1 -1
- package/{VoiceMessageInputWrapper-c74412de.js → VoiceMessageInputWrapper-8f6bfd36.js} +19 -14
- package/VoiceMessageInputWrapper-8f6bfd36.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-f9237c94.js +123 -0
- package/WebAudioUtils-f9237c94.js.map +1 -0
- package/{_rollupPluginBabelHelpers-3756a6a3.js → _rollupPluginBabelHelpers-6e60e429.js} +1 -1
- package/_rollupPluginBabelHelpers-6e60e429.js.map +1 -0
- package/cjs/App.js +45 -45
- 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 +29 -30
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- 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 +29 -30
- package/cjs/ChannelList.js.map +1 -1
- package/cjs/{ChannelListProvider-d8f65b18.js → ChannelListProvider-f74d4451.js} +8 -8
- package/cjs/ChannelListProvider-f74d4451.js.map +1 -0
- package/cjs/{ChannelProvider-473548f7.js → ChannelProvider-fcb80591.js} +12 -12
- package/cjs/ChannelProvider-fcb80591.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-1be5d0c0.js} +1 -1
- package/cjs/{CreateChannelProvider-387290bb.js.map → CreateChannelProvider-1be5d0c0.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 +11 -12
- package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
- package/cjs/EditUserProfile.js +11 -12
- package/cjs/EditUserProfile.js.map +1 -1
- package/cjs/{LocalizationContext-e4a874cf.js → LocalizationContext-9b216d02.js} +3 -3
- package/cjs/{LocalizationContext-e4a874cf.js.map → LocalizationContext-9b216d02.js.map} +1 -1
- package/cjs/{MediaQueryContext-fcd92c17.js → MediaQueryContext-ea137add.js} +7 -7
- package/cjs/{MediaQueryContext-fcd92c17.js.map → MediaQueryContext-ea137add.js.map} +1 -1
- package/cjs/{MemberList-dbd3a4b4.js → MemberList-4f805690.js} +5 -5
- package/cjs/MemberList-4f805690.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-6883fa4a.js} +6 -4
- package/cjs/OpenChannelListProvider-6883fa4a.js.map +1 -0
- package/cjs/{OpenChannelProvider-3d3d606e.js → OpenChannelProvider-cb41bba9.js} +8 -8
- package/cjs/OpenChannelProvider-cb41bba9.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-193a514d.js} +3 -3
- package/cjs/{RemoveMessageModal-21a7c6ac.js.map → RemoveMessageModal-193a514d.js.map} +1 -1
- package/cjs/SendbirdProvider.js +147 -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-c3623e5f.js} +9 -9
- package/cjs/ThreadProvider-c3623e5f.js.map +1 -0
- package/cjs/{UserProfileContext-ce0c283c.js → UserProfileContext-ad079e6d.js} +1 -1
- package/cjs/{UserProfileContext-ce0c283c.js.map → UserProfileContext-ad079e6d.js.map} +1 -1
- package/cjs/{VoiceMessageInputWrapper-88ad4670.js → VoiceMessageInputWrapper-1c4004d1.js} +18 -13
- package/cjs/VoiceMessageInputWrapper-1c4004d1.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-33ee4d42.js +126 -0
- package/cjs/WebAudioUtils-33ee4d42.js.map +1 -0
- package/cjs/{_rollupPluginBabelHelpers-6ab4baac.js → _rollupPluginBabelHelpers-440ec6e2.js} +1 -1
- package/cjs/_rollupPluginBabelHelpers-440ec6e2.js.map +1 -0
- package/cjs/{color-168c1d53.js → color-8b30623d.js} +1 -1
- package/cjs/{color-168c1d53.js.map → color-8b30623d.js.map} +1 -1
- package/cjs/{compareIds-441b4983.js → compareIds-3dbb4f79.js} +1 -1
- package/cjs/{compareIds-441b4983.js.map → compareIds-3dbb4f79.js.map} +1 -1
- package/cjs/{const-0273bf9e.js → const-1e096998.js} +1 -1
- package/cjs/{const-0273bf9e.js.map → const-1e096998.js.map} +1 -1
- package/cjs/{const-cf4cec6a.js → const-7bb85121.js} +1 -1
- package/cjs/{const-cf4cec6a.js.map → const-7bb85121.js.map} +1 -1
- package/cjs/{consts-b8c0be49.js → consts-02c09d93.js} +1 -1
- package/cjs/{consts-b8c0be49.js.map → consts-02c09d93.js.map} +1 -1
- package/cjs/{consts-e193b1b8.js → consts-3ebe6f94.js} +1 -1
- package/cjs/{consts-e193b1b8.js.map → consts-3ebe6f94.js.map} +1 -1
- package/cjs/{consts-2e23914f.js → consts-54b7b2b1.js} +1 -1
- package/cjs/{consts-2e23914f.js.map → consts-54b7b2b1.js.map} +1 -1
- package/cjs/{consts-472d9347.js → consts-d1f579c4.js} +1 -1
- package/cjs/{consts-472d9347.js.map → consts-d1f579c4.js.map} +1 -1
- package/cjs/{context-d718fff1.js → context-855dcb8e.js} +2 -2
- package/cjs/{context-d718fff1.js.map → context-855dcb8e.js.map} +1 -1
- package/cjs/dist/index.css +57 -56
- 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-903c0f93.js → index-02729806.js} +24 -3
- package/cjs/index-02729806.js.map +1 -0
- package/cjs/{index-9dd8a18a.js → index-15a62d58.js} +5 -6
- package/cjs/index-15a62d58.js.map +1 -0
- package/cjs/{index-0e43cd69.js → index-3d6159df.js} +2 -2
- package/cjs/{index-0e43cd69.js.map → index-3d6159df.js.map} +1 -1
- package/cjs/index-5bba1fd5.js +41 -0
- package/cjs/index-5bba1fd5.js.map +1 -0
- package/cjs/{index-b2e4a79e.js → index-6d24cef9.js} +7 -7
- package/cjs/index-6d24cef9.js.map +1 -0
- package/cjs/{index-4894fc55.js → index-7f214e91.js} +7 -7
- package/cjs/index-7f214e91.js.map +1 -0
- package/cjs/{index-44341b78.js → index-8a187344.js} +6 -3
- package/cjs/index-8a187344.js.map +1 -0
- package/cjs/{index-3d08adec.js → index-8a64de0e.js} +4 -4
- package/cjs/index-8a64de0e.js.map +1 -0
- package/cjs/{index-d3b05e98.js → index-8d42b734.js} +2 -2
- package/cjs/index-8d42b734.js.map +1 -0
- package/cjs/{index-3a7584a0.js → index-9e320445.js} +28 -29
- package/cjs/index-9e320445.js.map +1 -0
- package/cjs/{index-630f7132.js → index-a1141d68.js} +14 -14
- package/cjs/index-a1141d68.js.map +1 -0
- package/cjs/{index-47105c4f.js → index-b95c8165.js} +2 -2
- package/cjs/index-b95c8165.js.map +1 -0
- package/cjs/{index-5075f3b2.js → index-d6f14382.js} +14 -14
- package/cjs/index-d6f14382.js.map +1 -0
- package/cjs/{index-813deccc.js → index-d85616b2.js} +1 -1
- package/cjs/{index-813deccc.js.map → index-d85616b2.js.map} +1 -1
- package/cjs/{index-f2d71843.js → index-ecfe08c9.js} +113 -30
- package/cjs/index-ecfe08c9.js.map +1 -0
- package/cjs/{index-ba9683ca.js → index-f8237241.js} +7 -3
- package/cjs/index-f8237241.js.map +1 -0
- package/cjs/index.js +49 -49
- package/cjs/sendbirdSelectors.js +2 -2
- package/cjs/sendbirdSelectors.js.map +1 -1
- package/cjs/{stringSet-76f7df68.js → stringSet-e52248ab.js} +1 -1
- package/cjs/{stringSet-76f7df68.js.map → stringSet-e52248ab.js.map} +1 -1
- package/cjs/{tokenize-5071d1a6.js → tokenize-c5dd544b.js} +19 -5
- package/cjs/tokenize-c5dd544b.js.map +1 -0
- package/cjs/{topics-f70c5e0f.js → topics-09d72ec0.js} +1 -1
- package/cjs/topics-09d72ec0.js.map +1 -0
- package/cjs/tslib.es6-957ba986.js +97 -0
- package/cjs/tslib.es6-957ba986.js.map +1 -0
- package/cjs/{types-43ef9367.js → types-68cc0fcf.js} +1 -1
- package/cjs/types-68cc0fcf.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-640ea281.js} +3 -3
- package/cjs/{useLongPress-3582b310.js.map → useLongPress-640ea281.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-1ebf89f9.js → utils-7346a672.js} +1 -1
- package/cjs/{utils-1ebf89f9.js.map → utils-7346a672.js.map} +1 -1
- package/cjs/{utils-39eb2189.js → utils-93739833.js} +2 -2
- package/cjs/utils-93739833.js.map +1 -0
- package/cjs/{utils-fdfc9b0a.js → utils-a82eaed9.js} +1 -1
- package/cjs/{utils-fdfc9b0a.js.map → utils-a82eaed9.js.map} +1 -1
- package/cjs/{utils-39a3f99e.js → utils-dd55b959.js} +1 -1
- package/cjs/utils-dd55b959.js.map +1 -0
- package/cjs/{uuid-f23c161c.js → uuid-a8af0c03.js} +1 -1
- package/cjs/{uuid-f23c161c.js.map → uuid-a8af0c03.js.map} +1 -1
- package/cjs/withSendbird.js +1 -1
- package/{color-e54d3ed7.js → color-2037c3b8.js} +1 -1
- package/{color-e54d3ed7.js.map → color-2037c3b8.js.map} +1 -1
- package/{compareIds-3e30a438.js → compareIds-b858e41a.js} +1 -1
- package/{compareIds-3e30a438.js.map → compareIds-b858e41a.js.map} +1 -1
- package/{const-71bd6867.js → const-10a01327.js} +1 -1
- package/{const-71bd6867.js.map → const-10a01327.js.map} +1 -1
- package/{const-48a3200e.js → const-85ec8faf.js} +1 -1
- package/{const-48a3200e.js.map → const-85ec8faf.js.map} +1 -1
- package/{consts-e4e1a8fc.js → consts-3fe926ac.js} +1 -1
- package/{consts-e4e1a8fc.js.map → consts-3fe926ac.js.map} +1 -1
- package/{consts-4b1e008b.js → consts-89b1e965.js} +1 -1
- package/{consts-4b1e008b.js.map → consts-89b1e965.js.map} +1 -1
- package/{consts-665331c7.js → consts-ef58410d.js} +1 -1
- package/{consts-665331c7.js.map → consts-ef58410d.js.map} +1 -1
- package/{consts-30f09302.js → consts-f3b2a046.js} +1 -1
- package/{consts-30f09302.js.map → consts-f3b2a046.js.map} +1 -1
- package/{context-993ee0c3.js → context-8436b333.js} +2 -2
- package/{context-993ee0c3.js.map → context-8436b333.js.map} +1 -1
- package/dist/index.css +57 -56
- package/dist/index.css.map +1 -1
- package/handlers/OpenChannelHandler.js.map +1 -1
- package/handlers/SessionHandler.js.map +1 -1
- package/{index-ec8cbdfb.js → index-10da4b99.js} +14 -14
- package/index-10da4b99.js.map +1 -0
- package/index-23251a75.js +39 -0
- package/index-23251a75.js.map +1 -0
- package/{index-95f0372d.js → index-2f83ba2a.js} +2 -2
- package/index-2f83ba2a.js.map +1 -0
- package/index-390c0bba.js +53 -0
- package/index-390c0bba.js.map +1 -0
- package/{index-a90edcd2.js → index-4a1325ab.js} +7 -7
- package/index-4a1325ab.js.map +1 -0
- package/{index-88523047.js → index-5cbdbcf9.js} +7 -7
- package/index-5cbdbcf9.js.map +1 -0
- package/{index-10377bc5.js → index-84b28e71.js} +5 -6
- package/index-84b28e71.js.map +1 -0
- package/{index-0f373e79.js → index-8b3cd0b6.js} +24 -3
- package/index-8b3cd0b6.js.map +1 -0
- package/{index-8a52a6f4.js → index-8d6fa44a.js} +113 -30
- package/index-8d6fa44a.js.map +1 -0
- package/{index-8f0ae983.js → index-8efe881f.js} +2 -2
- package/{index-8f0ae983.js.map → index-8efe881f.js.map} +1 -1
- package/{index-2932882f.js → index-b41d07df.js} +6 -3
- package/index-b41d07df.js.map +1 -0
- package/{index-5c20d787.js → index-d5a761b9.js} +1 -1
- package/{index-5c20d787.js.map → index-d5a761b9.js.map} +1 -1
- package/{index-207577d6.js → index-e01f2743.js} +7 -3
- package/index-e01f2743.js.map +1 -0
- package/{index-c77693d8.js → index-e0325c33.js} +2 -2
- package/index-e0325c33.js.map +1 -0
- package/{index-d75ba9c0.js → index-f0fa0260.js} +4 -4
- package/index-f0fa0260.js.map +1 -0
- package/{index-cd1a9173.js → index-f87c5aab.js} +14 -14
- package/index-f87c5aab.js.map +1 -0
- package/index.d.ts +1 -1
- package/index.js +49 -49
- package/package.json +4 -2
- package/sendbirdSelectors.js +2 -2
- package/sendbirdSelectors.js.map +1 -1
- package/{stringSet-2d42f6ff.js → stringSet-fa7e0d83.js} +1 -1
- package/{stringSet-2d42f6ff.js.map → stringSet-fa7e0d83.js.map} +1 -1
- package/{tokenize-cd9c48bb.js → tokenize-7bcc2072.js} +19 -6
- package/tokenize-7bcc2072.js.map +1 -0
- package/{topics-6d4bf2ed.js → topics-2647294d.js} +1 -1
- package/topics-2647294d.js.map +1 -0
- package/tslib.es6-debac48c.js +92 -0
- package/tslib.es6-debac48c.js.map +1 -0
- package/{types-2fb5793c.js → types-abb04b7a.js} +1 -1
- package/types-abb04b7a.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-42dc7c5d.js} +3 -3
- package/{useLongPress-c1a00d6e.js.map → useLongPress-42dc7c5d.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-1905e84d.js} +2 -2
- package/utils-1905e84d.js.map +1 -0
- package/{utils-4c1f97d4.js → utils-19ce54ee.js} +1 -1
- package/{utils-4c1f97d4.js.map → utils-19ce54ee.js.map} +1 -1
- package/{utils-a7563986.js → utils-87be98af.js} +1 -1
- package/{utils-a7563986.js.map → utils-87be98af.js.map} +1 -1
- package/{utils-760413c9.js → utils-b568cd44.js} +1 -1
- package/utils-b568cd44.js.map +1 -0
- package/{uuid-368c5040.js → uuid-e979d613.js} +1 -1
- package/{uuid-368c5040.js.map → uuid-e979d613.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
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { a as _extends } from '../_rollupPluginBabelHelpers-
|
|
2
|
-
import { _ as __assign } from '../tslib.es6-
|
|
1
|
+
import { a as _extends } from '../_rollupPluginBabelHelpers-6e60e429.js';
|
|
2
|
+
import { _ as __assign } from '../tslib.es6-debac48c.js';
|
|
3
3
|
import React__default, { useState, useContext, useRef } from 'react';
|
|
4
|
-
import { f as format } from '../index-
|
|
4
|
+
import { f as format } from '../index-8d6fa44a.js';
|
|
5
5
|
import Avatar from './Avatar.js';
|
|
6
6
|
import UserProfile from './UserProfile.js';
|
|
7
|
-
import { M as MessageStatus } from '../index-
|
|
7
|
+
import { M as MessageStatus } from '../index-4a1325ab.js';
|
|
8
8
|
import MessageItemMenu from './MessageItemMenu.js';
|
|
9
9
|
import MessageItemReactionMenu from './MessageItemReactionMenu.js';
|
|
10
10
|
import ContextMenu, { MenuItems, MenuItem } from './ContextMenu.js';
|
|
11
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-
|
|
11
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-8efe881f.js';
|
|
12
12
|
import EmojiReactions from './EmojiReactions.js';
|
|
13
13
|
import AdminMessage from './AdminMessage.js';
|
|
14
14
|
import TextMessageItemBody from './TextMessageItemBody.js';
|
|
@@ -17,55 +17,55 @@ import ThumbnailMessageItemBody from './ThumbnailMessageItemBody.js';
|
|
|
17
17
|
import OGMessageItemBody from './OGMessageItemBody.js';
|
|
18
18
|
import UnknownMessageItemBody from './UnknownMessageItemBody.js';
|
|
19
19
|
import QuoteMessage from './QuoteMessage.js';
|
|
20
|
-
import { r as isUserMessage, u as isSentMessage, v as isFailedMessage, w as isPendingMessage, l as isFileMessage, x as copyToClipboard, y as getEmojiListAll, z as getUIKitMessageTypes, n as isThumbnailMessage, j as getClassName, A as getSenderName, B as isTextMessage, C as isOGMessage, s as getUIKitMessageType, d as isVoiceMessage } from '../index-
|
|
21
|
-
import { a as UserProfileContext } from '../UserProfileContext-
|
|
22
|
-
import { u as useLocalization } from '../LocalizationContext-
|
|
20
|
+
import { r as isUserMessage, u as isSentMessage, v as isFailedMessage, w as isPendingMessage, l as isFileMessage, x as copyToClipboard, y as getEmojiListAll, z as getUIKitMessageTypes, n as isThumbnailMessage, j as getClassName, A as getSenderName, B as isTextMessage, C as isOGMessage, s as getUIKitMessageType, d as isVoiceMessage } from '../index-f87c5aab.js';
|
|
21
|
+
import { a as UserProfileContext } from '../UserProfileContext-576f1ef9.js';
|
|
22
|
+
import { u as useLocalization } from '../LocalizationContext-428ea690.js';
|
|
23
23
|
import useSendbirdStateContext from '../useSendbirdStateContext.js';
|
|
24
|
-
import { u as useLongPress } from '../useLongPress-
|
|
24
|
+
import { u as useLongPress } from '../useLongPress-42dc7c5d.js';
|
|
25
25
|
import Icon, { IconTypes, IconColors } from './Icon.js';
|
|
26
26
|
import BottomSheet from './BottomSheet.js';
|
|
27
27
|
import ImageRenderer from './ImageRenderer.js';
|
|
28
28
|
import ReactionButton from './ReactionButton.js';
|
|
29
|
-
import { u as useMediaQueryContext } from '../MediaQueryContext-
|
|
29
|
+
import { u as useMediaQueryContext } from '../MediaQueryContext-e4d4fb2a.js';
|
|
30
30
|
import ThreadReplies from './ThreadReplies.js';
|
|
31
|
-
import { T as ThreadReplySelectType } from '../const-
|
|
31
|
+
import { T as ThreadReplySelectType } from '../const-10a01327.js';
|
|
32
32
|
import { VoiceMessageItemBody } from './VoiceMessageItemBody.js';
|
|
33
|
-
import '../index-
|
|
34
|
-
import '../uuid-
|
|
33
|
+
import '../index-8b3cd0b6.js';
|
|
34
|
+
import '../uuid-e979d613.js';
|
|
35
35
|
import 'prop-types';
|
|
36
36
|
import '../sendbirdSelectors.js';
|
|
37
|
-
import '../topics-
|
|
38
|
-
import '../utils-
|
|
37
|
+
import '../topics-2647294d.js';
|
|
38
|
+
import '../utils-87be98af.js';
|
|
39
39
|
import './Button.js';
|
|
40
|
-
import '../stringSet-
|
|
40
|
+
import '../stringSet-fa7e0d83.js';
|
|
41
41
|
import './Loader.js';
|
|
42
42
|
import '../utils/message/getOutgoingMessageState.js';
|
|
43
|
-
import '../index-
|
|
44
|
-
import '../index-
|
|
43
|
+
import '../index-b41d07df.js';
|
|
44
|
+
import '../index-2f83ba2a.js';
|
|
45
45
|
import './IconButton.js';
|
|
46
|
-
import '../types-
|
|
46
|
+
import '../types-abb04b7a.js';
|
|
47
47
|
import 'react-dom';
|
|
48
48
|
import './SortByRow.js';
|
|
49
49
|
import './Tooltip.js';
|
|
50
50
|
import './TooltipWrapper.js';
|
|
51
51
|
import './ReactionBadge.js';
|
|
52
|
-
import '../tokenize-
|
|
53
|
-
import '../index-
|
|
52
|
+
import '../tokenize-7bcc2072.js';
|
|
53
|
+
import '../index-390c0bba.js';
|
|
54
|
+
import 'ts-pattern';
|
|
54
55
|
import '../Message/context.js';
|
|
55
56
|
import './MentionLabel.js';
|
|
56
57
|
import './LinkLabel.js';
|
|
57
|
-
import '../consts-
|
|
58
|
+
import '../consts-ef58410d.js';
|
|
58
59
|
import './TextButton.js';
|
|
59
|
-
import '../color-
|
|
60
|
-
import '../consts-
|
|
60
|
+
import '../color-2037c3b8.js';
|
|
61
|
+
import '../consts-89b1e965.js';
|
|
61
62
|
import '../withSendbird.js';
|
|
62
|
-
import '../index-
|
|
63
|
+
import '../index-d5a761b9.js';
|
|
63
64
|
import './ProgressBar.js';
|
|
64
65
|
import '../VoicePlayer/useVoicePlayer.js';
|
|
65
|
-
import '../index-
|
|
66
|
-
import '../consts-
|
|
66
|
+
import '../index-e01f2743.js';
|
|
67
|
+
import '../consts-f3b2a046.js';
|
|
67
68
|
import '../VoiceRecorder/context.js';
|
|
68
|
-
import '../lame.all.js';
|
|
69
69
|
import './PlaybackTime.js';
|
|
70
70
|
|
|
71
71
|
var MobileContextMenu = function (props) {
|
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-6e60e429.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-85ec8faf.js';
|
|
5
|
+
import { U as USER_MENTION_TEMP_CHAR } from '../const-10a01327.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-debac48c.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-3fe926ac.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-8efe881f.js';
|
|
13
|
+
import { a as LocalizationContext } from '../LocalizationContext-428ea690.js';
|
|
14
|
+
import { k as arrayEqual, j as getClassName } from '../index-f87c5aab.js';
|
|
15
|
+
import { T as TEXT_MESSAGE_BODY_CLASSNAME } from '../consts-ef58410d.js';
|
|
16
|
+
import { O as OG_MESSAGE_BODY_CLASSNAME } from '../consts-89b1e965.js';
|
|
17
|
+
import { t as tokenizeMessage, T as TOKEN_TYPES, U as USER_MENTION_PREFIX } from '../tokenize-7bcc2072.js';
|
|
18
|
+
import '../stringSet-fa7e0d83.js';
|
|
19
|
+
import '../index-8b3cd0b6.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
|