@sendbird/uikit-react 3.2.5 → 3.2.6-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/App.js +327 -101
- package/App.js.map +1 -1
- package/CHANGELOG.md +7 -0
- package/Channel/components/ChannelHeader.js +30 -18
- package/Channel/components/ChannelHeader.js.map +1 -1
- package/Channel/components/ChannelUI.js +31 -22
- 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 +76 -73
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +15 -15
- package/Channel/components/MessageList.js +23 -20
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +16 -15
- package/Channel/components/RemoveMessageModal.js.map +1 -1
- package/Channel/components/SuggestedMentionList.js +15 -15
- package/Channel/components/TypingIndicator.js +14 -14
- package/Channel/components/UnreadCount.js +4 -4
- package/Channel/context.js +13 -13
- package/Channel.js +25 -21
- package/Channel.js.map +1 -1
- package/ChannelList/components/AddChannel.js +14 -13
- package/ChannelList/components/AddChannel.js.map +1 -1
- package/ChannelList/components/ChannelListHeader.js +7 -7
- package/ChannelList/components/ChannelListUI.js +32 -26
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +69 -28
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +14 -13
- package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
- package/ChannelList/context.js +8 -8
- package/ChannelList.js +28 -26
- package/ChannelList.js.map +1 -1
- package/{ChannelListProvider-cdb08b62.js → ChannelListProvider-f69a3eab.js} +33 -11
- package/ChannelListProvider-f69a3eab.js.map +1 -0
- package/{ChannelProvider-08b86d72.js → ChannelProvider-beed5203.js} +49 -25
- package/ChannelProvider-beed5203.js.map +1 -0
- package/ChannelSettings/components/ChannelProfile.js +12 -11
- package/ChannelSettings/components/ChannelProfile.js.map +1 -1
- package/ChannelSettings/components/ChannelSettingsUI.js +18 -17
- package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
- package/ChannelSettings/components/EditDetailsModal.js +13 -11
- package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/ChannelSettings/components/LeaveChannel.js +74 -26
- package/ChannelSettings/components/LeaveChannel.js.map +1 -1
- package/ChannelSettings/components/ModerationPanel.js +19 -14
- package/ChannelSettings/components/ModerationPanel.js.map +1 -1
- package/ChannelSettings/components/UserListItem.js +11 -11
- package/ChannelSettings/components/UserPanel.js +14 -13
- package/ChannelSettings/components/UserPanel.js.map +1 -1
- package/ChannelSettings/context.js +9 -5
- package/ChannelSettings/context.js.map +1 -1
- package/ChannelSettings.js +19 -17
- package/ChannelSettings.js.map +1 -1
- package/CreateChannel/components/CreateChannelUI.js +14 -13
- package/CreateChannel/components/CreateChannelUI.js.map +1 -1
- package/CreateChannel/components/InviteUsers.js +32 -13
- package/CreateChannel/components/InviteUsers.js.map +1 -1
- package/CreateChannel/components/SelectChannelType.js +13 -11
- package/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/CreateChannel/context.js +4 -4
- package/CreateChannel.js +14 -13
- package/CreateChannel.js.map +1 -1
- package/{CreateChannelProvider-b5fa7c16.js → CreateChannelProvider-6b83f0e6.js} +1 -1
- package/{CreateChannelProvider-b5fa7c16.js.map → CreateChannelProvider-6b83f0e6.js.map} +1 -1
- package/CreateOpenChannel/components/CreateOpenChannelUI.js +11 -9
- package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
- package/CreateOpenChannel/context.js +1 -1
- package/CreateOpenChannel.js +10 -9
- package/CreateOpenChannel.js.map +1 -1
- package/EditUserProfile/components/EditUserProfileUI.js +13 -12
- package/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
- package/EditUserProfile.js +13 -12
- package/EditUserProfile.js.map +1 -1
- package/{LocalizationContext-9976b34e.js → LocalizationContext-4f852f2e.js} +3 -3
- package/{LocalizationContext-9976b34e.js.map → LocalizationContext-4f852f2e.js.map} +1 -1
- package/MediaQueryContext-20ff176d.js +90 -0
- package/MediaQueryContext-20ff176d.js.map +1 -0
- package/{MemberList-070e920a.js → MemberList-8ffa1f2e.js} +12 -6
- package/MemberList-8ffa1f2e.js.map +1 -0
- package/MessageSearch/components/MessageSearchUI.js +11 -11
- package/MessageSearch/context.js +2 -2
- package/MessageSearch.js +11 -11
- package/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/OpenChannel/components/OpenChannelHeader.js +25 -15
- package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
- package/OpenChannel/components/OpenChannelInput.js +15 -15
- package/OpenChannel/components/OpenChannelMessage.js +22 -20
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +24 -22
- package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/OpenChannel/components/OpenChannelUI.js +27 -23
- package/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/OpenChannel/context.js +9 -9
- package/OpenChannel.js +27 -24
- package/OpenChannel.js.map +1 -1
- package/OpenChannelList/components/OpenChannelListUI.js +15 -13
- package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
- package/OpenChannelList/components/OpenChannelPreview.js +4 -4
- package/OpenChannelList/context.js +4 -4
- package/OpenChannelList.js +13 -12
- package/OpenChannelList.js.map +1 -1
- package/{OpenChannelListProvider-ca1d96e3.js → OpenChannelListProvider-4e00f9cf.js} +3 -3
- package/{OpenChannelListProvider-ca1d96e3.js.map → OpenChannelListProvider-4e00f9cf.js.map} +1 -1
- package/{OpenChannelProvider-03efd3ff.js → OpenChannelProvider-f244c340.js} +40 -30
- package/OpenChannelProvider-f244c340.js.map +1 -0
- package/OpenChannelSettings/components/EditDetailsModal.js +14 -12
- package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/OpenChannelSettings/components/OpenChannelProfile.js +13 -12
- package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -18
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
- package/OpenChannelSettings/components/OperatorUI.js +22 -16
- package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/OpenChannelSettings/components/ParticipantUI.js +15 -14
- package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
- package/OpenChannelSettings/context.js +3 -3
- package/OpenChannelSettings.js +18 -17
- package/OpenChannelSettings.js.map +1 -1
- package/SendbirdProvider.js +22 -10
- package/SendbirdProvider.js.map +1 -1
- package/{UserProfileContext-24bb1c79.js → UserProfileContext-32f70da9.js} +8 -4
- package/UserProfileContext-32f70da9.js.map +1 -0
- package/{_rollupPluginBabelHelpers-a72165e4.js → _rollupPluginBabelHelpers-42595172.js} +19 -2
- package/_rollupPluginBabelHelpers-42595172.js.map +1 -0
- package/{actionTypes-b30fed5f.js → actionTypes-5126af74.js} +1 -1
- package/{actionTypes-b30fed5f.js.map → actionTypes-5126af74.js.map} +1 -1
- package/cjs/App.js +326 -100
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +29 -17
- package/cjs/Channel/components/ChannelHeader.js.map +1 -1
- package/cjs/Channel/components/ChannelUI.js +31 -22
- 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 +76 -73
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +15 -15
- package/cjs/Channel/components/MessageList.js +23 -20
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +16 -15
- package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
- package/cjs/Channel/components/SuggestedMentionList.js +15 -15
- 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 +25 -21
- package/cjs/Channel.js.map +1 -1
- package/cjs/ChannelList/components/AddChannel.js +14 -13
- package/cjs/ChannelList/components/AddChannel.js.map +1 -1
- package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
- package/cjs/ChannelList/components/ChannelListUI.js +32 -26
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +68 -27
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -13
- package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
- package/cjs/ChannelList/context.js +8 -8
- package/cjs/ChannelList.js +28 -26
- package/cjs/ChannelList.js.map +1 -1
- package/cjs/{ChannelListProvider-5543db95.js → ChannelListProvider-573d11bf.js} +33 -11
- package/cjs/ChannelListProvider-573d11bf.js.map +1 -0
- package/cjs/{ChannelProvider-c9b390b7.js → ChannelProvider-c4c8058c.js} +49 -25
- package/cjs/ChannelProvider-c4c8058c.js.map +1 -0
- package/cjs/ChannelSettings/components/ChannelProfile.js +12 -11
- package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -17
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
- package/cjs/ChannelSettings/components/EditDetailsModal.js +13 -11
- package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/cjs/ChannelSettings/components/LeaveChannel.js +74 -26
- package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
- package/cjs/ChannelSettings/components/ModerationPanel.js +19 -14
- package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
- package/cjs/ChannelSettings/components/UserListItem.js +11 -11
- package/cjs/ChannelSettings/components/UserPanel.js +14 -13
- package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
- package/cjs/ChannelSettings/context.js +9 -5
- package/cjs/ChannelSettings/context.js.map +1 -1
- package/cjs/ChannelSettings.js +19 -17
- package/cjs/ChannelSettings.js.map +1 -1
- package/cjs/CreateChannel/components/CreateChannelUI.js +14 -13
- package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
- package/cjs/CreateChannel/components/InviteUsers.js +32 -13
- package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
- package/cjs/CreateChannel/components/SelectChannelType.js +13 -11
- package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/cjs/CreateChannel/context.js +4 -4
- package/cjs/CreateChannel.js +14 -13
- package/cjs/CreateChannel.js.map +1 -1
- package/cjs/{CreateChannelProvider-0a28a871.js → CreateChannelProvider-d75d1c0e.js} +1 -1
- package/cjs/{CreateChannelProvider-0a28a871.js.map → CreateChannelProvider-d75d1c0e.js.map} +1 -1
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +11 -9
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
- package/cjs/CreateOpenChannel/context.js +1 -1
- package/cjs/CreateOpenChannel.js +10 -9
- package/cjs/CreateOpenChannel.js.map +1 -1
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -12
- package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
- package/cjs/EditUserProfile.js +13 -12
- package/cjs/EditUserProfile.js.map +1 -1
- package/cjs/{LocalizationContext-0349dfbd.js → LocalizationContext-b8b9eb7b.js} +3 -3
- package/cjs/{LocalizationContext-0349dfbd.js.map → LocalizationContext-b8b9eb7b.js.map} +1 -1
- package/cjs/MediaQueryContext-f8dbf0b3.js +97 -0
- package/cjs/MediaQueryContext-f8dbf0b3.js.map +1 -0
- package/cjs/{MemberList-a95f8e7f.js → MemberList-7bcc79b2.js} +12 -6
- package/cjs/MemberList-7bcc79b2.js.map +1 -0
- package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
- package/cjs/MessageSearch/context.js +2 -2
- package/cjs/MessageSearch.js +11 -11
- package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/cjs/OpenChannel/components/OpenChannelHeader.js +24 -14
- package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelInput.js +15 -15
- package/cjs/OpenChannel/components/OpenChannelMessage.js +22 -20
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +24 -22
- package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelUI.js +27 -23
- package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/cjs/OpenChannel/context.js +9 -9
- package/cjs/OpenChannel.js +27 -24
- package/cjs/OpenChannel.js.map +1 -1
- package/cjs/OpenChannelList/components/OpenChannelListUI.js +15 -13
- package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
- package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
- package/cjs/OpenChannelList/context.js +4 -4
- package/cjs/OpenChannelList.js +13 -12
- package/cjs/OpenChannelList.js.map +1 -1
- package/cjs/{OpenChannelListProvider-df27c36c.js → OpenChannelListProvider-9d3966e5.js} +3 -3
- package/cjs/{OpenChannelListProvider-df27c36c.js.map → OpenChannelListProvider-9d3966e5.js.map} +1 -1
- package/cjs/{OpenChannelProvider-4895f5f6.js → OpenChannelProvider-a2a44b3a.js} +40 -30
- package/cjs/OpenChannelProvider-a2a44b3a.js.map +1 -0
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +14 -12
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -12
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -18
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OperatorUI.js +22 -16
- package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -14
- package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
- package/cjs/OpenChannelSettings/context.js +3 -3
- package/cjs/OpenChannelSettings.js +18 -17
- package/cjs/OpenChannelSettings.js.map +1 -1
- package/cjs/SendbirdProvider.js +22 -10
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/{UserProfileContext-d1596965.js → UserProfileContext-12e3deb1.js} +8 -4
- package/cjs/UserProfileContext-12e3deb1.js.map +1 -0
- package/cjs/{_rollupPluginBabelHelpers-93d42928.js → _rollupPluginBabelHelpers-bd20f22f.js} +19 -1
- package/cjs/_rollupPluginBabelHelpers-bd20f22f.js.map +1 -0
- package/cjs/{actionTypes-6a04e98a.js → actionTypes-fa2458d4.js} +1 -1
- package/cjs/{actionTypes-6a04e98a.js.map → actionTypes-fa2458d4.js.map} +1 -1
- package/cjs/{color-8da1967d.js → color-30d0a088.js} +1 -1
- package/cjs/{color-8da1967d.js.map → color-30d0a088.js.map} +1 -1
- package/cjs/{compareIds-20b6caa8.js → compareIds-33bc8bec.js} +1 -1
- package/cjs/{compareIds-20b6caa8.js.map → compareIds-33bc8bec.js.map} +1 -1
- package/cjs/{const-0ce11db5.js → const-5ff5760f.js} +1 -1
- package/cjs/{const-0ce11db5.js.map → const-5ff5760f.js.map} +1 -1
- package/cjs/{const-ed017cc9.js → const-bc367512.js} +1 -1
- package/cjs/{const-ed017cc9.js.map → const-bc367512.js.map} +1 -1
- package/cjs/{context-bd7de995.js → context-c1adec92.js} +2 -2
- package/cjs/{context-bd7de995.js.map → context-c1adec92.js.map} +1 -1
- package/cjs/dist/index.css +439 -112
- package/cjs/dist/index.css.map +1 -1
- package/cjs/{index-a52296d6.js → index-0686bdcb.js} +9 -8
- package/cjs/index-0686bdcb.js.map +1 -0
- package/cjs/{index-e741ec2c.js → index-0e88b900.js} +4 -4
- package/cjs/{index-e741ec2c.js.map → index-0e88b900.js.map} +1 -1
- package/cjs/{index-558d367a.js → index-0f54b27e.js} +5 -5
- package/cjs/index-0f54b27e.js.map +1 -0
- package/cjs/{index-7ab4005e.js → index-3f8db0b0.js} +6 -5
- package/cjs/index-3f8db0b0.js.map +1 -0
- package/cjs/{index-491f2403.js → index-62071d1a.js} +1 -1
- package/cjs/{index-491f2403.js.map → index-62071d1a.js.map} +1 -1
- package/cjs/{index-1ce4efa3.js → index-70f4ade7.js} +4 -4
- package/cjs/{index-1ce4efa3.js.map → index-70f4ade7.js.map} +1 -1
- package/cjs/index-978dbae2.js +194 -0
- package/cjs/index-978dbae2.js.map +1 -0
- package/cjs/{index-c7bba14f.js → index-aca9abc8.js} +2 -2
- package/cjs/{index-c7bba14f.js.map → index-aca9abc8.js.map} +1 -1
- package/cjs/{index-200b85a3.js → index-be16bf7f.js} +1 -1
- package/cjs/{index-200b85a3.js.map → index-be16bf7f.js.map} +1 -1
- package/cjs/{index-09d50472.js → index-c97a25fe.js} +2 -2
- package/cjs/{index-09d50472.js.map → index-c97a25fe.js.map} +1 -1
- package/cjs/{index-e59510d3.js → index-e739b357.js} +2 -2
- package/cjs/{index-e59510d3.js.map → index-e739b357.js.map} +1 -1
- package/cjs/index.js +35 -32
- package/cjs/index.js.map +1 -1
- package/cjs/sendbirdSelectors.js +2 -2
- package/cjs/{stringSet-9eadd9a2.js → stringSet-b90c8eb9.js} +4 -1
- package/cjs/stringSet-b90c8eb9.js.map +1 -0
- package/cjs/{topics-c4ffdf98.js → topics-774fce2f.js} +1 -1
- package/cjs/{topics-c4ffdf98.js.map → topics-774fce2f.js.map} +1 -1
- package/cjs/{tslib.es6-712ab026.js → tslib.es6-54dccd69.js} +1 -1
- package/cjs/{tslib.es6-712ab026.js.map → tslib.es6-54dccd69.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 +43 -0
- package/cjs/ui/BottomSheet.js.map +1 -0
- 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 +14 -10
- package/cjs/ui/ContextMenu.js.map +1 -1
- package/cjs/ui/DateSeparator.js +4 -4
- package/cjs/ui/EmojiReactions.js +7 -7
- package/cjs/ui/FileMessageItemBody.js +8 -6
- package/cjs/ui/FileMessageItemBody.js.map +1 -1
- 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 +9 -3
- package/cjs/ui/LinkLabel.js.map +1 -1
- package/cjs/ui/Loader.js +1 -1
- package/cjs/ui/MentionLabel.js +11 -10
- package/cjs/ui/MentionLabel.js.map +1 -1
- package/cjs/ui/MessageContent.js +450 -40
- package/cjs/ui/MessageContent.js.map +1 -1
- package/cjs/ui/MessageInput.js +23 -16
- package/cjs/ui/MessageInput.js.map +1 -1
- package/cjs/ui/MessageItemMenu.js +7 -7
- package/cjs/ui/MessageItemReactionMenu.js +5 -5
- package/cjs/ui/MessageSearchFileItem.js +9 -9
- package/cjs/ui/MessageSearchItem.js +9 -9
- package/cjs/ui/MessageStatus.js +7 -7
- package/cjs/ui/Modal.js +33 -18
- package/cjs/ui/Modal.js.map +1 -1
- package/cjs/ui/OGMessageItemBody.js +11 -10
- package/cjs/ui/OGMessageItemBody.js.map +1 -1
- package/cjs/ui/OpenChannelAdminMessage.js +3 -3
- package/cjs/ui/OpenChannelAvatar.js +6 -6
- package/cjs/ui/OpenchannelConversationHeader.js +6 -6
- package/cjs/ui/OpenchannelFileMessage.js +56 -26
- package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
- package/cjs/ui/OpenchannelOGMessage.js +75 -37
- package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
- package/cjs/ui/OpenchannelThumbnailMessage.js +58 -26
- package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/cjs/ui/OpenchannelUserMessage.js +74 -51
- package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
- package/cjs/ui/PlaceHolder.js +6 -6
- package/cjs/ui/QuoteMessage.js +9 -6
- package/cjs/ui/QuoteMessage.js.map +1 -1
- package/cjs/ui/QuoteMessageInput.js +6 -6
- package/cjs/ui/ReactionBadge.js +4 -3
- package/cjs/ui/ReactionBadge.js.map +1 -1
- package/cjs/ui/ReactionButton.js +7 -1
- package/cjs/ui/ReactionButton.js.map +1 -1
- package/cjs/ui/SortByRow.js +2 -2
- package/cjs/ui/TextButton.js +2 -2
- package/cjs/ui/TextMessageItemBody.js +11 -10
- package/cjs/ui/TextMessageItemBody.js.map +1 -1
- package/cjs/ui/ThumbnailMessageItemBody.js +2 -2
- package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/cjs/ui/Tooltip.js +3 -3
- package/cjs/ui/TooltipWrapper.js +1 -1
- package/cjs/ui/UnknownMessageItemBody.js +6 -6
- package/cjs/ui/UserListItem.js +11 -11
- package/cjs/ui/UserProfile.js +18 -11
- package/cjs/ui/UserProfile.js.map +1 -1
- package/cjs/ui/Word.js +11 -10
- package/cjs/ui/Word.js.map +1 -1
- package/cjs/useLongPress-447fc2b4.js +118 -0
- package/cjs/useLongPress-447fc2b4.js.map +1 -0
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/{utils-90917fdb.js → utils-47e4a7f3.js} +1 -1
- package/cjs/{utils-90917fdb.js.map → utils-47e4a7f3.js.map} +1 -1
- package/cjs/{utils-03670a4b.js → utils-b42b5273.js} +1 -1
- package/cjs/{utils-03670a4b.js.map → utils-b42b5273.js.map} +1 -1
- package/cjs/{utils-db03a3ee.js → utils-b808700b.js} +1 -1
- package/cjs/{utils-db03a3ee.js.map → utils-b808700b.js.map} +1 -1
- package/cjs/{uuid-4fb21145.js → uuid-65030b4c.js} +1 -1
- package/cjs/{uuid-4fb21145.js.map → uuid-65030b4c.js.map} +1 -1
- package/cjs/withSendbird.js +1 -1
- package/{color-511dde29.js → color-d2a15055.js} +1 -1
- package/{color-511dde29.js.map → color-d2a15055.js.map} +1 -1
- package/{compareIds-8626728b.js → compareIds-cd18758a.js} +1 -1
- package/{compareIds-8626728b.js.map → compareIds-cd18758a.js.map} +1 -1
- package/{const-411c29c2.js → const-7186e391.js} +1 -1
- package/{const-411c29c2.js.map → const-7186e391.js.map} +1 -1
- package/{const-4836ca2f.js → const-9ed3c2e5.js} +1 -1
- package/{const-4836ca2f.js.map → const-9ed3c2e5.js.map} +1 -1
- package/{context-b3b0d94d.js → context-9f3c35b6.js} +2 -2
- package/{context-b3b0d94d.js.map → context-9f3c35b6.js.map} +1 -1
- package/dist/index.css +439 -112
- package/dist/index.css.map +1 -1
- package/index-115ce580.js +179 -0
- package/index-115ce580.js.map +1 -0
- package/{index-dbe2f386.js → index-14e045d4.js} +1 -1
- package/{index-dbe2f386.js.map → index-14e045d4.js.map} +1 -1
- package/{index-07ae6a1b.js → index-39b44653.js} +2 -2
- package/{index-07ae6a1b.js.map → index-39b44653.js.map} +1 -1
- package/{index-4be14273.js → index-5e8156eb.js} +6 -5
- package/index-5e8156eb.js.map +1 -0
- package/{index-c3c4236f.js → index-a28ce5ed.js} +4 -4
- package/{index-c3c4236f.js.map → index-a28ce5ed.js.map} +1 -1
- package/{index-200a8796.js → index-b02633bc.js} +2 -2
- package/{index-200a8796.js.map → index-b02633bc.js.map} +1 -1
- package/{index-5e61b8f6.js → index-c766d64c.js} +1 -1
- package/{index-5e61b8f6.js.map → index-c766d64c.js.map} +1 -1
- package/{index-9113fa9d.js → index-e0ade5e4.js} +2 -2
- package/{index-9113fa9d.js.map → index-e0ade5e4.js.map} +1 -1
- package/{index-89cd6e36.js → index-e1f156d0.js} +6 -6
- package/index-e1f156d0.js.map +1 -0
- package/{index-c16ac1c8.js → index-e2a7caae.js} +9 -8
- package/index-e2a7caae.js.map +1 -0
- package/{index-5cc28c33.js → index-f29a239d.js} +4 -4
- package/{index-5cc28c33.js.map → index-f29a239d.js.map} +1 -1
- package/index.d.ts +15 -4
- package/index.js +35 -32
- package/index.js.map +1 -1
- package/package.json +1 -1
- package/sendbirdSelectors.js +2 -2
- package/{stringSet-8662ec77.js → stringSet-fd9dcf1e.js} +4 -1
- package/stringSet-fd9dcf1e.js.map +1 -0
- package/{topics-0752cb33.js → topics-954a5dbc.js} +1 -1
- package/{topics-0752cb33.js.map → topics-954a5dbc.js.map} +1 -1
- package/{tslib.es6-d20349ad.js → tslib.es6-38d6449a.js} +1 -1
- package/{tslib.es6-d20349ad.js.map → tslib.es6-38d6449a.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 +37 -0
- package/ui/BottomSheet.js.map +1 -0
- package/ui/Button.js +3 -3
- package/ui/ChannelAvatar.js +3 -3
- package/ui/ConnectionStatus.js +4 -4
- package/ui/ContextMenu.js +14 -10
- package/ui/ContextMenu.js.map +1 -1
- package/ui/DateSeparator.js +4 -4
- package/ui/EmojiReactions.js +7 -7
- package/ui/FileMessageItemBody.js +8 -6
- package/ui/FileMessageItemBody.js.map +1 -1
- 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 +9 -3
- package/ui/LinkLabel.js.map +1 -1
- package/ui/Loader.js +1 -1
- package/ui/MentionLabel.js +11 -10
- package/ui/MentionLabel.js.map +1 -1
- package/ui/MessageContent.js +452 -42
- package/ui/MessageContent.js.map +1 -1
- package/ui/MessageInput.js +23 -16
- package/ui/MessageInput.js.map +1 -1
- package/ui/MessageItemMenu.js +7 -7
- package/ui/MessageItemReactionMenu.js +5 -5
- package/ui/MessageSearchFileItem.js +9 -9
- package/ui/MessageSearchItem.js +9 -9
- package/ui/MessageStatus.js +7 -7
- package/ui/Modal.js +33 -18
- package/ui/Modal.js.map +1 -1
- package/ui/OGMessageItemBody.js +11 -10
- package/ui/OGMessageItemBody.js.map +1 -1
- package/ui/OpenChannelAdminMessage.js +3 -3
- package/ui/OpenChannelAvatar.js +6 -6
- package/ui/OpenchannelConversationHeader.js +6 -6
- package/ui/OpenchannelFileMessage.js +50 -20
- package/ui/OpenchannelFileMessage.js.map +1 -1
- package/ui/OpenchannelOGMessage.js +66 -28
- package/ui/OpenchannelOGMessage.js.map +1 -1
- package/ui/OpenchannelThumbnailMessage.js +50 -18
- package/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/ui/OpenchannelUserMessage.js +67 -44
- package/ui/OpenchannelUserMessage.js.map +1 -1
- package/ui/PlaceHolder.js +6 -6
- package/ui/QuoteMessage.js +9 -6
- package/ui/QuoteMessage.js.map +1 -1
- package/ui/QuoteMessageInput.js +6 -6
- package/ui/ReactionBadge.js +4 -3
- package/ui/ReactionBadge.js.map +1 -1
- package/ui/ReactionButton.js +7 -1
- package/ui/ReactionButton.js.map +1 -1
- package/ui/SortByRow.js +2 -2
- package/ui/TextButton.js +2 -2
- package/ui/TextMessageItemBody.js +11 -10
- package/ui/TextMessageItemBody.js.map +1 -1
- package/ui/ThumbnailMessageItemBody.js +2 -2
- package/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/ui/Tooltip.js +3 -3
- package/ui/TooltipWrapper.js +1 -1
- package/ui/UnknownMessageItemBody.js +6 -6
- package/ui/UserListItem.js +11 -11
- package/ui/UserProfile.js +18 -11
- package/ui/UserProfile.js.map +1 -1
- package/ui/Word.js +11 -10
- package/ui/Word.js.map +1 -1
- package/useLongPress-3488ddd6.js +116 -0
- package/useLongPress-3488ddd6.js.map +1 -0
- package/useSendbirdStateContext.js +1 -1
- package/{utils-5569d95d.js → utils-80e9e20d.js} +1 -1
- package/{utils-5569d95d.js.map → utils-80e9e20d.js.map} +1 -1
- package/{utils-aba28b29.js → utils-cb1a4884.js} +1 -1
- package/{utils-aba28b29.js.map → utils-cb1a4884.js.map} +1 -1
- package/{utils-beb5bcc4.js → utils-f036cfe7.js} +1 -1
- package/{utils-beb5bcc4.js.map → utils-f036cfe7.js.map} +1 -1
- package/{uuid-e5bc1634.js → uuid-11fdaf7d.js} +1 -1
- package/{uuid-e5bc1634.js.map → uuid-11fdaf7d.js.map} +1 -1
- package/withSendbird.js +1 -1
- package/ChannelListProvider-cdb08b62.js.map +0 -1
- package/ChannelProvider-08b86d72.js.map +0 -1
- package/MemberList-070e920a.js.map +0 -1
- package/OpenChannelProvider-03efd3ff.js.map +0 -1
- package/UserProfileContext-24bb1c79.js.map +0 -1
- package/_rollupPluginBabelHelpers-a72165e4.js.map +0 -1
- package/cjs/ChannelListProvider-5543db95.js.map +0 -1
- package/cjs/ChannelProvider-c9b390b7.js.map +0 -1
- package/cjs/MemberList-a95f8e7f.js.map +0 -1
- package/cjs/OpenChannelProvider-4895f5f6.js.map +0 -1
- package/cjs/UserProfileContext-d1596965.js.map +0 -1
- package/cjs/_rollupPluginBabelHelpers-93d42928.js.map +0 -1
- package/cjs/index-558d367a.js.map +0 -1
- package/cjs/index-7ab4005e.js.map +0 -1
- package/cjs/index-a52296d6.js.map +0 -1
- package/cjs/openChannelUtils-5a371d5c.js +0 -96
- package/cjs/openChannelUtils-5a371d5c.js.map +0 -1
- package/cjs/stringSet-9eadd9a2.js.map +0 -1
- package/index-4be14273.js.map +0 -1
- package/index-89cd6e36.js.map +0 -1
- package/index-c16ac1c8.js.map +0 -1
- package/openChannelUtils-fecc8bc0.js +0 -86
- package/openChannelUtils-fecc8bc0.js.map +0 -1
- package/stringSet-8662ec77.js.map +0 -1
|
@@ -1,32 +1,35 @@
|
|
|
1
|
-
import { a as
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
1
|
+
import { a as _extends } from '../_rollupPluginBabelHelpers-42595172.js';
|
|
2
|
+
import { a as __spreadArray, _ as __assign } from '../tslib.es6-38d6449a.js';
|
|
3
|
+
import React__default, { useContext, useRef, useState, useEffect } from 'react';
|
|
4
|
+
import { f as format } from '../index-39b44653.js';
|
|
4
5
|
import Avatar from './Avatar.js';
|
|
5
6
|
import ContextMenu, { MenuItems, MenuItem } from './ContextMenu.js';
|
|
6
7
|
import Icon, { IconTypes, IconColors } from './Icon.js';
|
|
7
8
|
import IconButton from './IconButton.js';
|
|
8
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-
|
|
9
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-b02633bc.js';
|
|
9
10
|
import Loader from './Loader.js';
|
|
10
11
|
import ConnectedUserProfile from './UserProfile.js';
|
|
11
|
-
import { a as UserProfileContext } from '../UserProfileContext-
|
|
12
|
-
import { u as useLocalization } from '../LocalizationContext-
|
|
13
|
-
import { c as copyToClipboard } from '../utils-
|
|
14
|
-
import { u as uuidv4 } from '../uuid-
|
|
15
|
-
import { g as getSenderFromMessage, s as showMenuTrigger, i as isFineCopy, a as isFineEdit, b as isFineResend, c as isFineDelete, d as checkIsPending, e as checkIsFailed } from '../
|
|
16
|
-
import '../
|
|
12
|
+
import { a as UserProfileContext } from '../UserProfileContext-32f70da9.js';
|
|
13
|
+
import { u as useLocalization } from '../LocalizationContext-4f852f2e.js';
|
|
14
|
+
import { c as copyToClipboard } from '../utils-f036cfe7.js';
|
|
15
|
+
import { u as uuidv4 } from '../uuid-11fdaf7d.js';
|
|
16
|
+
import { g as getSenderFromMessage, s as showMenuTrigger, i as isFineCopy, a as isFineEdit, b as isFineResend, c as isFineDelete, O as OpenChannelMobileMenu, d as checkIsPending, e as checkIsFailed } from '../index-115ce580.js';
|
|
17
|
+
import { u as useMediaQueryContext } from '../MediaQueryContext-20ff176d.js';
|
|
18
|
+
import { u as useLongPress } from '../useLongPress-3488ddd6.js';
|
|
19
|
+
import { d as isEditedMessage } from '../index-e1f156d0.js';
|
|
20
|
+
import '../index-c766d64c.js';
|
|
17
21
|
import './ImageRenderer.js';
|
|
18
22
|
import 'prop-types';
|
|
19
23
|
import 'react-dom';
|
|
20
24
|
import './SortByRow.js';
|
|
21
|
-
import '../index-89cd6e36.js';
|
|
22
25
|
import '../utils/message/getOutgoingMessageState.js';
|
|
23
|
-
import '../stringSet-
|
|
26
|
+
import '../stringSet-fd9dcf1e.js';
|
|
24
27
|
import '../withSendbird.js';
|
|
25
|
-
import '../_rollupPluginBabelHelpers-a72165e4.js';
|
|
26
28
|
import '../sendbirdSelectors.js';
|
|
27
|
-
import '../topics-
|
|
28
|
-
import '../utils-
|
|
29
|
+
import '../topics-954a5dbc.js';
|
|
30
|
+
import '../utils-80e9e20d.js';
|
|
29
31
|
import './Button.js';
|
|
32
|
+
import '../useSendbirdStateContext.js';
|
|
30
33
|
|
|
31
34
|
function OpenchannelUserMessage(_a) {
|
|
32
35
|
var className = _a.className,
|
|
@@ -55,35 +58,21 @@ function OpenchannelUserMessage(_a) {
|
|
|
55
58
|
var messageRef = useRef(null);
|
|
56
59
|
var avatarRef = useRef(null);
|
|
57
60
|
var contextMenuRef = useRef(null);
|
|
61
|
+
var mobileMenuRef = useRef(null);
|
|
58
62
|
|
|
59
63
|
var _d = useState({}),
|
|
60
64
|
contextStyle = _d[0],
|
|
61
|
-
setContextStyle = _d[1];
|
|
65
|
+
setContextStyle = _d[1];
|
|
66
|
+
|
|
67
|
+
var _e = useState(false),
|
|
68
|
+
contextMenu = _e[0],
|
|
69
|
+
setContextMenu = _e[1]; // consts
|
|
62
70
|
|
|
63
71
|
|
|
64
72
|
var status = message === null || message === void 0 ? void 0 : message.sendingStatus;
|
|
65
73
|
var isPending = checkIsPending(status);
|
|
66
74
|
var isFailed = checkIsFailed(status);
|
|
67
|
-
var sender = getSenderFromMessage(message);
|
|
68
|
-
var MemoizedMessageText = useMemo(function () {
|
|
69
|
-
return function () {
|
|
70
|
-
var splitMessage = message.message.split(/\r/);
|
|
71
|
-
var matchedMessage = splitMessage.map(function (word) {
|
|
72
|
-
return word !== '' ? word : /*#__PURE__*/React__default.createElement("br", null);
|
|
73
|
-
});
|
|
74
|
-
|
|
75
|
-
if (message.updatedAt > 0) {
|
|
76
|
-
matchedMessage.push( /*#__PURE__*/React__default.createElement(Label, {
|
|
77
|
-
key: uuidv4(),
|
|
78
|
-
type: LabelTypography.BODY_1,
|
|
79
|
-
color: LabelColors.ONBACKGROUND_2,
|
|
80
|
-
calssName: "sendbird-openchannel-user-message-word"
|
|
81
|
-
}, " ".concat(stringSet.MESSAGE_EDITED, " ")));
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
return matchedMessage;
|
|
85
|
-
};
|
|
86
|
-
}, [message, message.updatedAt]); // place context menu top depending clientHeight of message component
|
|
75
|
+
var sender = getSenderFromMessage(message); // place context menu top depending clientHeight of message component
|
|
87
76
|
|
|
88
77
|
useEffect(function () {
|
|
89
78
|
var _a;
|
|
@@ -98,6 +87,12 @@ function OpenchannelUserMessage(_a) {
|
|
|
98
87
|
});
|
|
99
88
|
}
|
|
100
89
|
}, [window.innerWidth]);
|
|
90
|
+
var onLongPress = useLongPress({
|
|
91
|
+
onLongPress: function () {
|
|
92
|
+
setContextMenu(true);
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
var isMobile = useMediaQueryContext().isMobile;
|
|
101
96
|
return /*#__PURE__*/React__default.createElement("div", {
|
|
102
97
|
className: __spreadArray(__spreadArray([], Array.isArray(className) ? className : [className], true), ['sendbird-openchannel-user-message'], false).join(' '),
|
|
103
98
|
ref: messageRef
|
|
@@ -124,8 +119,8 @@ function OpenchannelUserMessage(_a) {
|
|
|
124
119
|
parentContainRef: avatarRef,
|
|
125
120
|
closeDropdown: closeDropdown,
|
|
126
121
|
style: {
|
|
127
|
-
paddingTop:
|
|
128
|
-
paddingBottom:
|
|
122
|
+
paddingTop: '0px',
|
|
123
|
+
paddingBottom: '0px'
|
|
129
124
|
}
|
|
130
125
|
}, renderUserProfile ? renderUserProfile({
|
|
131
126
|
user: sender,
|
|
@@ -150,13 +145,19 @@ function OpenchannelUserMessage(_a) {
|
|
|
150
145
|
color: LabelColors.ONBACKGROUND_3
|
|
151
146
|
}, (message === null || message === void 0 ? void 0 : message.createdAt) && format(message === null || message === void 0 ? void 0 : message.createdAt, 'p', {
|
|
152
147
|
locale: dateLocale
|
|
153
|
-
}))), /*#__PURE__*/React__default.createElement("div", {
|
|
154
|
-
className: "sendbird-openchannel-user-message__right__bottom"
|
|
155
|
-
|
|
148
|
+
}))), /*#__PURE__*/React__default.createElement("div", _extends({}, isMobile ? __assign({}, onLongPress) : {}, {
|
|
149
|
+
className: "sendbird-openchannel-user-message__right__bottom",
|
|
150
|
+
ref: mobileMenuRef
|
|
151
|
+
}), /*#__PURE__*/React__default.createElement(Label, {
|
|
156
152
|
className: "sendbird-openchannel-user-message__right__bottom__message",
|
|
157
153
|
type: LabelTypography.BODY_1,
|
|
158
154
|
color: LabelColors.ONBACKGROUND_1
|
|
159
|
-
},
|
|
155
|
+
}, message === null || message === void 0 ? void 0 : message.message, isEditedMessage(message) && /*#__PURE__*/React__default.createElement(Label, {
|
|
156
|
+
key: uuidv4(),
|
|
157
|
+
type: LabelTypography.BODY_1,
|
|
158
|
+
color: LabelColors.ONBACKGROUND_2,
|
|
159
|
+
calssName: "sendbird-openchannel-user-message-word"
|
|
160
|
+
}, " ".concat(stringSet.MESSAGE_EDITED, " ")))), (isPending || isFailed) && /*#__PURE__*/React__default.createElement("div", {
|
|
160
161
|
className: "sendbird-openchannel-user-message__right__tail"
|
|
161
162
|
}, isPending && /*#__PURE__*/React__default.createElement(Loader, {
|
|
162
163
|
width: "16px",
|
|
@@ -173,7 +174,7 @@ function OpenchannelUserMessage(_a) {
|
|
|
173
174
|
fillColor: IconColors.ERROR,
|
|
174
175
|
width: "16px",
|
|
175
176
|
height: "16px"
|
|
176
|
-
}))), /*#__PURE__*/React__default.createElement("div", {
|
|
177
|
+
}))), !isMobile && /*#__PURE__*/React__default.createElement("div", {
|
|
177
178
|
className: "sendbird-openchannel-user-message__context-menu",
|
|
178
179
|
ref: contextMenuRef,
|
|
179
180
|
style: contextStyle
|
|
@@ -253,7 +254,29 @@ function OpenchannelUserMessage(_a) {
|
|
|
253
254
|
}
|
|
254
255
|
}, stringSet.CONTEXT_MENU_DROPDOWN__DELETE));
|
|
255
256
|
}
|
|
256
|
-
}))
|
|
257
|
+
})), contextMenu && /*#__PURE__*/React__default.createElement(OpenChannelMobileMenu, {
|
|
258
|
+
message: message,
|
|
259
|
+
parentRef: mobileMenuRef,
|
|
260
|
+
hideMenu: function () {
|
|
261
|
+
setContextMenu(false);
|
|
262
|
+
},
|
|
263
|
+
showRemove: function () {
|
|
264
|
+
setContextMenu(false);
|
|
265
|
+
showRemove(true);
|
|
266
|
+
},
|
|
267
|
+
showEdit: function () {
|
|
268
|
+
setContextMenu(false);
|
|
269
|
+
showEdit(true);
|
|
270
|
+
},
|
|
271
|
+
copyToClipboard: function () {
|
|
272
|
+
setContextMenu(false);
|
|
273
|
+
copyToClipboard(message === null || message === void 0 ? void 0 : message.message);
|
|
274
|
+
},
|
|
275
|
+
resendMessage: function () {
|
|
276
|
+
setContextMenu(false);
|
|
277
|
+
resendMessage(message);
|
|
278
|
+
}
|
|
279
|
+
}));
|
|
257
280
|
}
|
|
258
281
|
|
|
259
282
|
export { OpenchannelUserMessage as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenchannelUserMessage.js","sources":["../../src/ui/OpenchannelUserMessage/index.tsx"],"sourcesContent":["import React, {\n useMemo,\n useContext,\n useRef,\n useState,\n ReactElement,\n useEffect,\n} from 'react';\nimport { UserMessage } from '@sendbird/chat/message';\nimport format from 'date-fns/format';\nimport './index.scss';\n\nimport Avatar from '../Avatar';\nimport ContextMenu, { MenuItems, MenuItem } from '../ContextMenu';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport IconButton from '../IconButton';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport Loader from '../Loader';\nimport UserProfile from '../UserProfile';\nimport { UserProfileContext } from '../../lib/UserProfileContext';\n\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport { copyToClipboard } from './utils';\nimport uuidv4 from '../../utils/uuid';\nimport {\n checkIsPending,\n checkIsFailed,\n isFineCopy,\n isFineEdit,\n isFineResend,\n isFineDelete,\n showMenuTrigger,\n} from '../../utils/openChannelUtils';\nimport { getSenderFromMessage } from '../../utils/openChannelUtils';\n\ninterface Props {\n className?: string | Array<string>;\n message: UserMessage;\n isOperator?: boolean;\n userId: string;\n disabled?: boolean;\n showEdit(bool: boolean): void;\n showRemove(bool: boolean): void;\n resendMessage(message: UserMessage): void;\n chainTop?: boolean;\n chainBottom?: boolean;\n}\n\nexport default function OpenchannelUserMessage({\n className,\n message,\n isOperator,\n userId,\n resendMessage,\n disabled,\n showEdit,\n showRemove,\n chainTop,\n}: Props): ReactElement {\n if (!message || message.messageType !== 'user') {\n return null;\n }\n\n // hooks\n const { stringSet, dateLocale } = useLocalization();\n const { disableUserProfile, renderUserProfile } = useContext(UserProfileContext);\n const messageRef = useRef(null);\n const avatarRef = useRef(null);\n const contextMenuRef = useRef(null);\n const [contextStyle, setContextStyle] = useState({});\n\n // consts\n const status = message?.sendingStatus;\n const isPending = checkIsPending(status);\n const isFailed = checkIsFailed(status);\n const sender = getSenderFromMessage(message);\n\n const MemoizedMessageText = useMemo(() => () => {\n const splitMessage = message.message.split(/\\r/);\n const matchedMessage = splitMessage.map((word) => (word !== '' ? word : <br />));\n if (message.updatedAt > 0) {\n matchedMessage.push(\n <Label\n key={uuidv4()}\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n calssName=\"sendbird-openchannel-user-message-word\"\n >\n {` ${stringSet.MESSAGE_EDITED} `}\n </Label>,\n );\n }\n return matchedMessage;\n }, [message, message.updatedAt]);\n\n // place context menu top depending clientHeight of message component\n useEffect(() => {\n if (messageRef?.current?.clientHeight > 36) {\n setContextStyle({ top: '8px ' });\n } else {\n setContextStyle({ top: '2px' });\n }\n }, [window.innerWidth]);\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-openchannel-user-message',\n ].join(' ')}\n ref={messageRef}\n >\n <div className=\"sendbird-openchannel-user-message__left\">\n {\n !chainTop && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-openchannel-user-message__left__avatar\"\n src={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: 0, paddingBottom: 0 }}\n >\n {\n renderUserProfile\n ? (\n renderUserProfile({\n user: sender,\n close: closeDropdown,\n })\n )\n : (\n <UserProfile\n user={sender}\n onSuccess={closeDropdown}\n disableMessaging\n />\n )\n }\n </MenuItems>\n )}\n />\n )\n }\n </div>\n <div className=\"sendbird-openchannel-user-message__right\">\n {\n !chainTop && (\n <div className=\"sendbird-openchannel-user-message__right__top\">\n <Label\n className=\"sendbird-openchannel-user-message__right__top__sender-name\"\n type={LabelTypography.CAPTION_2}\n color={isOperator ? LabelColors.SECONDARY_3 : LabelColors.ONBACKGROUND_2}\n >\n {\n sender && (\n sender.friendName\n || sender.nickname\n || sender.userId\n )\n }\n </Label>\n <Label\n className=\"sendbird-openchannel-user-message__right__top__sent-at\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_3}\n >\n {\n message?.createdAt && (\n format(message?.createdAt, 'p', {\n locale: dateLocale,\n })\n )\n }\n </Label>\n </div>\n )\n }\n <div className=\"sendbird-openchannel-user-message__right__bottom\">\n <Label\n className=\"sendbird-openchannel-user-message__right__bottom__message\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {MemoizedMessageText()}\n </Label>\n </div>\n {\n (isPending || isFailed) && (\n <div className=\"sendbird-openchannel-user-message__right__tail\">\n {\n isPending && (\n <Loader\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n className=\"sendbird-openchannel-user-message__right__tail__pending\"\n type={IconTypes.SPINNER}\n fillColor={IconColors.PRIMARY}\n width=\"16px\"\n height=\"16px\"\n />\n </Loader>\n )\n }\n {\n isFailed && (\n <Icon\n className=\"sendbird-openchannel-user-message__right__tail__failed\"\n type={IconTypes.ERROR}\n fillColor={IconColors.ERROR}\n width=\"16px\"\n height=\"16px\"\n />\n )\n }\n </div>\n )\n }\n </div>\n {\n <div\n className=\"sendbird-openchannel-user-message__context-menu\"\n ref={contextMenuRef}\n style={contextStyle}\n >\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n showMenuTrigger({ message: message, userId: userId, status: status}) && (\n <IconButton\n className=\"sendbird-openchannel-user-message__context-menu--icon\"\n width=\"32px\"\n height=\"32px\"\n onClick={() => {\n toggleDropdown();\n }}\n >\n <Icon\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n )\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={contextMenuRef}\n parentContainRef={contextMenuRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n {\n isFineCopy({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__copy\"\n onClick={() => {\n copyToClipboard(message.message);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__COPY}\n </MenuItem>\n )\n }\n {\n isFineEdit({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__edit\"\n onClick={() => {\n if (disabled) {\n return;\n }\n showEdit(true);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__EDIT}\n </MenuItem>\n )\n }\n {\n isFineResend({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__resend\"\n onClick={() => {\n resendMessage(message);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__RESEND}\n </MenuItem>\n )\n }\n {\n isFineDelete({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__delete\"\n onClick={() => {\n if (disabled) {\n return;\n }\n showRemove(true);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__DELETE}\n </MenuItem>\n )\n }\n </MenuItems>\n )}\n />\n </div>\n }\n </div>\n );\n}\n"],"names":["OpenchannelUserMessage","_a","className","message","isOperator","userId","resendMessage","disabled","showEdit","showRemove","chainTop","messageType","_b","useLocalization","stringSet","dateLocale","_c","useContext","UserProfileContext","disableUserProfile","renderUserProfile","messageRef","useRef","avatarRef","contextMenuRef","_d","useState","contextStyle","setContextStyle","status","sendingStatus","isPending","checkIsPending","isFailed","checkIsFailed","sender","getSenderFromMessage","MemoizedMessageText","useMemo","splitMessage","split","matchedMessage","map","word","React","updatedAt","push","uuidv4","LabelTypography","BODY_1","LabelColors","ONBACKGROUND_2","concat","MESSAGE_EDITED","useEffect","current","clientHeight","top","window","innerWidth","__spreadArray","Array","isArray","join","toggleDropdown","profileUrl","closeDropdown","paddingTop","paddingBottom","user","close","UserProfile","CAPTION_2","SECONDARY_3","friendName","nickname","CAPTION_3","ONBACKGROUND_3","createdAt","format","locale","ONBACKGROUND_1","IconTypes","SPINNER","IconColors","PRIMARY","ERROR","showMenuTrigger","MORE","CONTENT_INVERSE","isFineCopy","copyToClipboard","CONTEXT_MENU_DROPDOWN__COPY","isFineEdit","CONTEXT_MENU_DROPDOWN__EDIT","isFineResend","CONTEXT_MENU_DROPDOWN__RESEND","isFineDelete","CONTEXT_MENU_DROPDOWN__DELETE"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgDwB,SAAAA,sBAAA,CAAuBC,EAAvB,EAUhB;MATNC,SAAS,GAAAD,EAAA,CAAAC;MACTC,OAAO,GAAAF,EAAA,CAAAE;MACPC,UAAU,GAAAH,EAAA,CAAAG;MACVC,MAAM,GAAAJ,EAAA,CAAAI;MACNC,aAAa;MACbC,QAAQ,GAAAN,EAAA,CAAAM;MACRC,QAAQ,GAAAP,EAAA,CAAAO;MACRC,UAAU,GAAAR,EAAA,CAAAQ;MACVC,QAAQ,GAAAT,EAAA,CAAAS;;EAER,IAAI,CAACP,OAAD,IAAYA,OAAO,CAACQ,WAAR,KAAwB,MAAxC,EAAgD;AAC9C,IAAA,OAAO,IAAP,CAAA;AACD,GAHK;;;EAMA,IAAAC,EAAA,GAA4BC,eAAe,EAA3C;AAAA,MAAEC,SAAS,GAAAF,EAAA,CAAAE,SAAX;AAAA,MAAaC,UAAU,GAAAH,EAAA,CAAAG,UAAvB,CAAA;;AACA,EAAA,IAAAC,EAAA,GAA4CC,UAAU,CAACC,kBAAD,CAAtD;AAAA,MAAEC,kBAAkB,GAAAH,EAAA,CAAAG,kBAApB;AAAA,MAAsBC,iBAAiB,GAAAJ,EAAA,CAAAI,iBAAvC,CAAA;;AACN,EAAA,IAAMC,UAAU,GAAGC,MAAM,CAAC,IAAD,CAAzB,CAAA;AACA,EAAA,IAAMC,SAAS,GAAGD,MAAM,CAAC,IAAD,CAAxB,CAAA;AACA,EAAA,IAAME,cAAc,GAAGF,MAAM,CAAC,IAAD,CAA7B,CAAA;;AACM,EAAA,IAAAG,EAAA,GAAkCC,QAAQ,CAAC,EAAD,CAA1C;AAAA,MAACC,YAAY,GAAAF,EAAA,CAAA,CAAA,CAAb;AAAA,MAAeG,eAAe,GAAAH,EAAA,CAAA,CAAA,CAA9B,CAXA;;;AAcN,EAAA,IAAMI,MAAM,GAAG1B,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAE2B,aAAxB,CAAA;AACA,EAAA,IAAMC,SAAS,GAAGC,cAAc,CAACH,MAAD,CAAhC,CAAA;AACA,EAAA,IAAMI,QAAQ,GAAGC,aAAa,CAACL,MAAD,CAA9B,CAAA;AACA,EAAA,IAAMM,MAAM,GAAGC,oBAAoB,CAACjC,OAAD,CAAnC,CAAA;AAEA,EAAA,IAAMkC,mBAAmB,GAAGC,OAAO,CAAC;AAAM,IAAA,OAAA,YAAA;MACxC,IAAMC,YAAY,GAAGpC,OAAO,CAACA,OAAR,CAAgBqC,KAAhB,CAAsB,IAAtB,CAArB,CAAA;MACA,IAAMC,cAAc,GAAGF,YAAY,CAACG,GAAb,CAAiB,UAACC,IAAD,EAAU;AAAA,QAAA,OAACA,IAAI,KAAK,EAAT,GAAcA,IAAd,gBAAqBC,cAAtB,CAAA,aAAA,CAAA,IAAA,EAAA,IAAA,CAAA,CAAA;AAA6B,OAAxD,CAAvB,CAAA;;AACA,MAAA,IAAIzC,OAAO,CAAC0C,SAAR,GAAoB,CAAxB,EAA2B;AACzBJ,QAAAA,cAAc,CAACK,IAAf,eACEF,cAAA,CAAA,aAAA,CAAC,KAAD,EAAA;UACE,GAAG,EAAEG,MAAM,EADb;UAEE,IAAI,EAAEC,eAAe,CAACC,MAFxB;UAGE,KAAK,EAAEC,WAAW,CAACC,cAHrB;AAIE,UAAA,SAAS,EAAC,wCAAA;SAET,EAAA,GAAA,CAAIC,MAAJ,CAAItC,SAAS,CAACuC,cAAd,KAAA,CANH,CADF,CAAA,CAAA;AAUD,OAAA;;AACD,MAAA,OAAOZ,cAAP,CAAA;KAfwC,CAAA;GAAP,EAgBhC,CAACtC,OAAD,EAAUA,OAAO,CAAC0C,SAAlB,CAhBgC,CAAnC,CAnBM;;AAsCNS,EAAAA,SAAS,CAAC,YAAA;;;AACR,IAAA,IAAI,CAAA,CAAArD,EAAA,GAAAoB,UAAU,KAAA,IAAV,IAAAA,UAAU,KAAA,KAAA,CAAV,GAAU,KAAA,CAAV,GAAAA,UAAU,CAAEkC,OAAZ,MAAmB,IAAnB,IAAmBtD,EAAA,KAAA,KAAA,CAAnB,GAAmB,KAAA,CAAnB,GAAmBA,EAAA,CAAEuD,YAArB,IAAoC,EAAxC,EAA4C;AAC1C5B,MAAAA,eAAe,CAAC;AAAE6B,QAAAA,GAAG,EAAE,MAAA;AAAP,OAAD,CAAf,CAAA;AACD,KAFD,MAEO;AACL7B,MAAAA,eAAe,CAAC;AAAE6B,QAAAA,GAAG,EAAE,KAAA;AAAP,OAAD,CAAf,CAAA;AACD,KAAA;AACF,GANQ,EAMN,CAACC,MAAM,CAACC,UAAR,CANM,CAAT,CAAA;EAQA,oBACEf,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAEgB,aAAA,CAAAA,aAAA,CAAA,EAAA,EACLC,KAAK,CAACC,OAAN,CAAc5D,SAAd,CAAA,GAA2BA,SAA3B,GAAuC,CAACA,SAAD,CADlC,EAC8C,IAD9C,CAAA,EAC8C,CACvD,mCADuD,CAD9C,OAAA,CAAA,CAGT6D,IAHS,CAGJ,GAHI,CADb;AAKE,IAAA,GAAG,EAAE1C,UAAAA;GAEL,eAAAuB,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,yCAAA;AAAf,GAAA,EAEI,CAAClC,QAAD,iBACEkC,cAAA,CAAA,aAAA,CAAC,WAAD,EAAA;IACE,WAAW,EAAE,UAACoB,cAAD,EAAoB;AAAA,MAAA,oBAC/BpB,6BAAC,MAAD,EAAA;AACE,QAAA,SAAS,EAAC,iDADZ;AAEE,QAAA,GAAG,EAAET,MAAM,CAAC8B,UAAP,IAAqB,EAF5B;AAGE,QAAA,GAAG,EAAE1C,SAHP;AAIE,QAAA,KAAK,EAAC,MAJR;AAKE,QAAA,MAAM,EAAC,MALT;AAME,QAAA,OAAO,EAAE,YAAA;UACP,IAAI,CAACJ,kBAAL,EAAyB;YACvB6C,cAAc,EAAA,CAAA;AACf,WAAA;AACF,SAAA;OAX4B,CAAA,CAAA;KADnC;IAeE,SAAS,EAAE,UAACE,aAAD,EAAmB;AAAA,MAAA,oBAC5BtB,6BAAC,SAAD,EAAA;AACE,QAAA,SAAS,EAAErB,SADb;AAEE,QAAA,gBAAgB,EAAEA,SAFpB;AAGE,QAAA,aAAa,EAAE2C,aAHjB;AAIE,QAAA,KAAK,EAAE;AAAEC,UAAAA,UAAU,EAAE,CAAd;AAAiBC,UAAAA,aAAa,EAAE,CAAA;AAAhC,SAAA;OAGLhD,EAAAA,iBAAiB,GAEfA,iBAAiB,CAAC;AAChBiD,QAAAA,IAAI,EAAElC,MADU;AAEhBmC,QAAAA,KAAK,EAAEJ,aAAAA;OAFQ,CAFF,gBAQftB,cAAA,CAAA,aAAA,CAAC2B,oBAAD,EAAA;AACE,QAAA,IAAI,EAAEpC,MADR;AAEE,QAAA,SAAS,EAAE+B,aAFb;QAGE,gBAAgB,EAAA,IAAA;AAHlB,OAAA,CAfN,CAD4B,CAAA;AAwB7B,KAAA;AAvCH,GAAA,CAHN,CAPF,eAsDEtB,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,0CAAA;GAEX,EAAA,CAAClC,QAAD,iBACEkC,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,+CAAA;AAAf,GAAA,eACEA,6BAAC,KAAD,EAAA;AACE,IAAA,SAAS,EAAC,4DADZ;IAEE,IAAI,EAAEI,eAAe,CAACwB,SAFxB;IAGE,KAAK,EAAEpE,UAAU,GAAG8C,WAAW,CAACuB,WAAf,GAA6BvB,WAAW,CAACC,cAAAA;AAH5D,GAAA,EAMIhB,MAAM,KACJA,MAAM,CAACuC,UAAP,IACGvC,MAAM,CAACwC,QADV,IAEGxC,MAAM,CAAC9B,MAHN,CANV,CADF,eAcEuC,6BAAC,KAAD,EAAA;AACE,IAAA,SAAS,EAAC,wDADZ;IAEE,IAAI,EAAEI,eAAe,CAAC4B,SAFxB;IAGE,KAAK,EAAE1B,WAAW,CAAC2B,cAAAA;AAHrB,GAAA,EAMI,CAAA1E,OAAO,KAAP,IAAA,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE2E,SAAT,KACEC,MAAM,CAAC5E,OAAO,SAAP,IAAAA,OAAO,KAAA,KAAA,CAAP,GAAO,KAAA,CAAP,GAAAA,OAAO,CAAE2E,SAAV,EAAqB,GAArB,EAA0B;AAC9BE,IAAAA,MAAM,EAAEjE,UAAAA;GADJ,CAPZ,CAdF,CAHN,eAiCE6B,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,kDAAA;AAAf,GAAA,eACEA,6BAAC,KAAD,EAAA;AACE,IAAA,SAAS,EAAC,2DADZ;IAEE,IAAI,EAAEI,eAAe,CAACC,MAFxB;IAGE,KAAK,EAAEC,WAAW,CAAC+B,cAAAA;GAElB5C,EAAAA,mBAAmB,EALtB,CADF,CAjCF,EA2CI,CAACN,SAAS,IAAIE,QAAd,kBACEW,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,gDAAA;GAEXb,EAAAA,SAAS,iBACPa,cAAA,CAAA,aAAA,CAAC,MAAD,EAAA;AACE,IAAA,KAAK,EAAC,MADR;AAEE,IAAA,MAAM,EAAC,MAAA;AAFT,GAAA,eAIEA,6BAAC,IAAD,EAAA;AACE,IAAA,SAAS,EAAC,yDADZ;IAEE,IAAI,EAAEsC,SAAS,CAACC,OAFlB;IAGE,SAAS,EAAEC,UAAU,CAACC,OAHxB;AAIE,IAAA,KAAK,EAAC,MAJR;AAKE,IAAA,MAAM,EAAC,MAAA;AALT,GAAA,CAJF,CAHN,EAkBIpD,QAAQ,iBACNW,6BAAC,IAAD,EAAA;AACE,IAAA,SAAS,EAAC,wDADZ;IAEE,IAAI,EAAEsC,SAAS,CAACI,KAFlB;IAGE,SAAS,EAAEF,UAAU,CAACE,KAHxB;AAIE,IAAA,KAAK,EAAC,MAJR;AAKE,IAAA,MAAM,EAAC,MAAA;GAxBf,CAAA,CA5CN,CAtDF,eAmII1C,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAC,iDADZ;AAEE,IAAA,GAAG,EAAEpB,cAFP;AAGE,IAAA,KAAK,EAAEG,YAAAA;AAHT,GAAA,eAKEiB,6BAAC,WAAD,EAAA;IACE,WAAW,EAAE,UAACoB,cAAD;AAAoB,MAAA,OAC/BuB,eAAe,CAAC;AAAEpF,QAAAA,OAAO,EAAEA,OAAX;AAAoBE,QAAAA,MAAM,EAAEA,MAA5B;AAAoCwB,QAAAA,MAAM,EAAEA,MAAAA;OAA7C,CAAf,iBACEe,cAAA,CAAA,aAAA,CAAC,UAAD,EAAA;AACE,QAAA,SAAS,EAAC,uDADZ;AAEE,QAAA,KAAK,EAAC,MAFR;AAGE,QAAA,MAAM,EAAC,MAHT;AAIE,QAAA,OAAO,EAAE,YAAA;UACPoB,cAAc,EAAA,CAAA;AACf,SAAA;AANH,OAAA,eAQEpB,6BAAC,IAAD,EAAA;QACE,IAAI,EAAEsC,SAAS,CAACM,IADlB;QAEE,SAAS,EAAEJ,UAAU,CAACK,eAFxB;AAGE,QAAA,KAAK,EAAC,MAHR;AAIE,QAAA,MAAM,EAAC,MAAA;AAJT,OAAA,CARF,CAF6B,CAAA;KADnC;IAoBE,SAAS,EAAE,UAACvB,aAAD;AAAmB,MAAA,oBAC5BtB,6BAAC,SAAD,EAAA;AACE,QAAA,SAAS,EAAEpB,cADb;AAEE,QAAA,gBAAgB,EAAEA,cAFpB;AAGE,QAAA,aAAa,EAAE0C,aAHjB;QAIE,QAAQ,EAAA,IAAA;AAJV,OAAA,EAOIwB,UAAU,CAAC;AAAEvF,QAAAA,OAAO,EAAEA,OAAX;AAAoBE,QAAAA,MAAM,EAAEA,MAA5B;AAAoCwB,QAAAA,MAAM,EAAEA,MAAAA;OAA7C,CAAV,iBACEe,cAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AACE,QAAA,SAAS,EAAC,uDADZ;AAEE,QAAA,OAAO,EAAE,YAAA;AACP+C,UAAAA,eAAe,CAACxF,OAAO,CAACA,OAAT,CAAf,CAAA;UACA+D,aAAa,EAAA,CAAA;AACd,SAAA;AALH,OAAA,EAOGpD,SAAS,CAAC8E,2BAPb,CARN,EAoBIC,UAAU,CAAC;AAAE1F,QAAAA,OAAO,EAAEA,OAAX;AAAoBE,QAAAA,MAAM,EAAEA,MAA5B;AAAoCwB,QAAAA,MAAM,EAAEA,MAAAA;OAA7C,CAAV,iBACEe,cAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AACE,QAAA,SAAS,EAAC,uDADZ;AAEE,QAAA,OAAO,EAAE,YAAA;AACP,UAAA,IAAIrC,QAAJ,EAAc;AACZ,YAAA,OAAA;AACD,WAAA;;UACDC,QAAQ,CAAC,IAAD,CAAR,CAAA;UACA0D,aAAa,EAAA,CAAA;AACd,SAAA;AARH,OAAA,EAUGpD,SAAS,CAACgF,2BAVb,CArBN,EAoCIC,YAAY,CAAC;AAAE5F,QAAAA,OAAO,EAAEA,OAAX;AAAoBE,QAAAA,MAAM,EAAEA,MAA5B;AAAoCwB,QAAAA,MAAM,EAAEA,MAAAA;OAA7C,CAAZ,iBACEe,cAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AACE,QAAA,SAAS,EAAC,yDADZ;AAEE,QAAA,OAAO,EAAE,YAAA;UACPtC,aAAa,CAACH,OAAD,CAAb,CAAA;UACA+D,aAAa,EAAA,CAAA;AACd,SAAA;AALH,OAAA,EAOGpD,SAAS,CAACkF,6BAPb,CArCN,EAiDIC,YAAY,CAAC;AAAE9F,QAAAA,OAAO,EAAEA,OAAX;AAAoBE,QAAAA,MAAM,EAAEA,MAA5B;AAAoCwB,QAAAA,MAAM,EAAEA,MAAAA;OAA7C,CAAZ,iBACEe,cAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AACE,QAAA,SAAS,EAAC,yDADZ;AAEE,QAAA,OAAO,EAAE,YAAA;AACP,UAAA,IAAIrC,QAAJ,EAAc;AACZ,YAAA,OAAA;AACD,WAAA;;UACDE,UAAU,CAAC,IAAD,CAAV,CAAA;UACAyD,aAAa,EAAA,CAAA;AACd,SAAA;AARH,OAAA,EAUGpD,SAAS,CAACoF,6BAVb,CAlDN,CAD4B,CAAA;AAkE7B,KAAA;AAtFH,GAAA,CALF,CAnIJ,CADF,CAAA;AAqOD;;;;"}
|
|
1
|
+
{"version":3,"file":"OpenchannelUserMessage.js","sources":["../../src/ui/OpenchannelUserMessage/index.tsx"],"sourcesContent":["import React, {\n useContext,\n useRef,\n useState,\n ReactElement,\n useEffect,\n} from 'react';\nimport { UserMessage } from '@sendbird/chat/message';\nimport format from 'date-fns/format';\nimport './index.scss';\n\nimport Avatar from '../Avatar';\nimport ContextMenu, { MenuItems, MenuItem } from '../ContextMenu';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport IconButton from '../IconButton';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport Loader from '../Loader';\nimport UserProfile from '../UserProfile';\nimport { UserProfileContext } from '../../lib/UserProfileContext';\n\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport { copyToClipboard } from './utils';\nimport uuidv4 from '../../utils/uuid';\nimport {\n checkIsPending,\n checkIsFailed,\n isFineCopy,\n isFineEdit,\n isFineResend,\n isFineDelete,\n showMenuTrigger,\n} from '../../utils/openChannelUtils';\nimport { getSenderFromMessage } from '../../utils/openChannelUtils';\nimport { useMediaQueryContext } from '../../lib/MediaQueryContext';\nimport OpenChannelMobileMenu from '../OpenChannelMobileMenu';\nimport useLongPress from '../../hooks/useLongPress';\nimport { isEditedMessage } from '../../utils';\n\ninterface Props {\n className?: string | Array<string>;\n message: UserMessage;\n isOperator?: boolean;\n userId: string;\n disabled?: boolean;\n showEdit(bool: boolean): void;\n showRemove(bool: boolean): void;\n resendMessage(message: UserMessage): void;\n chainTop?: boolean;\n chainBottom?: boolean;\n}\n\nexport default function OpenchannelUserMessage({\n className,\n message,\n isOperator,\n userId,\n resendMessage,\n disabled,\n showEdit,\n showRemove,\n chainTop,\n}: Props): ReactElement {\n if (!message || message.messageType !== 'user') {\n return null;\n }\n\n // hooks\n const { stringSet, dateLocale } = useLocalization();\n const { disableUserProfile, renderUserProfile } = useContext<UserProfileContext>(UserProfileContext);\n const messageRef = useRef(null);\n const avatarRef = useRef(null);\n const contextMenuRef = useRef(null);\n const mobileMenuRef = useRef(null);\n const [contextStyle, setContextStyle] = useState({});\n const [contextMenu, setContextMenu] = useState(false);\n\n // consts\n const status = message?.sendingStatus;\n const isPending = checkIsPending(status);\n const isFailed = checkIsFailed(status);\n const sender = getSenderFromMessage(message);\n\n // place context menu top depending clientHeight of message component\n useEffect(() => {\n if (messageRef?.current?.clientHeight > 36) {\n setContextStyle({ top: '8px ' });\n } else {\n setContextStyle({ top: '2px' });\n }\n }, [window.innerWidth]);\n\n const onLongPress = useLongPress({\n onLongPress: () => {\n setContextMenu(true);\n }\n });\n\n const { isMobile } = useMediaQueryContext();\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-openchannel-user-message',\n ].join(' ')}\n ref={messageRef}\n >\n <div className=\"sendbird-openchannel-user-message__left\">\n {\n !chainTop && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-openchannel-user-message__left__avatar\"\n src={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 {\n renderUserProfile\n ? (\n renderUserProfile({\n user: sender,\n close: closeDropdown,\n })\n )\n : (\n <UserProfile\n user={sender}\n onSuccess={closeDropdown}\n disableMessaging\n />\n )\n }\n </MenuItems>\n )}\n />\n )\n }\n </div>\n <div className=\"sendbird-openchannel-user-message__right\">\n {\n !chainTop && (\n <div className=\"sendbird-openchannel-user-message__right__top\">\n <Label\n className=\"sendbird-openchannel-user-message__right__top__sender-name\"\n type={LabelTypography.CAPTION_2}\n color={isOperator ? LabelColors.SECONDARY_3 : LabelColors.ONBACKGROUND_2}\n >\n {\n sender && (\n sender.friendName\n || sender.nickname\n || sender.userId\n )\n }\n </Label>\n <Label\n className=\"sendbird-openchannel-user-message__right__top__sent-at\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_3}\n >\n {\n message?.createdAt && (\n format(message?.createdAt, 'p', {\n locale: dateLocale,\n })\n )\n }\n </Label>\n </div>\n )\n }\n <div\n {...(isMobile ? { ...onLongPress } : {})}\n className=\"sendbird-openchannel-user-message__right__bottom\" ref={mobileMenuRef}>\n <Label\n className=\"sendbird-openchannel-user-message__right__bottom__message\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {message?.message}\n {isEditedMessage(message) && (\n <Label\n key={uuidv4()}\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n calssName=\"sendbird-openchannel-user-message-word\"\n >\n {` ${stringSet.MESSAGE_EDITED} `}\n </Label>\n )}\n </Label>\n </div>\n {\n (isPending || isFailed) && (\n <div className=\"sendbird-openchannel-user-message__right__tail\">\n {\n isPending && (\n <Loader\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n className=\"sendbird-openchannel-user-message__right__tail__pending\"\n type={IconTypes.SPINNER}\n fillColor={IconColors.PRIMARY}\n width=\"16px\"\n height=\"16px\"\n />\n </Loader>\n )\n }\n {\n isFailed && (\n <Icon\n className=\"sendbird-openchannel-user-message__right__tail__failed\"\n type={IconTypes.ERROR}\n fillColor={IconColors.ERROR}\n width=\"16px\"\n height=\"16px\"\n />\n )\n }\n </div>\n )\n }\n </div>\n {\n !isMobile && (\n <div\n className=\"sendbird-openchannel-user-message__context-menu\"\n ref={contextMenuRef}\n style={contextStyle}\n >\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n showMenuTrigger({ message: message, userId: userId, status: status }) && (\n <IconButton\n className=\"sendbird-openchannel-user-message__context-menu--icon\"\n width=\"32px\"\n height=\"32px\"\n onClick={() => {\n toggleDropdown();\n }}\n >\n <Icon\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n )\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={contextMenuRef}\n parentContainRef={contextMenuRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n {\n isFineCopy({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__copy\"\n onClick={() => {\n copyToClipboard(message.message);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__COPY}\n </MenuItem>\n )\n }\n {\n isFineEdit({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__edit\"\n onClick={() => {\n if (disabled) {\n return;\n }\n showEdit(true);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__EDIT}\n </MenuItem>\n )\n }\n {\n isFineResend({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__resend\"\n onClick={() => {\n resendMessage(message);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__RESEND}\n </MenuItem>\n )\n }\n {\n isFineDelete({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__delete\"\n onClick={() => {\n if (disabled) {\n return;\n }\n showRemove(true);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__DELETE}\n </MenuItem>\n )\n }\n </MenuItems>\n )}\n />\n </div>\n\n )\n }\n {\n contextMenu && (\n <OpenChannelMobileMenu\n message={message}\n parentRef={mobileMenuRef}\n hideMenu={() => {\n setContextMenu(false);\n }}\n showRemove={() => {\n setContextMenu(false);\n showRemove(true);\n }}\n showEdit={() => {\n setContextMenu(false);\n showEdit(true);\n }}\n copyToClipboard={() => {\n setContextMenu(false);\n copyToClipboard(message?.message);\n }}\n resendMessage={() => {\n setContextMenu(false);\n resendMessage(message);\n }}\n />\n )\n }\n </div>\n );\n}\n"],"names":["OpenchannelUserMessage","_a","className","message","isOperator","userId","resendMessage","disabled","showEdit","showRemove","chainTop","messageType","_b","useLocalization","stringSet","dateLocale","_c","useContext","UserProfileContext","disableUserProfile","renderUserProfile","messageRef","useRef","avatarRef","contextMenuRef","mobileMenuRef","_d","useState","contextStyle","setContextStyle","_e","contextMenu","setContextMenu","status","sendingStatus","isPending","checkIsPending","isFailed","checkIsFailed","sender","getSenderFromMessage","useEffect","current","clientHeight","top","window","innerWidth","onLongPress","useLongPress","isMobile","useMediaQueryContext","React","__spreadArray","Array","isArray","join","toggleDropdown","profileUrl","closeDropdown","paddingTop","paddingBottom","user","close","UserProfile","LabelTypography","CAPTION_2","LabelColors","SECONDARY_3","ONBACKGROUND_2","friendName","nickname","CAPTION_3","ONBACKGROUND_3","createdAt","format","locale","__assign","BODY_1","ONBACKGROUND_1","isEditedMessage","uuidv4","concat","MESSAGE_EDITED","IconTypes","SPINNER","IconColors","PRIMARY","ERROR","showMenuTrigger","MORE","CONTENT_INVERSE","isFineCopy","copyToClipboard","CONTEXT_MENU_DROPDOWN__COPY","isFineEdit","CONTEXT_MENU_DROPDOWN__EDIT","isFineResend","CONTEXT_MENU_DROPDOWN__RESEND","isFineDelete","CONTEXT_MENU_DROPDOWN__DELETE"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmDwB,SAAAA,sBAAA,CAAuBC,EAAvB,EAUhB;MATNC,SAAS,GAAAD,EAAA,CAAAC;MACTC,OAAO,GAAAF,EAAA,CAAAE;MACPC,UAAU,GAAAH,EAAA,CAAAG;MACVC,MAAM,GAAAJ,EAAA,CAAAI;MACNC,aAAa;MACbC,QAAQ,GAAAN,EAAA,CAAAM;MACRC,QAAQ,GAAAP,EAAA,CAAAO;MACRC,UAAU,GAAAR,EAAA,CAAAQ;MACVC,QAAQ,GAAAT,EAAA,CAAAS;;EAER,IAAI,CAACP,OAAD,IAAYA,OAAO,CAACQ,WAAR,KAAwB,MAAxC,EAAgD;AAC9C,IAAA,OAAO,IAAP,CAAA;AACD,GAHK;;;EAMA,IAAAC,EAAA,GAA4BC,eAAe,EAA3C;AAAA,MAAEC,SAAS,GAAAF,EAAA,CAAAE,SAAX;AAAA,MAAaC,UAAU,GAAAH,EAAA,CAAAG,UAAvB,CAAA;;AACA,EAAA,IAAAC,EAAA,GAA4CC,UAAU,CAAqBC,kBAArB,CAAtD;AAAA,MAAEC,kBAAkB,GAAAH,EAAA,CAAAG,kBAApB;AAAA,MAAsBC,iBAAiB,GAAAJ,EAAA,CAAAI,iBAAvC,CAAA;;AACN,EAAA,IAAMC,UAAU,GAAGC,MAAM,CAAC,IAAD,CAAzB,CAAA;AACA,EAAA,IAAMC,SAAS,GAAGD,MAAM,CAAC,IAAD,CAAxB,CAAA;AACA,EAAA,IAAME,cAAc,GAAGF,MAAM,CAAC,IAAD,CAA7B,CAAA;AACA,EAAA,IAAMG,aAAa,GAAGH,MAAM,CAAC,IAAD,CAA5B,CAAA;;AACM,EAAA,IAAAI,EAAA,GAAkCC,QAAQ,CAAC,EAAD,CAA1C;AAAA,MAACC,YAAY,GAAAF,EAAA,CAAA,CAAA,CAAb;AAAA,MAAeG,eAAe,GAAAH,EAAA,CAAA,CAAA,CAA9B,CAAA;;AACA,EAAA,IAAAI,EAAA,GAAgCH,QAAQ,CAAC,KAAD,CAAxC;AAAA,MAACI,WAAW,GAAAD,EAAA,CAAA,CAAA,CAAZ;AAAA,MAAcE,cAAc,GAAAF,EAAA,CAAA,CAAA,CAA5B,CAbA;;;AAgBN,EAAA,IAAMG,MAAM,GAAG9B,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAE+B,aAAxB,CAAA;AACA,EAAA,IAAMC,SAAS,GAAGC,cAAc,CAACH,MAAD,CAAhC,CAAA;AACA,EAAA,IAAMI,QAAQ,GAAGC,aAAa,CAACL,MAAD,CAA9B,CAAA;AACA,EAAA,IAAMM,MAAM,GAAGC,oBAAoB,CAACrC,OAAD,CAAnC,CAnBM;;AAsBNsC,EAAAA,SAAS,CAAC,YAAA;;;AACR,IAAA,IAAI,CAAA,CAAAxC,EAAA,GAAAoB,UAAU,KAAA,IAAV,IAAAA,UAAU,KAAA,KAAA,CAAV,GAAU,KAAA,CAAV,GAAAA,UAAU,CAAEqB,OAAZ,MAAmB,IAAnB,IAAmBzC,EAAA,KAAA,KAAA,CAAnB,GAAmB,KAAA,CAAnB,GAAmBA,EAAA,CAAE0C,YAArB,IAAoC,EAAxC,EAA4C;AAC1Cd,MAAAA,eAAe,CAAC;AAAEe,QAAAA,GAAG,EAAE,MAAA;AAAP,OAAD,CAAf,CAAA;AACD,KAFD,MAEO;AACLf,MAAAA,eAAe,CAAC;AAAEe,QAAAA,GAAG,EAAE,KAAA;AAAP,OAAD,CAAf,CAAA;AACD,KAAA;AACF,GANQ,EAMN,CAACC,MAAM,CAACC,UAAR,CANM,CAAT,CAAA;EAQA,IAAMC,WAAW,GAAGC,YAAY,CAAC;AAC/BD,IAAAA,WAAW,EAAE,YAAA;MACXf,cAAc,CAAC,IAAD,CAAd,CAAA;AACD,KAAA;AAH8B,GAAD,CAAhC,CAAA;AAMQ,EAAA,IAAAiB,QAAQ,GAAKC,oBAAoB,EAAA,SAAjC,CAAA;EACR,oBACEC,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAEC,aAAA,CAAAA,aAAA,CAAA,EAAA,EACLC,KAAK,CAACC,OAAN,CAAcpD,SAAd,CAAA,GAA2BA,SAA3B,GAAuC,CAACA,SAAD,CADlC,EAC8C,IAD9C,CAAA,EAC8C,CACvD,mCADuD,CAD9C,OAAA,CAAA,CAGTqD,IAHS,CAGJ,GAHI,CADb;AAKE,IAAA,GAAG,EAAElC,UAAAA;GAEL,eAAA8B,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,yCAAA;AAAf,GAAA,EAEI,CAACzC,QAAD,iBACEyC,cAAA,CAAA,aAAA,CAAC,WAAD,EAAA;IACE,WAAW,EAAE,UAACK,cAAD,EAAoB;AAAA,MAAA,oBAC/BL,6BAAC,MAAD,EAAA;AACE,QAAA,SAAS,EAAC,iDADZ;AAEE,QAAA,GAAG,EAAEZ,MAAM,CAACkB,UAAP,IAAqB,EAF5B;AAGE,QAAA,GAAG,EAAElC,SAHP;AAIE,QAAA,KAAK,EAAC,MAJR;AAKE,QAAA,MAAM,EAAC,MALT;AAME,QAAA,OAAO,EAAE,YAAA;UACP,IAAI,CAACJ,kBAAL,EAAyB;YACvBqC,cAAc,EAAA,CAAA;AACf,WAAA;AACF,SAAA;OAX4B,CAAA,CAAA;KADnC;IAeE,SAAS,EAAE,UAACE,aAAD,EAAmB;AAAA,MAAA,oBAC5BP,6BAAC,SAAD,EAAA;AACE,QAAA,SAAS,EAAE5B,SADb;AAEE,QAAA,gBAAgB,EAAEA,SAFpB;AAGE,QAAA,aAAa,EAAEmC,aAHjB;AAIE,QAAA,KAAK,EAAE;AAAEC,UAAAA,UAAU,EAAE,KAAd;AAAqBC,UAAAA,aAAa,EAAE,KAAA;AAApC,SAAA;OAGLxC,EAAAA,iBAAiB,GAEbA,iBAAiB,CAAC;AAChByC,QAAAA,IAAI,EAAEtB,MADU;AAEhBuB,QAAAA,KAAK,EAAEJ,aAAAA;OAFQ,CAFJ,gBAQbP,cAAA,CAAA,aAAA,CAACY,oBAAD,EAAA;AACE,QAAA,IAAI,EAAExB,MADR;AAEE,QAAA,SAAS,EAAEmB,aAFb;QAGE,gBAAgB,EAAA,IAAA;AAHlB,OAAA,CAfR,CAD4B,CAAA;AAwB7B,KAAA;AAvCH,GAAA,CAHN,CAPF,eAsDEP,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,0CAAA;GAEX,EAAA,CAACzC,QAAD,iBACEyC,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,+CAAA;AAAf,GAAA,eACEA,6BAAC,KAAD,EAAA;AACE,IAAA,SAAS,EAAC,4DADZ;IAEE,IAAI,EAAEa,eAAe,CAACC,SAFxB;IAGE,KAAK,EAAE7D,UAAU,GAAG8D,WAAW,CAACC,WAAf,GAA6BD,WAAW,CAACE,cAAAA;AAH5D,GAAA,EAMI7B,MAAM,KACJA,MAAM,CAAC8B,UAAP,IACG9B,MAAM,CAAC+B,QADV,IAEG/B,MAAM,CAAClC,MAHN,CANV,CADF,eAcE8C,6BAAC,KAAD,EAAA;AACE,IAAA,SAAS,EAAC,wDADZ;IAEE,IAAI,EAAEa,eAAe,CAACO,SAFxB;IAGE,KAAK,EAAEL,WAAW,CAACM,cAAAA;AAHrB,GAAA,EAMI,CAAArE,OAAO,KAAP,IAAA,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEsE,SAAT,KACEC,MAAM,CAACvE,OAAO,SAAP,IAAAA,OAAO,KAAA,KAAA,CAAP,GAAO,KAAA,CAAP,GAAAA,OAAO,CAAEsE,SAAV,EAAqB,GAArB,EAA0B;AAC9BE,IAAAA,MAAM,EAAE5D,UAAAA;AADsB,GAA1B,CAPZ,CAdF,CAHN,eAiCEoC,iDACOF,QAAQ,GAAE2B,QAAA,CAAA,EAAA,EAAM7B,WAAN,CAAF,GAAwB,EADvC,EAAA;AAEE,IAAA,SAAS,EAAC,kDAFZ;AAE+D,IAAA,GAAG,EAAEtB,aAAAA;AAFpE,GAAA,CAAA,eAGE0B,6BAAC,KAAD,EAAA;AACE,IAAA,SAAS,EAAC,2DADZ;IAEE,IAAI,EAAEa,eAAe,CAACa,MAFxB;IAGE,KAAK,EAAEX,WAAW,CAACY,cAAAA;GAElB3E,EAAAA,OAAO,KAAP,IAAA,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEA,OALZ,EAMG4E,eAAe,CAAC5E,OAAD,CAAf,iBACCgD,cAAA,CAAA,aAAA,CAAC,KAAD,EAAA;IACE,GAAG,EAAE6B,MAAM,EADb;IAEE,IAAI,EAAEhB,eAAe,CAACa,MAFxB;IAGE,KAAK,EAAEX,WAAW,CAACE,cAHrB;AAIE,IAAA,SAAS,EAAC,wCAAA;AAJZ,GAAA,EAMG,IAAIa,MAAJ,CAAInE,SAAS,CAACoE,cAAd,KAAA,CANH,CAPJ,CAHF,CAjCF,EAuDI,CAAC/C,SAAS,IAAIE,QAAd,kBACEc,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,gDAAA;GAEXhB,EAAAA,SAAS,iBACPgB,cAAA,CAAA,aAAA,CAAC,MAAD,EAAA;AACE,IAAA,KAAK,EAAC,MADR;AAEE,IAAA,MAAM,EAAC,MAAA;AAFT,GAAA,eAIEA,6BAAC,IAAD,EAAA;AACE,IAAA,SAAS,EAAC,yDADZ;IAEE,IAAI,EAAEgC,SAAS,CAACC,OAFlB;IAGE,SAAS,EAAEC,UAAU,CAACC,OAHxB;AAIE,IAAA,KAAK,EAAC,MAJR;AAKE,IAAA,MAAM,EAAC,MAAA;AALT,GAAA,CAJF,CAHN,EAkBIjD,QAAQ,iBACNc,6BAAC,IAAD,EAAA;AACE,IAAA,SAAS,EAAC,wDADZ;IAEE,IAAI,EAAEgC,SAAS,CAACI,KAFlB;IAGE,SAAS,EAAEF,UAAU,CAACE,KAHxB;AAIE,IAAA,KAAK,EAAC,MAJR;AAKE,IAAA,MAAM,EAAC,MAAA;AALT,GAAA,CAnBN,CAxDN,CAtDF,EA+II,CAACtC,QAAD,iBACEE,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAC,iDADZ;AAEE,IAAA,GAAG,EAAE3B,cAFP;AAGE,IAAA,KAAK,EAAEI,YAAAA;AAHT,GAAA,eAKEuB,6BAAC,WAAD,EAAA;IACE,WAAW,EAAE,UAACK,cAAD;AAAoB,MAAA,OAC/BgC,eAAe,CAAC;AAAErF,QAAAA,OAAO,EAAEA,OAAX;AAAoBE,QAAAA,MAAM,EAAEA,MAA5B;AAAoC4B,QAAAA,MAAM,EAAEA,MAAAA;OAA7C,CAAf,iBACEkB,cAAA,CAAA,aAAA,CAAC,UAAD,EAAA;AACE,QAAA,SAAS,EAAC,uDADZ;AAEE,QAAA,KAAK,EAAC,MAFR;AAGE,QAAA,MAAM,EAAC,MAHT;AAIE,QAAA,OAAO,EAAE,YAAA;UACPK,cAAc,EAAA,CAAA;AACf,SAAA;AANH,OAAA,eAQEL,6BAAC,IAAD,EAAA;QACE,IAAI,EAAEgC,SAAS,CAACM,IADlB;QAEE,SAAS,EAAEJ,UAAU,CAACK,eAFxB;AAGE,QAAA,KAAK,EAAC,MAHR;AAIE,QAAA,MAAM,EAAC,MAAA;AAJT,OAAA,CARF,CAF6B,CAAA;KADnC;IAoBE,SAAS,EAAE,UAAChC,aAAD;AAAmB,MAAA,oBAC5BP,6BAAC,SAAD,EAAA;AACE,QAAA,SAAS,EAAE3B,cADb;AAEE,QAAA,gBAAgB,EAAEA,cAFpB;AAGE,QAAA,aAAa,EAAEkC,aAHjB;QAIE,QAAQ,EAAA,IAAA;AAJV,OAAA,EAOIiC,UAAU,CAAC;AAAExF,QAAAA,OAAO,EAAEA,OAAX;AAAoBE,QAAAA,MAAM,EAAEA,MAA5B;AAAoC4B,QAAAA,MAAM,EAAEA,MAAAA;OAA7C,CAAV,iBACEkB,cAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AACE,QAAA,SAAS,EAAC,uDADZ;AAEE,QAAA,OAAO,EAAE,YAAA;AACPyC,UAAAA,eAAe,CAACzF,OAAO,CAACA,OAAT,CAAf,CAAA;UACAuD,aAAa,EAAA,CAAA;AACd,SAAA;AALH,OAAA,EAOG5C,SAAS,CAAC+E,2BAPb,CARN,EAoBIC,UAAU,CAAC;AAAE3F,QAAAA,OAAO,EAAEA,OAAX;AAAoBE,QAAAA,MAAM,EAAEA,MAA5B;AAAoC4B,QAAAA,MAAM,EAAEA,MAAAA;OAA7C,CAAV,iBACEkB,cAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AACE,QAAA,SAAS,EAAC,uDADZ;AAEE,QAAA,OAAO,EAAE,YAAA;AACP,UAAA,IAAI5C,QAAJ,EAAc;AACZ,YAAA,OAAA;AACD,WAAA;;UACDC,QAAQ,CAAC,IAAD,CAAR,CAAA;UACAkD,aAAa,EAAA,CAAA;AACd,SAAA;AARH,OAAA,EAUG5C,SAAS,CAACiF,2BAVb,CArBN,EAoCIC,YAAY,CAAC;AAAE7F,QAAAA,OAAO,EAAEA,OAAX;AAAoBE,QAAAA,MAAM,EAAEA,MAA5B;AAAoC4B,QAAAA,MAAM,EAAEA,MAAAA;OAA7C,CAAZ,iBACEkB,cAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AACE,QAAA,SAAS,EAAC,yDADZ;AAEE,QAAA,OAAO,EAAE,YAAA;UACP7C,aAAa,CAACH,OAAD,CAAb,CAAA;UACAuD,aAAa,EAAA,CAAA;AACd,SAAA;AALH,OAAA,EAOG5C,SAAS,CAACmF,6BAPb,CArCN,EAiDIC,YAAY,CAAC;AAAE/F,QAAAA,OAAO,EAAEA,OAAX;AAAoBE,QAAAA,MAAM,EAAEA,MAA5B;AAAoC4B,QAAAA,MAAM,EAAEA,MAAAA;OAA7C,CAAZ,iBACEkB,cAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AACE,QAAA,SAAS,EAAC,yDADZ;AAEE,QAAA,OAAO,EAAE,YAAA;AACP,UAAA,IAAI5C,QAAJ,EAAc;AACZ,YAAA,OAAA;AACD,WAAA;;UACDE,UAAU,CAAC,IAAD,CAAV,CAAA;UACAiD,aAAa,EAAA,CAAA;AACd,SAAA;AARH,OAAA,EAUG5C,SAAS,CAACqF,6BAVb,CAlDN,CAD4B,CAAA;AAkE7B,KAAA;AAtFH,GAAA,CALF,CAhJN,EAkPIpE,WAAW,iBACToB,6BAAC,qBAAD,EAAA;AACE,IAAA,OAAO,EAAEhD,OADX;AAEE,IAAA,SAAS,EAAEsB,aAFb;AAGE,IAAA,QAAQ,EAAE,YAAA;MACRO,cAAc,CAAC,KAAD,CAAd,CAAA;KAJJ;AAME,IAAA,UAAU,EAAE,YAAA;MACVA,cAAc,CAAC,KAAD,CAAd,CAAA;MACAvB,UAAU,CAAC,IAAD,CAAV,CAAA;KARJ;AAUE,IAAA,QAAQ,EAAE,YAAA;MACRuB,cAAc,CAAC,KAAD,CAAd,CAAA;MACAxB,QAAQ,CAAC,IAAD,CAAR,CAAA;KAZJ;AAcE,IAAA,eAAe,EAAE,YAAA;MACfwB,cAAc,CAAC,KAAD,CAAd,CAAA;AACA4D,MAAAA,eAAe,CAACzF,OAAO,KAAP,IAAA,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEA,OAAV,CAAf,CAAA;KAhBJ;AAkBE,IAAA,aAAa,EAAE,YAAA;MACb6B,cAAc,CAAC,KAAD,CAAd,CAAA;MACA1B,aAAa,CAACH,OAAD,CAAb,CAAA;AACD,KAAA;AArBH,GAAA,CAnPN,CADF,CAAA;AA+QD;;;;"}
|
package/ui/PlaceHolder.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import '../tslib.es6-
|
|
1
|
+
import '../tslib.es6-38d6449a.js';
|
|
2
2
|
import 'react';
|
|
3
|
-
export { a as PlaceHolderTypes, P as default } from '../index-
|
|
4
|
-
import '../LocalizationContext-
|
|
3
|
+
export { a as PlaceHolderTypes, P as default } from '../index-a28ce5ed.js';
|
|
4
|
+
import '../LocalizationContext-4f852f2e.js';
|
|
5
5
|
import './Icon.js';
|
|
6
|
-
import '../index-
|
|
6
|
+
import '../index-b02633bc.js';
|
|
7
7
|
import './Loader.js';
|
|
8
|
-
import '../stringSet-
|
|
9
|
-
import '../index-
|
|
8
|
+
import '../stringSet-fd9dcf1e.js';
|
|
9
|
+
import '../index-c766d64c.js';
|
|
10
10
|
import 'prop-types';
|
|
11
11
|
//# sourceMappingURL=PlaceHolder.js.map
|
package/ui/QuoteMessage.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import React__default, { useContext, useState } from 'react';
|
|
2
2
|
import Icon, { IconTypes, IconColors } from './Icon.js';
|
|
3
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-
|
|
3
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-b02633bc.js';
|
|
4
4
|
import ImageRenderer from './ImageRenderer.js';
|
|
5
|
-
import { a as LocalizationContext } from '../LocalizationContext-
|
|
6
|
-
import { K as getUIKitFileTypes, h as getClassName, r as isUserMessage, n as isThumbnailMessage,
|
|
5
|
+
import { a as LocalizationContext } from '../LocalizationContext-4f852f2e.js';
|
|
6
|
+
import { K as getUIKitFileTypes, h as getClassName, r as isUserMessage, n as isThumbnailMessage, E as isVideo, L as isGif, l as isFileMessage, D as isSupportedFileView, J as getUIKitFileType, t as truncateString } from '../index-e1f156d0.js';
|
|
7
7
|
import 'prop-types';
|
|
8
|
-
import '../stringSet-
|
|
9
|
-
import '../tslib.es6-
|
|
10
|
-
import '../index-
|
|
8
|
+
import '../stringSet-fd9dcf1e.js';
|
|
9
|
+
import '../tslib.es6-38d6449a.js';
|
|
10
|
+
import '../index-c766d64c.js';
|
|
11
11
|
import '../utils/message/getOutgoingMessageState.js';
|
|
12
12
|
|
|
13
13
|
function QuoteMessage(_a) {
|
|
@@ -41,6 +41,9 @@ function QuoteMessage(_a) {
|
|
|
41
41
|
key: parentMessage === null || parentMessage === void 0 ? void 0 : parentMessage.messageId,
|
|
42
42
|
onClick: function () {
|
|
43
43
|
if (onClick) onClick();
|
|
44
|
+
},
|
|
45
|
+
onTouchEnd: function () {
|
|
46
|
+
if (onClick) onClick();
|
|
44
47
|
}
|
|
45
48
|
}, /*#__PURE__*/React__default.createElement("div", {
|
|
46
49
|
className: "sendbird-quote-message__replied-to"
|
package/ui/QuoteMessage.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuoteMessage.js","sources":["../../src/ui/QuoteMessage/index.tsx"],"sourcesContent":["import './index.scss';\nimport React, { ReactElement, useContext, useState } from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport ImageRenderer from '../ImageRenderer';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\nimport {\n getClassName,\n getUIKitFileType,\n getUIKitFileTypes,\n isFileMessage,\n isGif,\n isSupportedFileView,\n isThumbnailMessage,\n isUserMessage,\n isVideo,\n truncateString,\n} from '../../utils';\ninterface Props {\n message?: UserMessage | FileMessage;\n userId?: string;\n isByMe?: boolean;\n className?: string | Array<string>;\n onClick?: () => void;\n}\n\nexport default function QuoteMessage({\n message,\n userId = '',\n isByMe = false,\n className,\n onClick,\n}: Props): ReactElement {\n const { stringSet } = useContext(LocalizationContext);\n\n const { parentMessage } = message;\n const parentMessageSender = (parentMessage as UserMessage | FileMessage)?.sender;\n const parentMessageSenderNickname = (userId === parentMessageSender?.userId) ? stringSet.QUOTED_MESSAGE__CURRENT_USER : parentMessageSender?.nickname;\n const parentMessageUrl = (parentMessage as FileMessage)?.url || '';\n const parentMessageType = (parentMessage as FileMessage)?.type;\n const currentMessageSenderNickname = (userId === message?.sender?.userId) ? stringSet.QUOTED_MESSAGE__CURRENT_USER : message?.sender?.nickname;\n\n const [isThumbnailLoaded, setThumbnailLoaded] = useState(false);\n const uikitFileTypes = getUIKitFileTypes();\n const splitFileName = (parentMessage as FileMessage)?.name ? (parentMessage as FileMessage).name.split('/') : parentMessageUrl.split('/');\n\n return (\n <div\n className={getClassName([className, 'sendbird-quote-message', isByMe ? 'outgoing' : 'incoming'])}\n key={parentMessage?.messageId}\n onClick={() => { if (onClick) onClick() }}\n >\n <div className=\"sendbird-quote-message__replied-to\">\n <Icon\n className=\"sendbird-quote-message__replied-to__icon\"\n type={IconTypes.REPLY}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"12px\"\n height=\"12px\"\n />\n <Label\n className=\"sendbird-quote-message__replied-to__text\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {`${currentMessageSenderNickname} ${stringSet.QUOTED_MESSAGE__REPLIED_TO} ${parentMessageSenderNickname}`}\n </Label>\n </div>\n <div className=\"sendbird-quote-message__replied-message\">\n {/* text message */}\n {(isUserMessage(parentMessage as UserMessage) && (parentMessage as UserMessage)?.message?.length > 0) && (\n <div className=\"sendbird-quote-message__replied-message__text-message\">\n <Label\n className=\"sendbird-quote-message__replied-message__text-message__word\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {(parentMessage as UserMessage)?.message}\n </Label>\n </div>\n )}\n {/* thumbnail message */}\n {(isThumbnailMessage(parentMessage as FileMessage) && parentMessageUrl) && (\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message\">\n <ImageRenderer\n className=\"sendbird-quote-message__replied-message__thumbnail-message__image\"\n url={parentMessageUrl}\n alt={parentMessageType}\n width=\"144px\"\n height=\"108px\"\n onLoad={() => setThumbnailLoaded(true)}\n defaultComponent={(\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__placeholder\">\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__placeholder__icon\">\n <Icon\n type={isVideo(parentMessageType) ? IconTypes.PLAY : IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"22px\"\n height=\"22px\"\n />\n </div>\n </div>\n )}\n />\n {(isVideo(parentMessageType) && !((parentMessage as FileMessage)?.thumbnails?.length > 0)) && (\n <>\n <video className=\"sendbird-quote-message__replied-message__thumbnail-message__video\">\n <source src={parentMessageUrl} type={parentMessageType} />\n </video>\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover\">\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover__icon\">\n <Icon\n type={IconTypes.PLAY}\n fillColor={IconColors.GRAY}\n width=\"14px\"\n height=\"14px\"\n />\n </div>\n </div>\n </>\n )}\n {(isThumbnailLoaded && isGif(parentMessageType)) && (\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover\">\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover__icon\">\n <Icon\n type={IconTypes.GIF}\n fillColor={IconColors.GRAY}\n width=\"14px\"\n height=\"14px\"\n />\n </div>\n </div>\n )}\n </div>\n )}\n {/* file message */}\n {(isFileMessage(parentMessage as FileMessage) && !isSupportedFileView((parentMessage as FileMessage).type) && parentMessageUrl) && (\n <div className=\"sendbird-quote-message__replied-message__file-message\">\n <Icon\n className=\"sendbird-quote-message__replied-message__file-message__type-icon\"\n type={{\n [uikitFileTypes.IMAGE]: IconTypes.PHOTO,\n [uikitFileTypes.VIDEO]: IconTypes.PLAY,\n [uikitFileTypes.AUDIO]: IconTypes.FILE_AUDIO,\n [uikitFileTypes.GIF]: IconTypes.GIF,\n [uikitFileTypes.OTHERS]: IconTypes.FILE_DOCUMENT,\n }[getUIKitFileType(parentMessageType)]}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"16px\"\n height=\"16px\"\n />\n <Label\n className=\"sendbird-quote-message__replied-message__file-message__file-name\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {truncateString(splitFileName[splitFileName.length - 1])}\n </Label>\n </div>\n )}\n </div>\n </div>\n );\n}\n"],"names":["QuoteMessage","_a","message","_g","userId","_h","isByMe","className","onClick","stringSet","useContext","LocalizationContext","parentMessage","parentMessageSender","sender","parentMessageSenderNickname","QUOTED_MESSAGE__CURRENT_USER","nickname","parentMessageUrl","url","parentMessageType","type","currentMessageSenderNickname","_c","_d","_j","useState","isThumbnailLoaded","setThumbnailLoaded","uikitFileTypes","getUIKitFileTypes","splitFileName","name","split","React","getClassName","messageId","IconTypes","REPLY","IconColors","ON_BACKGROUND_3","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_3","concat","QUOTED_MESSAGE__REPLIED_TO","isUserMessage","_e","length","BODY_2","ONBACKGROUND_1","isThumbnailMessage","isVideo","PLAY","PHOTO","ON_BACKGROUND_2","_f","thumbnails","GRAY","isGif","GIF","isFileMessage","isSupportedFileView","_b","IMAGE","VIDEO","AUDIO","FILE_AUDIO","OTHERS","FILE_DOCUMENT","getUIKitFileType","truncateString"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"QuoteMessage.js","sources":["../../src/ui/QuoteMessage/index.tsx"],"sourcesContent":["import './index.scss';\nimport React, { ReactElement, useContext, useState } from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport ImageRenderer from '../ImageRenderer';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\nimport {\n getClassName,\n getUIKitFileType,\n getUIKitFileTypes,\n isFileMessage,\n isGif,\n isSupportedFileView,\n isThumbnailMessage,\n isUserMessage,\n isVideo,\n truncateString,\n} from '../../utils';\ninterface Props {\n message?: UserMessage | FileMessage;\n userId?: string;\n isByMe?: boolean;\n className?: string | Array<string>;\n onClick?: () => void;\n}\n\nexport default function QuoteMessage({\n message,\n userId = '',\n isByMe = false,\n className,\n onClick,\n}: Props): ReactElement {\n const { stringSet } = useContext(LocalizationContext);\n\n const { parentMessage } = message;\n const parentMessageSender = (parentMessage as UserMessage | FileMessage)?.sender;\n const parentMessageSenderNickname = (userId === parentMessageSender?.userId) ? stringSet.QUOTED_MESSAGE__CURRENT_USER : parentMessageSender?.nickname;\n const parentMessageUrl = (parentMessage as FileMessage)?.url || '';\n const parentMessageType = (parentMessage as FileMessage)?.type;\n const currentMessageSenderNickname = (userId === message?.sender?.userId) ? stringSet.QUOTED_MESSAGE__CURRENT_USER : message?.sender?.nickname;\n\n const [isThumbnailLoaded, setThumbnailLoaded] = useState(false);\n const uikitFileTypes = getUIKitFileTypes();\n const splitFileName = (parentMessage as FileMessage)?.name ? (parentMessage as FileMessage).name.split('/') : parentMessageUrl.split('/');\n\n return (\n <div\n className={getClassName([className, 'sendbird-quote-message', isByMe ? 'outgoing' : 'incoming'])}\n key={parentMessage?.messageId}\n onClick={() => { if (onClick) onClick() }}\n onTouchEnd={() => { if (onClick) onClick() }}\n >\n <div className=\"sendbird-quote-message__replied-to\">\n <Icon\n className=\"sendbird-quote-message__replied-to__icon\"\n type={IconTypes.REPLY}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"12px\"\n height=\"12px\"\n />\n <Label\n className=\"sendbird-quote-message__replied-to__text\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {`${currentMessageSenderNickname} ${stringSet.QUOTED_MESSAGE__REPLIED_TO} ${parentMessageSenderNickname}`}\n </Label>\n </div>\n <div className=\"sendbird-quote-message__replied-message\">\n {/* text message */}\n {(isUserMessage(parentMessage as UserMessage) && (parentMessage as UserMessage)?.message?.length > 0) && (\n <div className=\"sendbird-quote-message__replied-message__text-message\">\n <Label\n className=\"sendbird-quote-message__replied-message__text-message__word\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {(parentMessage as UserMessage)?.message}\n </Label>\n </div>\n )}\n {/* thumbnail message */}\n {(isThumbnailMessage(parentMessage as FileMessage) && parentMessageUrl) && (\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message\">\n <ImageRenderer\n className=\"sendbird-quote-message__replied-message__thumbnail-message__image\"\n url={parentMessageUrl}\n alt={parentMessageType}\n width=\"144px\"\n height=\"108px\"\n onLoad={() => setThumbnailLoaded(true)}\n defaultComponent={(\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__placeholder\">\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__placeholder__icon\">\n <Icon\n type={isVideo(parentMessageType) ? IconTypes.PLAY : IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"22px\"\n height=\"22px\"\n />\n </div>\n </div>\n )}\n />\n {(isVideo(parentMessageType) && !((parentMessage as FileMessage)?.thumbnails?.length > 0)) && (\n <>\n <video className=\"sendbird-quote-message__replied-message__thumbnail-message__video\">\n <source src={parentMessageUrl} type={parentMessageType} />\n </video>\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover\">\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover__icon\">\n <Icon\n type={IconTypes.PLAY}\n fillColor={IconColors.GRAY}\n width=\"14px\"\n height=\"14px\"\n />\n </div>\n </div>\n </>\n )}\n {(isThumbnailLoaded && isGif(parentMessageType)) && (\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover\">\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover__icon\">\n <Icon\n type={IconTypes.GIF}\n fillColor={IconColors.GRAY}\n width=\"14px\"\n height=\"14px\"\n />\n </div>\n </div>\n )}\n </div>\n )}\n {/* file message */}\n {(isFileMessage(parentMessage as FileMessage) && !isSupportedFileView((parentMessage as FileMessage).type) && parentMessageUrl) && (\n <div className=\"sendbird-quote-message__replied-message__file-message\">\n <Icon\n className=\"sendbird-quote-message__replied-message__file-message__type-icon\"\n type={{\n [uikitFileTypes.IMAGE]: IconTypes.PHOTO,\n [uikitFileTypes.VIDEO]: IconTypes.PLAY,\n [uikitFileTypes.AUDIO]: IconTypes.FILE_AUDIO,\n [uikitFileTypes.GIF]: IconTypes.GIF,\n [uikitFileTypes.OTHERS]: IconTypes.FILE_DOCUMENT,\n }[getUIKitFileType(parentMessageType)]}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"16px\"\n height=\"16px\"\n />\n <Label\n className=\"sendbird-quote-message__replied-message__file-message__file-name\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {truncateString(splitFileName[splitFileName.length - 1])}\n </Label>\n </div>\n )}\n </div>\n </div>\n );\n}\n"],"names":["QuoteMessage","_a","message","_g","userId","_h","isByMe","className","onClick","stringSet","useContext","LocalizationContext","parentMessage","parentMessageSender","sender","parentMessageSenderNickname","QUOTED_MESSAGE__CURRENT_USER","nickname","parentMessageUrl","url","parentMessageType","type","currentMessageSenderNickname","_c","_d","_j","useState","isThumbnailLoaded","setThumbnailLoaded","uikitFileTypes","getUIKitFileTypes","splitFileName","name","split","React","getClassName","messageId","IconTypes","REPLY","IconColors","ON_BACKGROUND_3","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_3","concat","QUOTED_MESSAGE__REPLIED_TO","isUserMessage","_e","length","BODY_2","ONBACKGROUND_1","isThumbnailMessage","isVideo","PLAY","PHOTO","ON_BACKGROUND_2","_f","thumbnails","GRAY","isGif","GIF","isFileMessage","isSupportedFileView","_b","IMAGE","VIDEO","AUDIO","FILE_AUDIO","OTHERS","FILE_DOCUMENT","getUIKitFileType","truncateString"],"mappings":"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"}
|
package/ui/QuoteMessageInput.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import React__default, { useContext } from 'react';
|
|
2
|
-
import { l as isFileMessage, m as isImageMessage, n as isThumbnailMessage, o as isAudioMessage, h as getClassName, p as isGifMessage, q as isVideoMessage, r as isUserMessage } from '../index-
|
|
2
|
+
import { l as isFileMessage, m as isImageMessage, n as isThumbnailMessage, o as isAudioMessage, h as getClassName, p as isGifMessage, q as isVideoMessage, r as isUserMessage } from '../index-e1f156d0.js';
|
|
3
3
|
import Icon, { IconTypes, IconColors } from './Icon.js';
|
|
4
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-
|
|
5
|
-
import { a as LocalizationContext } from '../LocalizationContext-
|
|
4
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-b02633bc.js';
|
|
5
|
+
import { a as LocalizationContext } from '../LocalizationContext-4f852f2e.js';
|
|
6
6
|
import ImageRenderer from './ImageRenderer.js';
|
|
7
|
-
import '../tslib.es6-
|
|
7
|
+
import '../tslib.es6-38d6449a.js';
|
|
8
8
|
import '../utils/message/getOutgoingMessageState.js';
|
|
9
9
|
import 'prop-types';
|
|
10
|
-
import '../stringSet-
|
|
11
|
-
import '../index-
|
|
10
|
+
import '../stringSet-fd9dcf1e.js';
|
|
11
|
+
import '../index-c766d64c.js';
|
|
12
12
|
|
|
13
13
|
var componentClassname = 'sendbird-quote_message_input__avatar';
|
|
14
14
|
function QuoteMessageThumbnail(_a) {
|
package/ui/ReactionBadge.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { a as __spreadArray } from '../tslib.es6-
|
|
1
|
+
import { a as __spreadArray } from '../tslib.es6-38d6449a.js';
|
|
2
2
|
import React__default from 'react';
|
|
3
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-
|
|
3
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-b02633bc.js';
|
|
4
4
|
import 'prop-types';
|
|
5
|
-
import '../stringSet-
|
|
5
|
+
import '../stringSet-fd9dcf1e.js';
|
|
6
6
|
|
|
7
7
|
var ReactionBadge = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
|
|
8
8
|
var _a = props.className,
|
|
@@ -35,6 +35,7 @@ var ReactionBadge = /*#__PURE__*/React__default.forwardRef(function (props, ref)
|
|
|
35
35
|
ref: ref,
|
|
36
36
|
onClick: onClick,
|
|
37
37
|
onKeyDown: onClick,
|
|
38
|
+
onTouchEnd: onClick,
|
|
38
39
|
tabIndex: 0
|
|
39
40
|
}, /*#__PURE__*/React__default.createElement("div", {
|
|
40
41
|
className: "sendbird-reaction-badge__inner"
|
package/ui/ReactionBadge.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactionBadge.js","sources":["../../src/ui/ReactionBadge/index.tsx"],"sourcesContent":["import React, {
|
|
1
|
+
{"version":3,"file":"ReactionBadge.js","sources":["../../src/ui/ReactionBadge/index.tsx"],"sourcesContent":["import React, {\n KeyboardEvent,\n MouseEvent,\n ReactElement,\n RefObject,\n TouchEvent,\n} from 'react';\n\nimport './index.scss';\n\nimport Label, { LabelTypography, LabelColors } from '../Label';\n\nexport interface ReactionBadgeProps {\n className?: string | Array<string>;\n children: ReactElement;\n count?: number | string;\n isAdd?: boolean;\n selected?: boolean;\n onClick?: (\n e: MouseEvent<HTMLDivElement> | KeyboardEvent<HTMLDivElement> | TouchEvent<HTMLDivElement>\n ) => void;\n}\nconst ReactionBadge = React.forwardRef((props: ReactionBadgeProps, ref: RefObject<HTMLDivElement>): ReactElement => {\n const {\n className = '',\n children,\n count = '',\n isAdd = false,\n selected = false,\n onClick = () => {/* noop */},\n } = props;\n\n const getClassNameTail = (): string => {\n if (selected && !isAdd) {\n return '--selected';\n }\n if (isAdd) {\n return '--is-add';\n }\n return '';\n };\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n `sendbird-reaction-badge${getClassNameTail()}`,\n ].join(' ')}\n role=\"button\"\n ref={ref}\n onClick={onClick}\n onKeyDown={onClick}\n onTouchEnd={onClick}\n tabIndex={0}\n >\n <div className=\"sendbird-reaction-badge__inner\">\n <div className=\"sendbird-reaction-badge__inner__icon\">\n {children}\n </div>\n <Label\n className={(children && count) && 'sendbird-reaction-badge__inner__count'}\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_1}\n >\n {count}\n </Label>\n </div>\n </div>\n );\n});\n\nexport default ReactionBadge;\n"],"names":["ReactionBadge","React","forwardRef","props","ref","_a","className","children","_b","count","_c","isAdd","_d","selected","_e","onClick","getClassNameTail","__spreadArray","Array","isArray","concat","join","LabelTypography","CAPTION_3","LabelColors","ONBACKGROUND_1"],"mappings":";;;;;;AAsBMA,IAAAA,aAAa,gBAAGC,cAAK,CAACC,UAAN,CAAiB,UAACC,KAAD,EAA4BC,GAA5B,EAA0D;AAE7F,EAAA,IAAAC,EAAA,GAMEF,KAAK,CANOG,SAAd;MAAAA,SAAS,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAEA,EAAd;AAAA,MACAE,QAAQ,GAKNJ,KAAK,CALCI,QADR;AAAA,MAEAC,EAIE,GAAAL,KAAK,CAJGM,KAFV;MAEAA,KAAK,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAEA,EAFV;AAAA,MAGAE,EAGE,GAAAP,KAAK,MANP;MAGAQ,KAAK,mBAAG,QAAKD,EAHb;AAAA,MAIAE,EAEE,GAAAT,KAAK,CAFSU,QAJhB;MAIAA,QAAQ,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,KAAH,GAAQA,EAJhB;AAAA,MAKAE,EACE,GAAAX,KAAK,CADqBY,OAL5B;MAKAA,OAAO,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,YAAA,EAAA,GAAkBA,EAL5B,CAAA;;EAQF,IAAME,gBAAgB,GAAG,YAAA;AACvB,IAAA,IAAIH,QAAQ,IAAI,CAACF,KAAjB,EAAwB;AACtB,MAAA,OAAO,YAAP,CAAA;AACD,KAAA;;AACD,IAAA,IAAIA,KAAJ,EAAW;AACT,MAAA,OAAO,UAAP,CAAA;AACD,KAAA;;AACD,IAAA,OAAO,EAAP,CAAA;GAPF,CAAA;;EAUA,oBACEV,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAEgB,aAAA,CAAAA,aAAA,CAAA,EAAA,EACLC,KAAK,CAACC,OAAN,CAAcb,SAAd,CAAA,GAA2BA,SAA3B,GAAuC,CAACA,SAAD,CADlC,EAC8C,IAD9C,CAAA,EAC8C,CACvD,yBAA0Bc,CAAAA,MAA1B,CAA0BJ,gBAAgB,EAA1C,CADuD,CAD9C,EAGT,KAHS,CAAA,CAGTK,IAHS,CAGJ,GAHI,CADb;AAKE,IAAA,IAAI,EAAC,QALP;AAME,IAAA,GAAG,EAAEjB,GANP;AAOE,IAAA,OAAO,EAAEW,OAPX;AAQE,IAAA,SAAS,EAAEA,OARb;AASE,IAAA,UAAU,EAAEA,OATd;AAUE,IAAA,QAAQ,EAAE,CAAA;GAEV,eAAAd,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,gCAAA;GACb,eAAAA,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,sCAAA;AAAf,GAAA,EACGM,QADH,CADF,eAIEN,cAAA,CAAA,aAAA,CAAC,KAAD,EAAA;AACE,IAAA,SAAS,EAAGM,QAAQ,IAAIE,KAAb,IAAuB,uCADpC;IAEE,IAAI,EAAEa,eAAe,CAACC,SAFxB;IAGE,KAAK,EAAEC,WAAW,CAACC,cAAAA;GAElBhB,EAAAA,KALH,CAJF,CAZF,CADF,CAAA;AA2BD,CA/CqB;;;;"}
|
package/ui/ReactionButton.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as __spreadArray } from '../tslib.es6-
|
|
1
|
+
import { a as __spreadArray } from '../tslib.es6-38d6449a.js';
|
|
2
2
|
import React__default from 'react';
|
|
3
3
|
|
|
4
4
|
var ReactionButton = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
|
|
@@ -22,6 +22,12 @@ var ReactionButton = /*#__PURE__*/React__default.forwardRef(function (props, ref
|
|
|
22
22
|
onKeyDown: function (e) {
|
|
23
23
|
return onClick(e);
|
|
24
24
|
},
|
|
25
|
+
onTouchEnd: function (e) {
|
|
26
|
+
onClick(e); // to stop longpress
|
|
27
|
+
|
|
28
|
+
e.stopPropagation();
|
|
29
|
+
e.nativeEvent.stopImmediatePropagation();
|
|
30
|
+
},
|
|
25
31
|
tabIndex: 0
|
|
26
32
|
}, /*#__PURE__*/React__default.createElement("div", {
|
|
27
33
|
className: "sendbird-reaction-button__inner"
|
package/ui/ReactionButton.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactionButton.js","sources":["../../src/ui/ReactionButton/index.tsx"],"sourcesContent":["import React, {
|
|
1
|
+
{"version":3,"file":"ReactionButton.js","sources":["../../src/ui/ReactionButton/index.tsx"],"sourcesContent":["import React, {\n KeyboardEvent,\n MouseEvent,\n ReactElement,\n RefObject,\n TouchEvent,\n} from 'react';\n\nimport './index.scss';\n\nexport interface ReactionButtonProps {\n children: ReactElement;\n className?: string | Array<string>;\n width?: string | number;\n height?: string | number;\n selected?: boolean;\n onClick?: (\n e: MouseEvent<HTMLDivElement> | KeyboardEvent<HTMLDivElement> | TouchEvent<HTMLDivElement>\n ) => void;\n}\nconst ReactionButton = React.forwardRef((props: ReactionButtonProps, ref: RefObject<HTMLDivElement>): ReactElement => {\n const {\n className,\n width,\n height,\n selected,\n onClick,\n children,\n } = props;\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n `sendbird-reaction-button${selected ? '--selected' : ''}`,\n ].join(' ')}\n ref={ref}\n role=\"button\"\n style={{ width, height }}\n onClick={(e) => onClick(e)}\n onKeyDown={(e) => onClick(e)}\n onTouchEnd={(e) => {\n onClick(e);\n // to stop longpress\n e.stopPropagation();\n e.nativeEvent.stopImmediatePropagation();\n }}\n tabIndex={0}\n >\n <div className=\"sendbird-reaction-button__inner\">\n {children}\n </div>\n </div>\n );\n});\n\nexport default ReactionButton;\n"],"names":["ReactionButton","React","forwardRef","props","ref","className","width","height","selected","onClick","children","__spreadArray","Array","isArray","concat","join","e","stopPropagation","nativeEvent","stopImmediatePropagation"],"mappings":";;;AAoBMA,IAAAA,cAAc,gBAAGC,cAAK,CAACC,UAAN,CAAiB,UAACC,KAAD,EAA6BC,GAA7B,EAA2D;AAE/F,EAAA,IAAAC,SAAS,GAMPF,KAAK,CAAAE,SANP;AAAA,MACAC,KAAK,GAKHH,KAAK,CALFG,KADL;AAAA,MAEAC,MAAM,GAIJJ,KAAK,CAAAI,MANP;AAAA,MAGAC,QAAQ,GAGNL,KAAK,CAHCK,QAHR;AAAA,MAIAC,OAAO,GAELN,KAAK,CAAAM,OANP;AAAA,MAKAC,QAAQ,GACNP,KAAK,SANP,CAAA;EAQF,oBACEF,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAEU,aAAA,CAAAA,aAAA,CAAA,EAAA,EACLC,KAAK,CAACC,OAAN,CAAcR,SAAd,CAA2BA,GAAAA,SAA3B,GAAuC,CAACA,SAAD,CADlC,EAC8C,IAD9C,CAAA,EAC8C,CACvD,0BAA2BS,CAAAA,MAA3B,CAA2BN,QAAQ,GAAG,YAAH,GAAkB,EAArD,CADuD,CAD9C,EAGT,KAHS,CAAA,CAGTO,IAHS,CAGJ,GAHI,CADb;AAKE,IAAA,GAAG,EAAEX,GALP;AAME,IAAA,IAAI,EAAC,QANP;AAOE,IAAA,KAAK,EAAE;AAAEE,MAAAA,KAAK,EAAAA,KAAP;AAASC,MAAAA,MAAM,EAAAA,MAAAA;KAPxB;IAQE,OAAO,EAAE,UAACS,CAAD,EAAO;MAAA,OAAAP,OAAO,CAACO,CAAD,CAAP,CAAA;KARlB;IASE,SAAS,EAAE,UAACA,CAAD,EAAE;MAAK,OAAAP,OAAO,CAACO,CAAD,CAAP,CAAA;KATpB;IAUE,UAAU,EAAE,UAACA,CAAD,EAAE;AACZP,MAAAA,OAAO,CAACO,CAAD,CAAP,CADY;;AAGZA,MAAAA,CAAC,CAACC,eAAF,EAAA,CAAA;MACAD,CAAC,CAACE,WAAF,CAAcC,wBAAd,EAAA,CAAA;KAdJ;AAgBE,IAAA,QAAQ,EAAE,CAAA;GAEV,eAAAlB,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,iCAAA;GACZS,EAAAA,QADH,CAlBF,CADF,CAAA;AAwBD,CAlCsB;;;;"}
|
package/ui/SortByRow.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { a as __spreadArray } from '../tslib.es6-
|
|
1
|
+
import { a as __spreadArray } from '../tslib.es6-38d6449a.js';
|
|
2
2
|
import React__default from 'react';
|
|
3
|
-
import { u as uuidv4 } from '../uuid-
|
|
3
|
+
import { u as uuidv4 } from '../uuid-11fdaf7d.js';
|
|
4
4
|
|
|
5
5
|
var componentClassName = 'sendbird-sort-by-row';
|
|
6
6
|
function SortByRow(_a) {
|
package/ui/TextButton.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { a as __spreadArray } from '../tslib.es6-
|
|
1
|
+
import { a as __spreadArray } from '../tslib.es6-38d6449a.js';
|
|
2
2
|
import React__default from 'react';
|
|
3
|
-
import { C as Colors, c as changeColorToClassName } from '../color-
|
|
3
|
+
import { C as Colors, c as changeColorToClassName } from '../color-d2a15055.js';
|
|
4
4
|
|
|
5
5
|
var TextButton = function (_a) {
|
|
6
6
|
var _b = _a.className,
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import React__default, { useContext, useMemo } from 'react';
|
|
2
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-
|
|
3
|
-
import { h as getClassName, d as isEditedMessage } from '../index-
|
|
4
|
-
import { a as LocalizationContext } from '../LocalizationContext-
|
|
5
|
-
import { u as uuidv4 } from '../uuid-
|
|
2
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-b02633bc.js';
|
|
3
|
+
import { h as getClassName, d as isEditedMessage } from '../index-e1f156d0.js';
|
|
4
|
+
import { a as LocalizationContext } from '../LocalizationContext-4f852f2e.js';
|
|
5
|
+
import { u as uuidv4 } from '../uuid-11fdaf7d.js';
|
|
6
6
|
import Word from './Word.js';
|
|
7
7
|
import 'prop-types';
|
|
8
|
-
import '../stringSet-
|
|
9
|
-
import '../tslib.es6-
|
|
8
|
+
import '../stringSet-fd9dcf1e.js';
|
|
9
|
+
import '../tslib.es6-38d6449a.js';
|
|
10
10
|
import '../utils/message/getOutgoingMessageState.js';
|
|
11
|
-
import '../index-
|
|
11
|
+
import '../index-c766d64c.js';
|
|
12
12
|
import './LinkLabel.js';
|
|
13
13
|
import './MentionLabel.js';
|
|
14
14
|
import './ContextMenu.js';
|
|
@@ -16,10 +16,11 @@ import 'react-dom';
|
|
|
16
16
|
import './SortByRow.js';
|
|
17
17
|
import './UserProfile.js';
|
|
18
18
|
import '../withSendbird.js';
|
|
19
|
-
import '../_rollupPluginBabelHelpers-
|
|
19
|
+
import '../_rollupPluginBabelHelpers-42595172.js';
|
|
20
|
+
import '../UserProfileContext-32f70da9.js';
|
|
20
21
|
import '../sendbirdSelectors.js';
|
|
21
|
-
import '../topics-
|
|
22
|
-
import '../utils-
|
|
22
|
+
import '../topics-954a5dbc.js';
|
|
23
|
+
import '../utils-80e9e20d.js';
|
|
23
24
|
import './Avatar.js';
|
|
24
25
|
import './ImageRenderer.js';
|
|
25
26
|
import './Icon.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextMessageItemBody.js","sources":["../../src/ui/TextMessageItemBody/index.tsx"],"sourcesContent":["import './index.scss';\nimport React, { ReactElement, useContext, useMemo } from 'react';\nimport type { UserMessage } from '@sendbird/chat/message';\n\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport { getClassName, isEditedMessage } from '../../utils';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\nimport uuidv4 from '../../utils/uuid';\nimport Word from '../Word';\n\ninterface Props {\n className?: string | Array<string>;\n message: UserMessage;\n isByMe?: boolean;\n mouseHover?: boolean;\n isMentionEnabled?: boolean;\n isReactionEnabled?: boolean;\n}\n\nexport default function TextMessageItemBody({\n className,\n message,\n isByMe = false,\n mouseHover = false,\n isMentionEnabled = false,\n isReactionEnabled = false,\n}: Props): ReactElement {\n const { stringSet } = useContext(LocalizationContext);\n const isMessageMentioned = isMentionEnabled && message?.mentionedMessageTemplate?.length > 0 && message?.mentionedUsers?.length > 0;\n const sentences: Array<Array<string>> = useMemo(() => {\n return message?.mentionedMessageTemplate?.split(/\\n/).map((sentence) => sentence.split(/\\s/));\n }, [message?.mentionedMessageTemplate]);\n return (\n <Label\n type={LabelTypography.BODY_1}\n color={isByMe ? LabelColors.ONCONTENT_1 : LabelColors.ONBACKGROUND_1}\n >\n <div className={getClassName([\n className,\n 'sendbird-text-message-item-body',\n isByMe ? 'outgoing' : 'incoming',\n mouseHover ? 'mouse-hover' : '',\n (isReactionEnabled && message?.reactions?.length > 0) ? 'reactions' : '',\n ])}>\n {\n isMessageMentioned\n ? (\n sentences.map((sentence, index) => {\n return [\n sentence.map((word) => {\n return (\n <Word\n key={uuidv4()}\n word={word}\n message={message}\n isByMe={isByMe}\n />\n );\n }),\n sentences?.[index + 1] ? <br /> : null,\n ]\n })\n )\n : message?.message\n }\n {\n isEditedMessage(message) && (\n <Label\n className=\"sendbird-text-message-item-body__message edited\"\n type={LabelTypography.BODY_1}\n color={isByMe ? LabelColors.ONCONTENT_2 : LabelColors.ONBACKGROUND_2}\n >\n {` ${stringSet.MESSAGE_EDITED} `}\n </Label>\n )\n }\n </div>\n </Label>\n );\n}\n"],"names":["TextMessageItemBody","_a","className","message","_e","isByMe","_f","mouseHover","_g","isMentionEnabled","_h","isReactionEnabled","stringSet","useContext","LocalizationContext","isMessageMentioned","_b","mentionedMessageTemplate","length","_c","mentionedUsers","sentences","useMemo","split","map","sentence","React","LabelTypography","BODY_1","LabelColors","ONCONTENT_1","ONBACKGROUND_1","getClassName","_d","reactions","index","word","uuidv4","isEditedMessage","ONCONTENT_2","ONBACKGROUND_2","concat","MESSAGE_EDITED"],"mappings":"
|
|
1
|
+
{"version":3,"file":"TextMessageItemBody.js","sources":["../../src/ui/TextMessageItemBody/index.tsx"],"sourcesContent":["import './index.scss';\nimport React, { ReactElement, useContext, useMemo } from 'react';\nimport type { UserMessage } from '@sendbird/chat/message';\n\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport { getClassName, isEditedMessage } from '../../utils';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\nimport uuidv4 from '../../utils/uuid';\nimport Word from '../Word';\n\ninterface Props {\n className?: string | Array<string>;\n message: UserMessage;\n isByMe?: boolean;\n mouseHover?: boolean;\n isMentionEnabled?: boolean;\n isReactionEnabled?: boolean;\n}\n\nexport default function TextMessageItemBody({\n className,\n message,\n isByMe = false,\n mouseHover = false,\n isMentionEnabled = false,\n isReactionEnabled = false,\n}: Props): ReactElement {\n const { stringSet } = useContext(LocalizationContext);\n const isMessageMentioned = isMentionEnabled && message?.mentionedMessageTemplate?.length > 0 && message?.mentionedUsers?.length > 0;\n const sentences: Array<Array<string>> = useMemo(() => {\n return message?.mentionedMessageTemplate?.split(/\\n/).map((sentence) => sentence.split(/\\s/));\n }, [message?.mentionedMessageTemplate]);\n return (\n <Label\n type={LabelTypography.BODY_1}\n color={isByMe ? LabelColors.ONCONTENT_1 : LabelColors.ONBACKGROUND_1}\n >\n <div className={getClassName([\n className,\n 'sendbird-text-message-item-body',\n isByMe ? 'outgoing' : 'incoming',\n mouseHover ? 'mouse-hover' : '',\n (isReactionEnabled && message?.reactions?.length > 0) ? 'reactions' : '',\n ])}>\n {\n isMessageMentioned\n ? (\n sentences.map((sentence, index) => {\n return [\n sentence.map((word) => {\n return (\n <Word\n key={uuidv4()}\n word={word}\n message={message}\n isByMe={isByMe}\n />\n );\n }),\n sentences?.[index + 1] ? <br /> : null,\n ]\n })\n )\n : message?.message\n }\n {\n isEditedMessage(message) && (\n <Label\n className=\"sendbird-text-message-item-body__message edited\"\n type={LabelTypography.BODY_1}\n color={isByMe ? LabelColors.ONCONTENT_2 : LabelColors.ONBACKGROUND_2}\n >\n {` ${stringSet.MESSAGE_EDITED} `}\n </Label>\n )\n }\n </div>\n </Label>\n );\n}\n"],"names":["TextMessageItemBody","_a","className","message","_e","isByMe","_f","mouseHover","_g","isMentionEnabled","_h","isReactionEnabled","stringSet","useContext","LocalizationContext","isMessageMentioned","_b","mentionedMessageTemplate","length","_c","mentionedUsers","sentences","useMemo","split","map","sentence","React","LabelTypography","BODY_1","LabelColors","ONCONTENT_1","ONBACKGROUND_1","getClassName","_d","reactions","index","word","uuidv4","isEditedMessage","ONCONTENT_2","ONBACKGROUND_2","concat","MESSAGE_EDITED"],"mappings":"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"}
|