@sendbird/uikit-react 3.4.2 → 3.4.3-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/.size-snapshot.json +8841 -0
- package/App.js +40 -40
- package/Channel/components/ChannelHeader.js +19 -19
- package/Channel/components/ChannelUI.js +33 -34
- 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 +28 -29
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +24 -25
- package/Channel/components/MessageInput.js.map +1 -1
- package/Channel/components/MessageList.js +29 -30
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +17 -17
- package/Channel/components/SuggestedMentionList.js +17 -17
- package/Channel/components/TypingIndicator.js +15 -15
- package/Channel/components/UnreadCount.js +4 -4
- package/Channel/context.js +14 -14
- package/Channel.js +33 -34
- package/Channel.js.map +1 -1
- package/ChannelList/components/AddChannel.js +15 -15
- package/ChannelList/components/ChannelListHeader.js +7 -7
- package/ChannelList/components/ChannelListUI.js +30 -29
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +26 -25
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/ChannelList/context.js +8 -8
- package/ChannelList.js +30 -29
- package/ChannelList.js.map +1 -1
- package/{ChannelListProvider-e6254f07.js → ChannelListProvider-9ffe6c08.js} +8 -8
- package/{ChannelListProvider-e6254f07.js.map → ChannelListProvider-9ffe6c08.js.map} +1 -1
- package/{ChannelProvider-c1c00018.js → ChannelProvider-e2c86cba.js} +10 -10
- package/{ChannelProvider-c1c00018.js.map → ChannelProvider-e2c86cba.js.map} +1 -1
- package/ChannelSettings/components/ChannelProfile.js +12 -12
- package/ChannelSettings/components/ChannelSettingsUI.js +18 -18
- package/ChannelSettings/components/EditDetailsModal.js +12 -12
- package/ChannelSettings/components/LeaveChannel.js +12 -12
- package/ChannelSettings/components/ModerationPanel.js +15 -15
- package/ChannelSettings/components/UserListItem.js +11 -11
- package/ChannelSettings/components/UserPanel.js +14 -14
- package/ChannelSettings/context.js +3 -3
- package/ChannelSettings.js +18 -18
- package/CreateChannel/components/CreateChannelUI.js +14 -14
- package/CreateChannel/components/InviteUsers.js +14 -14
- package/CreateChannel/components/SelectChannelType.js +11 -11
- package/CreateChannel/context.js +4 -4
- package/CreateChannel.js +14 -14
- package/{CreateChannelProvider-9f4f5302.js → CreateChannelProvider-0881b9df.js} +1 -1
- package/{CreateChannelProvider-9f4f5302.js.map → CreateChannelProvider-0881b9df.js.map} +1 -1
- package/CreateOpenChannel/components/CreateOpenChannelUI.js +10 -10
- package/CreateOpenChannel/context.js +1 -1
- package/CreateOpenChannel.js +10 -10
- package/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/EditUserProfile.js +13 -13
- package/{LocalizationContext-8725e9b2.js → LocalizationContext-187f787e.js} +3 -3
- package/{LocalizationContext-8725e9b2.js.map → LocalizationContext-187f787e.js.map} +1 -1
- package/{MediaQueryContext-ceb727c7.js → MediaQueryContext-add671c4.js} +1 -1
- package/{MediaQueryContext-ceb727c7.js.map → MediaQueryContext-add671c4.js.map} +1 -1
- package/{MemberList-7676a6a8.js → MemberList-5bee1695.js} +5 -5
- package/{MemberList-7676a6a8.js.map → MemberList-5bee1695.js.map} +1 -1
- package/MessageSearch/components/MessageSearchUI.js +12 -12
- package/MessageSearch/context.js +2 -2
- package/MessageSearch.js +12 -12
- package/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/OpenChannel/components/OpenChannelHeader.js +13 -13
- package/OpenChannel/components/OpenChannelInput.js +17 -18
- package/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessage.js +23 -24
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +25 -26
- package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/OpenChannel/components/OpenChannelUI.js +26 -27
- package/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/OpenChannel/context.js +9 -9
- package/OpenChannel.js +26 -27
- package/OpenChannel.js.map +1 -1
- package/OpenChannelList/components/OpenChannelListUI.js +13 -13
- package/OpenChannelList/components/OpenChannelPreview.js +4 -4
- package/OpenChannelList/context.js +4 -4
- package/OpenChannelList.js +13 -13
- package/{OpenChannelListProvider-706744c4.js → OpenChannelListProvider-a15ce046.js} +3 -3
- package/{OpenChannelListProvider-706744c4.js.map → OpenChannelListProvider-a15ce046.js.map} +1 -1
- package/{OpenChannelProvider-a731aa78.js → OpenChannelProvider-ea703f1a.js} +7 -7
- package/{OpenChannelProvider-a731aa78.js.map → OpenChannelProvider-ea703f1a.js.map} +1 -1
- package/OpenChannelSettings/components/EditDetailsModal.js +13 -13
- package/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
- package/OpenChannelSettings/components/OperatorUI.js +17 -17
- package/OpenChannelSettings/components/ParticipantUI.js +15 -15
- package/OpenChannelSettings/context.js +3 -3
- package/OpenChannelSettings.js +18 -18
- package/{RemoveMessageModal-9b81dfb2.js → RemoveMessageModal-5a70495b.js} +3 -3
- package/{RemoveMessageModal-9b81dfb2.js.map → RemoveMessageModal-5a70495b.js.map} +1 -1
- package/SendbirdProvider.js +12 -12
- package/SendbirdProvider.js.map +1 -1
- package/Thread/components/ParentMessageInfo.js +25 -26
- package/Thread/components/ParentMessageInfo.js.map +1 -1
- package/Thread/components/ParentMessageInfoItem.js +16 -16
- package/Thread/components/ThreadHeader.js +6 -6
- package/Thread/components/ThreadList.js +28 -29
- package/Thread/components/ThreadList.js.map +1 -1
- package/Thread/components/ThreadListItem.js +28 -29
- package/Thread/components/ThreadListItem.js.map +1 -1
- package/Thread/components/ThreadMessageInput.js +26 -27
- package/Thread/components/ThreadMessageInput.js.map +1 -1
- package/Thread/components/ThreadUI.js +32 -33
- package/Thread/components/ThreadUI.js.map +1 -1
- package/Thread/context.js +9 -9
- package/Thread.js +32 -33
- package/Thread.js.map +1 -1
- package/{ThreadProvider-e64f95cc.js → ThreadProvider-8d535c1b.js} +7 -7
- package/{ThreadProvider-e64f95cc.js.map → ThreadProvider-8d535c1b.js.map} +1 -1
- package/{UserProfileContext-cc71f901.js → UserProfileContext-d2264917.js} +1 -1
- package/{UserProfileContext-cc71f901.js.map → UserProfileContext-d2264917.js.map} +1 -1
- package/{VoiceMessageInputWrapper-94005482.js → VoiceMessageInputWrapper-2434abc5.js} +7 -7
- package/{VoiceMessageInputWrapper-94005482.js.map → VoiceMessageInputWrapper-2434abc5.js.map} +1 -1
- package/VoicePlayer/context.js +3 -3
- package/VoicePlayer/useVoicePlayer.js +3 -3
- package/VoiceRecorder/context.js +1 -1
- package/VoiceRecorder/useVoiceRecorder.js +2 -2
- package/{_rollupPluginBabelHelpers-945410b2.js → _rollupPluginBabelHelpers-dfc61977.js} +1 -1
- package/_rollupPluginBabelHelpers-dfc61977.js.map +1 -0
- package/{actionTypes-aa211f48.js → actionTypes-99206028.js} +1 -1
- package/{actionTypes-aa211f48.js.map → actionTypes-99206028.js.map} +1 -1
- package/cjs/App.js +40 -40
- package/cjs/Channel/components/ChannelHeader.js +19 -19
- package/cjs/Channel/components/ChannelUI.js +33 -34
- 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 +28 -29
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +24 -25
- package/cjs/Channel/components/MessageInput.js.map +1 -1
- package/cjs/Channel/components/MessageList.js +29 -30
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +17 -17
- package/cjs/Channel/components/SuggestedMentionList.js +17 -17
- package/cjs/Channel/components/TypingIndicator.js +15 -15
- package/cjs/Channel/components/UnreadCount.js +4 -4
- package/cjs/Channel/context.js +14 -14
- package/cjs/Channel.js +33 -34
- package/cjs/Channel.js.map +1 -1
- package/cjs/ChannelList/components/AddChannel.js +15 -15
- package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
- package/cjs/ChannelList/components/ChannelListUI.js +30 -29
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +26 -25
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/cjs/ChannelList/context.js +8 -8
- package/cjs/ChannelList.js +30 -29
- package/cjs/ChannelList.js.map +1 -1
- package/cjs/{ChannelListProvider-8cd92208.js → ChannelListProvider-30c51b60.js} +8 -8
- package/cjs/{ChannelListProvider-8cd92208.js.map → ChannelListProvider-30c51b60.js.map} +1 -1
- package/cjs/{ChannelProvider-b1290e55.js → ChannelProvider-fcbde734.js} +10 -10
- package/cjs/{ChannelProvider-b1290e55.js.map → ChannelProvider-fcbde734.js.map} +1 -1
- package/cjs/ChannelSettings/components/ChannelProfile.js +12 -12
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -18
- package/cjs/ChannelSettings/components/EditDetailsModal.js +12 -12
- package/cjs/ChannelSettings/components/LeaveChannel.js +12 -12
- package/cjs/ChannelSettings/components/ModerationPanel.js +15 -15
- package/cjs/ChannelSettings/components/UserListItem.js +11 -11
- package/cjs/ChannelSettings/components/UserPanel.js +14 -14
- package/cjs/ChannelSettings/context.js +3 -3
- package/cjs/ChannelSettings.js +18 -18
- package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
- package/cjs/CreateChannel/components/InviteUsers.js +14 -14
- package/cjs/CreateChannel/components/SelectChannelType.js +11 -11
- package/cjs/CreateChannel/context.js +4 -4
- package/cjs/CreateChannel.js +14 -14
- package/cjs/{CreateChannelProvider-08c38b8e.js → CreateChannelProvider-9f9ec6e6.js} +1 -1
- package/cjs/{CreateChannelProvider-08c38b8e.js.map → CreateChannelProvider-9f9ec6e6.js.map} +1 -1
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +10 -10
- package/cjs/CreateOpenChannel/context.js +1 -1
- package/cjs/CreateOpenChannel.js +10 -10
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/cjs/EditUserProfile.js +13 -13
- package/cjs/{LocalizationContext-1f669b3c.js → LocalizationContext-2f07a939.js} +3 -3
- package/cjs/{LocalizationContext-1f669b3c.js.map → LocalizationContext-2f07a939.js.map} +1 -1
- package/cjs/{MediaQueryContext-130143d7.js → MediaQueryContext-729d402a.js} +1 -1
- package/cjs/{MediaQueryContext-130143d7.js.map → MediaQueryContext-729d402a.js.map} +1 -1
- package/cjs/{MemberList-8df95ca1.js → MemberList-515d3bfb.js} +5 -5
- package/cjs/{MemberList-8df95ca1.js.map → MemberList-515d3bfb.js.map} +1 -1
- package/cjs/MessageSearch/components/MessageSearchUI.js +12 -12
- package/cjs/MessageSearch/context.js +2 -2
- package/cjs/MessageSearch.js +12 -12
- package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/cjs/OpenChannel/components/OpenChannelHeader.js +13 -13
- package/cjs/OpenChannel/components/OpenChannelInput.js +17 -18
- package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessage.js +23 -24
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +25 -26
- package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelUI.js +26 -27
- package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/cjs/OpenChannel/context.js +9 -9
- package/cjs/OpenChannel.js +26 -27
- 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 +4 -4
- package/cjs/OpenChannelList.js +13 -13
- package/cjs/{OpenChannelListProvider-e536a2bf.js → OpenChannelListProvider-5e77c819.js} +3 -3
- package/cjs/{OpenChannelListProvider-e536a2bf.js.map → OpenChannelListProvider-5e77c819.js.map} +1 -1
- package/cjs/{OpenChannelProvider-1e578c60.js → OpenChannelProvider-e8821f43.js} +7 -7
- package/cjs/{OpenChannelProvider-1e578c60.js.map → OpenChannelProvider-e8821f43.js.map} +1 -1
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +13 -13
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
- package/cjs/OpenChannelSettings/components/OperatorUI.js +17 -17
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -15
- package/cjs/OpenChannelSettings/context.js +3 -3
- package/cjs/OpenChannelSettings.js +18 -18
- package/cjs/{RemoveMessageModal-b0c539a1.js → RemoveMessageModal-0710a908.js} +3 -3
- package/cjs/{RemoveMessageModal-b0c539a1.js.map → RemoveMessageModal-0710a908.js.map} +1 -1
- package/cjs/SendbirdProvider.js +12 -12
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfo.js +25 -26
- package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfoItem.js +16 -16
- package/cjs/Thread/components/ThreadHeader.js +6 -6
- package/cjs/Thread/components/ThreadList.js +28 -29
- package/cjs/Thread/components/ThreadList.js.map +1 -1
- package/cjs/Thread/components/ThreadListItem.js +28 -29
- package/cjs/Thread/components/ThreadListItem.js.map +1 -1
- package/cjs/Thread/components/ThreadMessageInput.js +26 -27
- package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
- package/cjs/Thread/components/ThreadUI.js +32 -33
- package/cjs/Thread/components/ThreadUI.js.map +1 -1
- package/cjs/Thread/context.js +9 -9
- package/cjs/Thread.js +32 -33
- package/cjs/Thread.js.map +1 -1
- package/cjs/{ThreadProvider-5eafb9ef.js → ThreadProvider-e7537e17.js} +7 -7
- package/cjs/{ThreadProvider-5eafb9ef.js.map → ThreadProvider-e7537e17.js.map} +1 -1
- package/cjs/{UserProfileContext-cde95db8.js → UserProfileContext-5fbd0305.js} +1 -1
- package/cjs/{UserProfileContext-cde95db8.js.map → UserProfileContext-5fbd0305.js.map} +1 -1
- package/cjs/{VoiceMessageInputWrapper-5bb0ed00.js → VoiceMessageInputWrapper-8744ba42.js} +7 -7
- package/cjs/{VoiceMessageInputWrapper-5bb0ed00.js.map → VoiceMessageInputWrapper-8744ba42.js.map} +1 -1
- package/cjs/VoicePlayer/context.js +3 -3
- package/cjs/VoicePlayer/useVoicePlayer.js +3 -3
- package/cjs/VoiceRecorder/context.js +1 -1
- package/cjs/VoiceRecorder/useVoiceRecorder.js +2 -2
- package/cjs/{_rollupPluginBabelHelpers-32557b21.js → _rollupPluginBabelHelpers-325fff35.js} +1 -1
- package/cjs/_rollupPluginBabelHelpers-325fff35.js.map +1 -0
- package/cjs/{actionTypes-32a1c06c.js → actionTypes-9e73ad35.js} +1 -1
- package/cjs/{actionTypes-32a1c06c.js.map → actionTypes-9e73ad35.js.map} +1 -1
- package/cjs/{color-97cfc61b.js → color-6ed16caa.js} +1 -1
- package/cjs/{color-97cfc61b.js.map → color-6ed16caa.js.map} +1 -1
- package/cjs/{compareIds-32f97a73.js → compareIds-61f98cac.js} +1 -1
- package/cjs/{compareIds-32f97a73.js.map → compareIds-61f98cac.js.map} +1 -1
- package/cjs/{const-fe838b59.js → const-20a4c9f8.js} +1 -1
- package/cjs/{const-fe838b59.js.map → const-20a4c9f8.js.map} +1 -1
- package/cjs/{const-77194948.js → const-94a43f2e.js} +1 -1
- package/cjs/{const-77194948.js.map → const-94a43f2e.js.map} +1 -1
- package/cjs/{consts-f82aaae9.js → consts-1f4e725d.js} +1 -1
- package/cjs/{consts-f82aaae9.js.map → consts-1f4e725d.js.map} +1 -1
- package/cjs/consts-dae31183.js +6 -0
- package/cjs/consts-dae31183.js.map +1 -0
- package/cjs/{context-01e9eccc.js → context-53458dac.js} +2 -2
- package/cjs/{context-01e9eccc.js.map → context-53458dac.js.map} +1 -1
- package/cjs/dist/index.css +119 -119
- package/cjs/dist/index.css.map +1 -1
- package/cjs/{index-33ef71d3.js → index-1bbb70bd.js} +7 -7
- package/cjs/{index-33ef71d3.js.map → index-1bbb70bd.js.map} +1 -1
- package/cjs/{index-577c9a9b.js → index-2129e959.js} +1 -1
- package/cjs/{index-577c9a9b.js.map → index-2129e959.js.map} +1 -1
- package/cjs/{index-b911f8b3.js → index-27659174.js} +7 -7
- package/cjs/{index-b911f8b3.js.map → index-27659174.js.map} +1 -1
- package/cjs/{index-26ff28a8.js → index-306e7c9a.js} +3 -3
- package/cjs/{index-26ff28a8.js.map → index-306e7c9a.js.map} +1 -1
- package/cjs/{index-f5502150.js → index-3a44ff71.js} +1 -1
- package/cjs/{index-f5502150.js.map → index-3a44ff71.js.map} +1 -1
- package/cjs/{index-1b11bb85.js → index-3b8eefa2.js} +2 -2
- package/cjs/{index-1b11bb85.js.map → index-3b8eefa2.js.map} +1 -1
- package/cjs/{index-90c0f273.js → index-59b0ddb6.js} +2 -2
- package/cjs/{index-90c0f273.js.map → index-59b0ddb6.js.map} +1 -1
- package/cjs/{index-cf139ee0.js → index-98939d51.js} +4 -4
- package/cjs/{index-cf139ee0.js.map → index-98939d51.js.map} +1 -1
- package/cjs/{index-b32fce67.js → index-9cb4a8a1.js} +2 -2
- package/cjs/{index-b32fce67.js.map → index-9cb4a8a1.js.map} +1 -1
- package/cjs/{index-2c7774d0.js → index-ba209fe7.js} +4 -4
- package/cjs/{index-2c7774d0.js.map → index-ba209fe7.js.map} +1 -1
- package/cjs/{index-78e2bb42.js → index-d44e0a55.js} +2 -2
- package/cjs/{index-78e2bb42.js.map → index-d44e0a55.js.map} +1 -1
- package/cjs/{index-9506bc1e.js → index-dc4cbd5a.js} +5 -5
- package/cjs/{index-9506bc1e.js.map → index-dc4cbd5a.js.map} +1 -1
- package/cjs/{index-81e19961.js → index-e6b1d2b7.js} +2 -2
- package/cjs/{index-81e19961.js.map → index-e6b1d2b7.js.map} +1 -1
- package/cjs/{index-c4869cdb.js → index-f2f8ceeb.js} +3 -3
- package/cjs/{index-c4869cdb.js.map → index-f2f8ceeb.js.map} +1 -1
- package/cjs/index.js +45 -45
- package/cjs/sendbirdSelectors.js +2 -2
- package/cjs/{stringSet-ddd351f0.js → stringSet-70ad7caf.js} +1 -1
- package/cjs/{stringSet-ddd351f0.js.map → stringSet-70ad7caf.js.map} +1 -1
- package/cjs/{topics-5edbb1b2.js → topics-a17b8ec5.js} +1 -1
- package/cjs/{topics-5edbb1b2.js.map → topics-a17b8ec5.js.map} +1 -1
- package/cjs/{tslib.es6-d2ba1a6b.js → tslib.es6-6bb94011.js} +1 -1
- package/cjs/{tslib.es6-d2ba1a6b.js.map → tslib.es6-6bb94011.js.map} +1 -1
- package/cjs/{types-3fb94919.js → types-44d71878.js} +1 -1
- package/cjs/{types-3fb94919.js.map → types-44d71878.js.map} +1 -1
- 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/Button.js +3 -3
- package/cjs/ui/ChannelAvatar.js +3 -3
- package/cjs/ui/ConnectionStatus.js +4 -4
- package/cjs/ui/ContextMenu.js +5 -5
- 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/ImageRenderer.js +1 -1
- package/cjs/ui/Input.js +2 -2
- package/cjs/ui/Label.js +2 -2
- package/cjs/ui/LinkLabel.js +2 -2
- package/cjs/ui/Loader.js +1 -1
- package/cjs/ui/MentionLabel.js +11 -11
- package/cjs/ui/MentionUserLabel.js +4 -2
- package/cjs/ui/MentionUserLabel.js.map +1 -1
- package/cjs/ui/MessageContent.js +23 -23
- package/cjs/ui/MessageInput.js +40 -21
- package/cjs/ui/MessageInput.js.map +1 -1
- package/cjs/ui/MessageItemMenu.js +8 -8
- package/cjs/ui/MessageItemReactionMenu.js +5 -5
- package/cjs/ui/MessageSearchFileItem.js +10 -10
- package/cjs/ui/MessageSearchItem.js +9 -9
- package/cjs/ui/MessageStatus.js +10 -10
- package/cjs/ui/Modal.js +7 -7
- package/cjs/ui/OGMessageItemBody.js +11 -11
- package/cjs/ui/OpenChannelAdminMessage.js +3 -3
- package/cjs/ui/OpenChannelAvatar.js +6 -6
- package/cjs/ui/OpenchannelConversationHeader.js +6 -6
- package/cjs/ui/OpenchannelFileMessage.js +16 -16
- package/cjs/ui/OpenchannelOGMessage.js +16 -16
- package/cjs/ui/OpenchannelThumbnailMessage.js +15 -15
- package/cjs/ui/OpenchannelUserMessage.js +16 -16
- package/cjs/ui/PlaceHolder.js +6 -6
- package/cjs/ui/PlaybackTime.js +2 -2
- package/cjs/ui/QuoteMessage.js +6 -6
- package/cjs/ui/QuoteMessageInput.js +6 -6
- package/cjs/ui/ReactionBadge.js +3 -3
- package/cjs/ui/ReactionButton.js +1 -1
- package/cjs/ui/SortByRow.js +2 -2
- package/cjs/ui/TextButton.js +2 -2
- package/cjs/ui/TextMessageItemBody.js +11 -11
- package/cjs/ui/ThreadReplies.js +6 -6
- package/cjs/ui/ThumbnailMessageItemBody.js +2 -2
- package/cjs/ui/Tooltip.js +3 -3
- package/cjs/ui/TooltipWrapper.js +1 -1
- package/cjs/ui/UnknownMessageItemBody.js +6 -6
- package/cjs/ui/UserListItem.js +11 -11
- package/cjs/ui/UserProfile.js +10 -10
- package/cjs/ui/VoiceMessageItemBody.js +5 -5
- package/cjs/ui/VoiceMessgeInput.js +8 -8
- package/cjs/ui/Word.js +11 -11
- package/cjs/{useLongPress-778d6f15.js → useLongPress-7fcddf32.js} +3 -3
- package/cjs/{useLongPress-778d6f15.js.map → useLongPress-7fcddf32.js.map} +1 -1
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/utils/message/isVoiceMessage.js +2 -2
- package/cjs/{utils-ee6665ec.js → utils-2d3622fd.js} +1 -1
- package/cjs/{utils-ee6665ec.js.map → utils-2d3622fd.js.map} +1 -1
- package/cjs/{utils-f7f440f8.js → utils-76d84308.js} +1 -1
- package/cjs/{utils-f7f440f8.js.map → utils-76d84308.js.map} +1 -1
- package/cjs/{utils-c67cf524.js → utils-b1231f1d.js} +2 -2
- package/cjs/{utils-c67cf524.js.map → utils-b1231f1d.js.map} +1 -1
- package/cjs/{utils-602ab2fc.js → utils-c86c2884.js} +1 -1
- package/cjs/{utils-602ab2fc.js.map → utils-c86c2884.js.map} +1 -1
- package/cjs/{uuid-28e4a814.js → uuid-7d07ac3f.js} +1 -1
- package/cjs/{uuid-28e4a814.js.map → uuid-7d07ac3f.js.map} +1 -1
- package/cjs/withSendbird.js +1 -1
- package/{color-f6b2bdb7.js → color-b379fbc5.js} +1 -1
- package/{color-f6b2bdb7.js.map → color-b379fbc5.js.map} +1 -1
- package/{compareIds-87972c5f.js → compareIds-86584ff3.js} +1 -1
- package/{compareIds-87972c5f.js.map → compareIds-86584ff3.js.map} +1 -1
- package/{const-85535a89.js → const-26fafb08.js} +1 -1
- package/{const-85535a89.js.map → const-26fafb08.js.map} +1 -1
- package/{const-0f759572.js → const-693a408f.js} +1 -1
- package/{const-0f759572.js.map → const-693a408f.js.map} +1 -1
- package/{consts-59f719d8.js → consts-37ea645a.js} +1 -1
- package/{consts-59f719d8.js.map → consts-37ea645a.js.map} +1 -1
- package/consts-b2395440.js +4 -0
- package/consts-b2395440.js.map +1 -0
- package/{context-f9c07d84.js → context-672443fa.js} +2 -2
- package/{context-f9c07d84.js.map → context-672443fa.js.map} +1 -1
- package/dist/index.css +119 -119
- package/dist/index.css.map +1 -1
- package/{index-43834bc0.js → index-102fbe62.js} +2 -2
- package/{index-43834bc0.js.map → index-102fbe62.js.map} +1 -1
- package/{index-2988897b.js → index-30236e16.js} +2 -2
- package/{index-2988897b.js.map → index-30236e16.js.map} +1 -1
- package/{index-a73afdab.js → index-30721345.js} +4 -4
- package/{index-a73afdab.js.map → index-30721345.js.map} +1 -1
- package/{index-868d3a87.js → index-39657867.js} +2 -2
- package/{index-868d3a87.js.map → index-39657867.js.map} +1 -1
- package/{index-e121c395.js → index-46d8dde5.js} +2 -2
- package/{index-e121c395.js.map → index-46d8dde5.js.map} +1 -1
- package/{index-c10fcd31.js → index-5b34a381.js} +1 -1
- package/{index-c10fcd31.js.map → index-5b34a381.js.map} +1 -1
- package/{index-a1a19702.js → index-7afa5c8d.js} +3 -3
- package/{index-a1a19702.js.map → index-7afa5c8d.js.map} +1 -1
- package/{index-1ac4456b.js → index-7b740ffc.js} +7 -7
- package/{index-1ac4456b.js.map → index-7b740ffc.js.map} +1 -1
- package/{index-3c7ecbec.js → index-854faff0.js} +5 -5
- package/{index-3c7ecbec.js.map → index-854faff0.js.map} +1 -1
- package/{index-ac5a0725.js → index-c29a819f.js} +3 -3
- package/{index-ac5a0725.js.map → index-c29a819f.js.map} +1 -1
- package/{index-99933718.js → index-c55389dc.js} +2 -2
- package/{index-99933718.js.map → index-c55389dc.js.map} +1 -1
- package/{index-c4e31ae9.js → index-d311c62b.js} +7 -7
- package/{index-c4e31ae9.js.map → index-d311c62b.js.map} +1 -1
- package/{index-7d65494a.js → index-e3412d57.js} +4 -4
- package/{index-7d65494a.js.map → index-e3412d57.js.map} +1 -1
- package/{index-10a05022.js → index-f338f866.js} +1 -1
- package/{index-10a05022.js.map → index-f338f866.js.map} +1 -1
- package/index.d.ts +1 -1
- package/index.js +45 -45
- package/package.json +1 -1
- package/sendbirdSelectors.js +2 -2
- package/{stringSet-a513039b.js → stringSet-fd70cba0.js} +1 -1
- package/{stringSet-a513039b.js.map → stringSet-fd70cba0.js.map} +1 -1
- package/{topics-a581acbb.js → topics-c4837013.js} +1 -1
- package/{topics-a581acbb.js.map → topics-c4837013.js.map} +1 -1
- package/{tslib.es6-e1c2b6be.js → tslib.es6-645dedf8.js} +1 -1
- package/{tslib.es6-e1c2b6be.js.map → tslib.es6-645dedf8.js.map} +1 -1
- package/{types-5cc94910.js → types-87c77099.js} +1 -1
- package/{types-5cc94910.js.map → types-87c77099.js.map} +1 -1
- 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/Button.js +3 -3
- package/ui/ChannelAvatar.js +3 -3
- package/ui/ConnectionStatus.js +4 -4
- package/ui/ContextMenu.js +5 -5
- 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/ImageRenderer.js +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 +11 -11
- package/ui/MentionUserLabel.js +4 -2
- package/ui/MentionUserLabel.js.map +1 -1
- package/ui/MessageContent.js +23 -23
- package/ui/MessageInput.js +40 -21
- package/ui/MessageInput.js.map +1 -1
- package/ui/MessageItemMenu.js +8 -8
- package/ui/MessageItemReactionMenu.js +5 -5
- package/ui/MessageSearchFileItem.js +10 -10
- package/ui/MessageSearchItem.js +9 -9
- package/ui/MessageStatus.js +10 -10
- package/ui/Modal.js +7 -7
- package/ui/OGMessageItemBody.js +11 -11
- package/ui/OpenChannelAdminMessage.js +3 -3
- package/ui/OpenChannelAvatar.js +6 -6
- package/ui/OpenchannelConversationHeader.js +6 -6
- package/ui/OpenchannelFileMessage.js +16 -16
- package/ui/OpenchannelOGMessage.js +16 -16
- package/ui/OpenchannelThumbnailMessage.js +15 -15
- package/ui/OpenchannelUserMessage.js +16 -16
- package/ui/PlaceHolder.js +6 -6
- package/ui/PlaybackTime.js +2 -2
- package/ui/QuoteMessage.js +6 -6
- package/ui/QuoteMessageInput.js +6 -6
- package/ui/ReactionBadge.js +3 -3
- package/ui/ReactionButton.js +1 -1
- package/ui/SortByRow.js +2 -2
- package/ui/TextButton.js +2 -2
- package/ui/TextMessageItemBody.js +11 -11
- package/ui/ThreadReplies.js +6 -6
- package/ui/ThumbnailMessageItemBody.js +2 -2
- package/ui/Tooltip.js +3 -3
- package/ui/TooltipWrapper.js +1 -1
- package/ui/UnknownMessageItemBody.js +6 -6
- package/ui/UserListItem.js +11 -11
- package/ui/UserProfile.js +10 -10
- package/ui/VoiceMessageItemBody.js +5 -5
- package/ui/VoiceMessgeInput.js +8 -8
- package/ui/Word.js +11 -11
- package/{useLongPress-d942e028.js → useLongPress-81323308.js} +3 -3
- package/{useLongPress-d942e028.js.map → useLongPress-81323308.js.map} +1 -1
- package/useSendbirdStateContext.js +1 -1
- package/utils/message/isVoiceMessage.js +2 -2
- package/{utils-c9f12033.js → utils-1c138ae4.js} +1 -1
- package/{utils-c9f12033.js.map → utils-1c138ae4.js.map} +1 -1
- package/{utils-b439eac3.js → utils-780c1e12.js} +1 -1
- package/{utils-b439eac3.js.map → utils-780c1e12.js.map} +1 -1
- package/{utils-b10ed497.js → utils-88f76aba.js} +2 -2
- package/{utils-b10ed497.js.map → utils-88f76aba.js.map} +1 -1
- package/{utils-5cc87999.js → utils-d17bcc15.js} +1 -1
- package/{utils-5cc87999.js.map → utils-d17bcc15.js.map} +1 -1
- package/{uuid-d072af26.js → uuid-e15650df.js} +1 -1
- package/{uuid-d072af26.js.map → uuid-e15650df.js.map} +1 -1
- package/withSendbird.js +1 -1
- package/_rollupPluginBabelHelpers-945410b2.js.map +0 -1
- package/cjs/_rollupPluginBabelHelpers-32557b21.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Message.js","sources":["../../../src/utils/useDidMountEffect.ts","../../../src/smart-components/Channel/components/Message/index.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nconst useDidMountEffect = (func: () => void, deps: Array<unknown>): void => {\n const [didMount, setDidmount] = useState(false);\n useEffect(() => {\n if (didMount) {\n func();\n } else {\n setDidmount(true);\n }\n }, deps);\n};\n\nexport default useDidMountEffect;\n","import React, {\n useRef,\n useMemo,\n useState,\n useEffect,\n useLayoutEffect,\n} from 'react';\nimport type { FileMessage } from '@sendbird/chat/message';\nimport format from 'date-fns/format';\n\nimport useDidMountEffect from '../../../../utils/useDidMountEffect';\nimport SuggestedMentionList from '../SuggestedMentionList';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport { getClassName } from '../../../../utils';\nimport { isDisabledBecauseFrozen, isDisabledBecauseMuted } from '../../context/utils';\nimport { MAX_USER_MENTION_COUNT, MAX_USER_SUGGESTION_COUNT } from '../../context/const';\n\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport MessageInput from '../../../../ui/MessageInput';\nimport MessageContent from '../../../../ui/MessageContent';\nimport FileViewer from '../FileViewer';\nimport RemoveMessageModal from '../RemoveMessageModal';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport { EveryMessage, RenderCustomSeparatorProps, RenderMessageProps } from '../../../../types';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\ntype MessageUIProps = {\n message: EveryMessage;\n hasSeparator?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n handleScroll: () => void;\n // for extending\n renderMessage?: (props: RenderMessageProps) => React.ReactElement;\n renderCustomSeparator?: (props: RenderCustomSeparatorProps) => React.ReactElement;\n renderEditInput?: () => React.ReactElement;\n renderMessageContent?: () => React.ReactElement;\n};\n\n// todo: Refactor this component, is too complex now\nconst Message = ({\n message,\n hasSeparator,\n chainTop,\n chainBottom,\n handleScroll,\n renderCustomSeparator,\n renderEditInput,\n renderMessage,\n renderMessageContent,\n}: MessageUIProps): React.ReactElement => {\n const { dateLocale } = useLocalization();\n const globalStore = useSendbirdStateContext();\n const {\n userId,\n isOnline,\n isMentionEnabled,\n userMention,\n } = globalStore?.config;\n const maxUserMentionCount = userMention?.maxMentionCount || MAX_USER_MENTION_COUNT;\n const maxUserSuggestionCount = userMention?.maxSuggestionCount || MAX_USER_SUGGESTION_COUNT;\n\n const {\n initialized,\n currentGroupChannel,\n highLightedMessageId,\n setHighLightedMessageId,\n animatedMessageId,\n setAnimatedMessageId,\n updateMessage,\n scrollToMessage,\n replyType,\n threadReplySelectType,\n isReactionEnabled,\n toggleReaction,\n emojiContainer,\n nicknamesMap,\n setQuoteMessage,\n resendMessage,\n renderUserMentionItem,\n onReplyInThread,\n onQuoteMessageClick,\n onMessageAnimated,\n onMessageHighlighted,\n } = useChannelContext();\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const [isAnimated, setIsAnimated] = useState(false);\n const [isHighlighted, setIsHighlighted] = useState(false);\n const [mentionNickname, setMentionNickname] = useState('');\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [ableMention, setAbleMention] = useState(true);\n const editMessageInputRef = useRef(null);\n const useMessageScrollRef = useRef(null);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isDisabledBecauseFrozen(currentGroupChannel)\n && !isDisabledBecauseMuted(currentGroupChannel);\n const disabled = !initialized\n || isDisabledBecauseFrozen(currentGroupChannel)\n || isDisabledBecauseMuted(currentGroupChannel)\n || !isOnline;\n\n useEffect(() => {\n if (mentionedUsers?.length >= maxUserMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n useDidMountEffect(() => {\n if (currentGroupChannel?.lastMessage?.messageId === message?.messageId) {\n handleScroll?.();\n }\n }, [showEdit, message?.reactions?.length]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageHighlightedTimeout = null;\n if (highLightedMessageId === message.messageId && useMessageScrollRef?.current) {\n useMessageScrollRef.current.scrollIntoView({ block: 'center', inline: 'center' });\n setIsAnimated(false);\n animationTimeout = setTimeout(() => {\n setIsHighlighted(true);\n }, 500);\n messageHighlightedTimeout = setTimeout(() => {\n setHighLightedMessageId(0);\n onMessageHighlighted?.();\n }, 1600);\n } else {\n setIsHighlighted(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageHighlightedTimeout);\n }\n }, [highLightedMessageId, useMessageScrollRef.current, message.messageId]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageAnimatedTimeout = null;\n if (animatedMessageId === message.messageId && useMessageScrollRef?.current) {\n useMessageScrollRef.current.scrollIntoView({ block: 'center', inline: 'center' });\n setIsHighlighted(false);\n animationTimeout = setTimeout(() => {\n setIsAnimated(true);\n }, 500);\n messageAnimatedTimeout = setTimeout(() => {\n setAnimatedMessageId(0);\n onMessageAnimated?.();\n }, 1600);\n } else {\n setIsAnimated(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageAnimatedTimeout);\n }\n }, [animatedMessageId, useMessageScrollRef.current, message.messageId, onMessageAnimated]);\n const renderedMessage = useMemo(() => {\n return renderMessage?.({\n message,\n chainTop,\n chainBottom,\n });\n }, [message, renderMessage]);\n const renderedCustomSeparator = useMemo(() => {\n if (renderCustomSeparator) {\n return renderCustomSeparator?.({ message: message });\n }\n return null;\n }, [message, renderCustomSeparator]);\n\n if (renderedMessage) {\n return (\n <div\n ref={useMessageScrollRef}\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n >\n {/* date-separator */}\n {\n // TODO: Add message instance as a function parameter\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {renderedMessage}\n </div>\n );\n }\n\n if (showEdit && message?.isUserMessage?.()) {\n return renderEditInput?.() || (\n <>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={maxUserMentionCount}\n maxSuggestionCount={maxUserSuggestionCount}\n />\n )\n }\n <MessageInput\n isEdit\n disabled={disabled}\n ref={editMessageInputRef}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n message={message}\n onStartTyping={() => {\n currentGroupChannel?.startTyping?.();\n }}\n onUpdateMessage={({ messageId, message, mentionTemplate }) => {\n updateMessage({\n messageId,\n message,\n mentionedUsers,\n mentionTemplate,\n });\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onCancelEdit={() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setMentionSuggestedUsers([])\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n </>\n );\n }\n\n return (\n <div\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n style={{ marginBottom: '2px' }}\n ref={useMessageScrollRef}\n >\n {/* date-separator */}\n {\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {/* Message */}\n {\n renderMessageContent?.() || (\n <MessageContent\n className=\"sendbird-message-hoc__message-content\"\n userId={userId}\n scrollToMessage={scrollToMessage}\n channel={currentGroupChannel}\n message={message}\n disabled={!isOnline}\n chainTop={chainTop}\n chainBottom={chainBottom}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n threadReplySelectType={threadReplySelectType}\n nicknamesMap={nicknamesMap}\n emojiContainer={emojiContainer}\n showEdit={setShowEdit}\n showRemove={setShowRemove}\n showFileViewer={setShowFileViewer}\n resendMessage={resendMessage}\n toggleReaction={toggleReaction}\n setQuoteMessage={setQuoteMessage}\n onReplyInThread={onReplyInThread}\n onQuoteMessageClick={onQuoteMessageClick}\n />\n )\n }\n {/* Modal */}\n {\n showRemove && (\n <RemoveMessageModal\n message={message}\n onCancel={() => setShowRemove(false)}\n />\n )\n }\n {\n showFileViewer && (\n <FileViewer\n message={message as FileMessage}\n onCancel={() => setShowFileViewer(false)}\n />\n )\n }\n </div>\n );\n};\n\nexport default Message;\n"],"names":["useDidMountEffect","func","deps","_a","useState","didMount","setDidmount","useEffect","Message","message","hasSeparator","chainTop","chainBottom","handleScroll","renderCustomSeparator","renderEditInput","renderMessage","renderMessageContent","dateLocale","useLocalization","globalStore","useSendbirdStateContext","_d","config","userId","isOnline","isMentionEnabled","userMention","maxUserMentionCount","maxMentionCount","MAX_USER_MENTION_COUNT","maxUserSuggestionCount","maxSuggestionCount","MAX_USER_SUGGESTION_COUNT","_e","useChannelContext","initialized","currentGroupChannel","highLightedMessageId","setHighLightedMessageId","animatedMessageId","setAnimatedMessageId","updateMessage","scrollToMessage","replyType","threadReplySelectType","isReactionEnabled","toggleReaction","emojiContainer","nicknamesMap","setQuoteMessage","resendMessage","renderUserMentionItem","onReplyInThread","onQuoteMessageClick","onMessageAnimated","onMessageHighlighted","_f","showEdit","setShowEdit","_g","showRemove","setShowRemove","_h","showFileViewer","setShowFileViewer","_j","isAnimated","setIsAnimated","_k","isHighlighted","setIsHighlighted","_l","mentionNickname","setMentionNickname","_m","mentionedUsers","setMentionedUsers","_o","mentionedUserIds","setMentionedUserIds","_p","messageInputEvent","setMessageInputEvent","_q","selectedUser","setSelectedUser","_r","mentionSuggestedUsers","setMentionSuggestedUsers","_s","ableMention","setAbleMention","editMessageInputRef","useRef","useMessageScrollRef","displaySuggestedMentionList","length","isDisabledBecauseFrozen","isDisabledBecauseMuted","disabled","filter","i","indexOf","splice","lastMessage","messageId","_b","reactions","useLayoutEffect","animationTimeout","messageHighlightedTimeout","current","scrollIntoView","block","inline","setTimeout","clearTimeout","messageAnimatedTimeout","renderedMessage","useMemo","renderedCustomSeparator","React","getClassName","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","format","createdAt","locale","_c","isUserMessage","call","user","__spreadArray","users","startTyping","mentionTemplate","endTyping","mentionText","userIds","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","marginBottom","RemoveMessageModal"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Message.js","sources":["../../../src/utils/useDidMountEffect.ts","../../../src/smart-components/Channel/components/Message/index.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nconst useDidMountEffect = (func: () => void, deps: Array<unknown>): void => {\n const [didMount, setDidmount] = useState(false);\n useEffect(() => {\n if (didMount) {\n func();\n } else {\n setDidmount(true);\n }\n }, deps);\n};\n\nexport default useDidMountEffect;\n","import React, {\n useRef,\n useMemo,\n useState,\n useEffect,\n useLayoutEffect,\n} from 'react';\nimport type { FileMessage } from '@sendbird/chat/message';\nimport format from 'date-fns/format';\n\nimport useDidMountEffect from '../../../../utils/useDidMountEffect';\nimport SuggestedMentionList from '../SuggestedMentionList';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport { getClassName } from '../../../../utils';\nimport { isDisabledBecauseFrozen, isDisabledBecauseMuted } from '../../context/utils';\nimport { MAX_USER_MENTION_COUNT, MAX_USER_SUGGESTION_COUNT } from '../../context/const';\n\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport MessageInput from '../../../../ui/MessageInput';\nimport MessageContent from '../../../../ui/MessageContent';\nimport FileViewer from '../FileViewer';\nimport RemoveMessageModal from '../RemoveMessageModal';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport { EveryMessage, RenderCustomSeparatorProps, RenderMessageProps } from '../../../../types';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\ntype MessageUIProps = {\n message: EveryMessage;\n hasSeparator?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n handleScroll: () => void;\n // for extending\n renderMessage?: (props: RenderMessageProps) => React.ReactElement;\n renderCustomSeparator?: (props: RenderCustomSeparatorProps) => React.ReactElement;\n renderEditInput?: () => React.ReactElement;\n renderMessageContent?: () => React.ReactElement;\n};\n\n// todo: Refactor this component, is too complex now\nconst Message = ({\n message,\n hasSeparator,\n chainTop,\n chainBottom,\n handleScroll,\n renderCustomSeparator,\n renderEditInput,\n renderMessage,\n renderMessageContent,\n}: MessageUIProps): React.ReactElement => {\n const { dateLocale } = useLocalization();\n const globalStore = useSendbirdStateContext();\n const {\n userId,\n isOnline,\n isMentionEnabled,\n userMention,\n } = globalStore?.config;\n const maxUserMentionCount = userMention?.maxMentionCount || MAX_USER_MENTION_COUNT;\n const maxUserSuggestionCount = userMention?.maxSuggestionCount || MAX_USER_SUGGESTION_COUNT;\n\n const {\n initialized,\n currentGroupChannel,\n highLightedMessageId,\n setHighLightedMessageId,\n animatedMessageId,\n setAnimatedMessageId,\n updateMessage,\n scrollToMessage,\n replyType,\n threadReplySelectType,\n isReactionEnabled,\n toggleReaction,\n emojiContainer,\n nicknamesMap,\n setQuoteMessage,\n resendMessage,\n renderUserMentionItem,\n onReplyInThread,\n onQuoteMessageClick,\n onMessageAnimated,\n onMessageHighlighted,\n } = useChannelContext();\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const [isAnimated, setIsAnimated] = useState(false);\n const [isHighlighted, setIsHighlighted] = useState(false);\n const [mentionNickname, setMentionNickname] = useState('');\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [ableMention, setAbleMention] = useState(true);\n const editMessageInputRef = useRef(null);\n const useMessageScrollRef = useRef(null);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isDisabledBecauseFrozen(currentGroupChannel)\n && !isDisabledBecauseMuted(currentGroupChannel);\n const disabled = !initialized\n || isDisabledBecauseFrozen(currentGroupChannel)\n || isDisabledBecauseMuted(currentGroupChannel)\n || !isOnline;\n\n useEffect(() => {\n if (mentionedUsers?.length >= maxUserMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n useDidMountEffect(() => {\n if (currentGroupChannel?.lastMessage?.messageId === message?.messageId) {\n handleScroll?.();\n }\n }, [showEdit, message?.reactions?.length]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageHighlightedTimeout = null;\n if (highLightedMessageId === message.messageId && useMessageScrollRef?.current) {\n useMessageScrollRef.current.scrollIntoView({ block: 'center', inline: 'center' });\n setIsAnimated(false);\n animationTimeout = setTimeout(() => {\n setIsHighlighted(true);\n }, 500);\n messageHighlightedTimeout = setTimeout(() => {\n setHighLightedMessageId(0);\n onMessageHighlighted?.();\n }, 1600);\n } else {\n setIsHighlighted(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageHighlightedTimeout);\n }\n }, [highLightedMessageId, useMessageScrollRef.current, message.messageId]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageAnimatedTimeout = null;\n if (animatedMessageId === message.messageId && useMessageScrollRef?.current) {\n useMessageScrollRef.current.scrollIntoView({ block: 'center', inline: 'center' });\n setIsHighlighted(false);\n animationTimeout = setTimeout(() => {\n setIsAnimated(true);\n }, 500);\n messageAnimatedTimeout = setTimeout(() => {\n setAnimatedMessageId(0);\n onMessageAnimated?.();\n }, 1600);\n } else {\n setIsAnimated(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageAnimatedTimeout);\n }\n }, [animatedMessageId, useMessageScrollRef.current, message.messageId, onMessageAnimated]);\n const renderedMessage = useMemo(() => {\n return renderMessage?.({\n message,\n chainTop,\n chainBottom,\n });\n }, [message, renderMessage]);\n const renderedCustomSeparator = useMemo(() => {\n if (renderCustomSeparator) {\n return renderCustomSeparator?.({ message: message });\n }\n return null;\n }, [message, renderCustomSeparator]);\n\n if (renderedMessage) {\n return (\n <div\n ref={useMessageScrollRef}\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n >\n {/* date-separator */}\n {\n // TODO: Add message instance as a function parameter\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {renderedMessage}\n </div>\n );\n }\n\n if (showEdit && message?.isUserMessage?.()) {\n return renderEditInput?.() || (\n <>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={maxUserMentionCount}\n maxSuggestionCount={maxUserSuggestionCount}\n />\n )\n }\n <MessageInput\n isEdit\n disabled={disabled}\n ref={editMessageInputRef}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n message={message}\n onStartTyping={() => {\n currentGroupChannel?.startTyping?.();\n }}\n onUpdateMessage={({ messageId, message, mentionTemplate }) => {\n updateMessage({\n messageId,\n message,\n mentionedUsers,\n mentionTemplate,\n });\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onCancelEdit={() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setMentionSuggestedUsers([])\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n </>\n );\n }\n\n return (\n <div\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n style={{ marginBottom: '2px' }}\n ref={useMessageScrollRef}\n >\n {/* date-separator */}\n {\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {/* Message */}\n {\n renderMessageContent?.() || (\n <MessageContent\n className=\"sendbird-message-hoc__message-content\"\n userId={userId}\n scrollToMessage={scrollToMessage}\n channel={currentGroupChannel}\n message={message}\n disabled={!isOnline}\n chainTop={chainTop}\n chainBottom={chainBottom}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n threadReplySelectType={threadReplySelectType}\n nicknamesMap={nicknamesMap}\n emojiContainer={emojiContainer}\n showEdit={setShowEdit}\n showRemove={setShowRemove}\n showFileViewer={setShowFileViewer}\n resendMessage={resendMessage}\n toggleReaction={toggleReaction}\n setQuoteMessage={setQuoteMessage}\n onReplyInThread={onReplyInThread}\n onQuoteMessageClick={onQuoteMessageClick}\n />\n )\n }\n {/* Modal */}\n {\n showRemove && (\n <RemoveMessageModal\n message={message}\n onCancel={() => setShowRemove(false)}\n />\n )\n }\n {\n showFileViewer && (\n <FileViewer\n message={message as FileMessage}\n onCancel={() => setShowFileViewer(false)}\n />\n )\n }\n </div>\n );\n};\n\nexport default Message;\n"],"names":["useDidMountEffect","func","deps","_a","useState","didMount","setDidmount","useEffect","Message","message","hasSeparator","chainTop","chainBottom","handleScroll","renderCustomSeparator","renderEditInput","renderMessage","renderMessageContent","dateLocale","useLocalization","globalStore","useSendbirdStateContext","_d","config","userId","isOnline","isMentionEnabled","userMention","maxUserMentionCount","maxMentionCount","MAX_USER_MENTION_COUNT","maxUserSuggestionCount","maxSuggestionCount","MAX_USER_SUGGESTION_COUNT","_e","useChannelContext","initialized","currentGroupChannel","highLightedMessageId","setHighLightedMessageId","animatedMessageId","setAnimatedMessageId","updateMessage","scrollToMessage","replyType","threadReplySelectType","isReactionEnabled","toggleReaction","emojiContainer","nicknamesMap","setQuoteMessage","resendMessage","renderUserMentionItem","onReplyInThread","onQuoteMessageClick","onMessageAnimated","onMessageHighlighted","_f","showEdit","setShowEdit","_g","showRemove","setShowRemove","_h","showFileViewer","setShowFileViewer","_j","isAnimated","setIsAnimated","_k","isHighlighted","setIsHighlighted","_l","mentionNickname","setMentionNickname","_m","mentionedUsers","setMentionedUsers","_o","mentionedUserIds","setMentionedUserIds","_p","messageInputEvent","setMessageInputEvent","_q","selectedUser","setSelectedUser","_r","mentionSuggestedUsers","setMentionSuggestedUsers","_s","ableMention","setAbleMention","editMessageInputRef","useRef","useMessageScrollRef","displaySuggestedMentionList","length","isDisabledBecauseFrozen","isDisabledBecauseMuted","disabled","filter","i","indexOf","splice","lastMessage","messageId","_b","reactions","useLayoutEffect","animationTimeout","messageHighlightedTimeout","current","scrollIntoView","block","inline","setTimeout","clearTimeout","messageAnimatedTimeout","renderedMessage","useMemo","renderedCustomSeparator","React","getClassName","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","format","createdAt","locale","_c","isUserMessage","call","user","__spreadArray","users","startTyping","mentionTemplate","endTyping","mentionText","userIds","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","marginBottom","RemoveMessageModal"],"mappings":"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"}
|
|
@@ -1,58 +1,57 @@
|
|
|
1
|
-
import { a as __spreadArray } from '../../tslib.es6-
|
|
1
|
+
import { a as __spreadArray } from '../../tslib.es6-645dedf8.js';
|
|
2
2
|
import React__default, { useContext, useState, useEffect } from 'react';
|
|
3
|
-
import { u as useChannelContext, a as isDisabledBecauseFrozen, b as isDisabledBecauseMuted, d as isOperator } from '../../ChannelProvider-
|
|
3
|
+
import { u as useChannelContext, a as isDisabledBecauseFrozen, b as isDisabledBecauseMuted, d as isOperator } from '../../ChannelProvider-e2c86cba.js';
|
|
4
4
|
import MessageInput from '../../ui/MessageInput.js';
|
|
5
5
|
import QuoteMessageInput from '../../ui/QuoteMessageInput.js';
|
|
6
|
-
import { a as LocalizationContext } from '../../LocalizationContext-
|
|
6
|
+
import { a as LocalizationContext } from '../../LocalizationContext-187f787e.js';
|
|
7
7
|
import useSendbirdStateContext from '../../useSendbirdStateContext.js';
|
|
8
8
|
import SuggestedMentionList from './SuggestedMentionList.js';
|
|
9
|
-
import { M as MessageInputKeys } from '../../const-
|
|
10
|
-
import { V as VoiceMessageInputWrapper } from '../../VoiceMessageInputWrapper-
|
|
11
|
-
import '../../UserProfileContext-
|
|
9
|
+
import { M as MessageInputKeys } from '../../const-693a408f.js';
|
|
10
|
+
import { V as VoiceMessageInputWrapper } from '../../VoiceMessageInputWrapper-2434abc5.js';
|
|
11
|
+
import '../../UserProfileContext-d2264917.js';
|
|
12
12
|
import 'prop-types';
|
|
13
|
-
import '../../index-
|
|
14
|
-
import '../../index-
|
|
15
|
-
import '../../topics-
|
|
16
|
-
import '../../index-
|
|
13
|
+
import '../../index-c55389dc.js';
|
|
14
|
+
import '../../index-5b34a381.js';
|
|
15
|
+
import '../../topics-c4837013.js';
|
|
16
|
+
import '../../index-102fbe62.js';
|
|
17
17
|
import '../../utils/message/getOutgoingMessageState.js';
|
|
18
|
-
import '../../_rollupPluginBabelHelpers-
|
|
19
|
-
import '../../compareIds-
|
|
20
|
-
import '../../const-
|
|
18
|
+
import '../../_rollupPluginBabelHelpers-dfc61977.js';
|
|
19
|
+
import '../../compareIds-86584ff3.js';
|
|
20
|
+
import '../../const-26fafb08.js';
|
|
21
21
|
import '@sendbird/chat/groupChannel';
|
|
22
|
-
import '../../uuid-
|
|
22
|
+
import '../../uuid-e15650df.js';
|
|
23
23
|
import '@sendbird/chat/message';
|
|
24
24
|
import '../../ui/ContextMenu.js';
|
|
25
25
|
import 'react-dom';
|
|
26
26
|
import '../../ui/SortByRow.js';
|
|
27
|
-
import '../../index-
|
|
28
|
-
import '../../stringSet-
|
|
27
|
+
import '../../index-46d8dde5.js';
|
|
28
|
+
import '../../stringSet-fd70cba0.js';
|
|
29
29
|
import '../../ui/ReactionButton.js';
|
|
30
30
|
import '../../ui/ImageRenderer.js';
|
|
31
31
|
import '../../ui/Icon.js';
|
|
32
|
-
import '../../consts-
|
|
33
|
-
import 'react-dom/server';
|
|
32
|
+
import '../../consts-37ea645a.js';
|
|
34
33
|
import '../../ui/IconButton.js';
|
|
35
34
|
import '../../ui/Button.js';
|
|
36
|
-
import '../../ui/MentionUserLabel.js';
|
|
37
35
|
import 'dompurify';
|
|
36
|
+
import '../../consts-b2395440.js';
|
|
38
37
|
import '../../withSendbird.js';
|
|
39
38
|
import '../../ui/Avatar.js';
|
|
40
|
-
import '../../ThreadProvider-
|
|
39
|
+
import '../../ThreadProvider-8d535c1b.js';
|
|
41
40
|
import '../../Thread/context/types.js';
|
|
42
41
|
import '@sendbird/chat';
|
|
43
42
|
import '../../VoicePlayer/useVoicePlayer.js';
|
|
44
|
-
import '../../index-
|
|
43
|
+
import '../../index-c29a819f.js';
|
|
45
44
|
import '../../VoiceRecorder/context.js';
|
|
46
45
|
import '../../lame.all.js';
|
|
47
46
|
import '../../VoiceRecorder/useVoiceRecorder.js';
|
|
48
|
-
import '../../index-
|
|
47
|
+
import '../../index-30721345.js';
|
|
49
48
|
import '../../ui/PlaybackTime.js';
|
|
50
49
|
import '../../ui/ProgressBar.js';
|
|
51
50
|
import '../../ui/TextButton.js';
|
|
52
|
-
import '../../color-
|
|
51
|
+
import '../../color-b379fbc5.js';
|
|
53
52
|
import '../../ui/Modal.js';
|
|
54
|
-
import '../../index-
|
|
55
|
-
import '../../MediaQueryContext-
|
|
53
|
+
import '../../index-f338f866.js';
|
|
54
|
+
import '../../MediaQueryContext-add671c4.js';
|
|
56
55
|
|
|
57
56
|
var MessageInputWrapper = function (props, ref) {
|
|
58
57
|
var value = props.value,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageInput.js","sources":["../../../src/smart-components/Channel/components/MessageInput/index.tsx"],"sourcesContent":["import React, { useState, useContext, useEffect } from 'react';\n\nimport './message-input.scss';\nimport * as utils from '../../context/utils';\n\nimport MessageInput from '../../../../ui/MessageInput';\nimport QuoteMessageInput from '../../../../ui/QuoteMessageInput';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport SuggestedMentionList from '../SuggestedMentionList';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport VoiceMessageInputWrapper from './VoiceMessageInputWrapper';\n\nexport type MessageInputWrapperProps = {\n value?: string;\n renderFileUploadIcon?: () => React.ReactElement;\n renderVoiceMessageIcon?: () => React.ReactElement;\n renderSendMessageIcon?: () => React.ReactElement;\n};\n\nconst MessageInputWrapper = (\n props: MessageInputWrapperProps,\n ref: React.MutableRefObject<any>,\n): JSX.Element => {\n const {\n value,\n renderFileUploadIcon,\n renderVoiceMessageIcon,\n renderSendMessageIcon,\n } = props;\n const {\n currentGroupChannel,\n initialized,\n quoteMessage,\n sendMessage,\n sendFileMessage,\n sendVoiceMessage,\n setQuoteMessage,\n messageInputRef,\n renderUserMentionItem,\n } = useChannelContext();\n const globalStore = useSendbirdStateContext();\n const channel = currentGroupChannel;\n\n const {\n isOnline,\n isMentionEnabled,\n userMention,\n isVoiceMessageEnabled,\n } = globalStore?.config;\n const maxUserMentionCount = userMention?.maxMentionCount || 10;\n const maxUserSuggestionCount = userMention?.maxSuggestionCount || 15;\n\n const { stringSet } = useContext(LocalizationContext);\n const [mentionNickname, setMentionNickname] = useState('');\n // todo: set type\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [ableMention, setAbleMention] = useState(true);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [showVoiceMessageInput, setShowVoiceMessageInput] = useState(false);\n const disabled = !initialized\n || utils.isDisabledBecauseFrozen(channel)\n || utils.isDisabledBecauseMuted(channel)\n || !isOnline;\n const isOperator = utils.isOperator(channel);\n const isBroadcast = channel?.isBroadcast;\n\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !utils.isDisabledBecauseFrozen(channel)\n && !utils.isDisabledBecauseMuted(channel);\n\n // Reset when channel changes\n useEffect(() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setSelectedUser(null);\n setMentionSuggestedUsers([]);\n setAbleMention(true);\n setMessageInputEvent(null);\n setShowVoiceMessageInput(false);\n }, [channel?.url]);\n\n useEffect(() => {\n if (mentionedUsers?.length >= maxUserMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n // broadcast channel + not operator\n if (isBroadcast && !isOperator) {\n return null;\n }\n // other conditions\n return (\n <div className={`sendbird-message-input-wrapper${showVoiceMessageInput ? '--voice-message' : ''}`}>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={maxUserMentionCount}\n maxSuggestionCount={maxUserSuggestionCount}\n />\n )\n }\n {quoteMessage && (\n <div className=\"sendbird-message-input-wrapper__quote-message-input\">\n <QuoteMessageInput\n replyingMessage={quoteMessage}\n onClose={() => setQuoteMessage(null)}\n />\n </div>\n )}\n {\n showVoiceMessageInput\n ? (\n <VoiceMessageInputWrapper\n channel={channel}\n onSubmitClick={(recordedFile, duration) => {\n sendVoiceMessage(recordedFile, duration, quoteMessage);\n setQuoteMessage(null);\n setShowVoiceMessageInput(false);\n }}\n onCancelClick={() => {\n setShowVoiceMessageInput(false);\n }}\n />\n )\n : (\n <MessageInput\n className=\"sendbird-message-input-wrapper__message-input\"\n value={value}\n channelUrl={channel?.url}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n isVoiceMessageEnabled={isVoiceMessageEnabled}\n onVoiceMessageIconClick={() => {\n setShowVoiceMessageInput(true);\n }}\n setMentionedUsers={setMentionedUsers}\n channel={channel}\n placeholder={\n (quoteMessage && stringSet.MESSAGE_INPUT__QUOTE_REPLY__PLACE_HOLDER)\n || (utils.isDisabledBecauseFrozen(channel) && stringSet.MESSAGE_INPUT__PLACE_HOLDER__DISABLED)\n || (utils.isDisabledBecauseMuted(channel) && stringSet.MESSAGE_INPUT__PLACE_HOLDER__MUTED)\n }\n ref={ref || messageInputRef}\n disabled={disabled}\n renderFileUploadIcon={renderFileUploadIcon}\n renderSendMessageIcon={renderSendMessageIcon}\n renderVoiceMessageIcon={renderVoiceMessageIcon}\n onStartTyping={() => {\n channel?.startTyping();\n }}\n onSendMessage={({ message, mentionTemplate }) => {\n sendMessage({\n message,\n quoteMessage,\n mentionedUsers,\n mentionTemplate,\n });\n setMentionNickname('');\n setMentionedUsers([]);\n setQuoteMessage(null);\n channel?.endTyping?.();\n }}\n onFileUpload={(file) => {\n sendFileMessage(file, quoteMessage);\n setQuoteMessage(null);\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n )\n }\n </div>\n );\n};\n\nexport default React.forwardRef(MessageInputWrapper);\n"],"names":["MessageInputWrapper","props","ref","value","renderFileUploadIcon","renderVoiceMessageIcon","renderSendMessageIcon","_a","useChannelContext","currentGroupChannel","initialized","quoteMessage","sendMessage","sendFileMessage","sendVoiceMessage","setQuoteMessage","messageInputRef","renderUserMentionItem","globalStore","useSendbirdStateContext","channel","_b","config","isOnline","isMentionEnabled","userMention","isVoiceMessageEnabled","maxUserMentionCount","maxMentionCount","maxUserSuggestionCount","maxSuggestionCount","stringSet","useContext","LocalizationContext","_c","useState","mentionNickname","setMentionNickname","_d","mentionedUsers","setMentionedUsers","_e","mentionedUserIds","setMentionedUserIds","_f","selectedUser","setSelectedUser","_g","mentionSuggestedUsers","setMentionSuggestedUsers","_h","ableMention","setAbleMention","_j","messageInputEvent","setMessageInputEvent","_k","showVoiceMessageInput","setShowVoiceMessageInput","disabled","utils","isOperator","isBroadcast","displaySuggestedMentionList","length","useEffect","url","filter","userId","i","indexOf","splice","React","concat","user","__spreadArray","users","recordedFile","duration","MESSAGE_INPUT__QUOTE_REPLY__PLACE_HOLDER","MESSAGE_INPUT__PLACE_HOLDER__DISABLED","MESSAGE_INPUT__PLACE_HOLDER__MUTED","startTyping","message","mentionTemplate","endTyping","file","mentionText","userIds","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","forwardRef"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MessageInput.js","sources":["../../../src/smart-components/Channel/components/MessageInput/index.tsx"],"sourcesContent":["import React, { useState, useContext, useEffect } from 'react';\n\nimport './message-input.scss';\nimport * as utils from '../../context/utils';\n\nimport MessageInput from '../../../../ui/MessageInput';\nimport QuoteMessageInput from '../../../../ui/QuoteMessageInput';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport SuggestedMentionList from '../SuggestedMentionList';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport VoiceMessageInputWrapper from './VoiceMessageInputWrapper';\n\nexport type MessageInputWrapperProps = {\n value?: string;\n renderFileUploadIcon?: () => React.ReactElement;\n renderVoiceMessageIcon?: () => React.ReactElement;\n renderSendMessageIcon?: () => React.ReactElement;\n};\n\nconst MessageInputWrapper = (\n props: MessageInputWrapperProps,\n ref: React.MutableRefObject<any>,\n): JSX.Element => {\n const {\n value,\n renderFileUploadIcon,\n renderVoiceMessageIcon,\n renderSendMessageIcon,\n } = props;\n const {\n currentGroupChannel,\n initialized,\n quoteMessage,\n sendMessage,\n sendFileMessage,\n sendVoiceMessage,\n setQuoteMessage,\n messageInputRef,\n renderUserMentionItem,\n } = useChannelContext();\n const globalStore = useSendbirdStateContext();\n const channel = currentGroupChannel;\n\n const {\n isOnline,\n isMentionEnabled,\n userMention,\n isVoiceMessageEnabled,\n } = globalStore?.config;\n const maxUserMentionCount = userMention?.maxMentionCount || 10;\n const maxUserSuggestionCount = userMention?.maxSuggestionCount || 15;\n\n const { stringSet } = useContext(LocalizationContext);\n const [mentionNickname, setMentionNickname] = useState('');\n // todo: set type\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [ableMention, setAbleMention] = useState(true);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [showVoiceMessageInput, setShowVoiceMessageInput] = useState(false);\n const disabled = !initialized\n || utils.isDisabledBecauseFrozen(channel)\n || utils.isDisabledBecauseMuted(channel)\n || !isOnline;\n const isOperator = utils.isOperator(channel);\n const isBroadcast = channel?.isBroadcast;\n\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !utils.isDisabledBecauseFrozen(channel)\n && !utils.isDisabledBecauseMuted(channel);\n\n // Reset when channel changes\n useEffect(() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setSelectedUser(null);\n setMentionSuggestedUsers([]);\n setAbleMention(true);\n setMessageInputEvent(null);\n setShowVoiceMessageInput(false);\n }, [channel?.url]);\n\n useEffect(() => {\n if (mentionedUsers?.length >= maxUserMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n // broadcast channel + not operator\n if (isBroadcast && !isOperator) {\n return null;\n }\n // other conditions\n return (\n <div className={`sendbird-message-input-wrapper${showVoiceMessageInput ? '--voice-message' : ''}`}>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={maxUserMentionCount}\n maxSuggestionCount={maxUserSuggestionCount}\n />\n )\n }\n {quoteMessage && (\n <div className=\"sendbird-message-input-wrapper__quote-message-input\">\n <QuoteMessageInput\n replyingMessage={quoteMessage}\n onClose={() => setQuoteMessage(null)}\n />\n </div>\n )}\n {\n showVoiceMessageInput\n ? (\n <VoiceMessageInputWrapper\n channel={channel}\n onSubmitClick={(recordedFile, duration) => {\n sendVoiceMessage(recordedFile, duration, quoteMessage);\n setQuoteMessage(null);\n setShowVoiceMessageInput(false);\n }}\n onCancelClick={() => {\n setShowVoiceMessageInput(false);\n }}\n />\n )\n : (\n <MessageInput\n className=\"sendbird-message-input-wrapper__message-input\"\n value={value}\n channelUrl={channel?.url}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n isVoiceMessageEnabled={isVoiceMessageEnabled}\n onVoiceMessageIconClick={() => {\n setShowVoiceMessageInput(true);\n }}\n setMentionedUsers={setMentionedUsers}\n channel={channel}\n placeholder={\n (quoteMessage && stringSet.MESSAGE_INPUT__QUOTE_REPLY__PLACE_HOLDER)\n || (utils.isDisabledBecauseFrozen(channel) && stringSet.MESSAGE_INPUT__PLACE_HOLDER__DISABLED)\n || (utils.isDisabledBecauseMuted(channel) && stringSet.MESSAGE_INPUT__PLACE_HOLDER__MUTED)\n }\n ref={ref || messageInputRef}\n disabled={disabled}\n renderFileUploadIcon={renderFileUploadIcon}\n renderSendMessageIcon={renderSendMessageIcon}\n renderVoiceMessageIcon={renderVoiceMessageIcon}\n onStartTyping={() => {\n channel?.startTyping();\n }}\n onSendMessage={({ message, mentionTemplate }) => {\n sendMessage({\n message,\n quoteMessage,\n mentionedUsers,\n mentionTemplate,\n });\n setMentionNickname('');\n setMentionedUsers([]);\n setQuoteMessage(null);\n channel?.endTyping?.();\n }}\n onFileUpload={(file) => {\n sendFileMessage(file, quoteMessage);\n setQuoteMessage(null);\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n )\n }\n </div>\n );\n};\n\nexport default React.forwardRef(MessageInputWrapper);\n"],"names":["MessageInputWrapper","props","ref","value","renderFileUploadIcon","renderVoiceMessageIcon","renderSendMessageIcon","_a","useChannelContext","currentGroupChannel","initialized","quoteMessage","sendMessage","sendFileMessage","sendVoiceMessage","setQuoteMessage","messageInputRef","renderUserMentionItem","globalStore","useSendbirdStateContext","channel","_b","config","isOnline","isMentionEnabled","userMention","isVoiceMessageEnabled","maxUserMentionCount","maxMentionCount","maxUserSuggestionCount","maxSuggestionCount","stringSet","useContext","LocalizationContext","_c","useState","mentionNickname","setMentionNickname","_d","mentionedUsers","setMentionedUsers","_e","mentionedUserIds","setMentionedUserIds","_f","selectedUser","setSelectedUser","_g","mentionSuggestedUsers","setMentionSuggestedUsers","_h","ableMention","setAbleMention","_j","messageInputEvent","setMessageInputEvent","_k","showVoiceMessageInput","setShowVoiceMessageInput","disabled","utils","isOperator","isBroadcast","displaySuggestedMentionList","length","useEffect","url","filter","userId","i","indexOf","splice","React","concat","user","__spreadArray","users","recordedFile","duration","MESSAGE_INPUT__QUOTE_REPLY__PLACE_HOLDER","MESSAGE_INPUT__PLACE_HOLDER__DISABLED","MESSAGE_INPUT__PLACE_HOLDER__MUTED","startTyping","message","mentionTemplate","endTyping","file","mentionText","userIds","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","forwardRef"],"mappings":"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"}
|
|
@@ -1,59 +1,58 @@
|
|
|
1
1
|
import React__default, { useState } from 'react';
|
|
2
|
-
import { c as compareMessagesForGrouping, u as useChannelContext, i as isAboutSame } from '../../ChannelProvider-
|
|
3
|
-
import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-
|
|
2
|
+
import { c as compareMessagesForGrouping, u as useChannelContext, i as isAboutSame } from '../../ChannelProvider-e2c86cba.js';
|
|
3
|
+
import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-e3412d57.js';
|
|
4
4
|
import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
|
|
5
5
|
import Message from './Message.js';
|
|
6
|
-
import { i as isSameDay } from '../../index-
|
|
6
|
+
import { i as isSameDay } from '../../index-30236e16.js';
|
|
7
7
|
import UnreadCount from './UnreadCount.js';
|
|
8
8
|
import FrozenNotification from './FrozenNotification.js';
|
|
9
|
-
import { M as MESSAGE_SCROLL_BUFFER } from '../../const-
|
|
10
|
-
import '../../UserProfileContext-
|
|
9
|
+
import { M as MESSAGE_SCROLL_BUFFER } from '../../const-26fafb08.js';
|
|
10
|
+
import '../../UserProfileContext-d2264917.js';
|
|
11
11
|
import 'prop-types';
|
|
12
12
|
import '../../useSendbirdStateContext.js';
|
|
13
13
|
import '../../withSendbird.js';
|
|
14
|
-
import '../../_rollupPluginBabelHelpers-
|
|
15
|
-
import '../../index-
|
|
16
|
-
import '../../index-
|
|
17
|
-
import '../../topics-
|
|
18
|
-
import '../../index-
|
|
19
|
-
import '../../tslib.es6-
|
|
14
|
+
import '../../_rollupPluginBabelHelpers-dfc61977.js';
|
|
15
|
+
import '../../index-c55389dc.js';
|
|
16
|
+
import '../../index-5b34a381.js';
|
|
17
|
+
import '../../topics-c4837013.js';
|
|
18
|
+
import '../../index-102fbe62.js';
|
|
19
|
+
import '../../tslib.es6-645dedf8.js';
|
|
20
20
|
import '../../utils/message/getOutgoingMessageState.js';
|
|
21
|
-
import '../../compareIds-
|
|
21
|
+
import '../../compareIds-86584ff3.js';
|
|
22
22
|
import '@sendbird/chat/groupChannel';
|
|
23
|
-
import '../../uuid-
|
|
23
|
+
import '../../uuid-e15650df.js';
|
|
24
24
|
import '@sendbird/chat/message';
|
|
25
25
|
import '../../ui/ContextMenu.js';
|
|
26
26
|
import 'react-dom';
|
|
27
27
|
import '../../ui/SortByRow.js';
|
|
28
|
-
import '../../index-
|
|
29
|
-
import '../../stringSet-
|
|
28
|
+
import '../../index-46d8dde5.js';
|
|
29
|
+
import '../../stringSet-fd70cba0.js';
|
|
30
30
|
import '../../ui/ReactionButton.js';
|
|
31
31
|
import '../../ui/ImageRenderer.js';
|
|
32
|
-
import '../../consts-
|
|
33
|
-
import '../../LocalizationContext-
|
|
32
|
+
import '../../consts-37ea645a.js';
|
|
33
|
+
import '../../LocalizationContext-187f787e.js';
|
|
34
34
|
import '../../ui/Loader.js';
|
|
35
35
|
import './SuggestedMentionList.js';
|
|
36
36
|
import '../../ui/Avatar.js';
|
|
37
|
-
import '../../const-
|
|
38
|
-
import '../../ThreadProvider-
|
|
37
|
+
import '../../const-693a408f.js';
|
|
38
|
+
import '../../ThreadProvider-8d535c1b.js';
|
|
39
39
|
import '../../Thread/context/types.js';
|
|
40
40
|
import '@sendbird/chat';
|
|
41
41
|
import '../../ui/DateSeparator.js';
|
|
42
|
-
import '../../color-
|
|
42
|
+
import '../../color-b379fbc5.js';
|
|
43
43
|
import '../../ui/MessageInput.js';
|
|
44
|
-
import 'react-dom/server';
|
|
45
44
|
import '../../ui/IconButton.js';
|
|
46
45
|
import '../../ui/Button.js';
|
|
47
|
-
import '../../ui/MentionUserLabel.js';
|
|
48
46
|
import 'dompurify';
|
|
47
|
+
import '../../consts-b2395440.js';
|
|
49
48
|
import '../../ui/MessageContent.js';
|
|
50
49
|
import '../../ui/UserProfile.js';
|
|
51
50
|
import '../../sendbirdSelectors.js';
|
|
52
|
-
import '../../utils-
|
|
53
|
-
import '../../index-
|
|
54
|
-
import '../../index-
|
|
51
|
+
import '../../utils-780c1e12.js';
|
|
52
|
+
import '../../index-7b740ffc.js';
|
|
53
|
+
import '../../index-7afa5c8d.js';
|
|
55
54
|
import '../../ui/MessageItemMenu.js';
|
|
56
|
-
import '../../types-
|
|
55
|
+
import '../../types-87c77099.js';
|
|
57
56
|
import '../../ui/MessageItemReactionMenu.js';
|
|
58
57
|
import '../../ui/EmojiReactions.js';
|
|
59
58
|
import '../../ui/Tooltip.js';
|
|
@@ -66,19 +65,19 @@ import '../../ui/LinkLabel.js';
|
|
|
66
65
|
import '../../ui/MentionLabel.js';
|
|
67
66
|
import '../../ui/FileMessageItemBody.js';
|
|
68
67
|
import '../../ui/TextButton.js';
|
|
69
|
-
import '../../MediaQueryContext-
|
|
68
|
+
import '../../MediaQueryContext-add671c4.js';
|
|
70
69
|
import '../../ui/ThumbnailMessageItemBody.js';
|
|
71
70
|
import '../../ui/OGMessageItemBody.js';
|
|
72
71
|
import '../../ui/UnknownMessageItemBody.js';
|
|
73
72
|
import '../../ui/QuoteMessage.js';
|
|
74
|
-
import '../../useLongPress-
|
|
73
|
+
import '../../useLongPress-81323308.js';
|
|
75
74
|
import '../../ui/BottomSheet.js';
|
|
76
|
-
import '../../index-
|
|
75
|
+
import '../../index-f338f866.js';
|
|
77
76
|
import '../../ui/ThreadReplies.js';
|
|
78
77
|
import '../../ui/VoiceMessageItemBody.js';
|
|
79
78
|
import '../../ui/ProgressBar.js';
|
|
80
79
|
import '../../VoicePlayer/useVoicePlayer.js';
|
|
81
|
-
import '../../index-
|
|
80
|
+
import '../../index-c29a819f.js';
|
|
82
81
|
import '../../VoiceRecorder/context.js';
|
|
83
82
|
import '../../lame.all.js';
|
|
84
83
|
import '../../ui/PlaybackTime.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageList.js","sources":["../../../src/smart-components/Channel/components/MessageList/getMessagePartsInfo.ts","../../../src/smart-components/Channel/components/MessageList/index.tsx"],"sourcesContent":["import { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { AdminMessage, FileMessage, UserMessage } from '@sendbird/chat/message';\nimport isSameDay from 'date-fns/isSameDay';\n\nimport { compareMessagesForGrouping } from '../../context/utils';\n\nexport interface GetMessagePartsInfoProps {\n allMessages: Array<UserMessage | FileMessage | AdminMessage>;\n isMessageGroupingEnabled: boolean;\n currentIndex: number;\n currentMessage: UserMessage | FileMessage | AdminMessage;\n currentChannel: GroupChannel;\n replyType: string;\n}\n\ninterface OutPuts {\n chainTop: boolean,\n chainBottom: boolean,\n hasSeparator: boolean,\n}\n\nexport const getMessagePartsInfo = ({\n allMessages = [],\n isMessageGroupingEnabled = true,\n currentIndex = 0,\n currentMessage = null,\n currentChannel = null,\n replyType = '',\n}: GetMessagePartsInfoProps): OutPuts => {\n const previousMessage = allMessages[currentIndex - 1];\n const nextMessage = allMessages[currentIndex + 1];\n const [chainTop, chainBottom] = isMessageGroupingEnabled\n ? compareMessagesForGrouping(previousMessage, currentMessage, nextMessage, currentChannel, replyType)\n : [false, false];\n const previousMessageCreatedAt = previousMessage?.createdAt;\n const currentCreatedAt = currentMessage.createdAt;\n // https://stackoverflow.com/a/41855608\n const hasSeparator = !(previousMessageCreatedAt && (\n isSameDay(currentCreatedAt, previousMessageCreatedAt)\n ));\n return {\n chainTop,\n chainBottom,\n hasSeparator,\n }\n};\n","import './message-list.scss';\n\nimport React, { useState } from 'react';\n\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport Message from '../Message';\nimport { RenderCustomSeparatorProps, RenderMessageProps } from '../../../../types';\nimport { isAboutSame } from '../../context/utils';\nimport { getMessagePartsInfo } from './getMessagePartsInfo';\nimport UnreadCount from '../UnreadCount';\nimport FrozenNotification from '../FrozenNotification';\nimport { MESSAGE_SCROLL_BUFFER } from '../../context/const';\n\nexport interface MessageListProps {\n className?: string;\n renderMessage?: (props: RenderMessageProps) => React.ReactElement;\n renderPlaceholderEmpty?: () => React.ReactElement;\n renderCustomSeparator?: (props: RenderCustomSeparatorProps) => React.ReactElement;\n renderPlaceholderLoader?: () => React.ReactElement;\n}\n\nconst SCROLL_REF_CLASS_NAME = '.sendbird-msg--scroll-ref';\n\nconst MessageList: React.FC<MessageListProps> = ({\n className = '',\n renderMessage,\n renderPlaceholderEmpty,\n renderCustomSeparator,\n renderPlaceholderLoader,\n}) => {\n const {\n allMessages,\n hasMorePrev,\n setInitialTimeStamp,\n setAnimatedMessageId,\n setHighLightedMessageId,\n isMessageGroupingEnabled,\n scrollRef,\n onScrollCallback,\n onScrollDownCallback,\n messagesDispatcher,\n messageActionTypes,\n currentGroupChannel,\n disableMarkAsRead,\n replyType,\n loading,\n unreadSince,\n } = useChannelContext();\n const [scrollBottom, setScrollBottom] = useState(0);\n\n const onScroll = (e) => {\n const element = e.target;\n const {\n scrollTop,\n clientHeight,\n scrollHeight,\n } = element;\n\n if (scrollTop === 0) {\n if (!hasMorePrev) {\n return;\n }\n const nodes = scrollRef.current.querySelectorAll(SCROLL_REF_CLASS_NAME);\n const first = nodes && nodes[0];\n onScrollCallback(([messages]) => {\n if (messages) {\n // https://github.com/scabbiaza/react-scroll-position-on-updating-dom\n // Set block to nearest to prevent unexpected scrolling from outer components\n try {\n first.scrollIntoView({ block: \"start\", inline: \"nearest\" });\n } catch (error) {\n //\n }\n }\n });\n }\n\n if (isAboutSame(clientHeight + scrollTop, scrollHeight, MESSAGE_SCROLL_BUFFER)) {\n onScrollDownCallback(([messages]) => {\n if (messages) {\n try {\n // element.scrollTop = scrollHeight - clientHeight;\n // scrollRef.current.scrollTop = scrollHeight - clientHeight;\n } catch (error) {\n //\n }\n }\n });\n }\n\n // Save the lastest scroll bottom value\n if (scrollRef?.current) {\n const current = scrollRef?.current;\n setScrollBottom(current.scrollHeight - current.scrollTop - current.offsetHeight)\n }\n\n if (!disableMarkAsRead && isAboutSame(clientHeight + scrollTop, scrollHeight, MESSAGE_SCROLL_BUFFER)) {\n // Mark as read if scroll is at end\n setTimeout(() => {\n messagesDispatcher({\n type: messageActionTypes.MARK_AS_READ,\n payload: { channel: currentGroupChannel },\n });\n try {\n currentGroupChannel?.markAsRead?.();\n } catch {\n //\n }\n }, 500);\n }\n };\n\n const onClickScrollBot = () => {\n setInitialTimeStamp?.(null);\n setAnimatedMessageId?.(null);\n setHighLightedMessageId?.(null);\n if (scrollRef?.current?.scrollTop > -1) {\n scrollRef.current.scrollTop = scrollRef?.current?.scrollHeight - scrollRef?.current?.offsetHeight;\n }\n };\n\n const handleScroll = () => {\n const current = scrollRef?.current;\n if (current) {\n const bottom = current.scrollHeight - current.scrollTop - current.offsetHeight;\n if (scrollBottom < bottom && scrollBottom <= MESSAGE_SCROLL_BUFFER) {\n current.scrollTop += bottom - scrollBottom;\n }\n }\n };\n\n if (loading) {\n return (typeof renderPlaceholderLoader === 'function')\n ? renderPlaceholderLoader()\n : <PlaceHolder type={PlaceHolderTypes.LOADING} />;\n }\n if (allMessages.length < 1) {\n if (renderPlaceholderEmpty && typeof renderPlaceholderEmpty === 'function') {\n return renderPlaceholderEmpty();\n }\n return <PlaceHolder className=\"sendbird-conversation__no-messages\" type={PlaceHolderTypes.NO_MESSAGES} />;\n }\n return (\n <div className={`sendbird-conversation__messages ${className}`}>\n <div className=\"sendbird-conversation__scroll-container\">\n <div className=\"sendbird-conversation__padding\" />\n <div\n className=\"sendbird-conversation__messages-padding\"\n ref={scrollRef}\n onScroll={onScroll}\n >\n {allMessages.map((m, idx) => {\n const {\n chainTop,\n chainBottom,\n hasSeparator,\n } = getMessagePartsInfo({\n allMessages,\n replyType,\n isMessageGroupingEnabled,\n currentIndex: idx,\n currentMessage: m,\n currentChannel: currentGroupChannel,\n });\n return (\n <Message\n key={m?.messageId}\n handleScroll={handleScroll}\n renderMessage={renderMessage}\n message={m}\n hasSeparator={hasSeparator}\n chainTop={chainTop}\n chainBottom={chainBottom}\n renderCustomSeparator={renderCustomSeparator}\n />\n );\n })}\n {/* show frozen notifications */}\n {/* show new message notifications */}\n </div>\n </div>\n {currentGroupChannel?.isFrozen && (\n <FrozenNotification className=\"sendbird-conversation__messages__notification\" />\n )}\n <UnreadCount\n className=\"sendbird-conversation__messages__notification\"\n count={currentGroupChannel?.unreadMessageCount}\n time={unreadSince}\n onClick={() => {\n if (scrollRef?.current?.scrollTop) {\n scrollRef.current.scrollTop = scrollRef?.current?.scrollHeight - scrollRef?.current?.offsetHeight;\n }\n if (!disableMarkAsRead) {\n try {\n currentGroupChannel?.markAsRead();\n } catch {\n //\n }\n messagesDispatcher({\n type: messageActionTypes.MARK_AS_READ,\n payload: { channel: currentGroupChannel },\n });\n }\n setInitialTimeStamp(null);\n setAnimatedMessageId(null);\n setHighLightedMessageId(null);\n }}\n />\n {\n // This flag is an unmatched variable\n (scrollBottom > 1) && (\n <div\n className=\"sendbird-conversation__scroll-bottom-button\"\n onClick={onClickScrollBot}\n onKeyDown={onClickScrollBot}\n tabIndex={0}\n role=\"button\"\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.CHEVRON_DOWN}\n fillColor={IconColors.PRIMARY}\n />\n </div>\n )\n }\n </div>\n );\n};\n\nexport default MessageList;\n"],"names":["getMessagePartsInfo","_a","_b","allMessages","_c","isMessageGroupingEnabled","_d","currentIndex","_e","currentMessage","_f","currentChannel","_g","replyType","previousMessage","nextMessage","_h","compareMessagesForGrouping","chainTop","chainBottom","previousMessageCreatedAt","createdAt","currentCreatedAt","hasSeparator","isSameDay","SCROLL_REF_CLASS_NAME","MessageList","className","renderMessage","renderPlaceholderEmpty","renderCustomSeparator","renderPlaceholderLoader","useChannelContext","hasMorePrev","setInitialTimeStamp","setAnimatedMessageId","setHighLightedMessageId","scrollRef","onScrollCallback","onScrollDownCallback","messagesDispatcher","messageActionTypes","currentGroupChannel","disableMarkAsRead","loading","unreadSince","useState","scrollBottom","setScrollBottom","onScroll","e","element","target","scrollTop","clientHeight","scrollHeight","nodes","current","querySelectorAll","first_1","messages","scrollIntoView","block","inline","error","isAboutSame","MESSAGE_SCROLL_BUFFER","offsetHeight","setTimeout","type","MARK_AS_READ","payload","channel","markAsRead","onClickScrollBot","handleScroll","bottom","React","PlaceHolderTypes","LOADING","length","NO_MESSAGES","concat","map","m","idx","messageId","isFrozen","unreadMessageCount","IconTypes","CHEVRON_DOWN","IconColors","PRIMARY"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MessageList.js","sources":["../../../src/smart-components/Channel/components/MessageList/getMessagePartsInfo.ts","../../../src/smart-components/Channel/components/MessageList/index.tsx"],"sourcesContent":["import { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { AdminMessage, FileMessage, UserMessage } from '@sendbird/chat/message';\nimport isSameDay from 'date-fns/isSameDay';\n\nimport { compareMessagesForGrouping } from '../../context/utils';\n\nexport interface GetMessagePartsInfoProps {\n allMessages: Array<UserMessage | FileMessage | AdminMessage>;\n isMessageGroupingEnabled: boolean;\n currentIndex: number;\n currentMessage: UserMessage | FileMessage | AdminMessage;\n currentChannel: GroupChannel;\n replyType: string;\n}\n\ninterface OutPuts {\n chainTop: boolean,\n chainBottom: boolean,\n hasSeparator: boolean,\n}\n\nexport const getMessagePartsInfo = ({\n allMessages = [],\n isMessageGroupingEnabled = true,\n currentIndex = 0,\n currentMessage = null,\n currentChannel = null,\n replyType = '',\n}: GetMessagePartsInfoProps): OutPuts => {\n const previousMessage = allMessages[currentIndex - 1];\n const nextMessage = allMessages[currentIndex + 1];\n const [chainTop, chainBottom] = isMessageGroupingEnabled\n ? compareMessagesForGrouping(previousMessage, currentMessage, nextMessage, currentChannel, replyType)\n : [false, false];\n const previousMessageCreatedAt = previousMessage?.createdAt;\n const currentCreatedAt = currentMessage.createdAt;\n // https://stackoverflow.com/a/41855608\n const hasSeparator = !(previousMessageCreatedAt && (\n isSameDay(currentCreatedAt, previousMessageCreatedAt)\n ));\n return {\n chainTop,\n chainBottom,\n hasSeparator,\n }\n};\n","import './message-list.scss';\n\nimport React, { useState } from 'react';\n\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport Message from '../Message';\nimport { RenderCustomSeparatorProps, RenderMessageProps } from '../../../../types';\nimport { isAboutSame } from '../../context/utils';\nimport { getMessagePartsInfo } from './getMessagePartsInfo';\nimport UnreadCount from '../UnreadCount';\nimport FrozenNotification from '../FrozenNotification';\nimport { MESSAGE_SCROLL_BUFFER } from '../../context/const';\n\nexport interface MessageListProps {\n className?: string;\n renderMessage?: (props: RenderMessageProps) => React.ReactElement;\n renderPlaceholderEmpty?: () => React.ReactElement;\n renderCustomSeparator?: (props: RenderCustomSeparatorProps) => React.ReactElement;\n renderPlaceholderLoader?: () => React.ReactElement;\n}\n\nconst SCROLL_REF_CLASS_NAME = '.sendbird-msg--scroll-ref';\n\nconst MessageList: React.FC<MessageListProps> = ({\n className = '',\n renderMessage,\n renderPlaceholderEmpty,\n renderCustomSeparator,\n renderPlaceholderLoader,\n}) => {\n const {\n allMessages,\n hasMorePrev,\n setInitialTimeStamp,\n setAnimatedMessageId,\n setHighLightedMessageId,\n isMessageGroupingEnabled,\n scrollRef,\n onScrollCallback,\n onScrollDownCallback,\n messagesDispatcher,\n messageActionTypes,\n currentGroupChannel,\n disableMarkAsRead,\n replyType,\n loading,\n unreadSince,\n } = useChannelContext();\n const [scrollBottom, setScrollBottom] = useState(0);\n\n const onScroll = (e) => {\n const element = e.target;\n const {\n scrollTop,\n clientHeight,\n scrollHeight,\n } = element;\n\n if (scrollTop === 0) {\n if (!hasMorePrev) {\n return;\n }\n const nodes = scrollRef.current.querySelectorAll(SCROLL_REF_CLASS_NAME);\n const first = nodes && nodes[0];\n onScrollCallback(([messages]) => {\n if (messages) {\n // https://github.com/scabbiaza/react-scroll-position-on-updating-dom\n // Set block to nearest to prevent unexpected scrolling from outer components\n try {\n first.scrollIntoView({ block: \"start\", inline: \"nearest\" });\n } catch (error) {\n //\n }\n }\n });\n }\n\n if (isAboutSame(clientHeight + scrollTop, scrollHeight, MESSAGE_SCROLL_BUFFER)) {\n onScrollDownCallback(([messages]) => {\n if (messages) {\n try {\n // element.scrollTop = scrollHeight - clientHeight;\n // scrollRef.current.scrollTop = scrollHeight - clientHeight;\n } catch (error) {\n //\n }\n }\n });\n }\n\n // Save the lastest scroll bottom value\n if (scrollRef?.current) {\n const current = scrollRef?.current;\n setScrollBottom(current.scrollHeight - current.scrollTop - current.offsetHeight)\n }\n\n if (!disableMarkAsRead && isAboutSame(clientHeight + scrollTop, scrollHeight, MESSAGE_SCROLL_BUFFER)) {\n // Mark as read if scroll is at end\n setTimeout(() => {\n messagesDispatcher({\n type: messageActionTypes.MARK_AS_READ,\n payload: { channel: currentGroupChannel },\n });\n try {\n currentGroupChannel?.markAsRead?.();\n } catch {\n //\n }\n }, 500);\n }\n };\n\n const onClickScrollBot = () => {\n setInitialTimeStamp?.(null);\n setAnimatedMessageId?.(null);\n setHighLightedMessageId?.(null);\n if (scrollRef?.current?.scrollTop > -1) {\n scrollRef.current.scrollTop = scrollRef?.current?.scrollHeight - scrollRef?.current?.offsetHeight;\n }\n };\n\n const handleScroll = () => {\n const current = scrollRef?.current;\n if (current) {\n const bottom = current.scrollHeight - current.scrollTop - current.offsetHeight;\n if (scrollBottom < bottom && scrollBottom <= MESSAGE_SCROLL_BUFFER) {\n current.scrollTop += bottom - scrollBottom;\n }\n }\n };\n\n if (loading) {\n return (typeof renderPlaceholderLoader === 'function')\n ? renderPlaceholderLoader()\n : <PlaceHolder type={PlaceHolderTypes.LOADING} />;\n }\n if (allMessages.length < 1) {\n if (renderPlaceholderEmpty && typeof renderPlaceholderEmpty === 'function') {\n return renderPlaceholderEmpty();\n }\n return <PlaceHolder className=\"sendbird-conversation__no-messages\" type={PlaceHolderTypes.NO_MESSAGES} />;\n }\n return (\n <div className={`sendbird-conversation__messages ${className}`}>\n <div className=\"sendbird-conversation__scroll-container\">\n <div className=\"sendbird-conversation__padding\" />\n <div\n className=\"sendbird-conversation__messages-padding\"\n ref={scrollRef}\n onScroll={onScroll}\n >\n {allMessages.map((m, idx) => {\n const {\n chainTop,\n chainBottom,\n hasSeparator,\n } = getMessagePartsInfo({\n allMessages,\n replyType,\n isMessageGroupingEnabled,\n currentIndex: idx,\n currentMessage: m,\n currentChannel: currentGroupChannel,\n });\n return (\n <Message\n key={m?.messageId}\n handleScroll={handleScroll}\n renderMessage={renderMessage}\n message={m}\n hasSeparator={hasSeparator}\n chainTop={chainTop}\n chainBottom={chainBottom}\n renderCustomSeparator={renderCustomSeparator}\n />\n );\n })}\n {/* show frozen notifications */}\n {/* show new message notifications */}\n </div>\n </div>\n {currentGroupChannel?.isFrozen && (\n <FrozenNotification className=\"sendbird-conversation__messages__notification\" />\n )}\n <UnreadCount\n className=\"sendbird-conversation__messages__notification\"\n count={currentGroupChannel?.unreadMessageCount}\n time={unreadSince}\n onClick={() => {\n if (scrollRef?.current?.scrollTop) {\n scrollRef.current.scrollTop = scrollRef?.current?.scrollHeight - scrollRef?.current?.offsetHeight;\n }\n if (!disableMarkAsRead) {\n try {\n currentGroupChannel?.markAsRead();\n } catch {\n //\n }\n messagesDispatcher({\n type: messageActionTypes.MARK_AS_READ,\n payload: { channel: currentGroupChannel },\n });\n }\n setInitialTimeStamp(null);\n setAnimatedMessageId(null);\n setHighLightedMessageId(null);\n }}\n />\n {\n // This flag is an unmatched variable\n (scrollBottom > 1) && (\n <div\n className=\"sendbird-conversation__scroll-bottom-button\"\n onClick={onClickScrollBot}\n onKeyDown={onClickScrollBot}\n tabIndex={0}\n role=\"button\"\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.CHEVRON_DOWN}\n fillColor={IconColors.PRIMARY}\n />\n </div>\n )\n }\n </div>\n );\n};\n\nexport default MessageList;\n"],"names":["getMessagePartsInfo","_a","_b","allMessages","_c","isMessageGroupingEnabled","_d","currentIndex","_e","currentMessage","_f","currentChannel","_g","replyType","previousMessage","nextMessage","_h","compareMessagesForGrouping","chainTop","chainBottom","previousMessageCreatedAt","createdAt","currentCreatedAt","hasSeparator","isSameDay","SCROLL_REF_CLASS_NAME","MessageList","className","renderMessage","renderPlaceholderEmpty","renderCustomSeparator","renderPlaceholderLoader","useChannelContext","hasMorePrev","setInitialTimeStamp","setAnimatedMessageId","setHighLightedMessageId","scrollRef","onScrollCallback","onScrollDownCallback","messagesDispatcher","messageActionTypes","currentGroupChannel","disableMarkAsRead","loading","unreadSince","useState","scrollBottom","setScrollBottom","onScroll","e","element","target","scrollTop","clientHeight","scrollHeight","nodes","current","querySelectorAll","first_1","messages","scrollIntoView","block","inline","error","isAboutSame","MESSAGE_SCROLL_BUFFER","offsetHeight","setTimeout","type","MARK_AS_READ","payload","channel","markAsRead","onClickScrollBot","handleScroll","bottom","React","PlaceHolderTypes","LOADING","length","NO_MESSAGES","concat","map","m","idx","messageId","isFrozen","unreadMessageCount","IconTypes","CHEVRON_DOWN","IconColors","PRIMARY"],"mappings":"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"}
|
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
import React__default, { useContext } from 'react';
|
|
2
2
|
import Modal from '../../ui/Modal.js';
|
|
3
3
|
import { ButtonTypes } from '../../ui/Button.js';
|
|
4
|
-
import { a as LocalizationContext } from '../../LocalizationContext-
|
|
5
|
-
import { u as useChannelContext } from '../../ChannelProvider-
|
|
4
|
+
import { a as LocalizationContext } from '../../LocalizationContext-187f787e.js';
|
|
5
|
+
import { u as useChannelContext } from '../../ChannelProvider-e2c86cba.js';
|
|
6
6
|
import 'react-dom';
|
|
7
|
-
import '../../index-
|
|
7
|
+
import '../../index-f338f866.js';
|
|
8
8
|
import '../../ui/Icon.js';
|
|
9
9
|
import 'prop-types';
|
|
10
10
|
import '../../ui/IconButton.js';
|
|
11
|
-
import '../../tslib.es6-
|
|
12
|
-
import '../../index-
|
|
13
|
-
import '../../stringSet-
|
|
14
|
-
import '../../MediaQueryContext-
|
|
15
|
-
import '../../index-
|
|
16
|
-
import '../../UserProfileContext-
|
|
11
|
+
import '../../tslib.es6-645dedf8.js';
|
|
12
|
+
import '../../index-46d8dde5.js';
|
|
13
|
+
import '../../stringSet-fd70cba0.js';
|
|
14
|
+
import '../../MediaQueryContext-add671c4.js';
|
|
15
|
+
import '../../index-5b34a381.js';
|
|
16
|
+
import '../../UserProfileContext-d2264917.js';
|
|
17
17
|
import '../../useSendbirdStateContext.js';
|
|
18
18
|
import '../../withSendbird.js';
|
|
19
|
-
import '../../_rollupPluginBabelHelpers-
|
|
20
|
-
import '../../index-
|
|
21
|
-
import '../../topics-
|
|
22
|
-
import '../../index-
|
|
19
|
+
import '../../_rollupPluginBabelHelpers-dfc61977.js';
|
|
20
|
+
import '../../index-c55389dc.js';
|
|
21
|
+
import '../../topics-c4837013.js';
|
|
22
|
+
import '../../index-102fbe62.js';
|
|
23
23
|
import '../../utils/message/getOutgoingMessageState.js';
|
|
24
|
-
import '../../compareIds-
|
|
25
|
-
import '../../const-
|
|
24
|
+
import '../../compareIds-86584ff3.js';
|
|
25
|
+
import '../../const-26fafb08.js';
|
|
26
26
|
import '@sendbird/chat/groupChannel';
|
|
27
|
-
import '../../uuid-
|
|
27
|
+
import '../../uuid-e15650df.js';
|
|
28
28
|
import '@sendbird/chat/message';
|
|
29
29
|
import '../../ui/ContextMenu.js';
|
|
30
30
|
import '../../ui/SortByRow.js';
|
|
31
31
|
import '../../ui/ReactionButton.js';
|
|
32
32
|
import '../../ui/ImageRenderer.js';
|
|
33
|
-
import '../../consts-
|
|
33
|
+
import '../../consts-37ea645a.js';
|
|
34
34
|
|
|
35
35
|
var RemoveMessage = function (props) {
|
|
36
36
|
var _a;
|