@sendbird/uikit-react 3.1.3 → 3.2.0-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 +84 -96
- package/App.js.map +1 -1
- package/CHANGELOG.md +42 -0
- package/Channel/components/ChannelHeader.js +20 -22
- package/Channel/components/ChannelHeader.js.map +1 -1
- package/Channel/components/ChannelUI.js +30 -31
- package/Channel/components/ChannelUI.js.map +1 -1
- package/Channel/components/FileViewer.js +20 -22
- package/Channel/components/FileViewer.js.map +1 -1
- package/Channel/components/FrozenNotification.js +5 -6
- package/Channel/components/FrozenNotification.js.map +1 -1
- package/Channel/components/Message.js +34 -35
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +35 -33
- package/Channel/components/MessageInput.js.map +1 -1
- package/Channel/components/MessageList.js +28 -29
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +20 -22
- package/Channel/components/RemoveMessageModal.js.map +1 -1
- package/Channel/components/SuggestedMentionList.js +34 -36
- package/Channel/components/SuggestedMentionList.js.map +1 -1
- package/Channel/components/TypingIndicator.js +20 -22
- package/Channel/components/TypingIndicator.js.map +1 -1
- package/Channel/components/UnreadCount.js +5 -6
- package/Channel/components/UnreadCount.js.map +1 -1
- package/Channel/context.js +15 -17
- package/Channel/context.js.map +1 -1
- package/Channel.js +26 -27
- package/Channel.js.map +1 -1
- package/ChannelList/components/AddChannel.js +18 -18
- package/ChannelList/components/AddChannel.js.map +1 -1
- package/ChannelList/components/ChannelListHeader.js +10 -10
- package/ChannelList/components/ChannelListHeader.js.map +1 -1
- package/ChannelList/components/ChannelListUI.js +40 -42
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +48 -50
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +61 -73
- package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
- package/ChannelList/context.js +10 -12
- package/ChannelList/context.js.map +1 -1
- package/ChannelList.js +29 -31
- package/ChannelList.js.map +1 -1
- package/{ChannelListProvider-0157b613.js → ChannelListProvider-368bd7f1.js} +236 -219
- package/ChannelListProvider-368bd7f1.js.map +1 -0
- package/{ChannelProvider-57689107.js → ChannelProvider-59559ed8.js} +557 -524
- package/{ChannelProvider-57689107.js.map → ChannelProvider-59559ed8.js.map} +1 -1
- package/ChannelSettings/components/ChannelProfile.js +17 -17
- package/ChannelSettings/components/ChannelProfile.js.map +1 -1
- package/ChannelSettings/components/ChannelSettingsUI.js +27 -29
- package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
- package/ChannelSettings/components/EditDetailsModal.js +21 -23
- package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/ChannelSettings/components/LeaveChannel.js +18 -19
- package/ChannelSettings/components/LeaveChannel.js.map +1 -1
- package/ChannelSettings/components/ModerationPanel.js +91 -90
- package/ChannelSettings/components/ModerationPanel.js.map +1 -1
- package/ChannelSettings/components/UserListItem.js +16 -16
- package/ChannelSettings/components/UserListItem.js.map +1 -1
- package/ChannelSettings/components/UserPanel.js +18 -18
- package/ChannelSettings/components/UserPanel.js.map +1 -1
- package/ChannelSettings/context.js +6 -6
- package/ChannelSettings/context.js.map +1 -1
- package/ChannelSettings.js +21 -23
- package/ChannelSettings.js.map +1 -1
- package/CreateChannel/components/CreateChannelUI.js +19 -20
- package/CreateChannel/components/CreateChannelUI.js.map +1 -1
- package/CreateChannel/components/InviteUsers.js +23 -22
- package/CreateChannel/components/InviteUsers.js.map +1 -1
- package/CreateChannel/components/SelectChannelType.js +23 -23
- package/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/CreateChannel/context.js +4 -4
- package/CreateChannel.js +15 -15
- package/CreateChannel.js.map +1 -1
- package/{CreateChannelProvider-f84fd7e5.js → CreateChannelProvider-9c2113ca.js} +3 -3
- package/{CreateChannelProvider-f84fd7e5.js.map → CreateChannelProvider-9c2113ca.js.map} +1 -1
- package/CreateOpenChannel/components/CreateOpenChannelUI.js +128 -0
- package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -0
- package/CreateOpenChannel/context.js +63 -0
- package/CreateOpenChannel/context.js.map +1 -0
- package/CreateOpenChannel.js +45 -0
- package/CreateOpenChannel.js.map +1 -0
- package/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/EditUserProfile/context.js +13 -13
- package/EditUserProfile/context.js.map +1 -1
- package/EditUserProfile.js +14 -14
- package/EditUserProfile.js.map +1 -1
- package/{LocalizationContext-5b475a64.js → LocalizationContext-10829cf3.js} +5 -5
- package/{LocalizationContext-5b475a64.js.map → LocalizationContext-10829cf3.js.map} +1 -1
- package/{MemberList-004dd3e6.js → MemberList-e049f915.js} +42 -39
- package/MemberList-e049f915.js.map +1 -0
- package/MessageSearch/components/MessageSearchUI.js +17 -17
- package/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/MessageSearch/context.js +6 -6
- package/MessageSearch/context.js.map +1 -1
- package/MessageSearch.js +14 -14
- package/MessageSearch.js.map +1 -1
- package/OpenChannel/components/FrozenChannelNotification.js +5 -6
- package/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
- package/OpenChannel/components/OpenChannelHeader.js +15 -17
- package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
- package/OpenChannel/components/OpenChannelInput.js +23 -22
- package/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessage.js +36 -35
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +74 -69
- package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/OpenChannel/components/OpenChannelUI.js +30 -29
- package/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/OpenChannel/context.js +12 -14
- package/OpenChannel/context.js.map +1 -1
- package/OpenChannel.js +31 -30
- package/OpenChannel.js.map +1 -1
- package/OpenChannelList/components/OpenChannelListUI.js +195 -0
- package/OpenChannelList/components/OpenChannelListUI.js.map +1 -0
- package/OpenChannelList/components/OpenChannelPreview.js +67 -0
- package/OpenChannelList/components/OpenChannelPreview.js.map +1 -0
- package/OpenChannelList/context.js +8 -0
- package/OpenChannelList/context.js.map +1 -0
- package/OpenChannelList.js +58 -0
- package/OpenChannelList.js.map +1 -0
- package/OpenChannelListProvider-95ce73b1.js +434 -0
- package/OpenChannelListProvider-95ce73b1.js.map +1 -0
- package/{OpenChannelProvider-f5d504ec.js → OpenChannelProvider-b360d5fe.js} +48 -49
- package/OpenChannelProvider-b360d5fe.js.map +1 -0
- package/OpenChannelSettings/components/EditDetailsModal.js +42 -40
- package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/OpenChannelSettings/components/OpenChannelProfile.js +17 -17
- package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +30 -30
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
- package/OpenChannelSettings/components/OperatorUI.js +94 -95
- package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/OpenChannelSettings/components/ParticipantUI.js +18 -19
- package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
- package/OpenChannelSettings/context.js +20 -15
- package/OpenChannelSettings/context.js.map +1 -1
- package/OpenChannelSettings.js +21 -22
- package/OpenChannelSettings.js.map +1 -1
- package/README.md +3 -8
- package/SendbirdProvider.js +220 -258
- package/SendbirdProvider.js.map +1 -1
- package/{UserProfileContext-a2483e23.js → UserProfileContext-beacab28.js} +6 -4
- package/{UserProfileContext-a2483e23.js.map → UserProfileContext-beacab28.js.map} +1 -1
- package/__bundle-c41dd401-d4ab6c10.js +22 -0
- package/__bundle-c41dd401-d4ab6c10.js.map +1 -0
- package/_rollupPluginBabelHelpers-22c28a74.js +43 -0
- package/_rollupPluginBabelHelpers-22c28a74.js.map +1 -0
- package/actionTypes-fd0f0a6c.js +6 -0
- package/{actionTypes-3a618022.js.map → actionTypes-fd0f0a6c.js.map} +1 -1
- package/cjs/App.js +84 -96
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +20 -22
- package/cjs/Channel/components/ChannelHeader.js.map +1 -1
- package/cjs/Channel/components/ChannelUI.js +28 -29
- package/cjs/Channel/components/ChannelUI.js.map +1 -1
- package/cjs/Channel/components/FileViewer.js +20 -22
- package/cjs/Channel/components/FileViewer.js.map +1 -1
- package/cjs/Channel/components/FrozenNotification.js +5 -6
- package/cjs/Channel/components/FrozenNotification.js.map +1 -1
- package/cjs/Channel/components/Message.js +34 -35
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +35 -33
- package/cjs/Channel/components/MessageInput.js.map +1 -1
- package/cjs/Channel/components/MessageList.js +28 -29
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +20 -22
- package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
- package/cjs/Channel/components/SuggestedMentionList.js +34 -36
- package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
- package/cjs/Channel/components/TypingIndicator.js +20 -22
- package/cjs/Channel/components/TypingIndicator.js.map +1 -1
- package/cjs/Channel/components/UnreadCount.js +5 -6
- package/cjs/Channel/components/UnreadCount.js.map +1 -1
- package/cjs/Channel/context.js +15 -17
- package/cjs/Channel/context.js.map +1 -1
- package/cjs/Channel.js +26 -27
- package/cjs/Channel.js.map +1 -1
- package/cjs/ChannelList/components/AddChannel.js +18 -18
- package/cjs/ChannelList/components/AddChannel.js.map +1 -1
- package/cjs/ChannelList/components/ChannelListHeader.js +10 -10
- package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -1
- package/cjs/ChannelList/components/ChannelListUI.js +40 -42
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +48 -50
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +61 -73
- package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
- package/cjs/ChannelList/context.js +10 -12
- package/cjs/ChannelList/context.js.map +1 -1
- package/cjs/ChannelList.js +29 -31
- package/cjs/ChannelList.js.map +1 -1
- package/cjs/{ChannelListProvider-3e882076.js → ChannelListProvider-dba82f83.js} +235 -218
- package/cjs/ChannelListProvider-dba82f83.js.map +1 -0
- package/cjs/{ChannelProvider-b7e7f2ff.js → ChannelProvider-dd81a327.js} +561 -528
- package/cjs/{ChannelProvider-b7e7f2ff.js.map → ChannelProvider-dd81a327.js.map} +1 -1
- package/cjs/ChannelSettings/components/ChannelProfile.js +17 -17
- package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +27 -29
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
- package/cjs/ChannelSettings/components/EditDetailsModal.js +21 -23
- package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/cjs/ChannelSettings/components/LeaveChannel.js +18 -19
- package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
- package/cjs/ChannelSettings/components/ModerationPanel.js +95 -94
- package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
- package/cjs/ChannelSettings/components/UserListItem.js +16 -16
- package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
- package/cjs/ChannelSettings/components/UserPanel.js +18 -18
- package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
- package/cjs/ChannelSettings/context.js +6 -6
- package/cjs/ChannelSettings/context.js.map +1 -1
- package/cjs/ChannelSettings.js +21 -23
- package/cjs/ChannelSettings.js.map +1 -1
- package/cjs/CreateChannel/components/CreateChannelUI.js +19 -20
- package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
- package/cjs/CreateChannel/components/InviteUsers.js +23 -22
- package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
- package/cjs/CreateChannel/components/SelectChannelType.js +23 -23
- package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/cjs/CreateChannel/context.js +4 -4
- package/cjs/CreateChannel.js +15 -15
- package/cjs/CreateChannel.js.map +1 -1
- package/cjs/{CreateChannelProvider-cea018b0.js → CreateChannelProvider-771bf00b.js} +3 -3
- package/cjs/{CreateChannelProvider-cea018b0.js.map → CreateChannelProvider-771bf00b.js.map} +1 -1
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +134 -0
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -0
- package/cjs/CreateOpenChannel/context.js +72 -0
- package/cjs/CreateOpenChannel/context.js.map +1 -0
- package/cjs/CreateOpenChannel.js +51 -0
- package/cjs/CreateOpenChannel.js.map +1 -0
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/cjs/EditUserProfile/context.js +14 -14
- package/cjs/EditUserProfile/context.js.map +1 -1
- package/cjs/EditUserProfile.js +14 -14
- package/cjs/EditUserProfile.js.map +1 -1
- package/cjs/{LocalizationContext-c13ae9d5.js → LocalizationContext-b051aa28.js} +5 -5
- package/cjs/{LocalizationContext-c13ae9d5.js.map → LocalizationContext-b051aa28.js.map} +1 -1
- package/cjs/{MemberList-e062045b.js → MemberList-6c0cdd90.js} +44 -41
- package/cjs/MemberList-6c0cdd90.js.map +1 -0
- package/cjs/MessageSearch/components/MessageSearchUI.js +17 -17
- package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/cjs/MessageSearch/context.js +6 -6
- package/cjs/MessageSearch/context.js.map +1 -1
- package/cjs/MessageSearch.js +14 -14
- package/cjs/MessageSearch.js.map +1 -1
- package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -6
- package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelHeader.js +15 -17
- package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelInput.js +23 -22
- package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessage.js +36 -35
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +74 -69
- package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelUI.js +30 -29
- package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/cjs/OpenChannel/context.js +12 -14
- package/cjs/OpenChannel/context.js.map +1 -1
- package/cjs/OpenChannel.js +31 -30
- package/cjs/OpenChannel.js.map +1 -1
- package/cjs/OpenChannelList/components/OpenChannelListUI.js +201 -0
- package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -0
- package/cjs/OpenChannelList/components/OpenChannelPreview.js +73 -0
- package/cjs/OpenChannelList/components/OpenChannelPreview.js.map +1 -0
- package/cjs/OpenChannelList/context.js +18 -0
- package/cjs/OpenChannelList/context.js.map +1 -0
- package/cjs/OpenChannelList.js +64 -0
- package/cjs/OpenChannelList.js.map +1 -0
- package/cjs/OpenChannelListProvider-3eed20f7.js +443 -0
- package/cjs/OpenChannelListProvider-3eed20f7.js.map +1 -0
- package/cjs/{OpenChannelProvider-341f9a01.js → OpenChannelProvider-e4f3a05c.js} +48 -49
- package/cjs/OpenChannelProvider-e4f3a05c.js.map +1 -0
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +42 -40
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +17 -17
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +30 -30
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OperatorUI.js +98 -99
- package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +18 -19
- package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
- package/cjs/OpenChannelSettings/context.js +20 -15
- package/cjs/OpenChannelSettings/context.js.map +1 -1
- package/cjs/OpenChannelSettings.js +21 -22
- package/cjs/OpenChannelSettings.js.map +1 -1
- package/cjs/SendbirdProvider.js +220 -257
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/{UserProfileContext-f7c125ca.js → UserProfileContext-fa684629.js} +6 -4
- package/cjs/{UserProfileContext-f7c125ca.js.map → UserProfileContext-fa684629.js.map} +1 -1
- package/cjs/__bundle-c41dd401-1f364afe.js +120 -0
- package/cjs/__bundle-c41dd401-1f364afe.js.map +1 -0
- package/cjs/_rollupPluginBabelHelpers-c7da8657.js +45 -0
- package/cjs/_rollupPluginBabelHelpers-c7da8657.js.map +1 -0
- package/cjs/actionTypes-1bc31680.js +10 -0
- package/cjs/{actionTypes-b3af2b15.js.map → actionTypes-1bc31680.js.map} +1 -1
- package/cjs/{color-f0ffb253.js → color-8c864d64.js} +10 -10
- package/cjs/color-8c864d64.js.map +1 -0
- package/cjs/compareIds-a7236494.js +18 -0
- package/cjs/compareIds-a7236494.js.map +1 -0
- package/cjs/{const-84c58686.js → const-baa5e08a.js} +1 -1
- package/cjs/const-baa5e08a.js.map +1 -0
- package/cjs/{const-459420a0.js → const-de0fa0d4.js} +1 -1
- package/cjs/{const-459420a0.js.map → const-de0fa0d4.js.map} +1 -1
- package/cjs/{context-01248097.js → context-867cfd7f.js} +2 -2
- package/cjs/{context-01248097.js.map → context-867cfd7f.js.map} +1 -1
- package/cjs/dist/index.css +4693 -3624
- package/cjs/dist/index.css.map +1 -1
- package/cjs/groupChannel-95ba4a71.js +11 -0
- package/cjs/groupChannel-95ba4a71.js.map +1 -0
- package/cjs/handlers/ConnectionHandler.js +2 -4
- package/cjs/handlers/ConnectionHandler.js.map +1 -1
- package/cjs/handlers/GroupChannelHandler.js +3 -5
- package/cjs/handlers/GroupChannelHandler.js.map +1 -1
- package/cjs/handlers/OpenChannelHandler.js +2 -3
- package/cjs/handlers/OpenChannelHandler.js.map +1 -1
- package/cjs/handlers/SessionHandler.js +2 -4
- package/cjs/handlers/SessionHandler.js.map +1 -1
- package/cjs/handlers/UserEventHandler.js +2 -4
- package/cjs/handlers/UserEventHandler.js.map +1 -1
- package/cjs/{index-0add0c83.js → index-511e268c.js} +15 -15
- package/cjs/index-511e268c.js.map +1 -0
- package/cjs/{index-63b56a0e.js → index-53015903.js} +69 -80
- package/cjs/index-53015903.js.map +1 -0
- package/cjs/{index-dad73aff.js → index-62c9ad2d.js} +14 -13
- package/cjs/{index-dad73aff.js.map → index-62c9ad2d.js.map} +1 -1
- package/cjs/{index-243538a2.js → index-6d02996a.js} +16 -14
- package/cjs/index-6d02996a.js.map +1 -0
- package/cjs/{index-a00a0f18.js → index-76deed83.js} +34 -34
- package/cjs/index-76deed83.js.map +1 -0
- package/cjs/{index-2d53c0e6.js → index-78d342b2.js} +15 -14
- package/cjs/index-78d342b2.js.map +1 -0
- package/cjs/{index-c8f7702f.js → index-907bf834.js} +54 -54
- package/cjs/index-907bf834.js.map +1 -0
- package/cjs/{index-2f58ecfc.js → index-b478bf3b.js} +18 -37
- package/cjs/index-b478bf3b.js.map +1 -0
- package/cjs/{index-701d44c1.js → index-c4369117.js} +299 -319
- package/cjs/index-c4369117.js.map +1 -0
- package/cjs/{index-98e4f7b2.js → index-d31051df.js} +2 -2
- package/cjs/index-d31051df.js.map +1 -0
- package/cjs/index.js +38 -39
- package/cjs/index.js.map +1 -1
- package/cjs/openChannel-4789903c.js +9 -0
- package/cjs/openChannel-4789903c.js.map +1 -0
- package/cjs/{openChannelUtils-7a336d09.js → openChannelUtils-fc2ec8df.js} +11 -11
- package/cjs/openChannelUtils-fc2ec8df.js.map +1 -0
- package/cjs/sendbirdSelectors.js +22 -22
- package/cjs/sendbirdSelectors.js.map +1 -1
- package/cjs/{stringSet-bd0c293d.js → stringSet-9d251780.js} +21 -6
- package/cjs/stringSet-9d251780.js.map +1 -0
- package/cjs/topics-ac8d2b51.js +22 -0
- package/cjs/topics-ac8d2b51.js.map +1 -0
- package/cjs/{tslib.es6-f57d0c81.js → tslib.es6-9b1c82d5.js} +2 -2
- package/cjs/tslib.es6-9b1c82d5.js.map +1 -0
- package/cjs/ui/Accordion.js +4 -5
- package/cjs/ui/Accordion.js.map +1 -1
- package/cjs/ui/AccordionGroup.js +2 -2
- package/cjs/ui/AccordionGroup.js.map +1 -1
- package/cjs/ui/AdminMessage.js +3 -4
- package/cjs/ui/AdminMessage.js.map +1 -1
- package/cjs/ui/Avatar.js +6 -7
- package/cjs/ui/Avatar.js.map +1 -1
- package/cjs/ui/Badge.js +5 -6
- package/cjs/ui/Badge.js.map +1 -1
- package/cjs/ui/Button.js +85 -9
- package/cjs/ui/Button.js.map +1 -1
- package/cjs/ui/ChannelAvatar.js +3 -4
- package/cjs/ui/ChannelAvatar.js.map +1 -1
- package/cjs/ui/Checkbox.js +1 -1
- package/cjs/ui/Checkbox.js.map +1 -1
- package/cjs/ui/ConnectionStatus.js +4 -5
- package/cjs/ui/ConnectionStatus.js.map +1 -1
- package/cjs/ui/ContextMenu.js +16 -16
- package/cjs/ui/ContextMenu.js.map +1 -1
- package/cjs/ui/DateSeparator.js +5 -6
- package/cjs/ui/DateSeparator.js.map +1 -1
- package/cjs/ui/EmojiReactions.js +13 -14
- package/cjs/ui/EmojiReactions.js.map +1 -1
- package/cjs/ui/FileMessageItemBody.js +7 -8
- package/cjs/ui/FileMessageItemBody.js.map +1 -1
- package/cjs/ui/FileViewer.js +11 -12
- package/cjs/ui/FileViewer.js.map +1 -1
- package/cjs/ui/Icon.js +75 -74
- package/cjs/ui/Icon.js.map +1 -1
- package/cjs/ui/IconButton.js +7 -7
- package/cjs/ui/IconButton.js.map +1 -1
- package/cjs/ui/ImageRenderer.js +8 -10
- package/cjs/ui/ImageRenderer.js.map +1 -1
- package/cjs/ui/Input.js +4 -5
- package/cjs/ui/Input.js.map +1 -1
- package/cjs/ui/Label.js +2 -3
- package/cjs/ui/Label.js.map +1 -1
- package/cjs/ui/LinkLabel.js +14 -13
- package/cjs/ui/LinkLabel.js.map +1 -1
- package/cjs/ui/Loader.js +1 -2
- package/cjs/ui/Loader.js.map +1 -1
- package/cjs/ui/MentionLabel.js +14 -14
- package/cjs/ui/MentionLabel.js.map +1 -1
- package/cjs/ui/MentionUserLabel.js.map +1 -1
- package/cjs/ui/MessageContent.js +20 -20
- package/cjs/ui/MessageContent.js.map +1 -1
- package/cjs/ui/MessageInput.js +214 -10044
- package/cjs/ui/MessageInput.js.map +1 -1
- package/cjs/ui/MessageItemMenu.js +17 -18
- package/cjs/ui/MessageItemMenu.js.map +1 -1
- package/cjs/ui/MessageItemReactionMenu.js +12 -13
- package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
- package/cjs/ui/MessageSearchFileItem.js +13 -24
- package/cjs/ui/MessageSearchFileItem.js.map +1 -1
- package/cjs/ui/MessageSearchItem.js +12 -14
- package/cjs/ui/MessageSearchItem.js.map +1 -1
- package/cjs/ui/MessageStatus.js +7 -8
- package/cjs/ui/MessageStatus.js.map +1 -1
- package/cjs/ui/Modal.js +15 -15
- package/cjs/ui/Modal.js.map +1 -1
- package/cjs/ui/MutedAvatarOverlay.js +0 -1
- package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
- package/cjs/ui/OGMessageItemBody.js +12 -12
- package/cjs/ui/OGMessageItemBody.js.map +1 -1
- package/cjs/ui/OpenChannelAdminMessage.js +3 -4
- package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
- package/cjs/ui/OpenChannelAvatar.js +6 -7
- package/cjs/ui/OpenChannelAvatar.js.map +1 -1
- package/cjs/ui/OpenchannelConversationHeader.js +6 -7
- package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
- package/cjs/ui/OpenchannelFileMessage.js +25 -25
- package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
- package/cjs/ui/OpenchannelOGMessage.js +49 -54
- package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
- package/cjs/ui/OpenchannelThumbnailMessage.js +27 -27
- package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/cjs/ui/OpenchannelUserMessage.js +25 -25
- package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
- package/cjs/ui/PlaceHolder.js +6 -7
- package/cjs/ui/PlaceHolder.js.map +1 -1
- package/cjs/ui/QuoteMessage.js +10 -11
- package/cjs/ui/QuoteMessage.js.map +1 -1
- package/cjs/ui/QuoteMessageInput.js +7 -8
- package/cjs/ui/QuoteMessageInput.js.map +1 -1
- package/cjs/ui/ReactionBadge.js +4 -5
- package/cjs/ui/ReactionBadge.js.map +1 -1
- package/cjs/ui/ReactionButton.js +6 -6
- package/cjs/ui/ReactionButton.js.map +1 -1
- package/cjs/ui/SortByRow.js +2 -2
- package/cjs/ui/SortByRow.js.map +1 -1
- package/cjs/ui/TextButton.js +8 -9
- package/cjs/ui/TextButton.js.map +1 -1
- package/cjs/ui/TextMessageItemBody.js +11 -11
- package/cjs/ui/TextMessageItemBody.js.map +1 -1
- package/cjs/ui/ThumbnailMessageItemBody.js +5 -6
- package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/cjs/ui/Tooltip.js +3 -4
- package/cjs/ui/Tooltip.js.map +1 -1
- package/cjs/ui/TooltipWrapper.js +5 -5
- package/cjs/ui/TooltipWrapper.js.map +1 -1
- package/cjs/ui/UnknownMessageItemBody.js +6 -7
- package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
- package/cjs/ui/UserListItem.js +18 -18
- package/cjs/ui/UserListItem.js.map +1 -1
- package/cjs/ui/UserProfile.js +13 -13
- package/cjs/ui/UserProfile.js.map +1 -1
- package/cjs/ui/Word.js +18 -15
- package/cjs/ui/Word.js.map +1 -1
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/useSendbirdStateContext.js.map +1 -1
- package/cjs/{utils-438c14b6.js → utils-655acd99.js} +4 -4
- package/cjs/utils-655acd99.js.map +1 -0
- package/cjs/{utils-959685f6.js → utils-8c634fd2.js} +2 -2
- package/cjs/{utils-959685f6.js.map → utils-8c634fd2.js.map} +1 -1
- package/cjs/utils-8e6fef1c.js +6 -0
- package/cjs/{utils-760ac018.js.map → utils-8e6fef1c.js.map} +1 -1
- package/cjs/{uuid-1942f440.js → uuid-c32d01d6.js} +2 -2
- package/cjs/{uuid-1942f440.js.map → uuid-c32d01d6.js.map} +1 -1
- package/cjs/withSendbird.js +13 -15
- package/cjs/withSendbird.js.map +1 -1
- package/{color-83cfc07a.js → color-fff21001.js} +10 -10
- package/color-fff21001.js.map +1 -0
- package/compareIds-332d261c.js +16 -0
- package/compareIds-332d261c.js.map +1 -0
- package/{const-71ceda85.js → const-03293011.js} +1 -1
- package/const-03293011.js.map +1 -0
- package/{const-7867ac6a.js → const-78e336dd.js} +1 -1
- package/{const-7867ac6a.js.map → const-78e336dd.js.map} +1 -1
- package/{context-2f6f1c17.js → context-44e184de.js} +2 -2
- package/{context-2f6f1c17.js.map → context-44e184de.js.map} +1 -1
- package/dist/index.css +4693 -3624
- package/dist/index.css.map +1 -1
- package/groupChannel-3301a732.js +8 -0
- package/groupChannel-3301a732.js.map +1 -0
- package/handlers/ConnectionHandler.js +2 -4
- package/handlers/ConnectionHandler.js.map +1 -1
- package/handlers/GroupChannelHandler.js +3 -5
- package/handlers/GroupChannelHandler.js.map +1 -1
- package/handlers/OpenChannelHandler.js +3 -4
- package/handlers/OpenChannelHandler.js.map +1 -1
- package/handlers/SessionHandler.js +2 -4
- package/handlers/SessionHandler.js.map +1 -1
- package/handlers/UserEventHandler.js +2 -4
- package/handlers/UserEventHandler.js.map +1 -1
- package/{index-952d5f9b.js → index-00b281a3.js} +18 -37
- package/index-00b281a3.js.map +1 -0
- package/{index-4400a360.js → index-3ddec9e9.js} +299 -320
- package/index-3ddec9e9.js.map +1 -0
- package/{index-24a5ab49.js → index-46beca69.js} +54 -54
- package/index-46beca69.js.map +1 -0
- package/{index-d545f604.js → index-49d3a217.js} +33 -33
- package/index-49d3a217.js.map +1 -0
- package/{index-1086dd43.js → index-5e788130.js} +2 -2
- package/index-5e788130.js.map +1 -0
- package/{index-e028fd23.js → index-7b043ab9.js} +14 -13
- package/{index-e028fd23.js.map → index-7b043ab9.js.map} +1 -1
- package/{index-2f85a795.js → index-8bd6c997.js} +16 -14
- package/index-8bd6c997.js.map +1 -0
- package/{index-25496c01.js → index-940576d8.js} +69 -80
- package/index-940576d8.js.map +1 -0
- package/{index-c3a36db0.js → index-e5aab3b4.js} +15 -15
- package/index-e5aab3b4.js.map +1 -0
- package/{index-7a790c96.js → index-ed8e5d48.js} +15 -14
- package/index-ed8e5d48.js.map +1 -0
- package/index.d.ts +207 -97
- package/index.js +38 -39
- package/index.js.map +1 -1
- package/openChannel-2aef0cd5.js +6 -0
- package/openChannel-2aef0cd5.js.map +1 -0
- package/{openChannelUtils-f64223c9.js → openChannelUtils-d27d1e28.js} +11 -11
- package/openChannelUtils-d27d1e28.js.map +1 -0
- package/package.json +4 -3
- package/sendbirdSelectors.js +22 -22
- package/sendbirdSelectors.js.map +1 -1
- package/{stringSet-c4a61372.js → stringSet-804c49f3.js} +21 -6
- package/stringSet-804c49f3.js.map +1 -0
- package/topics-24c0f724.js +13 -0
- package/topics-24c0f724.js.map +1 -0
- package/{tslib.es6-72a2f141.js → tslib.es6-4faaa58d.js} +2 -2
- package/tslib.es6-4faaa58d.js.map +1 -0
- package/ui/Accordion.js +4 -5
- package/ui/Accordion.js.map +1 -1
- package/ui/AccordionGroup.js +2 -2
- package/ui/AccordionGroup.js.map +1 -1
- package/ui/AdminMessage.js +3 -4
- package/ui/AdminMessage.js.map +1 -1
- package/ui/Avatar.js +6 -7
- package/ui/Avatar.js.map +1 -1
- package/ui/Badge.js +5 -6
- package/ui/Badge.js.map +1 -1
- package/ui/Button.js +82 -6
- package/ui/Button.js.map +1 -1
- package/ui/ChannelAvatar.js +3 -4
- package/ui/ChannelAvatar.js.map +1 -1
- package/ui/Checkbox.js +1 -1
- package/ui/Checkbox.js.map +1 -1
- package/ui/ConnectionStatus.js +4 -5
- package/ui/ConnectionStatus.js.map +1 -1
- package/ui/ContextMenu.js +16 -16
- package/ui/ContextMenu.js.map +1 -1
- package/ui/DateSeparator.js +5 -6
- package/ui/DateSeparator.js.map +1 -1
- package/ui/EmojiReactions.js +13 -14
- package/ui/EmojiReactions.js.map +1 -1
- package/ui/FileMessageItemBody.js +7 -8
- package/ui/FileMessageItemBody.js.map +1 -1
- package/ui/FileViewer.js +11 -12
- package/ui/FileViewer.js.map +1 -1
- package/ui/Icon.js +75 -75
- package/ui/Icon.js.map +1 -1
- package/ui/IconButton.js +7 -7
- package/ui/IconButton.js.map +1 -1
- package/ui/ImageRenderer.js +8 -10
- package/ui/ImageRenderer.js.map +1 -1
- package/ui/Input.js +4 -5
- package/ui/Input.js.map +1 -1
- package/ui/Label.js +2 -3
- package/ui/Label.js.map +1 -1
- package/ui/LinkLabel.js +14 -13
- package/ui/LinkLabel.js.map +1 -1
- package/ui/Loader.js +1 -2
- package/ui/Loader.js.map +1 -1
- package/ui/MentionLabel.js +14 -14
- package/ui/MentionLabel.js.map +1 -1
- package/ui/MentionUserLabel.js.map +1 -1
- package/ui/MessageContent.js +20 -20
- package/ui/MessageContent.js.map +1 -1
- package/ui/MessageInput.js +212 -10042
- package/ui/MessageInput.js.map +1 -1
- package/ui/MessageItemMenu.js +17 -18
- package/ui/MessageItemMenu.js.map +1 -1
- package/ui/MessageItemReactionMenu.js +12 -13
- package/ui/MessageItemReactionMenu.js.map +1 -1
- package/ui/MessageSearchFileItem.js +13 -24
- package/ui/MessageSearchFileItem.js.map +1 -1
- package/ui/MessageSearchItem.js +12 -14
- package/ui/MessageSearchItem.js.map +1 -1
- package/ui/MessageStatus.js +7 -8
- package/ui/MessageStatus.js.map +1 -1
- package/ui/Modal.js +13 -13
- package/ui/Modal.js.map +1 -1
- package/ui/MutedAvatarOverlay.js +0 -1
- package/ui/MutedAvatarOverlay.js.map +1 -1
- package/ui/OGMessageItemBody.js +12 -12
- package/ui/OGMessageItemBody.js.map +1 -1
- package/ui/OpenChannelAdminMessage.js +3 -4
- package/ui/OpenChannelAdminMessage.js.map +1 -1
- package/ui/OpenChannelAvatar.js +6 -7
- package/ui/OpenChannelAvatar.js.map +1 -1
- package/ui/OpenchannelConversationHeader.js +6 -7
- package/ui/OpenchannelConversationHeader.js.map +1 -1
- package/ui/OpenchannelFileMessage.js +25 -25
- package/ui/OpenchannelFileMessage.js.map +1 -1
- package/ui/OpenchannelOGMessage.js +49 -54
- package/ui/OpenchannelOGMessage.js.map +1 -1
- package/ui/OpenchannelThumbnailMessage.js +27 -27
- package/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/ui/OpenchannelUserMessage.js +25 -25
- package/ui/OpenchannelUserMessage.js.map +1 -1
- package/ui/PlaceHolder.js +6 -7
- package/ui/PlaceHolder.js.map +1 -1
- package/ui/QuoteMessage.js +10 -11
- package/ui/QuoteMessage.js.map +1 -1
- package/ui/QuoteMessageInput.js +7 -8
- package/ui/QuoteMessageInput.js.map +1 -1
- package/ui/ReactionBadge.js +4 -5
- package/ui/ReactionBadge.js.map +1 -1
- package/ui/ReactionButton.js +6 -6
- package/ui/ReactionButton.js.map +1 -1
- package/ui/SortByRow.js +2 -2
- package/ui/SortByRow.js.map +1 -1
- package/ui/TextButton.js +8 -9
- package/ui/TextButton.js.map +1 -1
- package/ui/TextMessageItemBody.js +11 -11
- package/ui/TextMessageItemBody.js.map +1 -1
- package/ui/ThumbnailMessageItemBody.js +5 -6
- package/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/ui/Tooltip.js +3 -4
- package/ui/Tooltip.js.map +1 -1
- package/ui/TooltipWrapper.js +5 -5
- package/ui/TooltipWrapper.js.map +1 -1
- package/ui/UnknownMessageItemBody.js +6 -7
- package/ui/UnknownMessageItemBody.js.map +1 -1
- package/ui/UserListItem.js +18 -18
- package/ui/UserListItem.js.map +1 -1
- package/ui/UserProfile.js +12 -12
- package/ui/UserProfile.js.map +1 -1
- package/ui/Word.js +18 -15
- package/ui/Word.js.map +1 -1
- package/useSendbirdStateContext.js +1 -1
- package/useSendbirdStateContext.js.map +1 -1
- package/{utils-12da1022.js → utils-28acb86e.js} +2 -2
- package/{utils-12da1022.js.map → utils-28acb86e.js.map} +1 -1
- package/utils-32938255.js +4 -0
- package/{utils-2c4d166e.js.map → utils-32938255.js.map} +1 -1
- package/{utils-bc7d8f0c.js → utils-47a3394f.js} +4 -4
- package/utils-47a3394f.js.map +1 -0
- package/{uuid-8a4db02f.js → uuid-4521c466.js} +2 -2
- package/{uuid-8a4db02f.js.map → uuid-4521c466.js.map} +1 -1
- package/withSendbird.js +13 -15
- package/withSendbird.js.map +1 -1
- package/ChannelListProvider-0157b613.js.map +0 -1
- package/MemberList-004dd3e6.js.map +0 -1
- package/OpenChannelProvider-f5d504ec.js.map +0 -1
- package/__bundle-6316ce22-63d15802.js +0 -20
- package/__bundle-6316ce22-63d15802.js.map +0 -1
- package/__bundle-7dfccc8c-d5c3938c.js +0 -6
- package/__bundle-7dfccc8c-d5c3938c.js.map +0 -1
- package/__bundle-fbda47dd-b1c87af3.js +0 -6
- package/__bundle-fbda47dd-b1c87af3.js.map +0 -1
- package/_rollupPluginBabelHelpers-b2b008c2.js +0 -130
- package/_rollupPluginBabelHelpers-b2b008c2.js.map +0 -1
- package/actionTypes-3a618022.js +0 -6
- package/cjs/ChannelListProvider-3e882076.js.map +0 -1
- package/cjs/MemberList-e062045b.js.map +0 -1
- package/cjs/OpenChannelProvider-341f9a01.js.map +0 -1
- package/cjs/__bundle-6316ce22-054c7ff6.js +0 -127
- package/cjs/__bundle-6316ce22-054c7ff6.js.map +0 -1
- package/cjs/__bundle-7dfccc8c-826eb0ef.js +0 -15
- package/cjs/__bundle-7dfccc8c-826eb0ef.js.map +0 -1
- package/cjs/__bundle-fbda47dd-4cb7267d.js +0 -33
- package/cjs/__bundle-fbda47dd-4cb7267d.js.map +0 -1
- package/cjs/_rollupPluginBabelHelpers-09706ebf.js +0 -134
- package/cjs/_rollupPluginBabelHelpers-09706ebf.js.map +0 -1
- package/cjs/actionTypes-b3af2b15.js +0 -10
- package/cjs/color-f0ffb253.js.map +0 -1
- package/cjs/compareIds-10371145.js +0 -20
- package/cjs/compareIds-10371145.js.map +0 -1
- package/cjs/const-84c58686.js.map +0 -1
- package/cjs/groupChannel-4934c435.js +0 -11
- package/cjs/groupChannel-4934c435.js.map +0 -1
- package/cjs/index-0add0c83.js.map +0 -1
- package/cjs/index-243538a2.js.map +0 -1
- package/cjs/index-2d53c0e6.js.map +0 -1
- package/cjs/index-2f58ecfc.js.map +0 -1
- package/cjs/index-63b56a0e.js.map +0 -1
- package/cjs/index-701d44c1.js.map +0 -1
- package/cjs/index-98e4f7b2.js.map +0 -1
- package/cjs/index-a00a0f18.js.map +0 -1
- package/cjs/index-c8f7702f.js.map +0 -1
- package/cjs/index-d889bc81.js +0 -90
- package/cjs/index-d889bc81.js.map +0 -1
- package/cjs/openChannel-e95532d8.js +0 -10
- package/cjs/openChannel-e95532d8.js.map +0 -1
- package/cjs/openChannelUtils-7a336d09.js.map +0 -1
- package/cjs/sendbird-e3e5c8ae.js +0 -12
- package/cjs/sendbird-e3e5c8ae.js.map +0 -1
- package/cjs/stringSet-bd0c293d.js.map +0 -1
- package/cjs/topics-f3fe3bf3.js +0 -18
- package/cjs/topics-f3fe3bf3.js.map +0 -1
- package/cjs/tslib.es6-f57d0c81.js.map +0 -1
- package/cjs/ui/ChannelPreview.js +0 -212
- package/cjs/ui/ChannelPreview.js.map +0 -1
- package/cjs/ui/ChatHeader.js +0 -120
- package/cjs/ui/ChatHeader.js.map +0 -1
- package/cjs/utils-438c14b6.js.map +0 -1
- package/cjs/utils-760ac018.js +0 -6
- package/color-83cfc07a.js.map +0 -1
- package/compareIds-9455ecb0.js +0 -18
- package/compareIds-9455ecb0.js.map +0 -1
- package/const-71ceda85.js.map +0 -1
- package/groupChannel-de6b26ee.js +0 -8
- package/groupChannel-de6b26ee.js.map +0 -1
- package/index-1086dd43.js.map +0 -1
- package/index-16e14c17.js +0 -82
- package/index-16e14c17.js.map +0 -1
- package/index-24a5ab49.js.map +0 -1
- package/index-25496c01.js.map +0 -1
- package/index-2f85a795.js.map +0 -1
- package/index-4400a360.js.map +0 -1
- package/index-7a790c96.js.map +0 -1
- package/index-952d5f9b.js.map +0 -1
- package/index-c3a36db0.js.map +0 -1
- package/index-d545f604.js.map +0 -1
- package/openChannel-825f8e93.js +0 -7
- package/openChannel-825f8e93.js.map +0 -1
- package/openChannelUtils-f64223c9.js.map +0 -1
- package/sendbird-21239b88.js +0 -7
- package/sendbird-21239b88.js.map +0 -1
- package/stringSet-c4a61372.js.map +0 -1
- package/topics-851d221c.js +0 -10
- package/topics-851d221c.js.map +0 -1
- package/tslib.es6-72a2f141.js.map +0 -1
- package/ui/ChannelPreview.js +0 -205
- package/ui/ChannelPreview.js.map +0 -1
- package/ui/ChatHeader.js +0 -114
- package/ui/ChatHeader.js.map +0 -1
- package/utils-2c4d166e.js +0 -4
- package/utils-bc7d8f0c.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenchannelThumbnailMessage.js","sources":["../../../src/ui/OpenchannelThumbnailMessage/utils.ts","../../../src/ui/OpenchannelThumbnailMessage/index.tsx"],"sourcesContent":["export const SUPPORTING_TYPES = {\n IMAGE: 'IMAGE',\n VIDEO: 'VIDEO',\n UNSUPPORTED: 'UNSUPPORTED',\n};\n\nconst SUPPORTED_MIMES = {\n IMAGE: [\n 'image/jpeg',\n 'image/jpg',\n 'image/png',\n 'image/gif',\n 'image/webp',\n ],\n VIDEO: [\n 'video/mpeg',\n 'video/ogg',\n 'video/webm',\n 'video/mp4',\n ],\n};\n\nexport const getSupportingFileType = (type: string): string => {\n if (SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0) {\n return SUPPORTING_TYPES.IMAGE;\n }\n if (SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0) {\n return SUPPORTING_TYPES.VIDEO;\n }\n return SUPPORTING_TYPES.UNSUPPORTED;\n}\n","import React, {\n useRef,\n useMemo,\n useState,\n useEffect,\n useContext,\n} from 'react';\nimport { FileMessage } from '@sendbird/chat/message';\nimport format from 'date-fns/format';\nimport './index.scss';\nimport { SUPPORTING_TYPES, getSupportingFileType } from './utils';\nimport { useLocalization } from '../../lib/LocalizationContext';\n\nimport Avatar from '../Avatar';\nimport ContextMenu, { MenuItems, MenuItem } from '../ContextMenu';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport IconButton from '../IconButton';\nimport ImageRenderer from '../ImageRenderer';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport Loader from '../Loader';\nimport UserProfile from '../UserProfile';\nimport { UserProfileContext } from '../../lib/UserProfileContext';\nimport {\n checkIsSent,\n checkIsPending,\n checkIsFailed,\n isFineResend,\n isFineDelete,\n showMenuTrigger,\n} from '../../utils/openChannelUtils';\nimport { getSenderFromMessage } from '../../utils/openChannelUtils';\n\ninterface LocalUrl {\n localUrl?: string;\n}\ninterface Props {\n className?: string | Array<string>;\n message: FileMessage;\n isOperator?: boolean;\n disabled: boolean;\n userId: string;\n chainTop: boolean;\n chainBottom: boolean;\n onClick(bool: boolean): void,\n showRemove(bool: boolean): void,\n resendMessage(message: FileMessage): void;\n}\n\nexport default function OpenchannelThumbnailMessage({\n className,\n message,\n isOperator,\n disabled,\n userId,\n chainTop,\n onClick,\n showRemove,\n resendMessage,\n}: Props): JSX.Element {\n const {\n type,\n url,\n thumbnails,\n localUrl,\n }: FileMessage & LocalUrl = message;\n const status = message?.sendingStatus;\n const thumbnailUrl = (thumbnails && thumbnails.length > 0 && thumbnails[0].url) || null;\n const { stringSet, dateLocale } = useLocalization();\n const { disableUserProfile, renderUserProfile } = useContext(UserProfileContext);\n const [messageWidth, setMessageWidth] = useState(360);\n const messageRef = useRef(null);\n const contextMenuRef = useRef(null);\n const avatarRef = useRef(null);\n\n const memorizedThumbnailPlaceHolder = useMemo(() => (type) => ({ style }) => ( // eslint-disable-line\n <div style={style}>\n <Icon\n type={type}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n </div>\n ), []);\n\n const isMessageSent = checkIsSent(status);\n const isPending = checkIsPending(status);\n const isFailed = checkIsFailed(status);\n const sender = getSenderFromMessage(message);\n\n useEffect(() => {\n const thumbnailWidth = messageRef?.current?.clientWidth - 80;\n setMessageWidth(thumbnailWidth > 360 ? 360 : thumbnailWidth);\n }, []);\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-openchannel-thumbnail-message',\n ].join(' ')}\n ref={messageRef}\n >\n <div className=\"sendbird-openchannel-thumbnail-message__left\">\n {\n !chainTop && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-openchannel-thumbnail-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-thumbnail-message__right\">\n {\n !chainTop && (\n <div className=\"sendbird-openchannel-thumbnail-message__right__title\">\n <Label\n className=\"sendbird-openchannel-thumbnail-message__right__title__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-thumbnail-message__right__title__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-thumbnail-message__right__body\">\n <div\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap\"\n role=\"button\"\n onClick={() => {\n if (isMessageSent) {\n onClick(true);\n }\n }}\n onKeyDown={() => {\n if (isMessageSent) {\n onClick(true);\n }\n }}\n tabIndex={0}\n >\n <div className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__overlay\" />\n {\n {\n [SUPPORTING_TYPES.VIDEO]: (\n (url || localUrl)\n ? (\n <div className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video\" >\n {\n (thumbnailUrl)\n ? (\n <ImageRenderer\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video\"\n url={thumbnailUrl}\n width={messageWidth}\n height=\"270px\"\n alt=\"image\"\n placeHolder={memorizedThumbnailPlaceHolder(IconTypes.PLAY)}\n />\n )\n : (\n <video className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video__video\">\n <source src={url || localUrl} type={type} />\n </video>\n )\n }\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video__icon\"\n type={IconTypes.PLAY}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n </div>\n )\n : (\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video--icon\"\n type={IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n )\n ),\n [SUPPORTING_TYPES.IMAGE]: (\n (url || localUrl)\n ? (\n <ImageRenderer\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__image\"\n url={thumbnailUrl || url || localUrl}\n alt=\"image\"\n width={messageWidth}\n height=\"270px\"\n placeHolder={memorizedThumbnailPlaceHolder(IconTypes.PHOTO)}\n />\n )\n : (\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__image--icon\"\n type={IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n )\n ),\n [SUPPORTING_TYPES.UNSUPPORTED]: (\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__unknown\"\n type={IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n ),\n }[getSupportingFileType(type)]\n }\n </div>\n </div>\n {\n (isPending || isFailed) && (\n <div className=\"sendbird-openchannel-thumbnail-message__right__tail\">\n {\n isPending && (\n <Loader\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n className=\"sendbird-openchannel-thumbnail-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-thumbnail-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 <div\n className=\"sendbird-openchannel-thumbnail-message__context-menu\"\n ref={contextMenuRef}\n >\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n showMenuTrigger({ message, userId, status }) && (\n <IconButton\n className=\"sendbird-openchannel-thumbnail-message__context-menu--icon\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\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 isFineResend({ message, userId, status }) && (\n <MenuItem\n onClick={() => {\n resendMessage(message);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__RESEND}\n </MenuItem>\n )\n }\n {\n isFineDelete({ message, userId, status }) && (\n <MenuItem\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 </div>\n );\n}\n"],"names":["SUPPORTING_TYPES","IMAGE","VIDEO","UNSUPPORTED","SUPPORTED_MIMES","getSupportingFileType","type","indexOf","OpenchannelThumbnailMessage","_a","className","message","isOperator","disabled","userId","chainTop","onClick","showRemove","resendMessage","url","thumbnails","localUrl","status","sendingStatus","thumbnailUrl","length","_c","useLocalization","stringSet","dateLocale","_d","useContext","UserProfileContext","disableUserProfile","renderUserProfile","_e","useState","messageWidth","setMessageWidth","messageRef","useRef","contextMenuRef","avatarRef","memorizedThumbnailPlaceHolder","useMemo","style","React","Icon","IconColors","ON_BACKGROUND_2","isMessageSent","checkIsSent","isPending","checkIsPending","isFailed","checkIsFailed","sender","getSenderFromMessage","useEffect","thumbnailWidth","current","clientWidth","__spreadArray","Array","isArray","join","ContextMenu","toggleDropdown","Avatar","profileUrl","closeDropdown","MenuItems","paddingTop","paddingBottom","user","close","UserProfile","Label","LabelTypography","CAPTION_2","LabelColors","SECONDARY_3","ONBACKGROUND_2","friendName","nickname","CAPTION_3","ONBACKGROUND_3","createdAt","format","locale","_b","ImageRenderer","IconTypes","PLAY","PHOTO","Loader","SPINNER","PRIMARY","ERROR","showMenuTrigger","IconButton","MORE","CONTENT_INVERSE","isFineResend","MenuItem","CONTEXT_MENU_DROPDOWN__RESEND","isFineDelete","CONTEXT_MENU_DROPDOWN__DELETE"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OpenchannelThumbnailMessage.js","sources":["../../../src/ui/OpenchannelThumbnailMessage/utils.ts","../../../src/ui/OpenchannelThumbnailMessage/index.tsx"],"sourcesContent":["export const SUPPORTING_TYPES = {\n IMAGE: 'IMAGE',\n VIDEO: 'VIDEO',\n UNSUPPORTED: 'UNSUPPORTED',\n};\n\nconst SUPPORTED_MIMES = {\n IMAGE: [\n 'image/jpeg',\n 'image/jpg',\n 'image/png',\n 'image/gif',\n 'image/webp',\n ],\n VIDEO: [\n 'video/mpeg',\n 'video/ogg',\n 'video/webm',\n 'video/mp4',\n ],\n};\n\nexport const getSupportingFileType = (type: string): string => {\n if (SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0) {\n return SUPPORTING_TYPES.IMAGE;\n }\n if (SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0) {\n return SUPPORTING_TYPES.VIDEO;\n }\n return SUPPORTING_TYPES.UNSUPPORTED;\n}\n","import React, {\n useRef,\n useMemo,\n useState,\n useEffect,\n useContext,\n} from 'react';\nimport { FileMessage } from '@sendbird/chat/message';\nimport format from 'date-fns/format';\nimport './index.scss';\nimport { SUPPORTING_TYPES, getSupportingFileType } from './utils';\nimport { useLocalization } from '../../lib/LocalizationContext';\n\nimport Avatar from '../Avatar';\nimport ContextMenu, { MenuItems, MenuItem } from '../ContextMenu';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport IconButton from '../IconButton';\nimport ImageRenderer from '../ImageRenderer';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport Loader from '../Loader';\nimport UserProfile from '../UserProfile';\nimport { UserProfileContext } from '../../lib/UserProfileContext';\nimport {\n checkIsSent,\n checkIsPending,\n checkIsFailed,\n isFineResend,\n isFineDelete,\n showMenuTrigger,\n} from '../../utils/openChannelUtils';\nimport { getSenderFromMessage } from '../../utils/openChannelUtils';\n\ninterface LocalUrl {\n localUrl?: string;\n}\ninterface Props {\n className?: string | Array<string>;\n message: FileMessage;\n isOperator?: boolean;\n disabled: boolean;\n userId: string;\n chainTop: boolean;\n chainBottom: boolean;\n onClick(bool: boolean): void,\n showRemove(bool: boolean): void,\n resendMessage(message: FileMessage): void;\n}\n\nexport default function OpenchannelThumbnailMessage({\n className,\n message,\n isOperator,\n disabled,\n userId,\n chainTop,\n onClick,\n showRemove,\n resendMessage,\n}: Props): JSX.Element {\n const {\n type,\n url,\n thumbnails,\n localUrl,\n }: FileMessage & LocalUrl = message;\n const status = message?.sendingStatus;\n const thumbnailUrl = (thumbnails && thumbnails.length > 0 && thumbnails[0].url) || null;\n const { stringSet, dateLocale } = useLocalization();\n const { disableUserProfile, renderUserProfile } = useContext(UserProfileContext);\n const [messageWidth, setMessageWidth] = useState(360);\n const messageRef = useRef(null);\n const contextMenuRef = useRef(null);\n const avatarRef = useRef(null);\n\n const memorizedThumbnailPlaceHolder = useMemo(() => (type) => ({ style }) => ( // eslint-disable-line\n <div style={style}>\n <Icon\n type={type}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n </div>\n ), []);\n\n const isMessageSent = checkIsSent(status);\n const isPending = checkIsPending(status);\n const isFailed = checkIsFailed(status);\n const sender = getSenderFromMessage(message);\n\n useEffect(() => {\n const thumbnailWidth = messageRef?.current?.clientWidth - 80;\n setMessageWidth(thumbnailWidth > 360 ? 360 : thumbnailWidth);\n }, []);\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-openchannel-thumbnail-message',\n ].join(' ')}\n ref={messageRef}\n >\n <div className=\"sendbird-openchannel-thumbnail-message__left\">\n {\n !chainTop && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-openchannel-thumbnail-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-thumbnail-message__right\">\n {\n !chainTop && (\n <div className=\"sendbird-openchannel-thumbnail-message__right__title\">\n <Label\n className=\"sendbird-openchannel-thumbnail-message__right__title__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-thumbnail-message__right__title__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-thumbnail-message__right__body\">\n <div\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap\"\n role=\"button\"\n onClick={() => {\n if (isMessageSent) {\n onClick(true);\n }\n }}\n onKeyDown={() => {\n if (isMessageSent) {\n onClick(true);\n }\n }}\n tabIndex={0}\n >\n <div className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__overlay\" />\n {\n {\n [SUPPORTING_TYPES.VIDEO]: (\n (url || localUrl)\n ? (\n <div className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video\" >\n {\n (thumbnailUrl)\n ? (\n <ImageRenderer\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video\"\n url={thumbnailUrl}\n width={messageWidth}\n height=\"270px\"\n alt=\"image\"\n placeHolder={memorizedThumbnailPlaceHolder(IconTypes.PLAY)}\n />\n )\n : (\n <video className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video__video\">\n <source src={url || localUrl} type={type} />\n </video>\n )\n }\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video__icon\"\n type={IconTypes.PLAY}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n </div>\n )\n : (\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video--icon\"\n type={IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n )\n ),\n [SUPPORTING_TYPES.IMAGE]: (\n (url || localUrl)\n ? (\n <ImageRenderer\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__image\"\n url={thumbnailUrl || url || localUrl}\n alt=\"image\"\n width={messageWidth}\n height=\"270px\"\n placeHolder={memorizedThumbnailPlaceHolder(IconTypes.PHOTO)}\n />\n )\n : (\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__image--icon\"\n type={IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n )\n ),\n [SUPPORTING_TYPES.UNSUPPORTED]: (\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__unknown\"\n type={IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n ),\n }[getSupportingFileType(type)]\n }\n </div>\n </div>\n {\n (isPending || isFailed) && (\n <div className=\"sendbird-openchannel-thumbnail-message__right__tail\">\n {\n isPending && (\n <Loader\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n className=\"sendbird-openchannel-thumbnail-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-thumbnail-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 <div\n className=\"sendbird-openchannel-thumbnail-message__context-menu\"\n ref={contextMenuRef}\n >\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n showMenuTrigger({ message, userId, status }) && (\n <IconButton\n className=\"sendbird-openchannel-thumbnail-message__context-menu--icon\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\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 isFineResend({ message, userId, status }) && (\n <MenuItem\n onClick={() => {\n resendMessage(message);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__RESEND}\n </MenuItem>\n )\n }\n {\n isFineDelete({ message, userId, status }) && (\n <MenuItem\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 </div>\n );\n}\n"],"names":["SUPPORTING_TYPES","IMAGE","VIDEO","UNSUPPORTED","SUPPORTED_MIMES","getSupportingFileType","type","indexOf","OpenchannelThumbnailMessage","_a","className","message","isOperator","disabled","userId","chainTop","onClick","showRemove","resendMessage","url","thumbnails","localUrl","status","sendingStatus","thumbnailUrl","length","_c","useLocalization","stringSet","dateLocale","_d","useContext","UserProfileContext","disableUserProfile","renderUserProfile","_e","useState","messageWidth","setMessageWidth","messageRef","useRef","contextMenuRef","avatarRef","memorizedThumbnailPlaceHolder","useMemo","style","React","Icon","IconColors","ON_BACKGROUND_2","isMessageSent","checkIsSent","isPending","checkIsPending","isFailed","checkIsFailed","sender","getSenderFromMessage","useEffect","thumbnailWidth","current","clientWidth","__spreadArray","Array","isArray","join","ContextMenu","toggleDropdown","Avatar","profileUrl","closeDropdown","MenuItems","paddingTop","paddingBottom","user","close","UserProfile","Label","LabelTypography","CAPTION_2","LabelColors","SECONDARY_3","ONBACKGROUND_2","friendName","nickname","CAPTION_3","ONBACKGROUND_3","createdAt","format","locale","_b","ImageRenderer","IconTypes","PLAY","PHOTO","Loader","SPINNER","PRIMARY","ERROR","showMenuTrigger","IconButton","MORE","CONTENT_INVERSE","isFineResend","MenuItem","CONTEXT_MENU_DROPDOWN__RESEND","isFineDelete","CONTEXT_MENU_DROPDOWN__DELETE"],"mappings":"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"}
|
|
@@ -1,33 +1,33 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var tslib_es6 = require('../tslib.es6-
|
|
3
|
+
var tslib_es6 = require('../tslib.es6-9b1c82d5.js');
|
|
4
4
|
var React = require('react');
|
|
5
|
-
var index = require('../index-
|
|
5
|
+
var index = require('../index-c4369117.js');
|
|
6
6
|
var ui_Avatar = require('./Avatar.js');
|
|
7
7
|
var ui_ContextMenu = require('./ContextMenu.js');
|
|
8
8
|
var ui_Icon = require('./Icon.js');
|
|
9
9
|
var ui_IconButton = require('./IconButton.js');
|
|
10
|
-
var ui_Label = require('../index-
|
|
10
|
+
var ui_Label = require('../index-62c9ad2d.js');
|
|
11
11
|
var ui_Loader = require('./Loader.js');
|
|
12
12
|
var ui_UserProfile = require('./UserProfile.js');
|
|
13
|
-
var UserProfileContext = require('../UserProfileContext-
|
|
14
|
-
var LocalizationContext = require('../LocalizationContext-
|
|
15
|
-
var utils = require('../utils-
|
|
16
|
-
var uuid = require('../uuid-
|
|
17
|
-
var openChannelUtils = require('../openChannelUtils-
|
|
18
|
-
require('../index-
|
|
13
|
+
var UserProfileContext = require('../UserProfileContext-fa684629.js');
|
|
14
|
+
var LocalizationContext = require('../LocalizationContext-b051aa28.js');
|
|
15
|
+
var utils = require('../utils-8c634fd2.js');
|
|
16
|
+
var uuid = require('../uuid-c32d01d6.js');
|
|
17
|
+
var openChannelUtils = require('../openChannelUtils-fc2ec8df.js');
|
|
18
|
+
require('../index-53015903.js');
|
|
19
19
|
require('./ImageRenderer.js');
|
|
20
|
-
require('../_rollupPluginBabelHelpers-09706ebf.js');
|
|
21
20
|
require('prop-types');
|
|
22
21
|
require('react-dom');
|
|
23
22
|
require('./SortByRow.js');
|
|
24
|
-
require('../index-
|
|
25
|
-
require('../stringSet-
|
|
23
|
+
require('../index-907bf834.js');
|
|
24
|
+
require('../stringSet-9d251780.js');
|
|
26
25
|
require('../withSendbird.js');
|
|
26
|
+
require('../_rollupPluginBabelHelpers-c7da8657.js');
|
|
27
27
|
require('../sendbirdSelectors.js');
|
|
28
|
-
require('../topics-
|
|
29
|
-
require('../utils-
|
|
30
|
-
require('
|
|
28
|
+
require('../topics-ac8d2b51.js');
|
|
29
|
+
require('../utils-8e6fef1c.js');
|
|
30
|
+
require('./Button.js');
|
|
31
31
|
|
|
32
32
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
33
33
|
|
|
@@ -109,21 +109,21 @@ function OpenchannelUserMessage(_a) {
|
|
|
109
109
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
110
110
|
className: "sendbird-openchannel-user-message__left"
|
|
111
111
|
}, !chainTop && /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu["default"], {
|
|
112
|
-
menuTrigger: function
|
|
112
|
+
menuTrigger: function (toggleDropdown) {
|
|
113
113
|
return /*#__PURE__*/React__default["default"].createElement(ui_Avatar["default"], {
|
|
114
114
|
className: "sendbird-openchannel-user-message__left__avatar",
|
|
115
115
|
src: sender.profileUrl || '',
|
|
116
116
|
ref: avatarRef,
|
|
117
117
|
width: "28px",
|
|
118
118
|
height: "28px",
|
|
119
|
-
onClick: function
|
|
119
|
+
onClick: function () {
|
|
120
120
|
if (!disableUserProfile) {
|
|
121
121
|
toggleDropdown();
|
|
122
122
|
}
|
|
123
123
|
}
|
|
124
124
|
});
|
|
125
125
|
},
|
|
126
|
-
menuItems: function
|
|
126
|
+
menuItems: function (closeDropdown) {
|
|
127
127
|
return /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu.MenuItems, {
|
|
128
128
|
parentRef: avatarRef,
|
|
129
129
|
parentContainRef: avatarRef,
|
|
@@ -183,7 +183,7 @@ function OpenchannelUserMessage(_a) {
|
|
|
183
183
|
ref: contextMenuRef,
|
|
184
184
|
style: contextStyle
|
|
185
185
|
}, /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu["default"], {
|
|
186
|
-
menuTrigger: function
|
|
186
|
+
menuTrigger: function (toggleDropdown) {
|
|
187
187
|
return openChannelUtils.showMenuTrigger({
|
|
188
188
|
message: message,
|
|
189
189
|
userId: userId,
|
|
@@ -192,7 +192,7 @@ function OpenchannelUserMessage(_a) {
|
|
|
192
192
|
className: "sendbird-openchannel-user-message__context-menu--icon",
|
|
193
193
|
width: "32px",
|
|
194
194
|
height: "32px",
|
|
195
|
-
onClick: function
|
|
195
|
+
onClick: function () {
|
|
196
196
|
toggleDropdown();
|
|
197
197
|
}
|
|
198
198
|
}, /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
@@ -202,7 +202,7 @@ function OpenchannelUserMessage(_a) {
|
|
|
202
202
|
height: "24px"
|
|
203
203
|
}));
|
|
204
204
|
},
|
|
205
|
-
menuItems: function
|
|
205
|
+
menuItems: function (closeDropdown) {
|
|
206
206
|
return /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu.MenuItems, {
|
|
207
207
|
parentRef: contextMenuRef,
|
|
208
208
|
parentContainRef: contextMenuRef,
|
|
@@ -214,7 +214,7 @@ function OpenchannelUserMessage(_a) {
|
|
|
214
214
|
status: status
|
|
215
215
|
}) && /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu.MenuItem, {
|
|
216
216
|
className: "sendbird-openchannel-user-message__context-menu__copy",
|
|
217
|
-
onClick: function
|
|
217
|
+
onClick: function () {
|
|
218
218
|
utils.copyToClipboard(message.message);
|
|
219
219
|
closeDropdown();
|
|
220
220
|
}
|
|
@@ -224,7 +224,7 @@ function OpenchannelUserMessage(_a) {
|
|
|
224
224
|
status: status
|
|
225
225
|
}) && /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu.MenuItem, {
|
|
226
226
|
className: "sendbird-openchannel-user-message__context-menu__edit",
|
|
227
|
-
onClick: function
|
|
227
|
+
onClick: function () {
|
|
228
228
|
if (disabled) {
|
|
229
229
|
return;
|
|
230
230
|
}
|
|
@@ -238,7 +238,7 @@ function OpenchannelUserMessage(_a) {
|
|
|
238
238
|
status: status
|
|
239
239
|
}) && /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu.MenuItem, {
|
|
240
240
|
className: "sendbird-openchannel-user-message__context-menu__resend",
|
|
241
|
-
onClick: function
|
|
241
|
+
onClick: function () {
|
|
242
242
|
resendMessage(message);
|
|
243
243
|
closeDropdown();
|
|
244
244
|
}
|
|
@@ -248,7 +248,7 @@ function OpenchannelUserMessage(_a) {
|
|
|
248
248
|
status: status
|
|
249
249
|
}) && /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu.MenuItem, {
|
|
250
250
|
className: "sendbird-openchannel-user-message__context-menu__delete",
|
|
251
|
-
onClick: function
|
|
251
|
+
onClick: function () {
|
|
252
252
|
if (disabled) {
|
|
253
253
|
return;
|
|
254
254
|
}
|
|
@@ -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","Label","uuidv4","LabelTypography","BODY_1","LabelColors","ONBACKGROUND_2","MESSAGE_EDITED","useEffect","current","clientHeight","top","window","innerWidth","__spreadArray","Array","isArray","join","ContextMenu","toggleDropdown","Avatar","profileUrl","closeDropdown","MenuItems","paddingTop","paddingBottom","user","close","UserProfile","CAPTION_2","SECONDARY_3","friendName","nickname","CAPTION_3","ONBACKGROUND_3","createdAt","format","locale","ONBACKGROUND_1","Loader","Icon","IconTypes","SPINNER","IconColors","PRIMARY","ERROR","showMenuTrigger","IconButton","MORE","CONTENT_INVERSE","isFineCopy","MenuItem","copyToClipboard","CONTEXT_MENU_DROPDOWN__COPY","isFineEdit","CONTEXT_MENU_DROPDOWN__EDIT","isFineResend","CONTEXT_MENU_DROPDOWN__RESEND","isFineDelete","CONTEXT_MENU_DROPDOWN__DELETE"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAgDwBA,uBAAuBC;MAC7CC,SAAS;MACTC,OAAO;MACPC,UAAU;MACVC,MAAM;MACNC,aAAa;MACbC,QAAQ;MACRC,QAAQ;MACRC,UAAU;MACVC,QAAQ;;AAER,MAAI,CAACP,OAAD,IAAYA,OAAO,CAACQ,WAAR,KAAwB,MAAxC,EAAgD;AAC9C,WAAO,IAAP;AACD;;;AAGK,MAAAC,KAA4BC,mCAAe,EAA3C;AAAA,MAAEC,SAAS,eAAX;AAAA,MAAaC,UAAU,gBAAvB;;AACA,MAAAC,KAA4CC,gBAAU,CAACC,qCAAD,CAAtD;AAAA,MAAEC,kBAAkB,wBAApB;AAAA,MAAsBC,iBAAiB,uBAAvC;;AACN,MAAMC,UAAU,GAAGC,YAAM,CAAC,IAAD,CAAzB;AACA,MAAMC,SAAS,GAAGD,YAAM,CAAC,IAAD,CAAxB;AACA,MAAME,cAAc,GAAGF,YAAM,CAAC,IAAD,CAA7B;;AACM,MAAAG,KAAkCC,cAAQ,CAAC,EAAD,CAA1C;AAAA,MAACC,YAAY,QAAb;AAAA,MAAeC,eAAe,QAA9B;;;AAGN,MAAMC,MAAM,GAAG1B,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE2B,aAAxB;AACA,MAAMC,SAAS,GAAGC,+BAAc,CAACH,MAAD,CAAhC;AACA,MAAMI,QAAQ,GAAGC,8BAAa,CAACL,MAAD,CAA9B;AACA,MAAMM,MAAM,GAAGC,qCAAoB,CAACjC,OAAD,CAAnC;AAEA,MAAMkC,mBAAmB,GAAGC,aAAO,CAAC;AAAM,WAAA;AACxC,UAAMC,YAAY,GAAGpC,OAAO,CAACA,OAAR,CAAgBqC,KAAhB,CAAsB,IAAtB,CAArB;AACA,UAAMC,cAAc,GAAGF,YAAY,CAACG,GAAb,CAAiB,UAACC,IAAD;AAAU,eAACA,IAAI,KAAK,EAAT,GAAcA,IAAd,gBAAqBC,mDAAtB;AAA6B,OAAxD,CAAvB;;AACA,UAAIzC,OAAO,CAAC0C,SAAR,GAAoB,CAAxB,EAA2B;AACzBJ,QAAAA,cAAc,CAACK,IAAf,eACEF,wCAACG,cAAD;AACE,UAAA,GAAG,EAAEC,WAAM,EADb;AAEE,UAAA,IAAI,EAAEC,wBAAe,CAACC,MAFxB;AAGE,UAAA,KAAK,EAAEC,oBAAW,CAACC,cAHrB;AAIE,UAAA,SAAS,EAAC;AAJZ,WAMG,UAAA,CAAItC,SAAS,CAACuC,cAAd,KAAA,CANH,CADF;AAUD;;AACD,aAAOZ,cAAP;AACD,KAhByC;AAgBzC,GAhBkC,EAgBhC,CAACtC,OAAD,EAAUA,OAAO,CAAC0C,SAAlB,CAhBgC,CAAnC;;AAmBAS,EAAAA,eAAS,CAAC;;;AACR,QAAI,CAAA,MAAAjC,UAAU,SAAV,IAAAA,UAAU,WAAV,SAAA,GAAAA,UAAU,CAAEkC,OAAZ,UAAA,iBAAA,SAAA,MAAqBC,YAArB,IAAoC,EAAxC,EAA4C;AAC1C5B,MAAAA,eAAe,CAAC;AAAE6B,QAAAA,GAAG,EAAE;AAAP,OAAD,CAAf;AACD,KAFD,MAEO;AACL7B,MAAAA,eAAe,CAAC;AAAE6B,QAAAA,GAAG,EAAE;AAAP,OAAD,CAAf;AACD;AACF,GANQ,EAMN,CAACC,MAAM,CAACC,UAAR,CANM,CAAT;AAQA,sBACEf;AACE,IAAA,SAAS,EAAEgB,oDACLC,KAAK,CAACC,OAAN,CAAc5D,SAAd,IAA2BA,SAA3B,GAAuC,CAACA,SAAD,WAC3C,4CAFS,CAGT6D,IAHS,CAGJ,GAHI,CADb;AAKE,IAAA,GAAG,EAAE1C;AALP,kBAOEuB;AAAK,IAAA,SAAS,EAAC;AAAf,KAEI,CAAClC,QAAD,iBACEkC,wCAACoB,yBAAD;AACE,IAAA,WAAW,EAAE,qBAACC,cAAD;AAAoB,0BAC/BrB,wCAACsB,oBAAD;AACE,QAAA,SAAS,EAAC,iDADZ;AAEE,QAAA,GAAG,EAAE/B,MAAM,CAACgC,UAAP,IAAqB,EAF5B;AAGE,QAAA,GAAG,EAAE5C,SAHP;AAIE,QAAA,KAAK,EAAC,MAJR;AAKE,QAAA,MAAM,EAAC,MALT;AAME,QAAA,OAAO,EAAE;AACP,cAAI,CAACJ,kBAAL,EAAyB;AACvB8C,YAAAA,cAAc;AACf;AACF;AAVH,QAD+B;AAahC,KAdH;AAeE,IAAA,SAAS,EAAE,mBAACG,aAAD;AAAmB,0BAC5BxB,wCAACyB,wBAAD;AACE,QAAA,SAAS,EAAE9C,SADb;AAEE,QAAA,gBAAgB,EAAEA,SAFpB;AAGE,QAAA,aAAa,EAAE6C,aAHjB;AAIE,QAAA,KAAK,EAAE;AAAEE,UAAAA,UAAU,EAAE,CAAd;AAAiBC,UAAAA,aAAa,EAAE;AAAhC;AAJT,SAOInD,iBAAiB,GAEfA,iBAAiB,CAAC;AAChBoD,QAAAA,IAAI,EAAErC,MADU;AAEhBsC,QAAAA,KAAK,EAAEL;AAFS,OAAD,CAFF,gBAQfxB,wCAAC8B,cAAD;AACE,QAAA,IAAI,EAAEvC,MADR;AAEE,QAAA,SAAS,EAAEiC,aAFb;AAGE,QAAA,gBAAgB;AAHlB,QAfN,CAD4B;AAwB7B;AAvCH,IAHN,CAPF,eAsDExB;AAAK,IAAA,SAAS,EAAC;AAAf,KAEI,CAAClC,QAAD,iBACEkC;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,wCAACG,cAAD;AACE,IAAA,SAAS,EAAC,4DADZ;AAEE,IAAA,IAAI,EAAEE,wBAAe,CAAC0B,SAFxB;AAGE,IAAA,KAAK,EAAEvE,UAAU,GAAG+C,oBAAW,CAACyB,WAAf,GAA6BzB,oBAAW,CAACC;AAH5D,KAMIjB,MAAM,KACJA,MAAM,CAAC0C,UAAP,IACG1C,MAAM,CAAC2C,QADV,IAEG3C,MAAM,CAAC9B,MAHN,CANV,CADF,eAcEuC,wCAACG,cAAD;AACE,IAAA,SAAS,EAAC,wDADZ;AAEE,IAAA,IAAI,EAAEE,wBAAe,CAAC8B,SAFxB;AAGE,IAAA,KAAK,EAAE5B,oBAAW,CAAC6B;AAHrB,KAMI,CAAA7E,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE8E,SAAT,KACEC,YAAM,CAAC/E,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE8E,SAAV,EAAqB,GAArB,EAA0B;AAC9BE,IAAAA,MAAM,EAAEpE;AADsB,GAA1B,CAPZ,CAdF,CAHN,eAiCE6B;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,wCAACG,cAAD;AACE,IAAA,SAAS,EAAC,2DADZ;AAEE,IAAA,IAAI,EAAEE,wBAAe,CAACC,MAFxB;AAGE,IAAA,KAAK,EAAEC,oBAAW,CAACiC;AAHrB,KAKG/C,mBAAmB,EALtB,CADF,CAjCF,EA2CI,CAACN,SAAS,IAAIE,QAAd,kBACEW;AAAK,IAAA,SAAS,EAAC;AAAf,KAEIb,SAAS,iBACPa,wCAACyC,SAAD;AACE,IAAA,KAAK,EAAC,MADR;AAEE,IAAA,MAAM,EAAC;AAFT,kBAIEzC,wCAAC0C,kBAAD;AACE,IAAA,SAAS,EAAC,yDADZ;AAEE,IAAA,IAAI,EAAEC,iBAAS,CAACC,OAFlB;AAGE,IAAA,SAAS,EAAEC,kBAAU,CAACC,OAHxB;AAIE,IAAA,KAAK,EAAC,MAJR;AAKE,IAAA,MAAM,EAAC;AALT,IAJF,CAHN,EAkBIzD,QAAQ,iBACNW,wCAAC0C,kBAAD;AACE,IAAA,SAAS,EAAC,wDADZ;AAEE,IAAA,IAAI,EAAEC,iBAAS,CAACI,KAFlB;AAGE,IAAA,SAAS,EAAEF,kBAAU,CAACE,KAHxB;AAIE,IAAA,KAAK,EAAC,MAJR;AAKE,IAAA,MAAM,EAAC;AALT,IAnBN,CA5CN,CAtDF,eAmII/C;AACE,IAAA,SAAS,EAAC,iDADZ;AAEE,IAAA,GAAG,EAAEpB,cAFP;AAGE,IAAA,KAAK,EAAEG;AAHT,kBAKEiB,wCAACoB,yBAAD;AACE,IAAA,WAAW,EAAE,qBAACC,cAAD;AAAoB,aAC/B2B,gCAAe,CAAC;AAAEzF,QAAAA,OAAO,EAAEA,OAAX;AAAoBE,QAAAA,MAAM,EAAEA,MAA5B;AAAoCwB,QAAAA,MAAM,EAAEA;AAA5C,OAAD,CAAf,iBACEe,wCAACiD,aAAD;AACE,QAAA,SAAS,EAAC,uDADZ;AAEE,QAAA,KAAK,EAAC,MAFR;AAGE,QAAA,MAAM,EAAC,MAHT;AAIE,QAAA,OAAO,EAAE;AACP5B,UAAAA,cAAc;AACf;AANH,sBAQErB,wCAAC0C,kBAAD;AACE,QAAA,IAAI,EAAEC,iBAAS,CAACO,IADlB;AAEE,QAAA,SAAS,EAAEL,kBAAU,CAACM,eAFxB;AAGE,QAAA,KAAK,EAAC,MAHR;AAIE,QAAA,MAAM,EAAC;AAJT,QARF,CAF6B;AAkBhC,KAnBH;AAoBE,IAAA,SAAS,EAAE,mBAAC3B,aAAD;AAAmB,0BAC5BxB,wCAACyB,wBAAD;AACE,QAAA,SAAS,EAAE7C,cADb;AAEE,QAAA,gBAAgB,EAAEA,cAFpB;AAGE,QAAA,aAAa,EAAE4C,aAHjB;AAIE,QAAA,QAAQ;AAJV,SAOI4B,2BAAU,CAAC;AAAE7F,QAAAA,OAAO,EAAEA,OAAX;AAAoBE,QAAAA,MAAM,EAAEA,MAA5B;AAAoCwB,QAAAA,MAAM,EAAEA;AAA5C,OAAD,CAAV,iBACEe,wCAACqD,uBAAD;AACE,QAAA,SAAS,EAAC,uDADZ;AAEE,QAAA,OAAO,EAAE;AACPC,UAAAA,qBAAe,CAAC/F,OAAO,CAACA,OAAT,CAAf;AACAiE,UAAAA,aAAa;AACd;AALH,SAOGtD,SAAS,CAACqF,2BAPb,CARN,EAoBIC,2BAAU,CAAC;AAAEjG,QAAAA,OAAO,EAAEA,OAAX;AAAoBE,QAAAA,MAAM,EAAEA,MAA5B;AAAoCwB,QAAAA,MAAM,EAAEA;AAA5C,OAAD,CAAV,iBACEe,wCAACqD,uBAAD;AACE,QAAA,SAAS,EAAC,uDADZ;AAEE,QAAA,OAAO,EAAE;AACP,cAAI1F,QAAJ,EAAc;AACZ;AACD;;AACDC,UAAAA,QAAQ,CAAC,IAAD,CAAR;AACA4D,UAAAA,aAAa;AACd;AARH,SAUGtD,SAAS,CAACuF,2BAVb,CArBN,EAoCIC,6BAAY,CAAC;AAAEnG,QAAAA,OAAO,EAAEA,OAAX;AAAoBE,QAAAA,MAAM,EAAEA,MAA5B;AAAoCwB,QAAAA,MAAM,EAAEA;AAA5C,OAAD,CAAZ,iBACEe,wCAACqD,uBAAD;AACE,QAAA,SAAS,EAAC,yDADZ;AAEE,QAAA,OAAO,EAAE;AACP3F,UAAAA,aAAa,CAACH,OAAD,CAAb;AACAiE,UAAAA,aAAa;AACd;AALH,SAOGtD,SAAS,CAACyF,6BAPb,CArCN,EAiDIC,6BAAY,CAAC;AAAErG,QAAAA,OAAO,EAAEA,OAAX;AAAoBE,QAAAA,MAAM,EAAEA,MAA5B;AAAoCwB,QAAAA,MAAM,EAAEA;AAA5C,OAAD,CAAZ,iBACEe,wCAACqD,uBAAD;AACE,QAAA,SAAS,EAAC,yDADZ;AAEE,QAAA,OAAO,EAAE;AACP,cAAI1F,QAAJ,EAAc;AACZ;AACD;;AACDE,UAAAA,UAAU,CAAC,IAAD,CAAV;AACA2D,UAAAA,aAAa;AACd;AARH,SAUGtD,SAAS,CAAC2F,6BAVb,CAlDN,CAD4B;AAkE7B;AAtFH,IALF,CAnIJ,CADF;AAqOD;;;;"}
|
|
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","Label","uuidv4","LabelTypography","BODY_1","LabelColors","ONBACKGROUND_2","concat","MESSAGE_EDITED","useEffect","current","clientHeight","top","window","innerWidth","__spreadArray","Array","isArray","join","ContextMenu","toggleDropdown","Avatar","profileUrl","closeDropdown","MenuItems","paddingTop","paddingBottom","user","close","UserProfile","CAPTION_2","SECONDARY_3","friendName","nickname","CAPTION_3","ONBACKGROUND_3","createdAt","format","locale","ONBACKGROUND_1","Loader","Icon","IconTypes","SPINNER","IconColors","PRIMARY","ERROR","showMenuTrigger","IconButton","MORE","CONTENT_INVERSE","isFineCopy","MenuItem","copyToClipboard","CONTEXT_MENU_DROPDOWN__COPY","isFineEdit","CONTEXT_MENU_DROPDOWN__EDIT","isFineResend","CONTEXT_MENU_DROPDOWN__RESEND","isFineDelete","CONTEXT_MENU_DROPDOWN__DELETE"],"mappings":"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"}
|
package/cjs/ui/PlaceHolder.js
CHANGED
|
@@ -2,16 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
require('../tslib.es6-
|
|
5
|
+
require('../tslib.es6-9b1c82d5.js');
|
|
6
6
|
require('react');
|
|
7
|
-
var ui_PlaceHolder = require('../index-
|
|
8
|
-
require('../LocalizationContext-
|
|
7
|
+
var ui_PlaceHolder = require('../index-78d342b2.js');
|
|
8
|
+
require('../LocalizationContext-b051aa28.js');
|
|
9
9
|
require('./Icon.js');
|
|
10
|
-
require('../index-
|
|
10
|
+
require('../index-62c9ad2d.js');
|
|
11
11
|
require('./Loader.js');
|
|
12
|
-
require('../stringSet-
|
|
13
|
-
require('../index-
|
|
14
|
-
require('../_rollupPluginBabelHelpers-09706ebf.js');
|
|
12
|
+
require('../stringSet-9d251780.js');
|
|
13
|
+
require('../index-53015903.js');
|
|
15
14
|
require('prop-types');
|
|
16
15
|
|
|
17
16
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlaceHolder.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PlaceHolder.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;"}
|
package/cjs/ui/QuoteMessage.js
CHANGED
|
@@ -2,15 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
4
|
var ui_Icon = require('./Icon.js');
|
|
5
|
-
var ui_Label = require('../index-
|
|
5
|
+
var ui_Label = require('../index-62c9ad2d.js');
|
|
6
6
|
var ui_ImageRenderer = require('./ImageRenderer.js');
|
|
7
|
-
var LocalizationContext = require('../LocalizationContext-
|
|
8
|
-
var index = require('../index-
|
|
9
|
-
require('../_rollupPluginBabelHelpers-09706ebf.js');
|
|
7
|
+
var LocalizationContext = require('../LocalizationContext-b051aa28.js');
|
|
8
|
+
var index = require('../index-907bf834.js');
|
|
10
9
|
require('prop-types');
|
|
11
|
-
require('../stringSet-
|
|
12
|
-
require('../tslib.es6-
|
|
13
|
-
require('../index-
|
|
10
|
+
require('../stringSet-9d251780.js');
|
|
11
|
+
require('../tslib.es6-9b1c82d5.js');
|
|
12
|
+
require('../index-53015903.js');
|
|
14
13
|
|
|
15
14
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
16
15
|
|
|
@@ -27,7 +26,7 @@ function QuoteMessage(_a) {
|
|
|
27
26
|
_h = _a.isByMe,
|
|
28
27
|
isByMe = _h === void 0 ? false : _h,
|
|
29
28
|
className = _a.className,
|
|
30
|
-
|
|
29
|
+
onClick = _a.onClick;
|
|
31
30
|
var stringSet = React.useContext(LocalizationContext.LocalizationContext).stringSet;
|
|
32
31
|
var parentMessage = message.parentMessage;
|
|
33
32
|
var parentMessageSender = parentMessage === null || parentMessage === void 0 ? void 0 : parentMessage.sender;
|
|
@@ -45,8 +44,8 @@ function QuoteMessage(_a) {
|
|
|
45
44
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
46
45
|
className: index.getClassName([className, 'sendbird-quote-message', isByMe ? 'outgoing' : 'incoming']),
|
|
47
46
|
key: parentMessage === null || parentMessage === void 0 ? void 0 : parentMessage.messageId,
|
|
48
|
-
onClick: function
|
|
49
|
-
if (
|
|
47
|
+
onClick: function () {
|
|
48
|
+
if (onClick) onClick();
|
|
50
49
|
}
|
|
51
50
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
52
51
|
className: "sendbird-quote-message__replied-to"
|
|
@@ -76,7 +75,7 @@ function QuoteMessage(_a) {
|
|
|
76
75
|
alt: parentMessageType,
|
|
77
76
|
width: "144px",
|
|
78
77
|
height: "108px",
|
|
79
|
-
onLoad: function
|
|
78
|
+
onLoad: function () {
|
|
80
79
|
return setThumbnailLoaded(true);
|
|
81
80
|
},
|
|
82
81
|
defaultComponent: /*#__PURE__*/React__default["default"].createElement("div", {
|
|
@@ -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","_j","useState","isThumbnailLoaded","setThumbnailLoaded","uikitFileTypes","getUIKitFileTypes","splitFileName","name","split","React","getClassName","messageId","Icon","IconTypes","REPLY","IconColors","ON_BACKGROUND_3","Label","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_3","QUOTED_MESSAGE__REPLIED_TO","isUserMessage","length","BODY_2","ONBACKGROUND_1","isThumbnailMessage","ImageRenderer","isVideo","PLAY","PHOTO","ON_BACKGROUND_2","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 >\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","Icon","IconTypes","REPLY","IconColors","ON_BACKGROUND_3","Label","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_3","concat","QUOTED_MESSAGE__REPLIED_TO","isUserMessage","_e","length","BODY_2","ONBACKGROUND_1","isThumbnailMessage","ImageRenderer","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,16 +1,15 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
|
-
var index = require('../index-
|
|
4
|
+
var index = require('../index-907bf834.js');
|
|
5
5
|
var ui_Icon = require('./Icon.js');
|
|
6
|
-
var ui_Label = require('../index-
|
|
7
|
-
var LocalizationContext = require('../LocalizationContext-
|
|
6
|
+
var ui_Label = require('../index-62c9ad2d.js');
|
|
7
|
+
var LocalizationContext = require('../LocalizationContext-b051aa28.js');
|
|
8
8
|
var ui_ImageRenderer = require('./ImageRenderer.js');
|
|
9
|
-
require('../tslib.es6-
|
|
10
|
-
require('../_rollupPluginBabelHelpers-09706ebf.js');
|
|
9
|
+
require('../tslib.es6-9b1c82d5.js');
|
|
11
10
|
require('prop-types');
|
|
12
|
-
require('../stringSet-
|
|
13
|
-
require('../index-
|
|
11
|
+
require('../stringSet-9d251780.js');
|
|
12
|
+
require('../index-53015903.js');
|
|
14
13
|
|
|
15
14
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
16
15
|
|
|
@@ -87,7 +86,7 @@ function QuoteMessageInput(_a) {
|
|
|
87
86
|
fillColor: ui_Icon.IconColors.ON_BACKGROUND_2,
|
|
88
87
|
width: "24px",
|
|
89
88
|
height: "24px",
|
|
90
|
-
onClick: function
|
|
89
|
+
onClick: function () {
|
|
91
90
|
return onClose(replyingMessage);
|
|
92
91
|
}
|
|
93
92
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuoteMessageInput.js","sources":["../../../src/ui/QuoteMessageInput/QuoteMessageThumbnail.tsx","../../../src/ui/QuoteMessageInput/index.tsx"],"sourcesContent":["import React, { ReactElement } from 'react';\nimport type { FileMessage } from '@sendbird/chat/message';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport ImageRenderer from '../ImageRenderer';\nimport { isAudioMessage, isFileMessage, isImageMessage, isThumbnailMessage } from '../../utils';\n\ninterface Props {\n message: FileMessage;\n}\n\nconst componentClassname = 'sendbird-quote_message_input__avatar';\n\nexport default function QuoteMessageThumbnail({ message }: Props): ReactElement {\n if (!isFileMessage(message)) {\n return null;\n }\n\n const thumbnailUrl: string = (message.thumbnails && message.thumbnails.length > 0 && message.thumbnails[0].url)\n || (isImageMessage(message) && message.url);\n if (isThumbnailMessage(message) && thumbnailUrl) {\n return (\n <ImageRenderer\n className={componentClassname}\n url={thumbnailUrl}\n alt={message.type}\n width=\"44px\"\n height=\"44px\"\n fixedSize\n />\n );\n } else if (isAudioMessage(message)) {\n return (\n <div className={componentClassname}>\n <Icon\n type={IconTypes.FILE_AUDIO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"24px\"\n height=\"24px\"\n />\n </div>\n );\n } else {\n return (\n <div className={componentClassname}>\n <Icon\n type={IconTypes.FILE_DOCUMENT}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"24px\"\n height=\"24px\"\n />\n </div>\n );\n }\n}\n","import './index.scss';\n\nimport React, { ReactElement, useContext } from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport {\n getClassName,\n isFileMessage,\n isGifMessage,\n isImageMessage,\n isThumbnailMessage,\n isUserMessage,\n isVideoMessage,\n} from '../../utils';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\n\nimport QuoteMessageThumbnail from './QuoteMessageThumbnail';\n\ninterface Props {\n className?: string | Array<string>;\n replyingMessage: UserMessage | FileMessage;\n onClose?: (message: UserMessage | FileMessage) => void;\n}\n\nexport default function QuoteMessageInput({\n className,\n replyingMessage,\n onClose,\n}: Props): ReactElement {\n const { stringSet } = useContext(LocalizationContext);\n const fileMessage = replyingMessage as FileMessage;\n const sender = (replyingMessage as UserMessage | FileMessage)?.sender;\n\n return (\n <div className={getClassName(['sendbird-quote_message_input', className])}>\n <QuoteMessageThumbnail message={fileMessage} />\n <div\n className=\"sendbird-quote_message_input__body\"\n style={{\n width: `calc(100% - ${fileMessage?.isFileMessage() ? '164px' : '120px'})`,\n left: fileMessage?.isFileMessage() ? '92px' : '40px',\n }}\n >\n <Label\n className=\"sendbird-quote_message_input__body__sender-name\"\n type={LabelTypography.CAPTION_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {`${stringSet.QUOTE_MESSAGE_INPUT__REPLY_TO} ${(sender && sender.nickname) ? sender.nickname : stringSet.NO_NAME}`}\n </Label>\n <Label\n className=\"sendbird-quote_message_input__body__message-content\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {isImageMessage(fileMessage) && !isGifMessage(fileMessage) && stringSet.QUOTE_MESSAGE_INPUT__FILE_TYPE_IMAGE}\n {isVideoMessage(fileMessage) && stringSet.QUOTE_MESSAGE_INPUT__FILE_TYPE__VIDEO}\n {isGifMessage(fileMessage) && stringSet.QUOTE_MESSAGE_INPUT__FILE_TYPE_GIF}\n {isUserMessage(replyingMessage as UserMessage) && (replyingMessage as UserMessage).message}\n {(isFileMessage(fileMessage) && !isThumbnailMessage(fileMessage)) && fileMessage.name}\n </Label>\n </div>\n <Icon\n className=\"sendbird-quote_message_input__close-button\"\n type={IconTypes.CLOSE}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"24px\"\n height=\"24px\"\n onClick={() => onClose(replyingMessage)}\n />\n </div>\n );\n}\n"],"names":["componentClassname","QuoteMessageThumbnail","_a","message","isFileMessage","thumbnailUrl","thumbnails","length","url","isImageMessage","isThumbnailMessage","React","ImageRenderer","type","isAudioMessage","Icon","IconTypes","FILE_AUDIO","IconColors","ON_BACKGROUND_2","FILE_DOCUMENT","QuoteMessageInput","className","replyingMessage","onClose","stringSet","useContext","LocalizationContext","fileMessage","sender","getClassName","width","left","Label","LabelTypography","CAPTION_1","LabelColors","ONBACKGROUND_1","QUOTE_MESSAGE_INPUT__REPLY_TO","nickname","NO_NAME","BODY_2","ONBACKGROUND_3","isGifMessage","QUOTE_MESSAGE_INPUT__FILE_TYPE_IMAGE","isVideoMessage","QUOTE_MESSAGE_INPUT__FILE_TYPE__VIDEO","QUOTE_MESSAGE_INPUT__FILE_TYPE_GIF","isUserMessage","name","CLOSE"],"mappings":"
|
|
1
|
+
{"version":3,"file":"QuoteMessageInput.js","sources":["../../../src/ui/QuoteMessageInput/QuoteMessageThumbnail.tsx","../../../src/ui/QuoteMessageInput/index.tsx"],"sourcesContent":["import React, { ReactElement } from 'react';\nimport type { FileMessage } from '@sendbird/chat/message';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport ImageRenderer from '../ImageRenderer';\nimport { isAudioMessage, isFileMessage, isImageMessage, isThumbnailMessage } from '../../utils';\n\ninterface Props {\n message: FileMessage;\n}\n\nconst componentClassname = 'sendbird-quote_message_input__avatar';\n\nexport default function QuoteMessageThumbnail({ message }: Props): ReactElement {\n if (!isFileMessage(message)) {\n return null;\n }\n\n const thumbnailUrl: string = (message.thumbnails && message.thumbnails.length > 0 && message.thumbnails[0].url)\n || (isImageMessage(message) && message.url);\n if (isThumbnailMessage(message) && thumbnailUrl) {\n return (\n <ImageRenderer\n className={componentClassname}\n url={thumbnailUrl}\n alt={message.type}\n width=\"44px\"\n height=\"44px\"\n fixedSize\n />\n );\n } else if (isAudioMessage(message)) {\n return (\n <div className={componentClassname}>\n <Icon\n type={IconTypes.FILE_AUDIO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"24px\"\n height=\"24px\"\n />\n </div>\n );\n } else {\n return (\n <div className={componentClassname}>\n <Icon\n type={IconTypes.FILE_DOCUMENT}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"24px\"\n height=\"24px\"\n />\n </div>\n );\n }\n}\n","import './index.scss';\n\nimport React, { ReactElement, useContext } from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport {\n getClassName,\n isFileMessage,\n isGifMessage,\n isImageMessage,\n isThumbnailMessage,\n isUserMessage,\n isVideoMessage,\n} from '../../utils';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\n\nimport QuoteMessageThumbnail from './QuoteMessageThumbnail';\n\ninterface Props {\n className?: string | Array<string>;\n replyingMessage: UserMessage | FileMessage;\n onClose?: (message: UserMessage | FileMessage) => void;\n}\n\nexport default function QuoteMessageInput({\n className,\n replyingMessage,\n onClose,\n}: Props): ReactElement {\n const { stringSet } = useContext(LocalizationContext);\n const fileMessage = replyingMessage as FileMessage;\n const sender = (replyingMessage as UserMessage | FileMessage)?.sender;\n\n return (\n <div className={getClassName(['sendbird-quote_message_input', className])}>\n <QuoteMessageThumbnail message={fileMessage} />\n <div\n className=\"sendbird-quote_message_input__body\"\n style={{\n width: `calc(100% - ${fileMessage?.isFileMessage() ? '164px' : '120px'})`,\n left: fileMessage?.isFileMessage() ? '92px' : '40px',\n }}\n >\n <Label\n className=\"sendbird-quote_message_input__body__sender-name\"\n type={LabelTypography.CAPTION_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {`${stringSet.QUOTE_MESSAGE_INPUT__REPLY_TO} ${(sender && sender.nickname) ? sender.nickname : stringSet.NO_NAME}`}\n </Label>\n <Label\n className=\"sendbird-quote_message_input__body__message-content\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {isImageMessage(fileMessage) && !isGifMessage(fileMessage) && stringSet.QUOTE_MESSAGE_INPUT__FILE_TYPE_IMAGE}\n {isVideoMessage(fileMessage) && stringSet.QUOTE_MESSAGE_INPUT__FILE_TYPE__VIDEO}\n {isGifMessage(fileMessage) && stringSet.QUOTE_MESSAGE_INPUT__FILE_TYPE_GIF}\n {isUserMessage(replyingMessage as UserMessage) && (replyingMessage as UserMessage).message}\n {(isFileMessage(fileMessage) && !isThumbnailMessage(fileMessage)) && fileMessage.name}\n </Label>\n </div>\n <Icon\n className=\"sendbird-quote_message_input__close-button\"\n type={IconTypes.CLOSE}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"24px\"\n height=\"24px\"\n onClick={() => onClose(replyingMessage)}\n />\n </div>\n );\n}\n"],"names":["componentClassname","QuoteMessageThumbnail","_a","message","isFileMessage","thumbnailUrl","thumbnails","length","url","isImageMessage","isThumbnailMessage","React","ImageRenderer","type","isAudioMessage","Icon","IconTypes","FILE_AUDIO","IconColors","ON_BACKGROUND_2","FILE_DOCUMENT","QuoteMessageInput","className","replyingMessage","onClose","stringSet","useContext","LocalizationContext","fileMessage","sender","getClassName","width","concat","left","Label","LabelTypography","CAPTION_1","LabelColors","ONBACKGROUND_1","QUOTE_MESSAGE_INPUT__REPLY_TO","nickname","NO_NAME","BODY_2","ONBACKGROUND_3","isGifMessage","QUOTE_MESSAGE_INPUT__FILE_TYPE_IMAGE","isVideoMessage","QUOTE_MESSAGE_INPUT__FILE_TYPE__VIDEO","QUOTE_MESSAGE_INPUT__FILE_TYPE_GIF","isUserMessage","name","CLOSE"],"mappings":"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"}
|