@sendbird/uikit-react 3.3.5 → 3.5.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/App.js +35 -34
- package/App.js.map +1 -1
- package/CHANGELOG.md +76 -0
- package/Channel/components/ChannelHeader.js +18 -18
- package/Channel/components/ChannelUI.js +28 -27
- package/Channel/components/ChannelUI.js.map +1 -1
- package/Channel/components/FileViewer.js +14 -14
- package/Channel/components/FrozenNotification.js +4 -4
- package/Channel/components/Message.js +25 -24
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +16 -16
- package/Channel/components/MessageList.js +26 -25
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +16 -16
- package/Channel/components/SuggestedMentionList.js +16 -16
- package/Channel/components/TypingIndicator.js +14 -14
- package/Channel/components/UnreadCount.js +4 -4
- package/Channel/context.js +13 -13
- package/Channel.js +28 -27
- 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 +29 -28
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +25 -24
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/ChannelList/context.js +8 -8
- package/ChannelList.js +29 -28
- package/ChannelList.js.map +1 -1
- package/{ChannelListProvider-18fd6872.js → ChannelListProvider-ade145a7.js} +8 -8
- package/{ChannelListProvider-18fd6872.js.map → ChannelListProvider-ade145a7.js.map} +1 -1
- package/{ChannelProvider-e50a1789.js → ChannelProvider-c9db10c0.js} +9 -9
- package/{ChannelProvider-e50a1789.js.map → ChannelProvider-c9db10c0.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-6f5eec3d.js → CreateChannelProvider-be2dfe96.js} +1 -1
- package/{CreateChannelProvider-6f5eec3d.js.map → CreateChannelProvider-be2dfe96.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-299b1d45.js → LocalizationContext-60894e38.js} +3 -3
- package/{LocalizationContext-299b1d45.js.map → LocalizationContext-60894e38.js.map} +1 -1
- package/{MediaQueryContext-84b087e0.js → MediaQueryContext-bcf72e28.js} +1 -1
- package/{MediaQueryContext-84b087e0.js.map → MediaQueryContext-bcf72e28.js.map} +1 -1
- package/{MemberList-5f71656b.js → MemberList-ce1fd162.js} +5 -5
- package/{MemberList-5f71656b.js.map → MemberList-ce1fd162.js.map} +1 -1
- package/MessageSearch/components/MessageSearchUI.js +12 -11
- package/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/MessageSearch/context.js +2 -2
- package/MessageSearch.js +12 -11
- package/MessageSearch.js.map +1 -1
- package/NotificationChannel/components/NotificationChannelUI.js +119 -0
- package/NotificationChannel/components/NotificationChannelUI.js.map +1 -0
- package/NotificationChannel/components/NotificationList.js +111 -0
- package/NotificationChannel/components/NotificationList.js.map +1 -0
- package/NotificationChannel/components/NotificationMessageWrap.js +136 -0
- package/NotificationChannel/components/NotificationMessageWrap.js.map +1 -0
- package/NotificationChannel/context.js +12 -0
- package/NotificationChannel/context.js.map +1 -0
- package/NotificationChannel.js +58 -0
- package/NotificationChannel.js.map +1 -0
- package/NotificationChannelProvider-2cb7ca21.js +535 -0
- package/NotificationChannelProvider-2cb7ca21.js.map +1 -0
- package/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/OpenChannel/components/OpenChannelHeader.js +13 -13
- package/OpenChannel/components/OpenChannelInput.js +15 -15
- package/OpenChannel/components/OpenChannelMessage.js +22 -22
- package/OpenChannel/components/OpenChannelMessageList.js +24 -24
- package/OpenChannel/components/OpenChannelUI.js +24 -24
- package/OpenChannel/context.js +9 -9
- package/OpenChannel.js +24 -24
- 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-a70a09f8.js → OpenChannelListProvider-0bdafda1.js} +3 -3
- package/{OpenChannelListProvider-a70a09f8.js.map → OpenChannelListProvider-0bdafda1.js.map} +1 -1
- package/{OpenChannelProvider-a0d666c6.js → OpenChannelProvider-a72c6fb7.js} +7 -7
- package/{OpenChannelProvider-a0d666c6.js.map → OpenChannelProvider-a72c6fb7.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-2f571cc3.js → RemoveMessageModal-b025d4a7.js} +3 -3
- package/{RemoveMessageModal-2f571cc3.js.map → RemoveMessageModal-b025d4a7.js.map} +1 -1
- package/SendbirdProvider.js +10 -10
- package/SendbirdProvider.js.map +1 -1
- package/Thread/components/ParentMessageInfo.js +21 -21
- package/Thread/components/ParentMessageInfoItem.js +14 -14
- package/Thread/components/ThreadHeader.js +6 -6
- package/Thread/components/ThreadList.js +25 -24
- package/Thread/components/ThreadList.js.map +1 -1
- package/Thread/components/ThreadListItem.js +25 -24
- package/Thread/components/ThreadListItem.js.map +1 -1
- package/Thread/components/ThreadMessageInput.js +16 -16
- package/Thread/components/ThreadUI.js +27 -26
- package/Thread/components/ThreadUI.js.map +1 -1
- package/Thread/context.js +8 -8
- package/Thread.js +27 -26
- package/Thread.js.map +1 -1
- package/{ThreadProvider-b6a76698.js → ThreadProvider-de5a7889.js} +6 -6
- package/{ThreadProvider-b6a76698.js.map → ThreadProvider-de5a7889.js.map} +1 -1
- package/{UserProfileContext-53d89b5e.js → UserProfileContext-33a26cc4.js} +1 -1
- package/{UserProfileContext-53d89b5e.js.map → UserProfileContext-33a26cc4.js.map} +1 -1
- package/{_rollupPluginBabelHelpers-d746227b.js → _rollupPluginBabelHelpers-ed44209e.js} +1 -1
- package/_rollupPluginBabelHelpers-ed44209e.js.map +1 -0
- package/{actionTypes-77c96dff.js → actionTypes-aa58fd27.js} +1 -1
- package/{actionTypes-77c96dff.js.map → actionTypes-aa58fd27.js.map} +1 -1
- package/cjs/App.js +35 -34
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +18 -18
- package/cjs/Channel/components/ChannelUI.js +28 -27
- package/cjs/Channel/components/ChannelUI.js.map +1 -1
- package/cjs/Channel/components/FileViewer.js +14 -14
- package/cjs/Channel/components/FrozenNotification.js +4 -4
- package/cjs/Channel/components/Message.js +25 -24
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +16 -16
- package/cjs/Channel/components/MessageList.js +26 -25
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +16 -16
- package/cjs/Channel/components/SuggestedMentionList.js +16 -16
- package/cjs/Channel/components/TypingIndicator.js +14 -14
- package/cjs/Channel/components/UnreadCount.js +4 -4
- package/cjs/Channel/context.js +13 -13
- package/cjs/Channel.js +28 -27
- 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 +29 -28
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +25 -24
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/cjs/ChannelList/context.js +8 -8
- package/cjs/ChannelList.js +29 -28
- package/cjs/ChannelList.js.map +1 -1
- package/cjs/{ChannelListProvider-f2606052.js → ChannelListProvider-65473831.js} +8 -8
- package/cjs/{ChannelListProvider-f2606052.js.map → ChannelListProvider-65473831.js.map} +1 -1
- package/cjs/{ChannelProvider-beea5a02.js → ChannelProvider-1e08a7a9.js} +9 -9
- package/cjs/{ChannelProvider-beea5a02.js.map → ChannelProvider-1e08a7a9.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-c123ffbb.js → CreateChannelProvider-cbf490c6.js} +1 -1
- package/cjs/{CreateChannelProvider-c123ffbb.js.map → CreateChannelProvider-cbf490c6.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-caedb682.js → LocalizationContext-8780a64e.js} +3 -3
- package/cjs/{LocalizationContext-caedb682.js.map → LocalizationContext-8780a64e.js.map} +1 -1
- package/cjs/{MediaQueryContext-cdba25c1.js → MediaQueryContext-e455934a.js} +1 -1
- package/cjs/{MediaQueryContext-cdba25c1.js.map → MediaQueryContext-e455934a.js.map} +1 -1
- package/cjs/{MemberList-45fcb966.js → MemberList-aee91fce.js} +5 -5
- package/cjs/{MemberList-45fcb966.js.map → MemberList-aee91fce.js.map} +1 -1
- package/cjs/MessageSearch/components/MessageSearchUI.js +12 -11
- package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/cjs/MessageSearch/context.js +2 -2
- package/cjs/MessageSearch.js +12 -11
- package/cjs/MessageSearch.js.map +1 -1
- package/cjs/NotificationChannel/components/NotificationChannelUI.js +125 -0
- package/cjs/NotificationChannel/components/NotificationChannelUI.js.map +1 -0
- package/cjs/NotificationChannel/components/NotificationList.js +117 -0
- package/cjs/NotificationChannel/components/NotificationList.js.map +1 -0
- package/cjs/NotificationChannel/components/NotificationMessageWrap.js +142 -0
- package/cjs/NotificationChannel/components/NotificationMessageWrap.js.map +1 -0
- package/cjs/NotificationChannel/context.js +21 -0
- package/cjs/NotificationChannel/context.js.map +1 -0
- package/cjs/NotificationChannel.js +64 -0
- package/cjs/NotificationChannel.js.map +1 -0
- package/cjs/NotificationChannelProvider-4cc9575f.js +543 -0
- package/cjs/NotificationChannelProvider-4cc9575f.js.map +1 -0
- package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/cjs/OpenChannel/components/OpenChannelHeader.js +13 -13
- package/cjs/OpenChannel/components/OpenChannelInput.js +15 -15
- package/cjs/OpenChannel/components/OpenChannelMessage.js +22 -22
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +24 -24
- package/cjs/OpenChannel/components/OpenChannelUI.js +24 -24
- package/cjs/OpenChannel/context.js +9 -9
- package/cjs/OpenChannel.js +24 -24
- 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-133cc0e6.js → OpenChannelListProvider-4aab4391.js} +3 -3
- package/cjs/{OpenChannelListProvider-133cc0e6.js.map → OpenChannelListProvider-4aab4391.js.map} +1 -1
- package/cjs/{OpenChannelProvider-ee813f9e.js → OpenChannelProvider-a763b71c.js} +7 -7
- package/cjs/{OpenChannelProvider-ee813f9e.js.map → OpenChannelProvider-a763b71c.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-497e1a76.js → RemoveMessageModal-0da4f94b.js} +3 -3
- package/cjs/{RemoveMessageModal-497e1a76.js.map → RemoveMessageModal-0da4f94b.js.map} +1 -1
- package/cjs/SendbirdProvider.js +10 -10
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfo.js +21 -21
- package/cjs/Thread/components/ParentMessageInfoItem.js +14 -14
- package/cjs/Thread/components/ThreadHeader.js +6 -6
- package/cjs/Thread/components/ThreadList.js +25 -24
- package/cjs/Thread/components/ThreadList.js.map +1 -1
- package/cjs/Thread/components/ThreadListItem.js +25 -24
- package/cjs/Thread/components/ThreadListItem.js.map +1 -1
- package/cjs/Thread/components/ThreadMessageInput.js +16 -16
- package/cjs/Thread/components/ThreadUI.js +27 -26
- package/cjs/Thread/components/ThreadUI.js.map +1 -1
- package/cjs/Thread/context.js +8 -8
- package/cjs/Thread.js +27 -26
- package/cjs/Thread.js.map +1 -1
- package/cjs/{ThreadProvider-8b5092ee.js → ThreadProvider-51be09a5.js} +6 -6
- package/cjs/{ThreadProvider-8b5092ee.js.map → ThreadProvider-51be09a5.js.map} +1 -1
- package/cjs/{UserProfileContext-80409a4d.js → UserProfileContext-0808e413.js} +1 -1
- package/cjs/{UserProfileContext-80409a4d.js.map → UserProfileContext-0808e413.js.map} +1 -1
- package/cjs/{_rollupPluginBabelHelpers-41d3db2d.js → _rollupPluginBabelHelpers-bd6baf0a.js} +1 -1
- package/cjs/_rollupPluginBabelHelpers-bd6baf0a.js.map +1 -0
- package/cjs/{actionTypes-697b5dfb.js → actionTypes-561bdde9.js} +1 -1
- package/cjs/{actionTypes-697b5dfb.js.map → actionTypes-561bdde9.js.map} +1 -1
- package/cjs/{color-d7217651.js → color-fdbe394d.js} +1 -1
- package/cjs/{color-d7217651.js.map → color-fdbe394d.js.map} +1 -1
- package/cjs/{compareIds-caa9f926.js → compareIds-d0c02eca.js} +1 -1
- package/cjs/{compareIds-caa9f926.js.map → compareIds-d0c02eca.js.map} +1 -1
- package/cjs/{const-4ba60f84.js → const-8785e4ad.js} +1 -1
- package/cjs/{const-4ba60f84.js.map → const-8785e4ad.js.map} +1 -1
- package/cjs/{const-4235b5b5.js → const-beb25e10.js} +1 -1
- package/cjs/{const-4235b5b5.js.map → const-beb25e10.js.map} +1 -1
- package/cjs/{context-867cb427.js → context-012aecd1.js} +2 -2
- package/cjs/{context-867cb427.js.map → context-012aecd1.js.map} +1 -1
- package/cjs/dist/index.css +212 -45
- package/cjs/dist/index.css.map +1 -1
- package/cjs/{index-d47bc642.js → index-08d232f8.js} +1 -1
- package/cjs/{index-d47bc642.js.map → index-08d232f8.js.map} +1 -1
- package/cjs/{index-e01cd4a9.js → index-48d85d8f.js} +1 -1
- package/cjs/{index-e01cd4a9.js.map → index-48d85d8f.js.map} +1 -1
- package/cjs/{index-942c3f15.js → index-5ea12b7a.js} +2 -2
- package/cjs/{index-942c3f15.js.map → index-5ea12b7a.js.map} +1 -1
- package/cjs/index-8a4b2f10.js +59 -0
- package/cjs/index-8a4b2f10.js.map +1 -0
- package/cjs/{index-230cddde.js → index-8c350889.js} +2 -2
- package/cjs/{index-230cddde.js.map → index-8c350889.js.map} +1 -1
- package/cjs/{index-ceb058fa.js → index-abe135e6.js} +2 -2
- package/cjs/{index-ceb058fa.js.map → index-abe135e6.js.map} +1 -1
- package/cjs/{index-476f089f.js → index-b3371ef2.js} +2 -2
- package/cjs/index-b3371ef2.js.map +1 -0
- package/cjs/{index-06816ee5.js → index-bdd889a2.js} +2 -2
- package/cjs/{index-06816ee5.js.map → index-bdd889a2.js.map} +1 -1
- package/cjs/{index-50984f15.js → index-c13771a7.js} +3 -57
- package/cjs/index-c13771a7.js.map +1 -0
- package/cjs/{index-bec34de9.js → index-e191d245.js} +11 -10
- package/cjs/{index-bec34de9.js.map → index-e191d245.js.map} +1 -1
- package/cjs/{index-c6abe71b.js → index-e8544e24.js} +13 -6
- package/cjs/index-e8544e24.js.map +1 -0
- package/cjs/{index-f0df9942.js → index-ebb542c3.js} +5 -5
- package/cjs/{index-f0df9942.js.map → index-ebb542c3.js.map} +1 -1
- package/cjs/{index-29e1117f.js → index-f032bd2c.js} +7 -7
- package/cjs/{index-29e1117f.js.map → index-f032bd2c.js.map} +1 -1
- package/cjs/index.js +39 -38
- package/cjs/index.js.map +1 -1
- package/cjs/sendbirdSelectors.js +2 -2
- package/cjs/{stringSet-af541fde.js → stringSet-60660a99.js} +5 -1
- package/cjs/stringSet-60660a99.js.map +1 -0
- package/cjs/{topics-33f5f434.js → topics-f3f74edc.js} +1 -1
- package/cjs/{topics-33f5f434.js.map → topics-f3f74edc.js.map} +1 -1
- package/cjs/{tslib.es6-f1d22d7f.js → tslib.es6-5a7eb30d.js} +14 -1
- package/cjs/{tslib.es6-f1d22d7f.js.map → tslib.es6-5a7eb30d.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/MessageContent.js +21 -20
- package/cjs/ui/MessageContent.js.map +1 -1
- package/cjs/ui/MessageInput.js +9 -9
- package/cjs/ui/MessageItemMenu.js +7 -7
- package/cjs/ui/MessageItemReactionMenu.js +5 -5
- package/cjs/ui/MessageSearchFileItem.js +11 -10
- package/cjs/ui/MessageSearchFileItem.js.map +1 -1
- package/cjs/ui/MessageSearchItem.js +11 -10
- package/cjs/ui/MessageSearchItem.js.map +1 -1
- package/cjs/ui/MessageStatus.js +11 -10
- package/cjs/ui/MessageStatus.js.map +1 -1
- 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/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 +9 -8
- package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
- package/cjs/ui/UserListItem.js +11 -11
- package/cjs/ui/UserProfile.js +10 -10
- package/cjs/ui/Word.js +11 -11
- package/cjs/{useLongPress-72c5c822.js → useLongPress-e7140087.js} +3 -3
- package/cjs/{useLongPress-72c5c822.js.map → useLongPress-e7140087.js.map} +1 -1
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/{utils-68a6f93a.js → utils-693dd952.js} +1 -1
- package/cjs/{utils-68a6f93a.js.map → utils-693dd952.js.map} +1 -1
- package/cjs/{utils-33e5dfc7.js → utils-708aa730.js} +1 -1
- package/cjs/{utils-33e5dfc7.js.map → utils-708aa730.js.map} +1 -1
- package/cjs/{utils-b01aea7a.js → utils-b6001dd4.js} +2 -2
- package/cjs/{utils-b01aea7a.js.map → utils-b6001dd4.js.map} +1 -1
- package/cjs/{utils-d652183b.js → utils-ba58eacf.js} +1 -1
- package/cjs/{utils-d652183b.js.map → utils-ba58eacf.js.map} +1 -1
- package/cjs/{uuid-2c11c530.js → uuid-a9006ea2.js} +1 -1
- package/cjs/{uuid-2c11c530.js.map → uuid-a9006ea2.js.map} +1 -1
- package/cjs/withSendbird.js +1 -1
- package/{color-a6ad5b2f.js → color-c39702d1.js} +1 -1
- package/{color-a6ad5b2f.js.map → color-c39702d1.js.map} +1 -1
- package/{compareIds-4e3d3f6c.js → compareIds-063e5503.js} +1 -1
- package/{compareIds-4e3d3f6c.js.map → compareIds-063e5503.js.map} +1 -1
- package/{const-40f65aaf.js → const-14919575.js} +1 -1
- package/{const-40f65aaf.js.map → const-14919575.js.map} +1 -1
- package/{const-c982283f.js → const-1510a671.js} +1 -1
- package/{const-c982283f.js.map → const-1510a671.js.map} +1 -1
- package/{context-fa809401.js → context-d5dc28c9.js} +2 -2
- package/{context-fa809401.js.map → context-d5dc28c9.js.map} +1 -1
- package/dist/index.css +212 -45
- package/dist/index.css.map +1 -1
- package/{index-856dc0bd.js → index-0fd24497.js} +4 -57
- package/index-0fd24497.js.map +1 -0
- package/{index-4da1ff3b.js → index-2561104e.js} +2 -2
- package/{index-4da1ff3b.js.map → index-2561104e.js.map} +1 -1
- package/index-54843058.js +57 -0
- package/index-54843058.js.map +1 -0
- package/{index-b16ab63e.js → index-58e5d82d.js} +2 -2
- package/index-58e5d82d.js.map +1 -0
- package/{index-14786153.js → index-5e776774.js} +1 -1
- package/{index-14786153.js.map → index-5e776774.js.map} +1 -1
- package/{index-eff254f0.js → index-7c1f570b.js} +5 -5
- package/{index-eff254f0.js.map → index-7c1f570b.js.map} +1 -1
- package/{index-256d00f1.js → index-95ac9232.js} +2 -2
- package/{index-256d00f1.js.map → index-95ac9232.js.map} +1 -1
- package/{index-58485e08.js → index-b19486f5.js} +2 -2
- package/{index-58485e08.js.map → index-b19486f5.js.map} +1 -1
- package/{index-098867a9.js → index-b8de16d6.js} +8 -7
- package/{index-098867a9.js.map → index-b8de16d6.js.map} +1 -1
- package/{index-b714065b.js → index-d07faed8.js} +7 -7
- package/{index-b714065b.js.map → index-d07faed8.js.map} +1 -1
- package/{index-f0cb5427.js → index-d81c515b.js} +1 -1
- package/{index-f0cb5427.js.map → index-d81c515b.js.map} +1 -1
- package/{index-a8115de7.js → index-eadca08d.js} +2 -2
- package/{index-a8115de7.js.map → index-eadca08d.js.map} +1 -1
- package/{index-924f6629.js → index-fd15e3b0.js} +13 -6
- package/index-fd15e3b0.js.map +1 -0
- package/index.d.ts +109 -1
- package/index.js +39 -38
- package/index.js.map +1 -1
- package/package.json +4 -2
- package/sendbirdSelectors.js +2 -2
- package/{stringSet-8039f73a.js → stringSet-7ace5726.js} +5 -1
- package/stringSet-7ace5726.js.map +1 -0
- package/{topics-948f8346.js → topics-d390daf6.js} +1 -1
- package/{topics-948f8346.js.map → topics-d390daf6.js.map} +1 -1
- package/{tslib.es6-ea477498.js → tslib.es6-d9fa3716.js} +14 -2
- package/{tslib.es6-ea477498.js.map → tslib.es6-d9fa3716.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/MessageContent.js +21 -20
- package/ui/MessageContent.js.map +1 -1
- package/ui/MessageInput.js +9 -9
- package/ui/MessageItemMenu.js +7 -7
- package/ui/MessageItemReactionMenu.js +5 -5
- package/ui/MessageSearchFileItem.js +10 -9
- package/ui/MessageSearchFileItem.js.map +1 -1
- package/ui/MessageSearchItem.js +10 -9
- package/ui/MessageSearchItem.js.map +1 -1
- package/ui/MessageStatus.js +11 -10
- package/ui/MessageStatus.js.map +1 -1
- 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/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 +9 -8
- package/ui/UnknownMessageItemBody.js.map +1 -1
- package/ui/UserListItem.js +11 -11
- package/ui/UserProfile.js +10 -10
- package/ui/Word.js +11 -11
- package/{useLongPress-2fbbada1.js → useLongPress-7d9a5f67.js} +3 -3
- package/{useLongPress-2fbbada1.js.map → useLongPress-7d9a5f67.js.map} +1 -1
- package/useSendbirdStateContext.js +1 -1
- package/{utils-437f34f2.js → utils-30c326f7.js} +1 -1
- package/{utils-437f34f2.js.map → utils-30c326f7.js.map} +1 -1
- package/{utils-9b75cf2c.js → utils-40ce4da5.js} +1 -1
- package/{utils-9b75cf2c.js.map → utils-40ce4da5.js.map} +1 -1
- package/{utils-119c0f8a.js → utils-d485030c.js} +2 -2
- package/{utils-119c0f8a.js.map → utils-d485030c.js.map} +1 -1
- package/{utils-51dfc7e7.js → utils-ded73fa5.js} +1 -1
- package/{utils-51dfc7e7.js.map → utils-ded73fa5.js.map} +1 -1
- package/{uuid-2d756af4.js → uuid-968941a0.js} +1 -1
- package/{uuid-2d756af4.js.map → uuid-968941a0.js.map} +1 -1
- package/withSendbird.js +1 -1
- package/_rollupPluginBabelHelpers-d746227b.js.map +0 -1
- package/cjs/_rollupPluginBabelHelpers-41d3db2d.js.map +0 -1
- package/cjs/index-476f089f.js.map +0 -1
- package/cjs/index-50984f15.js.map +0 -1
- package/cjs/index-c6abe71b.js.map +0 -1
- package/cjs/stringSet-af541fde.js.map +0 -1
- package/index-856dc0bd.js.map +0 -1
- package/index-924f6629.js.map +0 -1
- package/index-b16ab63e.js.map +0 -1
- package/stringSet-8039f73a.js.map +0 -1
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import { a as __spreadArray } from '../../tslib.es6-
|
|
1
|
+
import { a as __spreadArray } from '../../tslib.es6-d9fa3716.js';
|
|
2
2
|
import React__default, { useState, useContext, useRef, useLayoutEffect, useEffect, useMemo } from 'react';
|
|
3
|
-
import { f as format } from '../../index-
|
|
4
|
-
import { u as useLocalization } from '../../LocalizationContext-
|
|
3
|
+
import { f as format } from '../../index-eadca08d.js';
|
|
4
|
+
import { u as useLocalization } from '../../LocalizationContext-60894e38.js';
|
|
5
5
|
import DateSeparator from '../../ui/DateSeparator.js';
|
|
6
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-
|
|
7
|
-
import { R as RemoveMessage } from '../../RemoveMessageModal-
|
|
6
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-95ac9232.js';
|
|
7
|
+
import { R as RemoveMessage } from '../../RemoveMessageModal-b025d4a7.js';
|
|
8
8
|
import FileViewer from '../../ui/FileViewer.js';
|
|
9
|
-
import { u as useThreadContext } from '../../ThreadProvider-
|
|
9
|
+
import { u as useThreadContext } from '../../ThreadProvider-de5a7889.js';
|
|
10
10
|
import useSendbirdStateContext from '../../useSendbirdStateContext.js';
|
|
11
11
|
import SuggestedMentionList from '../../Channel/components/SuggestedMentionList.js';
|
|
12
12
|
import MessageInput from '../../ui/MessageInput.js';
|
|
13
13
|
import { ThreadListStateTypes } from '../context/types.js';
|
|
14
|
-
import { M as MessageInputKeys } from '../../const-
|
|
14
|
+
import { M as MessageInputKeys } from '../../const-1510a671.js';
|
|
15
15
|
import ContextMenu, { MenuItems } from '../../ui/ContextMenu.js';
|
|
16
16
|
import Avatar from '../../ui/Avatar.js';
|
|
17
|
-
import { a as UserProfileContext } from '../../UserProfileContext-
|
|
17
|
+
import { a as UserProfileContext } from '../../UserProfileContext-33a26cc4.js';
|
|
18
18
|
import UserProfile from '../../ui/UserProfile.js';
|
|
19
19
|
import MessageItemMenu from '../../ui/MessageItemMenu.js';
|
|
20
20
|
import MessageItemReactionMenu from '../../ui/MessageItemReactionMenu.js';
|
|
21
|
-
import { y as getUIKitMessageTypes, z as getSenderName, h as getClassName, A as isTextMessage, B as isOGMessage, C as getUIKitMessageType, n as isThumbnailMessage } from '../../index-
|
|
22
|
-
import { M as MessageStatus } from '../../index-
|
|
21
|
+
import { y as getUIKitMessageTypes, z as getSenderName, h as getClassName, A as isTextMessage, B as isOGMessage, C as getUIKitMessageType, n as isThumbnailMessage } from '../../index-58e5d82d.js';
|
|
22
|
+
import { M as MessageStatus } from '../../index-b8de16d6.js';
|
|
23
23
|
import EmojiReactions from '../../ui/EmojiReactions.js';
|
|
24
24
|
import TextMessageItemBody from '../../ui/TextMessageItemBody.js';
|
|
25
25
|
import OGMessageItemBody from '../../ui/OGMessageItemBody.js';
|
|
@@ -27,37 +27,38 @@ import FileMessageItemBody from '../../ui/FileMessageItemBody.js';
|
|
|
27
27
|
import ThumbnailMessageItemBody from '../../ui/ThumbnailMessageItemBody.js';
|
|
28
28
|
import UnknownMessageItemBody from '../../ui/UnknownMessageItemBody.js';
|
|
29
29
|
import { Role } from '@sendbird/chat';
|
|
30
|
-
import '../../index-
|
|
31
|
-
import '../../stringSet-
|
|
32
|
-
import '../../color-
|
|
30
|
+
import '../../index-5e776774.js';
|
|
31
|
+
import '../../stringSet-7ace5726.js';
|
|
32
|
+
import '../../color-c39702d1.js';
|
|
33
33
|
import 'prop-types';
|
|
34
34
|
import '../../ui/Modal.js';
|
|
35
35
|
import 'react-dom';
|
|
36
|
-
import '../../index-
|
|
36
|
+
import '../../index-d81c515b.js';
|
|
37
37
|
import '../../ui/Button.js';
|
|
38
38
|
import '../../ui/Icon.js';
|
|
39
39
|
import '../../ui/IconButton.js';
|
|
40
|
-
import '../../MediaQueryContext-
|
|
40
|
+
import '../../MediaQueryContext-bcf72e28.js';
|
|
41
41
|
import '../../utils/message/getOutgoingMessageState.js';
|
|
42
42
|
import '../../ui/ImageRenderer.js';
|
|
43
|
-
import '../../uuid-
|
|
44
|
-
import '../../topics-
|
|
43
|
+
import '../../uuid-968941a0.js';
|
|
44
|
+
import '../../topics-d390daf6.js';
|
|
45
45
|
import '@sendbird/chat/groupChannel';
|
|
46
46
|
import '@sendbird/chat/message';
|
|
47
47
|
import '../../withSendbird.js';
|
|
48
|
-
import '../../_rollupPluginBabelHelpers-
|
|
49
|
-
import '../../ChannelProvider-
|
|
50
|
-
import '../../compareIds-
|
|
51
|
-
import '../../const-
|
|
48
|
+
import '../../_rollupPluginBabelHelpers-ed44209e.js';
|
|
49
|
+
import '../../ChannelProvider-c9db10c0.js';
|
|
50
|
+
import '../../compareIds-063e5503.js';
|
|
51
|
+
import '../../const-14919575.js';
|
|
52
52
|
import '../../ui/ReactionButton.js';
|
|
53
53
|
import '../../ui/SortByRow.js';
|
|
54
54
|
import 'react-dom/server';
|
|
55
55
|
import '../../ui/MentionUserLabel.js';
|
|
56
56
|
import '../../sendbirdSelectors.js';
|
|
57
|
-
import '../../utils-
|
|
57
|
+
import '../../utils-30c326f7.js';
|
|
58
58
|
import '../../ui/Loader.js';
|
|
59
|
-
import '../../index-
|
|
60
|
-
import '../../index-
|
|
59
|
+
import '../../index-0fd24497.js';
|
|
60
|
+
import '../../index-b19486f5.js';
|
|
61
|
+
import '../../index-54843058.js';
|
|
61
62
|
import '../../ui/Tooltip.js';
|
|
62
63
|
import '../../ui/TooltipWrapper.js';
|
|
63
64
|
import '../../ui/ReactionBadge.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThreadListItem.js","sources":["../../../src/smart-components/Thread/components/ThreadList/ThreadListItemContent.tsx","../../../src/smart-components/Thread/components/ThreadList/ThreadListItem.tsx"],"sourcesContent":["import React, { useContext, useRef, useState } from 'react';\nimport { EmojiContainer } from '@sendbird/chat';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\n\nimport './ThreadListItemContent.scss';\n\nimport { ReplyType } from '../../../../types';\nimport ContextMenu, { MenuItems } from '../../../../ui/ContextMenu';\nimport Avatar from '../../../../ui/Avatar';\nimport { UserProfileContext } from '../../../../lib/UserProfileContext';\nimport { UserProfileContextInterface } from '../../../../ui/MessageContent';\nimport UserProfile from '../../../../ui/UserProfile';\nimport MessageItemMenu from '../../../../ui/MessageItemMenu';\nimport MessageItemReactionMenu from '../../../../ui/MessageItemReactionMenu';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { getClassName, getSenderName, getUIKitMessageType, getUIKitMessageTypes, isOGMessage, isTextMessage, isThumbnailMessage } from '../../../../utils';\nimport MessageStatus from '../../../../ui/MessageStatus';\nimport EmojiReactions from '../../../../ui/EmojiReactions';\nimport format from 'date-fns/format';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport TextMessageItemBody from '../../../../ui/TextMessageItemBody';\nimport OGMessageItemBody from '../../../../ui/OGMessageItemBody';\nimport FileMessageItemBody from '../../../../ui/FileMessageItemBody';\nimport ThumbnailMessageItemBody from '../../../../ui/ThumbnailMessageItemBody';\nimport UnknownMessageItemBody from '../../../../ui/UnknownMessageItemBody';\n\nexport interface ThreadListItemContentProps {\n className?: string;\n userId: string;\n channel: GroupChannel;\n message: UserMessage | FileMessage;\n disabled?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n isMentionEnabled?: boolean;\n isReactionEnabled?: boolean;\n disableQuoteMessage?: boolean;\n replyType?: ReplyType;\n nicknamesMap?: Map<string, string>;\n emojiContainer?: EmojiContainer;\n showEdit?: (bool: boolean) => void;\n showRemove?: (bool: boolean) => void;\n showFileViewer?: (bool: boolean) => void;\n resendMessage?: (message: UserMessage | FileMessage) => void;\n toggleReaction?: (message: UserMessage | FileMessage, reactionKey: string, isReacted: boolean) => void;\n onReplyInThread?: (props: { message: UserMessage | FileMessage }) => void;\n}\n\nexport default function ThreadListItemContent({\n className,\n userId,\n channel,\n message,\n disabled = false,\n chainTop = false,\n chainBottom = false,\n isMentionEnabled = false,\n isReactionEnabled = false,\n disableQuoteMessage = false,\n replyType,\n nicknamesMap,\n emojiContainer,\n showEdit,\n showRemove,\n showFileViewer,\n resendMessage,\n toggleReaction,\n onReplyInThread,\n}: ThreadListItemContentProps): React.ReactElement {\n const messageTypes = getUIKitMessageTypes();\n const { dateLocale } = useLocalization();\n const [supposedHover, setSupposedHover] = useState(false);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext<UserProfileContextInterface>(UserProfileContext);\n const avatarRef = useRef(null);\n\n const isByMe = (userId === (message as UserMessage | FileMessage)?.sender?.userId)\n || ((message as UserMessage | FileMessage)?.sendingStatus === 'pending')\n || ((message as UserMessage | FileMessage)?.sendingStatus === 'failed');\n const useReplying = !!((replyType === 'QUOTE_REPLY' || replyType === 'THREAD')\n && message?.parentMessageId && message?.parentMessage\n && !disableQuoteMessage\n );\n const supposedHoverClassName = supposedHover ? 'sendbird-mouse-hover' : '';\n return (\n <div className={`sendbird-thread-list-item-content ${className} ${isByMe ? 'outgoing' : 'incoming'}`}>\n <div className={`sendbird-thread-list-item-content__left ${isReactionEnabled ? 'use-reaction' : ''} ${isByMe ? 'outgoing' : 'incoming'}`}>\n {(!isByMe && !chainBottom) && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-thread-list-item-content__left__avatar\"\n src={channel?.members?.find((member) => member?.userId === message?.sender?.userId)?.profileUrl || message?.sender?.profileUrl || ''}\n ref={avatarRef}\n width=\"28px\"\n height=\"28px\"\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown?.();\n }\n }}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={avatarRef}\n parentContainRef={avatarRef}\n closeDropdown={closeDropdown}\n style={{ paddingTop: '0px', paddingBottom: '0px' }}\n >\n {renderUserProfile\n ? renderUserProfile({ user: message?.sender, close: closeDropdown })\n : <UserProfile user={message?.sender} onSuccess={closeDropdown} />\n }\n </MenuItems>\n )}\n />\n )}\n {isByMe && (\n <div\n className={`sendbird-thread-list-item-content-menu ${isReactionEnabled ? 'use-reaction' : ''\n } ${isByMe ? 'outgoing' : 'incoming'\n } ${supposedHoverClassName}`}\n >\n <MessageItemMenu\n className=\"sendbird-thread-list-item-content-menu__normal-menu\"\n channel={channel}\n message={message as UserMessage | FileMessage}\n isByMe={isByMe}\n replyType={replyType}\n disabled={disabled}\n showEdit={showEdit}\n showRemove={showRemove}\n resendMessage={resendMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={onReplyInThread}\n />\n {isReactionEnabled && (\n <MessageItemReactionMenu\n className=\"sendbird-thread-list-item-content-menu__reaction-menu\"\n message={message as UserMessage | FileMessage}\n userId={userId}\n spaceFromTrigger={{}}\n emojiContainer={emojiContainer}\n toggleReaction={toggleReaction}\n setSupposedHover={setSupposedHover}\n />\n )}\n </div>\n )}\n </div>\n <div className=\"sendbird-thread-list-item-content__middle\">\n {(!isByMe && !chainTop && !useReplying) && (\n <Label\n className=\"sendbird-thread-list-item-content__middle__sender-name\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {\n channel?.members?.find((member) => member?.userId === message?.sender?.userId)?.nickname\n || getSenderName(message as UserMessage | FileMessage)\n // TODO: Divide getting profileUrl logic to utils\n }\n </Label>\n )}\n <div className={getClassName(['sendbird-thread-list-item-content__middle__body-container'])} >\n {/* message status component */}\n {(isByMe && !chainBottom) && (\n <div className={getClassName(['sendbird-thread-list-item-content__middle__body-container__created-at', 'left', supposedHoverClassName])}>\n <div className=\"sendbird-thread-list-item-content__middle__body-container__created-at__component-container\">\n <MessageStatus\n message={message as UserMessage | FileMessage}\n channel={channel}\n />\n </div>\n </div>\n )}\n {/* message item body components */}\n {isTextMessage(message as UserMessage) && (\n <TextMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n isMentionEnabled={isMentionEnabled}\n isReactionEnabled={isReactionEnabled}\n />\n )}\n {(isOGMessage(message as UserMessage)) && (\n <OGMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n isMentionEnabled={isMentionEnabled}\n isReactionEnabled={isReactionEnabled}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.FILE) && (\n <FileMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabled}\n truncateLimit={isByMe ? 18 : 14}\n />\n )}\n {(isThumbnailMessage(message as FileMessage)) && (\n <ThumbnailMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabled}\n showFileViewer={showFileViewer}\n style={{\n width: '200px',\n height: '148px',\n }}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.UNKNOWN) && (\n <UnknownMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabled}\n />\n )}\n {/* reactions */}\n {(isReactionEnabled && message?.reactions?.length > 0) && (\n <div className={getClassName([\n 'sendbird-thread-list-item-content-reactions',\n (!isByMe || isThumbnailMessage(message as FileMessage) || isOGMessage(message as UserMessage)) ? '' : 'primary',\n ])}>\n <EmojiReactions\n userId={userId}\n message={message as UserMessage | FileMessage}\n isByMe={isByMe}\n emojiContainer={emojiContainer}\n memberNicknamesMap={nicknamesMap}\n toggleReaction={toggleReaction}\n />\n </div>\n )}\n {(!isByMe && !chainBottom) && (\n <Label\n className={getClassName(['sendbird-thread-list-item-content__middle__body-container__created-at', 'right', supposedHoverClassName])}\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {format(message?.createdAt || 0, 'p', {\n locale: dateLocale,\n })}\n </Label>\n )}\n </div>\n </div>\n <div\n className={`sendbird-thread-list-item-content__right ${chainTop ? 'chain-top' : ''\n } ${isByMe ? 'outgoing' : 'incoming'}`}\n >\n {!isByMe && (\n <div className={`sendbird-thread-list-item-content-menu ${supposedHoverClassName}`}>\n {isReactionEnabled && (\n <MessageItemReactionMenu\n className=\"sendbird-thread-list-item-content-menu__reaction-menu\"\n message={message as UserMessage | FileMessage}\n userId={userId}\n spaceFromTrigger={{}}\n emojiContainer={emojiContainer}\n toggleReaction={toggleReaction}\n setSupposedHover={setSupposedHover}\n />\n )}\n <MessageItemMenu\n className=\"sendbird-thread-list-item-content-menu__normal-menu\"\n channel={channel}\n message={message as UserMessage | FileMessage}\n isByMe={isByMe}\n replyType={replyType}\n disabled={disabled}\n showRemove={showRemove}\n resendMessage={resendMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={onReplyInThread}\n />\n </div>\n )}\n </div>\n </div>\n );\n}\n","import React, { useMemo, useState, useRef, useEffect, useLayoutEffect } from 'react';\nimport format from 'date-fns/format';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport RemoveMessage from '../RemoveMessageModal';\nimport FileViewer from '../../../../ui/FileViewer';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport SuggestedMentionList from '../../../Channel/components/SuggestedMentionList';\nimport MessageInput from '../../../../ui/MessageInput';\nimport { ThreadListStateTypes } from '../../types';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport ThreadListItemContent from './ThreadListItemContent';\nimport { Role } from '@sendbird/chat';\n\nexport interface ThreadListItemProps {\n className?: string;\n message: UserMessage | FileMessage;\n chainTop?: boolean;\n chainBottom?: boolean;\n hasSeparator?: boolean;\n renderCustomSeparator?: (props: { message: UserMessage | FileMessage }) => React.ReactElement;\n handleScroll?: () => void;\n}\n\nexport default function ThreadListItem({\n className,\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n renderCustomSeparator,\n handleScroll,\n}: ThreadListItemProps): React.ReactElement {\n const { stores, config } = useSendbirdStateContext();\n const {\n isReactionEnabled,\n isMentionEnabled,\n isOnline,\n replyType,\n userMention,\n } = config;\n const userId = stores?.userStore?.user?.userId;\n const { dateLocale } = useLocalization();\n const threadContext = useThreadContext?.();\n const {\n currentChannel,\n nicknamesMap,\n emojiContainer,\n toggleReaction,\n threadListState,\n updateMessage,\n resendMessage,\n deleteMessage,\n isMuted,\n isChannelFrozen,\n } = threadContext;\n const openingMessage = threadContext?.message;\n\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const usingReaction = isReactionEnabled && !currentChannel?.isSuper && !currentChannel?.isBroadcast;\n\n // Move to message\n const messageScrollRef = useRef(null);\n useLayoutEffect(() => {\n if (openingMessage?.messageId === message?.messageId && messageScrollRef?.current) {\n messageScrollRef.current?.scrollIntoView({ block: 'center', inline: 'center' });\n }\n }, [openingMessage, messageScrollRef?.current]);\n\n // reactions\n useLayoutEffect(() => {\n handleScroll?.();\n }, [showEdit, message?.reactions?.length]);\n\n // mention\n const editMessageInputRef = useRef(null);\n const [mentionNickname, setMentionNickname] = useState('');\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [ableMention, setAbleMention] = useState(true);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isMuted\n && !(isChannelFrozen && !(currentChannel.myRole === Role.OPERATOR));\n useEffect(() => {\n if (mentionedUsers?.length >= userMention?.maxMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n // edit input\n const disabled = !(threadListState === ThreadListStateTypes.INITIALIZED)\n || !isOnline\n || isMuted\n || isChannelFrozen;\n\n // memorize\n const MemorizedSeparator = useMemo(() => {\n if (typeof renderCustomSeparator === 'function') {\n return renderCustomSeparator?.({ message });\n }\n }, [message, renderCustomSeparator]);\n\n // Edit message\n if (showEdit && message.isUserMessage()) {\n return (\n <>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n // renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={userMention?.maxMentionCount}\n maxSuggestionCount={userMention?.maxSuggestionCount}\n />\n )\n }\n <MessageInput\n isEdit\n disabled={disabled}\n ref={editMessageInputRef}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n message={message}\n onStartTyping={() => {\n currentChannel?.startTyping?.();\n }}\n onUpdateMessage={({ messageId, message, mentionTemplate }) => {\n updateMessage({\n messageId,\n message,\n mentionedUsers,\n mentionTemplate,\n });\n setShowEdit(false);\n currentChannel?.endTyping?.();\n }}\n onCancelEdit={() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setMentionSuggestedUsers([])\n setShowEdit(false);\n currentChannel?.endTyping?.();\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n </>\n );\n }\n\n return (\n <div\n ref={messageScrollRef}\n className={`sendbird-thread-list-item ${className}`}\n >\n {/* date separator */}\n {\n hasSeparator && message?.createdAt && (MemorizedSeparator || (\n <DateSeparator>\n <Label\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {format(message?.createdAt, 'MMM dd, yyyy', { locale: dateLocale })}\n </Label>\n </DateSeparator>\n ))\n }\n <ThreadListItemContent\n userId={userId}\n channel={currentChannel}\n message={message}\n chainTop={chainTop}\n chainBottom={chainBottom}\n isReactionEnabled={usingReaction}\n isMentionEnabled={isMentionEnabled}\n disableQuoteMessage\n replyType={replyType}\n nicknamesMap={nicknamesMap}\n emojiContainer={emojiContainer}\n resendMessage={resendMessage}\n showRemove={setShowRemove}\n showFileViewer={setShowFileViewer}\n toggleReaction={toggleReaction}\n showEdit={setShowEdit}\n />\n {/* modal */}\n {showRemove && (\n <RemoveMessage\n message={message}\n onCancel={() => setShowRemove(false)}\n />\n )}\n {showFileViewer && (\n <FileViewer\n message={message as FileMessage}\n isByMe={message?.sender?.userId === userId}\n onClose={() => setShowFileViewer(false)}\n onDelete={() => {\n deleteMessage(message);\n setShowFileViewer(false);\n }}\n />\n )}\n </div>\n );\n}\n"],"names":["ThreadListItemContent","_a","className","userId","channel","message","_f","disabled","_g","chainTop","_h","chainBottom","_j","isMentionEnabled","_k","isReactionEnabled","_l","disableQuoteMessage","replyType","nicknamesMap","emojiContainer","showEdit","showRemove","showFileViewer","resendMessage","toggleReaction","onReplyInThread","messageTypes","getUIKitMessageTypes","dateLocale","useLocalization","_m","useState","supposedHover","setSupposedHover","_o","useContext","UserProfileContext","disableUserProfile","renderUserProfile","avatarRef","useRef","isByMe","sender","_b","sendingStatus","useReplying","parentMessageId","parentMessage","supposedHoverClassName","React","concat","toggleDropdown","members","find","member","profileUrl","_c","closeDropdown","paddingTop","paddingBottom","user","close","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","_d","nickname","getSenderName","getClassName","isTextMessage","isOGMessage","getUIKitMessageType","FILE","isThumbnailMessage","width","height","UNKNOWN","_e","reactions","length","CAPTION_3","format","createdAt","locale","ThreadListItem","hasSeparator","renderCustomSeparator","handleScroll","useSendbirdStateContext","stores","config","isOnline","userMention","userStore","threadContext","useThreadContext","currentChannel","threadListState","updateMessage","deleteMessage","isMuted","isChannelFrozen","openingMessage","setShowEdit","setShowRemove","setShowFileViewer","usingReaction","isSuper","isBroadcast","messageScrollRef","useLayoutEffect","messageId","current","scrollIntoView","block","inline","editMessageInputRef","mentionNickname","setMentionNickname","mentionedUsers","setMentionedUsers","mentionedUserIds","setMentionedUserIds","messageInputEvent","setMessageInputEvent","_p","selectedUser","setSelectedUser","_q","mentionSuggestedUsers","setMentionSuggestedUsers","_r","ableMention","setAbleMention","displaySuggestedMentionList","myRole","Role","OPERATOR","useEffect","maxMentionCount","filter","i","indexOf","splice","ThreadListStateTypes","INITIALIZED","MemorizedSeparator","useMemo","isUserMessage","__spreadArray","users","maxSuggestionCount","startTyping","mentionTemplate","endTyping","mentionText","userIds","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ThreadListItem.js","sources":["../../../src/smart-components/Thread/components/ThreadList/ThreadListItemContent.tsx","../../../src/smart-components/Thread/components/ThreadList/ThreadListItem.tsx"],"sourcesContent":["import React, { useContext, useRef, useState } from 'react';\nimport { EmojiContainer } from '@sendbird/chat';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\n\nimport './ThreadListItemContent.scss';\n\nimport { ReplyType } from '../../../../types';\nimport ContextMenu, { MenuItems } from '../../../../ui/ContextMenu';\nimport Avatar from '../../../../ui/Avatar';\nimport { UserProfileContext } from '../../../../lib/UserProfileContext';\nimport { UserProfileContextInterface } from '../../../../ui/MessageContent';\nimport UserProfile from '../../../../ui/UserProfile';\nimport MessageItemMenu from '../../../../ui/MessageItemMenu';\nimport MessageItemReactionMenu from '../../../../ui/MessageItemReactionMenu';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { getClassName, getSenderName, getUIKitMessageType, getUIKitMessageTypes, isOGMessage, isTextMessage, isThumbnailMessage } from '../../../../utils';\nimport MessageStatus from '../../../../ui/MessageStatus';\nimport EmojiReactions from '../../../../ui/EmojiReactions';\nimport format from 'date-fns/format';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport TextMessageItemBody from '../../../../ui/TextMessageItemBody';\nimport OGMessageItemBody from '../../../../ui/OGMessageItemBody';\nimport FileMessageItemBody from '../../../../ui/FileMessageItemBody';\nimport ThumbnailMessageItemBody from '../../../../ui/ThumbnailMessageItemBody';\nimport UnknownMessageItemBody from '../../../../ui/UnknownMessageItemBody';\n\nexport interface ThreadListItemContentProps {\n className?: string;\n userId: string;\n channel: GroupChannel;\n message: UserMessage | FileMessage;\n disabled?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n isMentionEnabled?: boolean;\n isReactionEnabled?: boolean;\n disableQuoteMessage?: boolean;\n replyType?: ReplyType;\n nicknamesMap?: Map<string, string>;\n emojiContainer?: EmojiContainer;\n showEdit?: (bool: boolean) => void;\n showRemove?: (bool: boolean) => void;\n showFileViewer?: (bool: boolean) => void;\n resendMessage?: (message: UserMessage | FileMessage) => void;\n toggleReaction?: (message: UserMessage | FileMessage, reactionKey: string, isReacted: boolean) => void;\n onReplyInThread?: (props: { message: UserMessage | FileMessage }) => void;\n}\n\nexport default function ThreadListItemContent({\n className,\n userId,\n channel,\n message,\n disabled = false,\n chainTop = false,\n chainBottom = false,\n isMentionEnabled = false,\n isReactionEnabled = false,\n disableQuoteMessage = false,\n replyType,\n nicknamesMap,\n emojiContainer,\n showEdit,\n showRemove,\n showFileViewer,\n resendMessage,\n toggleReaction,\n onReplyInThread,\n}: ThreadListItemContentProps): React.ReactElement {\n const messageTypes = getUIKitMessageTypes();\n const { dateLocale } = useLocalization();\n const [supposedHover, setSupposedHover] = useState(false);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext<UserProfileContextInterface>(UserProfileContext);\n const avatarRef = useRef(null);\n\n const isByMe = (userId === (message as UserMessage | FileMessage)?.sender?.userId)\n || ((message as UserMessage | FileMessage)?.sendingStatus === 'pending')\n || ((message as UserMessage | FileMessage)?.sendingStatus === 'failed');\n const useReplying = !!((replyType === 'QUOTE_REPLY' || replyType === 'THREAD')\n && message?.parentMessageId && message?.parentMessage\n && !disableQuoteMessage\n );\n const supposedHoverClassName = supposedHover ? 'sendbird-mouse-hover' : '';\n return (\n <div className={`sendbird-thread-list-item-content ${className} ${isByMe ? 'outgoing' : 'incoming'}`}>\n <div className={`sendbird-thread-list-item-content__left ${isReactionEnabled ? 'use-reaction' : ''} ${isByMe ? 'outgoing' : 'incoming'}`}>\n {(!isByMe && !chainBottom) && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-thread-list-item-content__left__avatar\"\n src={channel?.members?.find((member) => member?.userId === message?.sender?.userId)?.profileUrl || message?.sender?.profileUrl || ''}\n ref={avatarRef}\n width=\"28px\"\n height=\"28px\"\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown?.();\n }\n }}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={avatarRef}\n parentContainRef={avatarRef}\n closeDropdown={closeDropdown}\n style={{ paddingTop: '0px', paddingBottom: '0px' }}\n >\n {renderUserProfile\n ? renderUserProfile({ user: message?.sender, close: closeDropdown })\n : <UserProfile user={message?.sender} onSuccess={closeDropdown} />\n }\n </MenuItems>\n )}\n />\n )}\n {isByMe && (\n <div\n className={`sendbird-thread-list-item-content-menu ${isReactionEnabled ? 'use-reaction' : ''\n } ${isByMe ? 'outgoing' : 'incoming'\n } ${supposedHoverClassName}`}\n >\n <MessageItemMenu\n className=\"sendbird-thread-list-item-content-menu__normal-menu\"\n channel={channel}\n message={message as UserMessage | FileMessage}\n isByMe={isByMe}\n replyType={replyType}\n disabled={disabled}\n showEdit={showEdit}\n showRemove={showRemove}\n resendMessage={resendMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={onReplyInThread}\n />\n {isReactionEnabled && (\n <MessageItemReactionMenu\n className=\"sendbird-thread-list-item-content-menu__reaction-menu\"\n message={message as UserMessage | FileMessage}\n userId={userId}\n spaceFromTrigger={{}}\n emojiContainer={emojiContainer}\n toggleReaction={toggleReaction}\n setSupposedHover={setSupposedHover}\n />\n )}\n </div>\n )}\n </div>\n <div className=\"sendbird-thread-list-item-content__middle\">\n {(!isByMe && !chainTop && !useReplying) && (\n <Label\n className=\"sendbird-thread-list-item-content__middle__sender-name\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {\n channel?.members?.find((member) => member?.userId === message?.sender?.userId)?.nickname\n || getSenderName(message as UserMessage | FileMessage)\n // TODO: Divide getting profileUrl logic to utils\n }\n </Label>\n )}\n <div className={getClassName(['sendbird-thread-list-item-content__middle__body-container'])} >\n {/* message status component */}\n {(isByMe && !chainBottom) && (\n <div className={getClassName(['sendbird-thread-list-item-content__middle__body-container__created-at', 'left', supposedHoverClassName])}>\n <div className=\"sendbird-thread-list-item-content__middle__body-container__created-at__component-container\">\n <MessageStatus\n message={message as UserMessage | FileMessage}\n channel={channel}\n />\n </div>\n </div>\n )}\n {/* message item body components */}\n {isTextMessage(message as UserMessage) && (\n <TextMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n isMentionEnabled={isMentionEnabled}\n isReactionEnabled={isReactionEnabled}\n />\n )}\n {(isOGMessage(message as UserMessage)) && (\n <OGMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n isMentionEnabled={isMentionEnabled}\n isReactionEnabled={isReactionEnabled}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.FILE) && (\n <FileMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabled}\n truncateLimit={isByMe ? 18 : 14}\n />\n )}\n {(isThumbnailMessage(message as FileMessage)) && (\n <ThumbnailMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabled}\n showFileViewer={showFileViewer}\n style={{\n width: '200px',\n height: '148px',\n }}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.UNKNOWN) && (\n <UnknownMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabled}\n />\n )}\n {/* reactions */}\n {(isReactionEnabled && message?.reactions?.length > 0) && (\n <div className={getClassName([\n 'sendbird-thread-list-item-content-reactions',\n (!isByMe || isThumbnailMessage(message as FileMessage) || isOGMessage(message as UserMessage)) ? '' : 'primary',\n ])}>\n <EmojiReactions\n userId={userId}\n message={message as UserMessage | FileMessage}\n isByMe={isByMe}\n emojiContainer={emojiContainer}\n memberNicknamesMap={nicknamesMap}\n toggleReaction={toggleReaction}\n />\n </div>\n )}\n {(!isByMe && !chainBottom) && (\n <Label\n className={getClassName(['sendbird-thread-list-item-content__middle__body-container__created-at', 'right', supposedHoverClassName])}\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {format(message?.createdAt || 0, 'p', {\n locale: dateLocale,\n })}\n </Label>\n )}\n </div>\n </div>\n <div\n className={`sendbird-thread-list-item-content__right ${chainTop ? 'chain-top' : ''\n } ${isByMe ? 'outgoing' : 'incoming'}`}\n >\n {!isByMe && (\n <div className={`sendbird-thread-list-item-content-menu ${supposedHoverClassName}`}>\n {isReactionEnabled && (\n <MessageItemReactionMenu\n className=\"sendbird-thread-list-item-content-menu__reaction-menu\"\n message={message as UserMessage | FileMessage}\n userId={userId}\n spaceFromTrigger={{}}\n emojiContainer={emojiContainer}\n toggleReaction={toggleReaction}\n setSupposedHover={setSupposedHover}\n />\n )}\n <MessageItemMenu\n className=\"sendbird-thread-list-item-content-menu__normal-menu\"\n channel={channel}\n message={message as UserMessage | FileMessage}\n isByMe={isByMe}\n replyType={replyType}\n disabled={disabled}\n showRemove={showRemove}\n resendMessage={resendMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={onReplyInThread}\n />\n </div>\n )}\n </div>\n </div>\n );\n}\n","import React, { useMemo, useState, useRef, useEffect, useLayoutEffect } from 'react';\nimport format from 'date-fns/format';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport RemoveMessage from '../RemoveMessageModal';\nimport FileViewer from '../../../../ui/FileViewer';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport SuggestedMentionList from '../../../Channel/components/SuggestedMentionList';\nimport MessageInput from '../../../../ui/MessageInput';\nimport { ThreadListStateTypes } from '../../types';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport ThreadListItemContent from './ThreadListItemContent';\nimport { Role } from '@sendbird/chat';\n\nexport interface ThreadListItemProps {\n className?: string;\n message: UserMessage | FileMessage;\n chainTop?: boolean;\n chainBottom?: boolean;\n hasSeparator?: boolean;\n renderCustomSeparator?: (props: { message: UserMessage | FileMessage }) => React.ReactElement;\n handleScroll?: () => void;\n}\n\nexport default function ThreadListItem({\n className,\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n renderCustomSeparator,\n handleScroll,\n}: ThreadListItemProps): React.ReactElement {\n const { stores, config } = useSendbirdStateContext();\n const {\n isReactionEnabled,\n isMentionEnabled,\n isOnline,\n replyType,\n userMention,\n } = config;\n const userId = stores?.userStore?.user?.userId;\n const { dateLocale } = useLocalization();\n const threadContext = useThreadContext?.();\n const {\n currentChannel,\n nicknamesMap,\n emojiContainer,\n toggleReaction,\n threadListState,\n updateMessage,\n resendMessage,\n deleteMessage,\n isMuted,\n isChannelFrozen,\n } = threadContext;\n const openingMessage = threadContext?.message;\n\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const usingReaction = isReactionEnabled && !currentChannel?.isSuper && !currentChannel?.isBroadcast;\n\n // Move to message\n const messageScrollRef = useRef(null);\n useLayoutEffect(() => {\n if (openingMessage?.messageId === message?.messageId && messageScrollRef?.current) {\n messageScrollRef.current?.scrollIntoView({ block: 'center', inline: 'center' });\n }\n }, [openingMessage, messageScrollRef?.current]);\n\n // reactions\n useLayoutEffect(() => {\n handleScroll?.();\n }, [showEdit, message?.reactions?.length]);\n\n // mention\n const editMessageInputRef = useRef(null);\n const [mentionNickname, setMentionNickname] = useState('');\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [ableMention, setAbleMention] = useState(true);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isMuted\n && !(isChannelFrozen && !(currentChannel.myRole === Role.OPERATOR));\n useEffect(() => {\n if (mentionedUsers?.length >= userMention?.maxMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n // edit input\n const disabled = !(threadListState === ThreadListStateTypes.INITIALIZED)\n || !isOnline\n || isMuted\n || isChannelFrozen;\n\n // memorize\n const MemorizedSeparator = useMemo(() => {\n if (typeof renderCustomSeparator === 'function') {\n return renderCustomSeparator?.({ message });\n }\n }, [message, renderCustomSeparator]);\n\n // Edit message\n if (showEdit && message.isUserMessage()) {\n return (\n <>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n // renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={userMention?.maxMentionCount}\n maxSuggestionCount={userMention?.maxSuggestionCount}\n />\n )\n }\n <MessageInput\n isEdit\n disabled={disabled}\n ref={editMessageInputRef}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n message={message}\n onStartTyping={() => {\n currentChannel?.startTyping?.();\n }}\n onUpdateMessage={({ messageId, message, mentionTemplate }) => {\n updateMessage({\n messageId,\n message,\n mentionedUsers,\n mentionTemplate,\n });\n setShowEdit(false);\n currentChannel?.endTyping?.();\n }}\n onCancelEdit={() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setMentionSuggestedUsers([])\n setShowEdit(false);\n currentChannel?.endTyping?.();\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n </>\n );\n }\n\n return (\n <div\n ref={messageScrollRef}\n className={`sendbird-thread-list-item ${className}`}\n >\n {/* date separator */}\n {\n hasSeparator && message?.createdAt && (MemorizedSeparator || (\n <DateSeparator>\n <Label\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {format(message?.createdAt, 'MMM dd, yyyy', { locale: dateLocale })}\n </Label>\n </DateSeparator>\n ))\n }\n <ThreadListItemContent\n userId={userId}\n channel={currentChannel}\n message={message}\n chainTop={chainTop}\n chainBottom={chainBottom}\n isReactionEnabled={usingReaction}\n isMentionEnabled={isMentionEnabled}\n disableQuoteMessage\n replyType={replyType}\n nicknamesMap={nicknamesMap}\n emojiContainer={emojiContainer}\n resendMessage={resendMessage}\n showRemove={setShowRemove}\n showFileViewer={setShowFileViewer}\n toggleReaction={toggleReaction}\n showEdit={setShowEdit}\n />\n {/* modal */}\n {showRemove && (\n <RemoveMessage\n message={message}\n onCancel={() => setShowRemove(false)}\n />\n )}\n {showFileViewer && (\n <FileViewer\n message={message as FileMessage}\n isByMe={message?.sender?.userId === userId}\n onClose={() => setShowFileViewer(false)}\n onDelete={() => {\n deleteMessage(message);\n setShowFileViewer(false);\n }}\n />\n )}\n </div>\n );\n}\n"],"names":["ThreadListItemContent","_a","className","userId","channel","message","_f","disabled","_g","chainTop","_h","chainBottom","_j","isMentionEnabled","_k","isReactionEnabled","_l","disableQuoteMessage","replyType","nicknamesMap","emojiContainer","showEdit","showRemove","showFileViewer","resendMessage","toggleReaction","onReplyInThread","messageTypes","getUIKitMessageTypes","dateLocale","useLocalization","_m","useState","supposedHover","setSupposedHover","_o","useContext","UserProfileContext","disableUserProfile","renderUserProfile","avatarRef","useRef","isByMe","sender","_b","sendingStatus","useReplying","parentMessageId","parentMessage","supposedHoverClassName","React","concat","toggleDropdown","members","find","member","profileUrl","_c","closeDropdown","paddingTop","paddingBottom","user","close","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","_d","nickname","getSenderName","getClassName","isTextMessage","isOGMessage","getUIKitMessageType","FILE","isThumbnailMessage","width","height","UNKNOWN","_e","reactions","length","CAPTION_3","format","createdAt","locale","ThreadListItem","hasSeparator","renderCustomSeparator","handleScroll","useSendbirdStateContext","stores","config","isOnline","userMention","userStore","threadContext","useThreadContext","currentChannel","threadListState","updateMessage","deleteMessage","isMuted","isChannelFrozen","openingMessage","setShowEdit","setShowRemove","setShowFileViewer","usingReaction","isSuper","isBroadcast","messageScrollRef","useLayoutEffect","messageId","current","scrollIntoView","block","inline","editMessageInputRef","mentionNickname","setMentionNickname","mentionedUsers","setMentionedUsers","mentionedUserIds","setMentionedUserIds","messageInputEvent","setMessageInputEvent","_p","selectedUser","setSelectedUser","_q","mentionSuggestedUsers","setMentionSuggestedUsers","_r","ableMention","setAbleMention","displaySuggestedMentionList","myRole","Role","OPERATOR","useEffect","maxMentionCount","filter","i","indexOf","splice","ThreadListStateTypes","INITIALIZED","MemorizedSeparator","useMemo","isUserMessage","__spreadArray","users","maxSuggestionCount","startTyping","mentionTemplate","endTyping","mentionText","userIds","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown"],"mappings":"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"}
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
import { a as __spreadArray } from '../../tslib.es6-
|
|
1
|
+
import { a as __spreadArray } from '../../tslib.es6-d9fa3716.js';
|
|
2
2
|
import React__default, { useRef, useState, useEffect } from 'react';
|
|
3
3
|
import { Role } from '@sendbird/chat';
|
|
4
4
|
import { MutedState } from '@sendbird/chat/groupChannel';
|
|
5
5
|
import useSendbirdStateContext from '../../useSendbirdStateContext.js';
|
|
6
6
|
import MessageInput from '../../ui/MessageInput.js';
|
|
7
|
-
import { M as MessageInputKeys } from '../../const-
|
|
7
|
+
import { M as MessageInputKeys } from '../../const-1510a671.js';
|
|
8
8
|
import SuggestedMentionList from '../../Channel/components/SuggestedMentionList.js';
|
|
9
|
-
import { u as useThreadContext } from '../../ThreadProvider-
|
|
10
|
-
import { u as useLocalization } from '../../LocalizationContext-
|
|
9
|
+
import { u as useThreadContext } from '../../ThreadProvider-de5a7889.js';
|
|
10
|
+
import { u as useLocalization } from '../../LocalizationContext-60894e38.js';
|
|
11
11
|
import '../../withSendbird.js';
|
|
12
|
-
import '../../_rollupPluginBabelHelpers-
|
|
12
|
+
import '../../_rollupPluginBabelHelpers-ed44209e.js';
|
|
13
13
|
import 'react-dom/server';
|
|
14
14
|
import 'prop-types';
|
|
15
|
-
import '../../const-
|
|
15
|
+
import '../../const-14919575.js';
|
|
16
16
|
import '../../ui/IconButton.js';
|
|
17
17
|
import '../../ui/Button.js';
|
|
18
|
-
import '../../index-
|
|
19
|
-
import '../../stringSet-
|
|
18
|
+
import '../../index-95ac9232.js';
|
|
19
|
+
import '../../stringSet-7ace5726.js';
|
|
20
20
|
import '../../ui/MentionUserLabel.js';
|
|
21
21
|
import '../../ui/Icon.js';
|
|
22
|
-
import '../../index-
|
|
22
|
+
import '../../index-58e5d82d.js';
|
|
23
23
|
import '../../utils/message/getOutgoingMessageState.js';
|
|
24
|
-
import '../../index-
|
|
24
|
+
import '../../index-5e776774.js';
|
|
25
25
|
import '../../ui/Avatar.js';
|
|
26
26
|
import '../../ui/ImageRenderer.js';
|
|
27
|
-
import '../../uuid-
|
|
28
|
-
import '../../ChannelProvider-
|
|
29
|
-
import '../../UserProfileContext-
|
|
30
|
-
import '../../index-
|
|
31
|
-
import '../../topics-
|
|
32
|
-
import '../../compareIds-
|
|
27
|
+
import '../../uuid-968941a0.js';
|
|
28
|
+
import '../../ChannelProvider-c9db10c0.js';
|
|
29
|
+
import '../../UserProfileContext-33a26cc4.js';
|
|
30
|
+
import '../../index-eadca08d.js';
|
|
31
|
+
import '../../topics-d390daf6.js';
|
|
32
|
+
import '../../compareIds-063e5503.js';
|
|
33
33
|
import '@sendbird/chat/message';
|
|
34
34
|
import '../../ui/ContextMenu.js';
|
|
35
35
|
import 'react-dom';
|
|
@@ -1,39 +1,39 @@
|
|
|
1
1
|
import React__default, { useMemo, useState, useRef } from 'react';
|
|
2
2
|
import useSendbirdStateContext from '../../useSendbirdStateContext.js';
|
|
3
|
-
import { u as useLocalization } from '../../LocalizationContext-
|
|
4
|
-
import { g as getChannelTitle } from '../../utils-
|
|
5
|
-
import { u as useThreadContext, i as isAboutSame } from '../../ThreadProvider-
|
|
3
|
+
import { u as useLocalization } from '../../LocalizationContext-60894e38.js';
|
|
4
|
+
import { g as getChannelTitle } from '../../utils-d485030c.js';
|
|
5
|
+
import { u as useThreadContext, i as isAboutSame } from '../../ThreadProvider-de5a7889.js';
|
|
6
6
|
import ParentMessageInfo from './ParentMessageInfo.js';
|
|
7
7
|
import ThreadHeader from './ThreadHeader.js';
|
|
8
8
|
import ThreadList from './ThreadList.js';
|
|
9
9
|
import ThreadMessageInput from './ThreadMessageInput.js';
|
|
10
10
|
import { ParentMessageStateTypes, ThreadListStateTypes } from '../context/types.js';
|
|
11
|
-
import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-
|
|
12
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-
|
|
11
|
+
import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-fd15e3b0.js';
|
|
12
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-95ac9232.js';
|
|
13
13
|
import '../../withSendbird.js';
|
|
14
|
-
import '../../_rollupPluginBabelHelpers-
|
|
15
|
-
import '../../stringSet-
|
|
16
|
-
import '../../index-
|
|
17
|
-
import '../../index-
|
|
14
|
+
import '../../_rollupPluginBabelHelpers-ed44209e.js';
|
|
15
|
+
import '../../stringSet-7ace5726.js';
|
|
16
|
+
import '../../index-5e776774.js';
|
|
17
|
+
import '../../index-eadca08d.js';
|
|
18
18
|
import '../../utils/message/getOutgoingMessageState.js';
|
|
19
|
-
import '../../UserProfileContext-
|
|
19
|
+
import '../../UserProfileContext-33a26cc4.js';
|
|
20
20
|
import 'prop-types';
|
|
21
|
-
import '../../tslib.es6-
|
|
21
|
+
import '../../tslib.es6-d9fa3716.js';
|
|
22
22
|
import '@sendbird/chat';
|
|
23
|
-
import '../../topics-
|
|
23
|
+
import '../../topics-d390daf6.js';
|
|
24
24
|
import '@sendbird/chat/groupChannel';
|
|
25
|
-
import '../../uuid-
|
|
25
|
+
import '../../uuid-968941a0.js';
|
|
26
26
|
import '@sendbird/chat/message';
|
|
27
|
-
import '../../RemoveMessageModal-
|
|
27
|
+
import '../../RemoveMessageModal-b025d4a7.js';
|
|
28
28
|
import '../../ui/Modal.js';
|
|
29
29
|
import 'react-dom';
|
|
30
|
-
import '../../index-
|
|
30
|
+
import '../../index-d81c515b.js';
|
|
31
31
|
import '../../ui/Button.js';
|
|
32
32
|
import '../../ui/Icon.js';
|
|
33
33
|
import '../../ui/IconButton.js';
|
|
34
|
-
import '../../MediaQueryContext-
|
|
34
|
+
import '../../MediaQueryContext-bcf72e28.js';
|
|
35
35
|
import './ParentMessageInfoItem.js';
|
|
36
|
-
import '../../index-
|
|
36
|
+
import '../../index-58e5d82d.js';
|
|
37
37
|
import '../../ui/Word.js';
|
|
38
38
|
import '../../ui/LinkLabel.js';
|
|
39
39
|
import '../../ui/MentionLabel.js';
|
|
@@ -41,21 +41,21 @@ import '../../ui/ContextMenu.js';
|
|
|
41
41
|
import '../../ui/SortByRow.js';
|
|
42
42
|
import '../../ui/UserProfile.js';
|
|
43
43
|
import '../../sendbirdSelectors.js';
|
|
44
|
-
import '../../utils-
|
|
44
|
+
import '../../utils-30c326f7.js';
|
|
45
45
|
import '../../ui/Avatar.js';
|
|
46
46
|
import '../../ui/ImageRenderer.js';
|
|
47
47
|
import '../../ui/TextButton.js';
|
|
48
|
-
import '../../color-
|
|
48
|
+
import '../../color-c39702d1.js';
|
|
49
49
|
import '../../ui/EmojiReactions.js';
|
|
50
50
|
import '../../ui/Tooltip.js';
|
|
51
51
|
import '../../ui/TooltipWrapper.js';
|
|
52
52
|
import '../../ui/ReactionBadge.js';
|
|
53
53
|
import '../../ui/ReactionButton.js';
|
|
54
54
|
import '../../Channel/components/SuggestedMentionList.js';
|
|
55
|
-
import '../../ChannelProvider-
|
|
56
|
-
import '../../compareIds-
|
|
57
|
-
import '../../const-
|
|
58
|
-
import '../../const-
|
|
55
|
+
import '../../ChannelProvider-c9db10c0.js';
|
|
56
|
+
import '../../compareIds-063e5503.js';
|
|
57
|
+
import '../../const-14919575.js';
|
|
58
|
+
import '../../const-1510a671.js';
|
|
59
59
|
import '../../ui/FileViewer.js';
|
|
60
60
|
import '../../ui/MessageItemMenu.js';
|
|
61
61
|
import '../../ui/MessageItemReactionMenu.js';
|
|
@@ -64,10 +64,11 @@ import 'react-dom/server';
|
|
|
64
64
|
import '../../ui/MentionUserLabel.js';
|
|
65
65
|
import './ThreadListItem.js';
|
|
66
66
|
import '../../ui/DateSeparator.js';
|
|
67
|
-
import '../../index-
|
|
67
|
+
import '../../index-b8de16d6.js';
|
|
68
68
|
import '../../ui/Loader.js';
|
|
69
|
-
import '../../index-
|
|
70
|
-
import '../../index-
|
|
69
|
+
import '../../index-0fd24497.js';
|
|
70
|
+
import '../../index-b19486f5.js';
|
|
71
|
+
import '../../index-54843058.js';
|
|
71
72
|
import '../../ui/TextMessageItemBody.js';
|
|
72
73
|
import '../../ui/OGMessageItemBody.js';
|
|
73
74
|
import '../../ui/FileMessageItemBody.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThreadUI.js","sources":["../../../src/smart-components/Thread/components/ThreadUI/useMemorizedHeader.tsx","../../../src/smart-components/Thread/components/ThreadUI/useMemorizedParentMessageInfo.tsx","../../../src/smart-components/Thread/components/ThreadUI/useMemorizedThreadList.tsx","../../../src/smart-components/Thread/components/ThreadUI/index.tsx"],"sourcesContent":["import React, { ReactElement, useMemo } from 'react';\n\nexport interface UseMemorizedHeaderProps {\n renderHeader?: () => React.ReactElement;\n}\n\nconst useMemorizedHeader = ({ renderHeader }: UseMemorizedHeaderProps): ReactElement => useMemo(() => {\n if (typeof renderHeader === 'function') {\n return renderHeader();\n }\n return null;\n}, [renderHeader]);\n\nexport default useMemorizedHeader;\n","import React, { ReactElement, useMemo } from 'react';\n\nimport { ParentMessageStateTypes } from '../../types';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nexport interface UseMemorizedParentMessageInfoProps {\n parentMessage: UserMessage | FileMessage;\n parentMessageState: ParentMessageStateTypes;\n renderParentMessageInfo?: () => React.ReactElement;\n renderParentMessageInfoPlaceholder?: (type: ParentMessageStateTypes) => React.ReactElement;\n}\n\nconst useMemorizedParentMessageInfo = ({\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder,\n}: UseMemorizedParentMessageInfoProps): ReactElement => useMemo(() => {\n if (parentMessageState === ParentMessageStateTypes.NIL\n || parentMessageState === ParentMessageStateTypes.LOADING\n || parentMessageState === ParentMessageStateTypes.INVALID\n ) {\n if (typeof renderParentMessageInfoPlaceholder === 'function') {\n return renderParentMessageInfoPlaceholder(parentMessageState);\n }\n switch (parentMessageState) {\n case ParentMessageStateTypes.NIL: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-nil\"\n type={PlaceHolderTypes.NO_RESULTS}\n iconSize=\"64px\"\n />\n );\n }\n case ParentMessageStateTypes.LOADING: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-loading\"\n type={PlaceHolderTypes.LOADING}\n iconSize=\"64px\"\n />\n );\n }\n case ParentMessageStateTypes.INVALID: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-invalid\"\n type={PlaceHolderTypes.WRONG}\n iconSize=\"64px\"\n />\n );\n }\n default: {\n return null;\n }\n }\n } else if (parentMessageState === ParentMessageStateTypes.INITIALIZED) {\n if (typeof renderParentMessageInfo === 'function') {\n return renderParentMessageInfo();\n }\n }\n return null;\n}, [\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder,\n]);\n\nexport default useMemorizedParentMessageInfo;\n","import React, { ReactElement, useMemo } from 'react';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\n\nimport { ThreadListStateTypes } from '../../types';\n\nexport interface UseMemorizedThreadListProps {\n threadListState: ThreadListStateTypes;\n renderThreadListPlaceHolder?: (tyep: ThreadListStateTypes) => React.ReactElement;\n}\n\nconst useMemorizedThreadList = ({\n threadListState,\n renderThreadListPlaceHolder,\n}: UseMemorizedThreadListProps): ReactElement => useMemo(() => {\n if (threadListState === ThreadListStateTypes.NIL\n || threadListState === ThreadListStateTypes.LOADING\n || threadListState === ThreadListStateTypes.INVALID\n ) {\n if (typeof renderThreadListPlaceHolder === 'function') {\n return renderThreadListPlaceHolder(threadListState);\n }\n switch (threadListState) {\n case ThreadListStateTypes.LOADING: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__thread-list placeholder-loading\"\n type={PlaceHolderTypes.LOADING}\n iconSize=\"64px\"\n />\n );\n }\n case ThreadListStateTypes.INVALID: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__thread-list placeholder-invalid\"\n type={PlaceHolderTypes.WRONG}\n iconSize=\"64px\"\n />\n );\n }\n case ThreadListStateTypes.NIL: {\n return <></>;\n }\n default: {\n return null;\n }\n }\n }\n return null;\n}, [\n threadListState,\n renderThreadListPlaceHolder,\n]);\n\nexport default useMemorizedThreadList;\n","import React, { useRef, useState } from 'react';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport './index.scss';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport { getChannelTitle } from '../../../Channel/components/ChannelHeader/utils';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport { ParentMessageStateTypes, ThreadListStateTypes } from '../../types';\nimport ParentMessageInfo from '../ParentMessageInfo';\nimport ThreadHeader from '../ThreadHeader';\nimport ThreadList from '../ThreadList';\nimport ThreadMessageInput from '../ThreadMessageInput';\nimport useMemorizedHeader from './useMemorizedHeader';\nimport useMemorizedParentMessageInfo from './useMemorizedParentMessageInfo';\nimport useMemorizedThreadList from './useMemorizedThreadList';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { isAboutSame } from '../../context/utils';\n\nexport interface ThreadUIProps {\n renderHeader?: () => React.ReactElement;\n renderParentMessageInfo?: () => React.ReactElement;\n renderMessage?: (props: {\n message: UserMessage | FileMessage,\n chainTop: boolean,\n chainBottom: boolean,\n hasSeparator: boolean,\n }) => React.ReactElement;\n renderMessageInput?: () => React.ReactElement;\n renderCustomSeparator?: () => React.ReactElement;\n renderParentMessageInfoPlaceholder?: (type: ParentMessageStateTypes) => React.ReactElement;\n renderThreadListPlaceHolder?: (type: ThreadListStateTypes) => React.ReactElement;\n}\n\nconst ThreadUI: React.FC<ThreadUIProps> = ({\n renderHeader,\n renderParentMessageInfo,\n renderMessage,\n renderMessageInput,\n renderCustomSeparator,\n renderParentMessageInfoPlaceholder,\n renderThreadListPlaceHolder,\n}: ThreadUIProps): React.ReactElement => {\n const {\n stores,\n } = useSendbirdStateContext();\n const currentUserId = stores?.sdkStore?.sdk?.currentUser?.userId;\n const {\n stringSet,\n } = useLocalization();\n const {\n currentChannel,\n allThreadMessages,\n parentMessage,\n parentMessageState,\n threadListState,\n hasMorePrev,\n hasMoreNext,\n fetchPrevThreads,\n fetchNextThreads,\n onHeaderActionClick,\n onMoveToParentMessage,\n } = useThreadContext();\n const replyCount = allThreadMessages.length;\n\n // Memoized custom components\n const MemorizedHeader = useMemorizedHeader({ renderHeader });\n const MemorizedParentMessageInfo = useMemorizedParentMessageInfo({\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder, // nil, loading, invalid\n });\n const MemorizedThreadList = useMemorizedThreadList({\n threadListState,\n renderThreadListPlaceHolder,\n });\n\n // scroll\n const [scrollBottom, setScrollBottom] = useState(0);\n const scrollRef = useRef(null);\n const onScroll = (e) => {\n const element = e.target;\n const {\n scrollTop,\n clientHeight,\n scrollHeight,\n } = element;\n\n const threadItemNodes = scrollRef.current.querySelectorAll('.sendbird-thread-list-item');\n const firstNode = threadItemNodes?.[0];\n if (isAboutSame(scrollTop, 0, 10) && hasMorePrev) {\n fetchPrevThreads((messages) => {\n if (messages) {\n try {\n firstNode?.scrollIntoView?.({ block: 'start', inline: 'nearest' });\n } catch (error) {\n //\n }\n }\n });\n }\n\n if (isAboutSame(clientHeight + scrollTop, scrollHeight, 10) && hasMoreNext) {\n const scrollTop_ = scrollTop;\n fetchNextThreads((messages) => {\n if (messages) {\n try {\n element.scrollTop = scrollTop_;\n scrollRef.current.scrollTop = scrollTop_;\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\n return (\n <div className='sendbird-thread-ui'>\n {\n MemorizedHeader || (\n <ThreadHeader\n className=\"sendbird-thread-ui__header\"\n channelName={getChannelTitle(currentChannel, currentUserId, stringSet)}\n onActionIconClick={onHeaderActionClick}\n onChannelNameClick={() => onMoveToParentMessage({ message: parentMessage, channel: currentChannel })}\n />\n )\n }\n <div\n className=\"sendbird-thread-ui--scroll\"\n ref={scrollRef}\n onScroll={onScroll}\n >\n {\n MemorizedParentMessageInfo || (\n <ParentMessageInfo\n className=\"sendbird-thread-ui__parent-message-info\"\n />\n )\n }\n {\n replyCount > 0 && (\n <div className=\"sendbird-thread-ui__reply-counts\">\n <Label\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_3}\n >\n {`${replyCount} ${replyCount > 1 ? stringSet.THREAD__THREAD_REPLIES : stringSet.THREAD__THREAD_REPLY}`}\n </Label>\n </div>\n )\n }\n {\n MemorizedThreadList || (\n <ThreadList\n className=\"sendbird-thread-ui__thread-list\"\n allThreadMessages={allThreadMessages}\n renderMessage={renderMessage}\n renderCustomSeparator={renderCustomSeparator}\n scrollRef={scrollRef}\n scrollBottom={scrollBottom}\n />\n )\n }\n {/* MessageInput */}\n {\n renderMessageInput?.() || (\n <ThreadMessageInput\n className=\"sendbird-thread-ui__message-input\"\n />\n )\n }\n </div>\n </div>\n );\n};\n\nexport default ThreadUI;\n"],"names":["useMemorizedHeader","_a","renderHeader","useMemo","useMemorizedParentMessageInfo","parentMessage","parentMessageState","renderParentMessageInfo","renderParentMessageInfoPlaceholder","ParentMessageStateTypes","NIL","LOADING","INVALID","React","PlaceHolderTypes","NO_RESULTS","WRONG","INITIALIZED","useMemorizedThreadList","threadListState","renderThreadListPlaceHolder","ThreadListStateTypes","ThreadUI","renderMessage","renderMessageInput","renderCustomSeparator","stores","useSendbirdStateContext","currentUserId","_d","_b","sdkStore","sdk","currentUser","userId","stringSet","useLocalization","_e","useThreadContext","currentChannel","allThreadMessages","hasMorePrev","hasMoreNext","fetchPrevThreads","fetchNextThreads","onHeaderActionClick","onMoveToParentMessage","replyCount","length","MemorizedHeader","MemorizedParentMessageInfo","MemorizedThreadList","_f","useState","scrollBottom","setScrollBottom","scrollRef","useRef","onScroll","e","element","target","scrollTop","clientHeight","scrollHeight","threadItemNodes","current","querySelectorAll","firstNode","isAboutSame","messages","scrollIntoView","call","block","inline","error","scrollTop_1","offsetHeight","getChannelTitle","message","channel","LabelTypography","BODY_1","LabelColors","ONBACKGROUND_3","concat","THREAD__THREAD_REPLIES","THREAD__THREAD_REPLY"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,IAAMA,kBAAkB,GAAG,UAACC,EAAD,EAA0C;AAAvC,EAAA,IAAAC,YAAY,GAAAD,EAAA,CAAAC,YAAZ,CAAA;EAA0D,OAAAC,OAAO,CAAC,YAAA;AAC9F,IAAA,IAAI,OAAOD,YAAP,KAAwB,UAA5B,EAAwC;AACtC,MAAA,OAAOA,YAAY,EAAnB,CAAA;AACD,KAAA;;AACD,IAAA,OAAO,IAAP,CAAA;AACD,GAL8F,EAK5F,CAACA,YAAD,CAL4F,CAAP,CAAA;AAKtE,CALlB;;ACOA,IAAME,6BAA6B,GAAG,UAACH,EAAD,EAKD;MAJnCI,aAAa,GAAAJ,EAAA,CAAAI;MACbC,kBAAkB,GAAAL,EAAA,CAAAK;MAClBC,uBAAuB,GAAAN,EAAA,CAAAM;MACvBC,kCAAkC,GAAAP,EAAA,CAAAO;EACoB,OAAAL,OAAO,CAAC,YAAA;AAC9D,IAAA,IAAIG,kBAAkB,KAAKG,uBAAuB,CAACC,GAA/C,IACCJ,kBAAkB,KAAKG,uBAAuB,CAACE,OADhD,IAECL,kBAAkB,KAAKG,uBAAuB,CAACG,OAFpD,EAGE;AACA,MAAA,IAAI,OAAOJ,kCAAP,KAA8C,UAAlD,EAA8D;QAC5D,OAAOA,kCAAkC,CAACF,kBAAD,CAAzC,CAAA;AACD,OAAA;;AACD,MAAA,QAAQA,kBAAR;QACE,KAAKG,uBAAuB,CAACC,GAA7B;AAAkC,UAAA;AAChC,YAAA,oBACEG,6BAAC,WAAD,EAAA;AACE,cAAA,SAAS,EAAC,yDADZ;cAEE,IAAI,EAAEC,gBAAgB,CAACC,UAFzB;AAGE,cAAA,QAAQ,EAAC,MAAA;aAJb,CAAA,CAAA;AAOD,WAAA;;QACD,KAAKN,uBAAuB,CAACE,OAA7B;AAAsC,UAAA;AACpC,YAAA,oBACEE,6BAAC,WAAD,EAAA;AACE,cAAA,SAAS,EAAC,6DADZ;cAEE,IAAI,EAAEC,gBAAgB,CAACH,OAFzB;AAGE,cAAA,QAAQ,EAAC,MAAA;aAJb,CAAA,CAAA;AAOD,WAAA;;QACD,KAAKF,uBAAuB,CAACG,OAA7B;AAAsC,UAAA;AACpC,YAAA,oBACEC,6BAAC,WAAD,EAAA;AACE,cAAA,SAAS,EAAC,6DADZ;cAEE,IAAI,EAAEC,gBAAgB,CAACE,KAFzB;AAGE,cAAA,QAAQ,EAAC,MAAA;aAJb,CAAA,CAAA;AAOD,WAAA;;AACD,QAAA;AAAS,UAAA;AACP,YAAA,OAAO,IAAP,CAAA;AACD,WAAA;AA9BH,OAAA;AAgCD,KAvCD,MAuCO,IAAIV,kBAAkB,KAAKG,uBAAuB,CAACQ,WAAnD,EAAgE;AACrE,MAAA,IAAI,OAAOV,uBAAP,KAAmC,UAAvC,EAAmD;AACjD,QAAA,OAAOA,uBAAuB,EAA9B,CAAA;AACD,OAAA;AACF,KAAA;;AACD,IAAA,OAAO,IAAP,CAAA;GA7C6D,EA8C5D,CACDF,aADC,EAEDC,kBAFC,EAGDC,uBAHC,EAIDC,kCAJC,CA9C4D,CAAP,CAAA;AAmDtD,CAxDF;;ACHA,IAAMU,sBAAsB,GAAG,UAACjB,EAAD,EAGD;MAF5BkB,eAAe,GAAAlB,EAAA,CAAAkB;MACfC,2BAA2B,GAAAnB,EAAA,CAAAmB;EACoB,OAAAjB,OAAO,CAAC,YAAA;AACvD,IAAA,IAAIgB,eAAe,KAAKE,oBAAoB,CAACX,GAAzC,IACCS,eAAe,KAAKE,oBAAoB,CAACV,OAD1C,IAECQ,eAAe,KAAKE,oBAAoB,CAACT,OAF9C,EAGE;AACA,MAAA,IAAI,OAAOQ,2BAAP,KAAuC,UAA3C,EAAuD;QACrD,OAAOA,2BAA2B,CAACD,eAAD,CAAlC,CAAA;AACD,OAAA;;AACD,MAAA,QAAQA,eAAR;QACE,KAAKE,oBAAoB,CAACV,OAA1B;AAAmC,UAAA;AACjC,YAAA,oBACEE,6BAAC,WAAD,EAAA;AACE,cAAA,SAAS,EAAC,qDADZ;cAEE,IAAI,EAAEC,gBAAgB,CAACH,OAFzB;AAGE,cAAA,QAAQ,EAAC,MAAA;aAJb,CAAA,CAAA;AAOD,WAAA;;QACD,KAAKU,oBAAoB,CAACT,OAA1B;AAAmC,UAAA;AACjC,YAAA,oBACEC,6BAAC,WAAD,EAAA;AACE,cAAA,SAAS,EAAC,qDADZ;cAEE,IAAI,EAAEC,gBAAgB,CAACE,KAFzB;AAGE,cAAA,QAAQ,EAAC,MAAA;aAJb,CAAA,CAAA;AAOD,WAAA;;QACD,KAAKK,oBAAoB,CAACX,GAA1B;AAA+B,UAAA;AAC7B,YAAA,oBAAOG,cAAP,CAAA,aAAA,CAAAA,cAAA,CAAA,QAAA,EAAA,IAAA,CAAA,CAAA;AACD,WAAA;;AACD,QAAA;AAAS,UAAA;AACP,YAAA,OAAO,IAAP,CAAA;AACD,WAAA;AAxBH,OAAA;AA0BD,KAAA;;AACD,IAAA,OAAO,IAAP,CAAA;AACD,GApCuD,EAoCrD,CACDM,eADC,EAEDC,2BAFC,CApCqD,CAAP,CAAA;AAuC/C,CA1CF;;ACyBA,IAAME,QAAQ,GAA4B,UAACrB,EAAD,EAQ1B;;;AAPd,EAAA,IAAAC,YAAY,kBAAZ;AAAA,MACAK,uBAAuB,6BADvB;AAAA,MAEAgB,aAAa,mBAFb;AAAA,MAGAC,kBAAkB,GAAAvB,EAAA,CAAAuB,kBAHlB;AAAA,MAIAC,qBAAqB,GAAAxB,EAAA,CAAAwB,qBAJrB;AAAA,MAKAjB,kCAAkC,GAAAP,EAAA,CAAAO,kCALlC;AAAA,MAMAY,2BAA2B,GAAAnB,EAAA,CAAAmB,2BAN3B,CAAA;AASE,EAAA,IAAAM,MAAM,GACJC,uBAAuB,EAAA,OADzB,CAAA;AAEF,EAAA,IAAMC,aAAa,GAAG,CAAAC,EAAA,GAAA,MAAA,CAAAC,EAAA,GAAAJ,MAAM,SAAN,IAAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAAA,MAAM,CAAEK,QAAR,MAAkB,IAAlB,IAAkBD,EAAA,KAAA,KAAA,CAAlB,GAAkB,KAAA,CAAlB,GAAkBA,EAAA,CAAAE,GAAlB,UAAA,iBAAA,SAAA,MAAuBC,WAAvB,MAAkC,IAAlC,IAAkCJ,EAAA,KAAA,KAAA,CAAlC,GAAkC,KAAA,CAAlC,GAAkCA,EAAA,CAAEK,MAA1D,CAAA;AAEE,EAAA,IAAAC,SAAS,GACPC,eAAe,EAAA,UADjB,CAAA;;EAEI,IAAAC,KAYFC,gBAAgB,EAZd;AAAA,MACJC,cAAc,oBADV;AAAA,MAEJC,iBAAiB,GAAAH,EAAA,CAAAG,iBAFb;AAAA,MAGJnC,aAAa,GAAAgC,EAAA,CAAAhC,aAHT;AAAA,MAIJC,kBAAkB,GAAA+B,EAAA,CAAA/B,kBAJd;AAAA,MAKJa,eAAe,GAAAkB,EAAA,CAAAlB,eALX;AAAA,MAMJsB,WAAW,iBANP;AAAA,MAOJC,WAAW,GAAAL,EAAA,CAAAK,WAPP;AAAA,MAQJC,gBAAgB,GAAAN,EAAA,CAAAM,gBARZ;AAAA,MASJC,gBAAgB,GAAAP,EAAA,CAAAO,gBATZ;AAAA,MAUJC,mBAAmB,GAAAR,EAAA,CAAAQ,mBAVf;AAAA,MAWJC,qBAAqB,2BAXjB,CAAA;;AAaN,EAAA,IAAMC,UAAU,GAAGP,iBAAiB,CAACQ,MAArC,CArBc;;EAwBd,IAAMC,eAAe,GAAGjD,kBAAkB,CAAC;AAAEE,IAAAA,YAAY,EAAAA,YAAAA;AAAd,GAAD,CAA1C,CAAA;EACA,IAAMgD,0BAA0B,GAAG9C,6BAA6B,CAAC;AAC/DC,IAAAA,aAAa,EAAAA,aADkD;AAE/DC,IAAAA,kBAAkB,EAAAA,kBAF6C;AAG/DC,IAAAA,uBAAuB,EAAAA,uBAHwC;AAI/DC,IAAAA,kCAAkC,EAAAA,kCAAAA;AAJ6B,GAAD,CAAhE,CAAA;EAMA,IAAM2C,mBAAmB,GAAGjC,sBAAsB,CAAC;AACjDC,IAAAA,eAAe,EAAAA,eADkC;AAEjDC,IAAAA,2BAA2B,EAAAA,2BAAAA;GAFqB,CAAlD,CA/Bc;;AAqCR,EAAA,IAAAgC,EAAA,GAAkCC,QAAQ,CAAC,CAAD,CAA1C;AAAA,MAACC,YAAY,GAAAF,EAAA,CAAA,CAAA,CAAb;AAAA,MAAeG,eAAe,GAAAH,EAAA,CAAA,CAAA,CAA9B,CAAA;;AACN,EAAA,IAAMI,SAAS,GAAGC,MAAM,CAAC,IAAD,CAAxB,CAAA;;AACA,EAAA,IAAMC,QAAQ,GAAG,UAACC,CAAD,EAAE;AACjB,IAAA,IAAMC,OAAO,GAAGD,CAAC,CAACE,MAAlB,CAAA;AAEE,IAAA,IAAAC,SAAS,GAGPF,OAAO,CAAAE,SAHT;AAAA,QACAC,YAAY,GAEVH,OAAO,CAAAG,YAHT;AAAA,QAEAC,YAAY,GACVJ,OAAO,aAHT,CAAA;IAKF,IAAMK,eAAe,GAAGT,SAAS,CAACU,OAAV,CAAkBC,gBAAlB,CAAmC,4BAAnC,CAAxB,CAAA;AACA,IAAA,IAAMC,SAAS,GAAGH,eAAe,KAAf,IAAA,IAAAA,eAAe,WAAf,SAAA,GAAAA,eAAe,CAAG,CAAH,CAAjC,CAAA;;IACA,IAAII,WAAW,CAACP,SAAD,EAAY,CAAZ,EAAe,EAAf,CAAX,IAAiCrB,WAArC,EAAkD;MAChDE,gBAAgB,CAAC,UAAC2B,QAAD,EAAS;;;AACxB,QAAA,IAAIA,QAAJ,EAAc;UACZ,IAAI;AACF,YAAA,CAAArE,EAAA,GAAAmE,SAAS,KAAT,IAAA,IAAAA,SAAS,WAAT,SAAA,GAAAA,SAAS,CAAEG,cAAX,MAA4B,IAA5B,IAA4BtE,EAAA,KAAA,KAAA,CAA5B,GAA4B,KAAA,CAA5B,GAA4BA,EAAA,CAAAuE,IAAA,CAAAJ,SAAA,EAAA;AAAEK,cAAAA,KAAK,EAAE,OAAT;AAAkBC,cAAAA,MAAM,EAAE,SAAA;AAA1B,aAAA,CAA5B,CAAA;AACD,WAFD,CAEE,OAAOC,KAAP,EAAc;AAEf,WAAA;AACF,SAAA;AACF,OARe,CAAhB,CAAA;AASD,KAAA;;AAED,IAAA,IAAIN,WAAW,CAACN,YAAY,GAAGD,SAAhB,EAA2BE,YAA3B,EAAyC,EAAzC,CAAX,IAA2DtB,WAA/D,EAA4E;MAC1E,IAAMkC,WAAU,GAAGd,SAAnB,CAAA;MACAlB,gBAAgB,CAAC,UAAC0B,QAAD,EAAS;AACxB,QAAA,IAAIA,QAAJ,EAAc;UACZ,IAAI;YACFV,OAAO,CAACE,SAAR,GAAoBc,WAApB,CAAA;AACApB,YAAAA,SAAS,CAACU,OAAV,CAAkBJ,SAAlB,GAA8Bc,WAA9B,CAAA;AACD,WAHD,CAGE,OAAOD,KAAP,EAAc;AAEf,WAAA;AACF,SAAA;AACF,OATe,CAAhB,CAAA;AAUD,KAlCgB;;;AAqCjB,IAAA,IAAInB,SAAS,KAAT,IAAA,IAAAA,SAAS,WAAT,SAAA,GAAAA,SAAS,CAAEU,OAAf,EAAwB;AACtB,MAAA,IAAMA,OAAO,GAAGV,SAAS,KAAA,IAAT,IAAAA,SAAS,KAAT,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,SAAS,CAAEU,OAA3B,CAAA;AACAX,MAAAA,eAAe,CAACW,OAAO,CAACF,YAAR,GAAuBE,OAAO,CAACJ,SAA/B,GAA2CI,OAAO,CAACW,YAApD,CAAf,CAAA;AACD,KAAA;GAxCH,CAAA;;EA2CA,oBACEhE,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,oBAAA;GAEXoC,EAAAA,eAAe,iBACbpC,cAAA,CAAA,aAAA,CAAC,YAAD,EAAA;AACE,IAAA,SAAS,EAAC,4BADZ;IAEE,WAAW,EAAEiE,eAAe,CAACvC,cAAD,EAAiBX,aAAjB,EAAgCO,SAAhC,CAF9B;AAGE,IAAA,iBAAiB,EAAEU,mBAHrB;AAIE,IAAA,kBAAkB,EAAE;AAAM,MAAA,OAAAC,qBAAqB,CAAC;AAAEiC,QAAAA,OAAO,EAAE1E,aAAX;AAA0B2E,QAAAA,OAAO,EAAEzC,cAAAA;AAAnC,OAAD,CAArB,CAAA;AAA0E,KAAA;AAJtG,GAAA,CAHN,eAWE1B,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAC,4BADZ;AAEE,IAAA,GAAG,EAAE2C,SAFP;AAGE,IAAA,QAAQ,EAAEE,QAAAA;GAGRR,EAAAA,0BAA0B,iBACxBrC,cAAA,CAAA,aAAA,CAAC,iBAAD,EAAA;AACE,IAAA,SAAS,EAAC,yCAAA;AADZ,GAAA,CAPN,EAaIkC,UAAU,GAAG,CAAb,iBACElC,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,kCAAA;AAAf,GAAA,eACEA,6BAAC,KAAD,EAAA;IACE,IAAI,EAAEoE,eAAe,CAACC,MADxB;IAEE,KAAK,EAAEC,WAAW,CAACC,cAAAA;GAElB,EAAA,EAAA,OAAA,CAAGrC,UAAH,EAAa,GAAb,CAAA,CAAasC,MAAb,CAAiBtC,UAAU,GAAG,CAAb,GAAiBZ,SAAS,CAACmD,sBAA3B,GAAoDnD,SAAS,CAACoD,oBAA/E,CAJH,CADF,CAdN,EAyBIpC,mBAAmB,iBACjBtC,cAAA,CAAA,aAAA,CAAC,UAAD,EAAA;AACE,IAAA,SAAS,EAAC,iCADZ;AAEE,IAAA,iBAAiB,EAAE2B,iBAFrB;AAGE,IAAA,aAAa,EAAEjB,aAHjB;AAIE,IAAA,qBAAqB,EAAEE,qBAJzB;AAKE,IAAA,SAAS,EAAE+B,SALb;AAME,IAAA,YAAY,EAAEF,YAAAA;AANhB,GAAA,CA1BN,EAsCI,CAAA9B,kBAAkB,KAAA,IAAlB,IAAAA,kBAAkB,KAAA,KAAA,CAAlB,GAAkB,KAAA,CAAlB,GAAAA,kBAAkB,EAAlB,kBACEX,6BAAC,kBAAD,EAAA;AACE,IAAA,SAAS,EAAC,mCAAA;AADZ,GAAA,CAvCN,CAXF,CADF,CAAA;AA2DD;;;;"}
|
|
1
|
+
{"version":3,"file":"ThreadUI.js","sources":["../../../src/smart-components/Thread/components/ThreadUI/useMemorizedHeader.tsx","../../../src/smart-components/Thread/components/ThreadUI/useMemorizedParentMessageInfo.tsx","../../../src/smart-components/Thread/components/ThreadUI/useMemorizedThreadList.tsx","../../../src/smart-components/Thread/components/ThreadUI/index.tsx"],"sourcesContent":["import React, { ReactElement, useMemo } from 'react';\n\nexport interface UseMemorizedHeaderProps {\n renderHeader?: () => React.ReactElement;\n}\n\nconst useMemorizedHeader = ({ renderHeader }: UseMemorizedHeaderProps): ReactElement => useMemo(() => {\n if (typeof renderHeader === 'function') {\n return renderHeader();\n }\n return null;\n}, [renderHeader]);\n\nexport default useMemorizedHeader;\n","import React, { ReactElement, useMemo } from 'react';\n\nimport { ParentMessageStateTypes } from '../../types';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nexport interface UseMemorizedParentMessageInfoProps {\n parentMessage: UserMessage | FileMessage;\n parentMessageState: ParentMessageStateTypes;\n renderParentMessageInfo?: () => React.ReactElement;\n renderParentMessageInfoPlaceholder?: (type: ParentMessageStateTypes) => React.ReactElement;\n}\n\nconst useMemorizedParentMessageInfo = ({\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder,\n}: UseMemorizedParentMessageInfoProps): ReactElement => useMemo(() => {\n if (parentMessageState === ParentMessageStateTypes.NIL\n || parentMessageState === ParentMessageStateTypes.LOADING\n || parentMessageState === ParentMessageStateTypes.INVALID\n ) {\n if (typeof renderParentMessageInfoPlaceholder === 'function') {\n return renderParentMessageInfoPlaceholder(parentMessageState);\n }\n switch (parentMessageState) {\n case ParentMessageStateTypes.NIL: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-nil\"\n type={PlaceHolderTypes.NO_RESULTS}\n iconSize=\"64px\"\n />\n );\n }\n case ParentMessageStateTypes.LOADING: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-loading\"\n type={PlaceHolderTypes.LOADING}\n iconSize=\"64px\"\n />\n );\n }\n case ParentMessageStateTypes.INVALID: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-invalid\"\n type={PlaceHolderTypes.WRONG}\n iconSize=\"64px\"\n />\n );\n }\n default: {\n return null;\n }\n }\n } else if (parentMessageState === ParentMessageStateTypes.INITIALIZED) {\n if (typeof renderParentMessageInfo === 'function') {\n return renderParentMessageInfo();\n }\n }\n return null;\n}, [\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder,\n]);\n\nexport default useMemorizedParentMessageInfo;\n","import React, { ReactElement, useMemo } from 'react';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\n\nimport { ThreadListStateTypes } from '../../types';\n\nexport interface UseMemorizedThreadListProps {\n threadListState: ThreadListStateTypes;\n renderThreadListPlaceHolder?: (tyep: ThreadListStateTypes) => React.ReactElement;\n}\n\nconst useMemorizedThreadList = ({\n threadListState,\n renderThreadListPlaceHolder,\n}: UseMemorizedThreadListProps): ReactElement => useMemo(() => {\n if (threadListState === ThreadListStateTypes.NIL\n || threadListState === ThreadListStateTypes.LOADING\n || threadListState === ThreadListStateTypes.INVALID\n ) {\n if (typeof renderThreadListPlaceHolder === 'function') {\n return renderThreadListPlaceHolder(threadListState);\n }\n switch (threadListState) {\n case ThreadListStateTypes.LOADING: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__thread-list placeholder-loading\"\n type={PlaceHolderTypes.LOADING}\n iconSize=\"64px\"\n />\n );\n }\n case ThreadListStateTypes.INVALID: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__thread-list placeholder-invalid\"\n type={PlaceHolderTypes.WRONG}\n iconSize=\"64px\"\n />\n );\n }\n case ThreadListStateTypes.NIL: {\n return <></>;\n }\n default: {\n return null;\n }\n }\n }\n return null;\n}, [\n threadListState,\n renderThreadListPlaceHolder,\n]);\n\nexport default useMemorizedThreadList;\n","import React, { useRef, useState } from 'react';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport './index.scss';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport { getChannelTitle } from '../../../Channel/components/ChannelHeader/utils';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport { ParentMessageStateTypes, ThreadListStateTypes } from '../../types';\nimport ParentMessageInfo from '../ParentMessageInfo';\nimport ThreadHeader from '../ThreadHeader';\nimport ThreadList from '../ThreadList';\nimport ThreadMessageInput from '../ThreadMessageInput';\nimport useMemorizedHeader from './useMemorizedHeader';\nimport useMemorizedParentMessageInfo from './useMemorizedParentMessageInfo';\nimport useMemorizedThreadList from './useMemorizedThreadList';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { isAboutSame } from '../../context/utils';\n\nexport interface ThreadUIProps {\n renderHeader?: () => React.ReactElement;\n renderParentMessageInfo?: () => React.ReactElement;\n renderMessage?: (props: {\n message: UserMessage | FileMessage,\n chainTop: boolean,\n chainBottom: boolean,\n hasSeparator: boolean,\n }) => React.ReactElement;\n renderMessageInput?: () => React.ReactElement;\n renderCustomSeparator?: () => React.ReactElement;\n renderParentMessageInfoPlaceholder?: (type: ParentMessageStateTypes) => React.ReactElement;\n renderThreadListPlaceHolder?: (type: ThreadListStateTypes) => React.ReactElement;\n}\n\nconst ThreadUI: React.FC<ThreadUIProps> = ({\n renderHeader,\n renderParentMessageInfo,\n renderMessage,\n renderMessageInput,\n renderCustomSeparator,\n renderParentMessageInfoPlaceholder,\n renderThreadListPlaceHolder,\n}: ThreadUIProps): React.ReactElement => {\n const {\n stores,\n } = useSendbirdStateContext();\n const currentUserId = stores?.sdkStore?.sdk?.currentUser?.userId;\n const {\n stringSet,\n } = useLocalization();\n const {\n currentChannel,\n allThreadMessages,\n parentMessage,\n parentMessageState,\n threadListState,\n hasMorePrev,\n hasMoreNext,\n fetchPrevThreads,\n fetchNextThreads,\n onHeaderActionClick,\n onMoveToParentMessage,\n } = useThreadContext();\n const replyCount = allThreadMessages.length;\n\n // Memoized custom components\n const MemorizedHeader = useMemorizedHeader({ renderHeader });\n const MemorizedParentMessageInfo = useMemorizedParentMessageInfo({\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder, // nil, loading, invalid\n });\n const MemorizedThreadList = useMemorizedThreadList({\n threadListState,\n renderThreadListPlaceHolder,\n });\n\n // scroll\n const [scrollBottom, setScrollBottom] = useState(0);\n const scrollRef = useRef(null);\n const onScroll = (e) => {\n const element = e.target;\n const {\n scrollTop,\n clientHeight,\n scrollHeight,\n } = element;\n\n const threadItemNodes = scrollRef.current.querySelectorAll('.sendbird-thread-list-item');\n const firstNode = threadItemNodes?.[0];\n if (isAboutSame(scrollTop, 0, 10) && hasMorePrev) {\n fetchPrevThreads((messages) => {\n if (messages) {\n try {\n firstNode?.scrollIntoView?.({ block: 'start', inline: 'nearest' });\n } catch (error) {\n //\n }\n }\n });\n }\n\n if (isAboutSame(clientHeight + scrollTop, scrollHeight, 10) && hasMoreNext) {\n const scrollTop_ = scrollTop;\n fetchNextThreads((messages) => {\n if (messages) {\n try {\n element.scrollTop = scrollTop_;\n scrollRef.current.scrollTop = scrollTop_;\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\n return (\n <div className='sendbird-thread-ui'>\n {\n MemorizedHeader || (\n <ThreadHeader\n className=\"sendbird-thread-ui__header\"\n channelName={getChannelTitle(currentChannel, currentUserId, stringSet)}\n onActionIconClick={onHeaderActionClick}\n onChannelNameClick={() => onMoveToParentMessage({ message: parentMessage, channel: currentChannel })}\n />\n )\n }\n <div\n className=\"sendbird-thread-ui--scroll\"\n ref={scrollRef}\n onScroll={onScroll}\n >\n {\n MemorizedParentMessageInfo || (\n <ParentMessageInfo\n className=\"sendbird-thread-ui__parent-message-info\"\n />\n )\n }\n {\n replyCount > 0 && (\n <div className=\"sendbird-thread-ui__reply-counts\">\n <Label\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_3}\n >\n {`${replyCount} ${replyCount > 1 ? stringSet.THREAD__THREAD_REPLIES : stringSet.THREAD__THREAD_REPLY}`}\n </Label>\n </div>\n )\n }\n {\n MemorizedThreadList || (\n <ThreadList\n className=\"sendbird-thread-ui__thread-list\"\n allThreadMessages={allThreadMessages}\n renderMessage={renderMessage}\n renderCustomSeparator={renderCustomSeparator}\n scrollRef={scrollRef}\n scrollBottom={scrollBottom}\n />\n )\n }\n {/* MessageInput */}\n {\n renderMessageInput?.() || (\n <ThreadMessageInput\n className=\"sendbird-thread-ui__message-input\"\n />\n )\n }\n </div>\n </div>\n );\n};\n\nexport default ThreadUI;\n"],"names":["useMemorizedHeader","_a","renderHeader","useMemo","useMemorizedParentMessageInfo","parentMessage","parentMessageState","renderParentMessageInfo","renderParentMessageInfoPlaceholder","ParentMessageStateTypes","NIL","LOADING","INVALID","React","PlaceHolderTypes","NO_RESULTS","WRONG","INITIALIZED","useMemorizedThreadList","threadListState","renderThreadListPlaceHolder","ThreadListStateTypes","ThreadUI","renderMessage","renderMessageInput","renderCustomSeparator","stores","useSendbirdStateContext","currentUserId","_d","_b","sdkStore","sdk","currentUser","userId","stringSet","useLocalization","_e","useThreadContext","currentChannel","allThreadMessages","hasMorePrev","hasMoreNext","fetchPrevThreads","fetchNextThreads","onHeaderActionClick","onMoveToParentMessage","replyCount","length","MemorizedHeader","MemorizedParentMessageInfo","MemorizedThreadList","_f","useState","scrollBottom","setScrollBottom","scrollRef","useRef","onScroll","e","element","target","scrollTop","clientHeight","scrollHeight","threadItemNodes","current","querySelectorAll","firstNode","isAboutSame","messages","scrollIntoView","call","block","inline","error","scrollTop_1","offsetHeight","getChannelTitle","message","channel","LabelTypography","BODY_1","LabelColors","ONBACKGROUND_3","concat","THREAD__THREAD_REPLIES","THREAD__THREAD_REPLY"],"mappings":"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"}
|
package/Thread/context.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import 'react';
|
|
2
|
-
export { T as ThreadProvider, u as useThreadContext } from '../ThreadProvider-
|
|
3
|
-
import '../UserProfileContext-
|
|
2
|
+
export { T as ThreadProvider, u as useThreadContext } from '../ThreadProvider-de5a7889.js';
|
|
3
|
+
import '../UserProfileContext-33a26cc4.js';
|
|
4
4
|
import '../useSendbirdStateContext.js';
|
|
5
|
-
import '../index-
|
|
6
|
-
import '../index-
|
|
5
|
+
import '../index-eadca08d.js';
|
|
6
|
+
import '../index-5e776774.js';
|
|
7
7
|
import '../utils/message/getOutgoingMessageState.js';
|
|
8
|
-
import '../tslib.es6-
|
|
8
|
+
import '../tslib.es6-d9fa3716.js';
|
|
9
9
|
import './context/types.js';
|
|
10
10
|
import '@sendbird/chat';
|
|
11
|
-
import '../topics-
|
|
11
|
+
import '../topics-d390daf6.js';
|
|
12
12
|
import '@sendbird/chat/groupChannel';
|
|
13
|
-
import '../uuid-
|
|
13
|
+
import '../uuid-968941a0.js';
|
|
14
14
|
import '@sendbird/chat/message';
|
|
15
15
|
import 'prop-types';
|
|
16
16
|
import '../withSendbird.js';
|
|
17
|
-
import '../_rollupPluginBabelHelpers-
|
|
17
|
+
import '../_rollupPluginBabelHelpers-ed44209e.js';
|
|
18
18
|
//# sourceMappingURL=context.js.map
|