@sendbird/uikit-react 3.0.0-beta → 3.0.0-beta.2
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 +41 -30
- package/App.js.map +1 -1
- package/CHANGELOG.md +50 -0
- package/Channel/components/ChannelHeader.js +15 -14
- package/Channel/components/ChannelHeader.js.map +1 -1
- package/Channel/components/ChannelUI.js +28 -21
- package/Channel/components/ChannelUI.js.map +1 -1
- package/Channel/components/FileViewer.js +14 -13
- package/Channel/components/FileViewer.js.map +1 -1
- package/Channel/components/FrozenNotification.js +5 -5
- package/Channel/components/Message.js +178 -62
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +145 -30
- package/Channel/components/MessageInput.js.map +1 -1
- package/Channel/components/MessageList.js +71 -59
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +17 -16
- package/Channel/components/RemoveMessageModal.js.map +1 -1
- package/Channel/components/SuggestedMentionList.js +250 -0
- package/Channel/components/SuggestedMentionList.js.map +1 -0
- package/Channel/components/TypingIndicator.js +14 -13
- package/Channel/components/TypingIndicator.js.map +1 -1
- package/Channel/components/UnreadCount.js +5 -5
- package/Channel/context.js +13 -12
- package/Channel/context.js.map +1 -1
- package/Channel.js +28 -21
- package/Channel.js.map +1 -1
- package/ChannelList/components/AddChannel.js +14 -14
- package/ChannelList/components/ChannelListHeader.js +7 -7
- package/ChannelList/components/ChannelListUI.js +24 -23
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +23 -19
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/ChannelList/context.js +8 -8
- package/ChannelList.js +24 -23
- package/ChannelList.js.map +1 -1
- package/{ChannelListProvider-0b0c2c40.js → ChannelListProvider-7c351968.js} +8 -8
- package/{ChannelListProvider-0b0c2c40.js.map → ChannelListProvider-7c351968.js.map} +1 -1
- package/{ChannelProvider-459e463f.js → ChannelProvider-d5126903.js} +72 -41
- package/ChannelProvider-d5126903.js.map +1 -0
- package/ChannelSettings/components/AdminPanel.js +15 -15
- package/ChannelSettings/components/ChannelProfile.js +13 -13
- package/ChannelSettings/components/ChannelSettingsUI.js +18 -18
- package/ChannelSettings/components/EditDetailsModal.js +13 -13
- package/ChannelSettings/components/LeaveChannel.js +10 -10
- package/ChannelSettings/components/UserListItem.js +11 -11
- package/ChannelSettings/components/UserPanel.js +14 -14
- package/ChannelSettings/context.js +3 -3
- package/ChannelSettings.js +18 -18
- package/CreateChannel/components/CreateChannelUI.js +14 -14
- package/CreateChannel/components/InviteMembers.js +14 -14
- package/CreateChannel/components/SelectChannelType.js +10 -10
- package/CreateChannel/context.js +3 -3
- package/CreateChannel.js +14 -14
- package/{CreateChannelProvider-c617a1bb.js → CreateChannelProvider-ddfd92e6.js} +1 -1
- package/{CreateChannelProvider-c617a1bb.js.map → CreateChannelProvider-ddfd92e6.js.map} +1 -1
- package/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/EditUserProfile.js +13 -13
- package/{LocalizationContext-e4391013.js → LocalizationContext-b021af8f.js} +3 -3
- package/{LocalizationContext-e4391013.js.map → LocalizationContext-b021af8f.js.map} +1 -1
- package/{MemberList-6655cba0.js → MemberList-323e7517.js} +5 -5
- package/{MemberList-6655cba0.js.map → MemberList-323e7517.js.map} +1 -1
- package/MessageSearch/components/MessageSearchUI.js +11 -11
- package/MessageSearch/context.js +2 -2
- package/MessageSearch.js +11 -11
- package/OpenChannel/components/FrozenChannelNotification.js +5 -5
- package/OpenChannel/components/OpenChannelHeader.js +12 -12
- package/OpenChannel/components/OpenChannelInput.js +18 -14
- package/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessage.js +23 -19
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +25 -21
- package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/OpenChannel/components/OpenChannelUI.js +25 -21
- package/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/OpenChannel/context.js +9 -9
- package/OpenChannel.js +25 -21
- package/OpenChannel.js.map +1 -1
- package/{OpenChannelProvider-a7691eb4.js → OpenChannelProvider-abc4ab98.js} +7 -7
- package/{OpenChannelProvider-a7691eb4.js.map → OpenChannelProvider-abc4ab98.js.map} +1 -1
- package/OpenChannelSettings/components/EditDetailsModal.js +13 -13
- package/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
- package/OpenChannelSettings/components/OperatorUI.js +16 -16
- package/OpenChannelSettings/components/ParticipantUI.js +14 -14
- package/OpenChannelSettings/context.js +2 -2
- package/OpenChannelSettings.js +17 -17
- package/README.md +9 -1
- package/SendbirdProvider.js +27 -13
- package/SendbirdProvider.js.map +1 -1
- package/{UserProfileContext-865db5e6.js → UserProfileContext-daa99f9b.js} +1 -1
- package/{UserProfileContext-865db5e6.js.map → UserProfileContext-daa99f9b.js.map} +1 -1
- package/{_rollupPluginBabelHelpers-20904f21.js → _rollupPluginBabelHelpers-8e4fae98.js} +1 -1
- package/{_rollupPluginBabelHelpers-20904f21.js.map → _rollupPluginBabelHelpers-8e4fae98.js.map} +1 -1
- package/{actionTypes-1e3a4074.js → actionTypes-189daf51.js} +1 -1
- package/{actionTypes-1e3a4074.js.map → actionTypes-189daf51.js.map} +1 -1
- package/cjs/App.js +41 -30
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +15 -14
- package/cjs/Channel/components/ChannelHeader.js.map +1 -1
- package/cjs/Channel/components/ChannelUI.js +28 -21
- package/cjs/Channel/components/ChannelUI.js.map +1 -1
- package/cjs/Channel/components/FileViewer.js +14 -13
- package/cjs/Channel/components/FileViewer.js.map +1 -1
- package/cjs/Channel/components/FrozenNotification.js +5 -5
- package/cjs/Channel/components/Message.js +177 -61
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +144 -29
- package/cjs/Channel/components/MessageInput.js.map +1 -1
- package/cjs/Channel/components/MessageList.js +70 -58
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +17 -16
- package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
- package/cjs/Channel/components/SuggestedMentionList.js +256 -0
- package/cjs/Channel/components/SuggestedMentionList.js.map +1 -0
- package/cjs/Channel/components/TypingIndicator.js +14 -13
- package/cjs/Channel/components/TypingIndicator.js.map +1 -1
- package/cjs/Channel/components/UnreadCount.js +5 -5
- package/cjs/Channel/context.js +13 -12
- package/cjs/Channel/context.js.map +1 -1
- package/cjs/Channel.js +28 -21
- package/cjs/Channel.js.map +1 -1
- package/cjs/ChannelList/components/AddChannel.js +14 -14
- package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
- package/cjs/ChannelList/components/ChannelListUI.js +24 -23
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +23 -19
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/cjs/ChannelList/context.js +8 -8
- package/cjs/ChannelList.js +24 -23
- package/cjs/ChannelList.js.map +1 -1
- package/cjs/{ChannelListProvider-5a152618.js → ChannelListProvider-44dde549.js} +8 -8
- package/cjs/{ChannelListProvider-5a152618.js.map → ChannelListProvider-44dde549.js.map} +1 -1
- package/cjs/{ChannelProvider-f1fb0108.js → ChannelProvider-e0aaab26.js} +79 -48
- package/cjs/ChannelProvider-e0aaab26.js.map +1 -0
- package/cjs/ChannelSettings/components/AdminPanel.js +15 -15
- package/cjs/ChannelSettings/components/ChannelProfile.js +13 -13
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -18
- package/cjs/ChannelSettings/components/EditDetailsModal.js +13 -13
- package/cjs/ChannelSettings/components/LeaveChannel.js +10 -10
- package/cjs/ChannelSettings/components/UserListItem.js +11 -11
- package/cjs/ChannelSettings/components/UserPanel.js +14 -14
- package/cjs/ChannelSettings/context.js +3 -3
- package/cjs/ChannelSettings.js +18 -18
- package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
- package/cjs/CreateChannel/components/InviteMembers.js +14 -14
- package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
- package/cjs/CreateChannel/context.js +3 -3
- package/cjs/CreateChannel.js +14 -14
- package/cjs/{CreateChannelProvider-df42106f.js → CreateChannelProvider-bdf9c39b.js} +1 -1
- package/cjs/{CreateChannelProvider-df42106f.js.map → CreateChannelProvider-bdf9c39b.js.map} +1 -1
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/cjs/EditUserProfile.js +13 -13
- package/cjs/{LocalizationContext-68e55e2a.js → LocalizationContext-3b5ce8ae.js} +3 -3
- package/cjs/{LocalizationContext-68e55e2a.js.map → LocalizationContext-3b5ce8ae.js.map} +1 -1
- package/cjs/{MemberList-dc84e303.js → MemberList-ef9e43c3.js} +5 -5
- package/cjs/{MemberList-dc84e303.js.map → MemberList-ef9e43c3.js.map} +1 -1
- package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
- package/cjs/MessageSearch/context.js +2 -2
- package/cjs/MessageSearch.js +11 -11
- package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
- package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
- package/cjs/OpenChannel/components/OpenChannelInput.js +18 -14
- package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessage.js +23 -19
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +25 -21
- package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelUI.js +25 -21
- package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/cjs/OpenChannel/context.js +9 -9
- package/cjs/OpenChannel.js +25 -21
- package/cjs/OpenChannel.js.map +1 -1
- package/cjs/{OpenChannelProvider-7a1a996f.js → OpenChannelProvider-9ce7c998.js} +7 -7
- package/cjs/{OpenChannelProvider-7a1a996f.js.map → OpenChannelProvider-9ce7c998.js.map} +1 -1
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +13 -13
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
- package/cjs/OpenChannelSettings/components/OperatorUI.js +16 -16
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
- package/cjs/OpenChannelSettings/context.js +2 -2
- package/cjs/OpenChannelSettings.js +17 -17
- package/cjs/SendbirdProvider.js +27 -13
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/{UserProfileContext-3533547d.js → UserProfileContext-f0bdfbb8.js} +1 -1
- package/cjs/{UserProfileContext-3533547d.js.map → UserProfileContext-f0bdfbb8.js.map} +1 -1
- package/cjs/{_rollupPluginBabelHelpers-fc14118c.js → _rollupPluginBabelHelpers-e54d2387.js} +1 -1
- package/cjs/{_rollupPluginBabelHelpers-fc14118c.js.map → _rollupPluginBabelHelpers-e54d2387.js.map} +1 -1
- package/cjs/{actionTypes-bc47f97a.js → actionTypes-267d4c79.js} +1 -1
- package/cjs/{actionTypes-bc47f97a.js.map → actionTypes-267d4c79.js.map} +1 -1
- package/cjs/{color-4afb15fb.js → color-0f078673.js} +1 -1
- package/cjs/{color-4afb15fb.js.map → color-0f078673.js.map} +1 -1
- package/cjs/{compareIds-01306377.js → compareIds-176a582b.js} +1 -1
- package/cjs/{compareIds-01306377.js.map → compareIds-176a582b.js.map} +1 -1
- package/cjs/const-4bf0e8b4.js +22 -0
- package/cjs/const-4bf0e8b4.js.map +1 -0
- package/cjs/const-ccf192c5.js +14 -0
- package/cjs/const-ccf192c5.js.map +1 -0
- package/cjs/{context-c1f9d650.js → context-0cbe196d.js} +2 -2
- package/cjs/{context-c1f9d650.js.map → context-0cbe196d.js.map} +1 -1
- package/cjs/{index-d4880236.js → index-002a349d.js} +84 -3
- package/cjs/index-002a349d.js.map +1 -0
- package/cjs/{index-905331fa.js → index-0159bc57.js} +2 -2
- package/cjs/{index-905331fa.js.map → index-0159bc57.js.map} +1 -1
- package/cjs/{index-4987c8b2.js → index-081c9614.js} +6 -6
- package/cjs/{index-4987c8b2.js.map → index-081c9614.js.map} +1 -1
- package/cjs/{index-1468d245.js → index-21f31180.js} +3 -3
- package/cjs/{index-1468d245.js.map → index-21f31180.js.map} +1 -1
- package/cjs/{index-1044f1ed.js → index-22f07209.js} +3 -3
- package/cjs/{index-1044f1ed.js.map → index-22f07209.js.map} +1 -1
- package/cjs/{index-8becccd8.js → index-46522cf0.js} +4 -4
- package/cjs/{index-8becccd8.js.map → index-46522cf0.js.map} +1 -1
- package/cjs/index-723733db.js +54 -0
- package/cjs/index-723733db.js.map +1 -0
- package/cjs/{index-9dc3863f.js → index-c0693be4.js} +2 -2
- package/cjs/{index-9dc3863f.js.map → index-c0693be4.js.map} +1 -1
- package/cjs/{index-659c9ca5.js → index-d4f42e73.js} +4 -4
- package/cjs/{index-659c9ca5.js.map → index-d4f42e73.js.map} +1 -1
- package/cjs/{index-e2bb862c.js → index-d9439e95.js} +1 -1
- package/cjs/{index-e2bb862c.js.map → index-d9439e95.js.map} +1 -1
- package/cjs/{index-aecc8d24.js → index-ed053e45.js} +1 -1
- package/cjs/{index-aecc8d24.js.map → index-ed053e45.js.map} +1 -1
- package/cjs/index.css +165 -59
- package/cjs/index.css.map +1 -1
- package/cjs/index.js +38 -31
- package/cjs/index.js.map +1 -1
- package/cjs/{openChannelUtils-37919a36.js → openChannelUtils-cecaf987.js} +1 -1
- package/cjs/{openChannelUtils-37919a36.js.map → openChannelUtils-cecaf987.js.map} +1 -1
- package/cjs/sendBirdSelectors.js +1 -1
- package/cjs/{stringSet-aa544ce5.js → stringSet-f4da182b.js} +4 -2
- package/cjs/stringSet-f4da182b.js.map +1 -0
- package/cjs/{topics-8314d425.js → topics-c2c30f09.js} +1 -1
- package/cjs/{topics-8314d425.js.map → topics-c2c30f09.js.map} +1 -1
- package/cjs/{tslib.es6-4a281a05.js → tslib.es6-d7d0a427.js} +1 -1
- package/cjs/{tslib.es6-4a281a05.js.map → tslib.es6-d7d0a427.js.map} +1 -1
- package/cjs/ui/Accordion.js +4 -4
- package/cjs/ui/AccordionGroup.js +2 -2
- package/cjs/ui/AdminMessage.js +3 -3
- package/cjs/ui/Avatar.js +3 -3
- package/cjs/ui/Badge.js +5 -5
- package/cjs/ui/Button.js +4 -4
- package/cjs/ui/ChannelAvatar.js +4 -4
- package/cjs/ui/ChannelPreview.js +12 -12
- package/cjs/ui/ChatHeader.js +8 -8
- package/cjs/ui/Checkbox.js +1 -1
- package/cjs/ui/ConnectionStatus.js +5 -5
- package/cjs/ui/ContextMenu.js +5 -5
- package/cjs/ui/DateSeparator.js +4 -4
- package/cjs/ui/Dropdown.js +3 -3
- package/cjs/ui/EmojiReactions.js +7 -7
- package/cjs/ui/FileMessageItemBody.js +6 -6
- package/cjs/ui/FileViewer.js +7 -7
- package/cjs/ui/Icon.js +1 -1
- package/cjs/ui/IconButton.js +1 -1
- package/cjs/ui/ImageRenderer.js +1 -1
- package/cjs/ui/Input.js +3 -3
- package/cjs/ui/Label.js +3 -3
- package/cjs/ui/LinkLabel.js +3 -3
- package/cjs/ui/Loader.js +1 -1
- package/cjs/ui/MentionUserLabel.js +25 -0
- package/cjs/ui/MentionUserLabel.js.map +1 -0
- package/cjs/ui/MessageContent.js +25 -62
- package/cjs/ui/MessageContent.js.map +1 -1
- package/cjs/ui/MessageInput.js +4900 -84
- package/cjs/ui/MessageInput.js.map +1 -1
- package/cjs/ui/MessageItemMenu.js +7 -7
- package/cjs/ui/MessageItemReactionMenu.js +5 -5
- package/cjs/ui/MessageSearchFileItem.js +10 -10
- package/cjs/ui/MessageSearchItem.js +10 -10
- package/cjs/ui/MessageStatus.js +66 -0
- package/cjs/ui/MessageStatus.js.map +1 -0
- package/cjs/ui/Modal.js +8 -8
- package/cjs/ui/MutedAvatarOverlay.js +1 -1
- package/cjs/ui/OGMessageItemBody.js +38 -28
- package/cjs/ui/OGMessageItemBody.js.map +1 -1
- package/cjs/ui/OpenChannelAdminMessage.js +4 -4
- package/cjs/ui/OpenChannelAvatar.js +7 -7
- package/cjs/ui/OpenchannelConversationHeader.js +7 -7
- package/cjs/ui/OpenchannelFileMessage.js +14 -14
- package/cjs/ui/OpenchannelOGMessage.js +14 -14
- package/cjs/ui/OpenchannelThumbnailMessage.js +13 -13
- package/cjs/ui/OpenchannelUserMessage.js +14 -14
- package/cjs/ui/PlaceHolder.js +6 -6
- package/cjs/ui/QuoteMessage.js +7 -7
- package/cjs/ui/QuoteMessageInput.js +7 -7
- package/cjs/ui/QuoteMessageInput.js.map +1 -1
- package/cjs/ui/ReactionBadge.js +3 -3
- package/cjs/ui/ReactionButton.js +1 -1
- package/cjs/ui/SortByRow.js +1 -1
- package/cjs/ui/TextButton.js +2 -2
- package/cjs/ui/TextMessageItemBody.js +36 -14
- package/cjs/ui/TextMessageItemBody.js.map +1 -1
- package/cjs/ui/ThumbnailMessageItemBody.js +3 -3
- package/cjs/ui/Tooltip.js +3 -3
- package/cjs/ui/TooltipWrapper.js +1 -1
- package/cjs/ui/UnknownMessageItemBody.js +7 -7
- package/cjs/ui/UserListItem.js +11 -11
- package/cjs/ui/UserProfile.js +9 -9
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/{utils-cbd3ed99.js → utils-3e73a146.js} +1 -1
- package/cjs/{utils-cbd3ed99.js.map → utils-3e73a146.js.map} +1 -1
- package/cjs/{utils-66b3f4ec.js → utils-b95288a8.js} +1 -1
- package/cjs/{utils-66b3f4ec.js.map → utils-b95288a8.js.map} +1 -1
- package/cjs/{utils-3b0815dc.js → utils-c55d20dc.js} +1 -1
- package/cjs/{utils-3b0815dc.js.map → utils-c55d20dc.js.map} +1 -1
- package/cjs/{uuid-1d5ec8b2.js → uuid-ba6cc3c5.js} +1 -1
- package/cjs/{uuid-1d5ec8b2.js.map → uuid-ba6cc3c5.js.map} +1 -1
- package/cjs/withSendBird.js +1 -1
- package/{color-ee3fc5ee.js → color-2863fbbe.js} +1 -1
- package/{color-ee3fc5ee.js.map → color-2863fbbe.js.map} +1 -1
- package/{compareIds-808956f2.js → compareIds-48d87cc5.js} +1 -1
- package/{compareIds-808956f2.js.map → compareIds-48d87cc5.js.map} +1 -1
- package/const-09c22c50.js +18 -0
- package/const-09c22c50.js.map +1 -0
- package/const-3f63e129.js +8 -0
- package/const-3f63e129.js.map +1 -0
- package/{context-98ce535c.js → context-7877e5bb.js} +2 -2
- package/{context-98ce535c.js.map → context-7877e5bb.js.map} +1 -1
- package/dist/index.css +165 -59
- package/dist/index.css.map +1 -1
- package/{index-942c85a6.js → index-1fd114b0.js} +1 -1
- package/{index-942c85a6.js.map → index-1fd114b0.js.map} +1 -1
- package/{index-e818a8a3.js → index-303a3b6e.js} +4 -4
- package/{index-e818a8a3.js.map → index-303a3b6e.js.map} +1 -1
- package/{index-6ebf7894.js → index-353f13f3.js} +1 -1
- package/{index-6ebf7894.js.map → index-353f13f3.js.map} +1 -1
- package/{index-5c2c81bc.js → index-358226c7.js} +6 -6
- package/{index-5c2c81bc.js.map → index-358226c7.js.map} +1 -1
- package/{index-acebc2ff.js → index-41a6f4f2.js} +3 -3
- package/{index-acebc2ff.js.map → index-41a6f4f2.js.map} +1 -1
- package/index-4889e530.js +48 -0
- package/index-4889e530.js.map +1 -0
- package/{index-770d7112.js → index-4a59a866.js} +2 -2
- package/{index-770d7112.js.map → index-4a59a866.js.map} +1 -1
- package/{index-1718324d.js → index-86b0a341.js} +4 -4
- package/{index-1718324d.js.map → index-86b0a341.js.map} +1 -1
- package/{index-7a51bd16.js → index-a611bd38.js} +3 -3
- package/{index-7a51bd16.js.map → index-a611bd38.js.map} +1 -1
- package/{index-8c72a94a.js → index-ad4c9e58.js} +83 -3
- package/index-ad4c9e58.js.map +1 -0
- package/{index-cd21929d.js → index-f119413c.js} +2 -2
- package/{index-cd21929d.js.map → index-f119413c.js.map} +1 -1
- package/index.css +165 -59
- package/index.css.map +1 -1
- package/index.d.ts +237 -209
- package/index.js +38 -31
- package/index.js.map +1 -1
- package/{openChannelUtils-56a372e7.js → openChannelUtils-024b797a.js} +1 -1
- package/{openChannelUtils-56a372e7.js.map → openChannelUtils-024b797a.js.map} +1 -1
- package/package.json +2 -2
- package/sendBirdSelectors.js +1 -1
- package/{stringSet-4f6eaa60.js → stringSet-91746bf1.js} +4 -2
- package/stringSet-91746bf1.js.map +1 -0
- package/{topics-9442035c.js → topics-17d99dd6.js} +1 -1
- package/{topics-9442035c.js.map → topics-17d99dd6.js.map} +1 -1
- package/{tslib.es6-e3c44017.js → tslib.es6-83aa13f5.js} +1 -1
- package/{tslib.es6-e3c44017.js.map → tslib.es6-83aa13f5.js.map} +1 -1
- package/ui/Accordion.js +4 -4
- package/ui/AccordionGroup.js +2 -2
- package/ui/AdminMessage.js +3 -3
- package/ui/Avatar.js +3 -3
- package/ui/Badge.js +5 -5
- package/ui/Button.js +4 -4
- package/ui/ChannelAvatar.js +4 -4
- package/ui/ChannelPreview.js +12 -12
- package/ui/ChatHeader.js +8 -8
- package/ui/Checkbox.js +1 -1
- package/ui/ConnectionStatus.js +5 -5
- package/ui/ContextMenu.js +5 -5
- package/ui/DateSeparator.js +4 -4
- package/ui/Dropdown.js +3 -3
- package/ui/EmojiReactions.js +7 -7
- package/ui/FileMessageItemBody.js +6 -6
- package/ui/FileViewer.js +7 -7
- package/ui/Icon.js +1 -1
- package/ui/IconButton.js +1 -1
- package/ui/ImageRenderer.js +1 -1
- package/ui/Input.js +3 -3
- package/ui/Label.js +3 -3
- package/ui/LinkLabel.js +3 -3
- package/ui/Loader.js +1 -1
- package/ui/MentionUserLabel.js +19 -0
- package/ui/MentionUserLabel.js.map +1 -0
- package/ui/MessageContent.js +25 -62
- package/ui/MessageContent.js.map +1 -1
- package/ui/MessageInput.js +4900 -85
- package/ui/MessageInput.js.map +1 -1
- package/ui/MessageItemMenu.js +7 -7
- package/ui/MessageItemReactionMenu.js +5 -5
- package/ui/MessageSearchFileItem.js +10 -10
- package/ui/MessageSearchItem.js +10 -10
- package/ui/MessageStatus.js +57 -0
- package/ui/MessageStatus.js.map +1 -0
- package/ui/Modal.js +8 -8
- package/ui/MutedAvatarOverlay.js +1 -1
- package/ui/OGMessageItemBody.js +38 -28
- package/ui/OGMessageItemBody.js.map +1 -1
- package/ui/OpenChannelAdminMessage.js +4 -4
- package/ui/OpenChannelAvatar.js +7 -7
- package/ui/OpenchannelConversationHeader.js +7 -7
- package/ui/OpenchannelFileMessage.js +14 -14
- package/ui/OpenchannelOGMessage.js +14 -14
- package/ui/OpenchannelThumbnailMessage.js +13 -13
- package/ui/OpenchannelUserMessage.js +14 -14
- package/ui/PlaceHolder.js +6 -6
- package/ui/QuoteMessage.js +7 -7
- package/ui/QuoteMessageInput.js +7 -7
- package/ui/QuoteMessageInput.js.map +1 -1
- package/ui/ReactionBadge.js +3 -3
- package/ui/ReactionButton.js +1 -1
- package/ui/SortByRow.js +1 -1
- package/ui/TextButton.js +2 -2
- package/ui/TextMessageItemBody.js +37 -15
- package/ui/TextMessageItemBody.js.map +1 -1
- package/ui/ThumbnailMessageItemBody.js +3 -3
- package/ui/Tooltip.js +3 -3
- package/ui/TooltipWrapper.js +1 -1
- package/ui/UnknownMessageItemBody.js +7 -7
- package/ui/UserListItem.js +11 -11
- package/ui/UserProfile.js +9 -9
- package/useSendbirdStateContext.js +1 -1
- package/{utils-af1b9829.js → utils-5395ff17.js} +1 -1
- package/{utils-af1b9829.js.map → utils-5395ff17.js.map} +1 -1
- package/{utils-08c4dbdc.js → utils-7d39b941.js} +1 -1
- package/{utils-08c4dbdc.js.map → utils-7d39b941.js.map} +1 -1
- package/{utils-c393e880.js → utils-9ef11656.js} +1 -1
- package/{utils-c393e880.js.map → utils-9ef11656.js.map} +1 -1
- package/{uuid-b0c93400.js → uuid-6d14d007.js} +1 -1
- package/{uuid-b0c93400.js.map → uuid-6d14d007.js.map} +1 -1
- package/withSendBird.js +1 -1
- package/ChannelProvider-459e463f.js.map +0 -1
- package/cjs/ChannelProvider-f1fb0108.js.map +0 -1
- package/cjs/index-d4880236.js.map +0 -1
- package/cjs/stringSet-aa544ce5.js.map +0 -1
- package/index-8c72a94a.js.map +0 -1
- package/stringSet-4f6eaa60.js.map +0 -1
package/App.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as _slicedToArray } from './_rollupPluginBabelHelpers-
|
|
1
|
+
import { a as _slicedToArray } from './_rollupPluginBabelHelpers-8e4fae98.js';
|
|
2
2
|
import React__default, { useState } from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import Sendbird from './SendbirdProvider.js';
|
|
@@ -8,22 +8,22 @@ import ChannelSettings from './ChannelSettings.js';
|
|
|
8
8
|
import MessageSearchPannel from './MessageSearch.js';
|
|
9
9
|
import './withSendBird.js';
|
|
10
10
|
import 'sendbird';
|
|
11
|
-
import './actionTypes-
|
|
12
|
-
import './index-
|
|
13
|
-
import './tslib.es6-
|
|
11
|
+
import './actionTypes-189daf51.js';
|
|
12
|
+
import './index-ad4c9e58.js';
|
|
13
|
+
import './tslib.es6-83aa13f5.js';
|
|
14
14
|
import 'css-vars-ponyfill';
|
|
15
|
-
import './uuid-
|
|
16
|
-
import './LocalizationContext-
|
|
17
|
-
import './stringSet-
|
|
18
|
-
import './index-
|
|
19
|
-
import './ChannelListProvider-
|
|
20
|
-
import './topics-
|
|
21
|
-
import './utils-
|
|
22
|
-
import './UserProfileContext-
|
|
15
|
+
import './uuid-6d14d007.js';
|
|
16
|
+
import './LocalizationContext-b021af8f.js';
|
|
17
|
+
import './stringSet-91746bf1.js';
|
|
18
|
+
import './index-353f13f3.js';
|
|
19
|
+
import './ChannelListProvider-7c351968.js';
|
|
20
|
+
import './topics-17d99dd6.js';
|
|
21
|
+
import './utils-9ef11656.js';
|
|
22
|
+
import './UserProfileContext-daa99f9b.js';
|
|
23
23
|
import './useSendbirdStateContext.js';
|
|
24
24
|
import './ChannelList/components/ChannelListUI.js';
|
|
25
25
|
import './ChannelList/components/ChannelListHeader.js';
|
|
26
|
-
import './index-
|
|
26
|
+
import './index-a611bd38.js';
|
|
27
27
|
import './ui/IconButton.js';
|
|
28
28
|
import './ui/Avatar.js';
|
|
29
29
|
import './ui/ImageRenderer.js';
|
|
@@ -31,13 +31,13 @@ import './ui/Icon.js';
|
|
|
31
31
|
import './ChannelList/components/AddChannel.js';
|
|
32
32
|
import './CreateChannel.js';
|
|
33
33
|
import './CreateChannel/components/CreateChannelUI.js';
|
|
34
|
-
import './CreateChannelProvider-
|
|
34
|
+
import './CreateChannelProvider-ddfd92e6.js';
|
|
35
35
|
import './sendBirdSelectors.js';
|
|
36
36
|
import './CreateChannel/components/InviteMembers.js';
|
|
37
37
|
import './ui/Modal.js';
|
|
38
38
|
import 'react-dom';
|
|
39
|
-
import './index-
|
|
40
|
-
import './index-
|
|
39
|
+
import './index-1fd114b0.js';
|
|
40
|
+
import './index-41a6f4f2.js';
|
|
41
41
|
import './ui/UserListItem.js';
|
|
42
42
|
import './ui/MutedAvatarOverlay.js';
|
|
43
43
|
import './ui/Checkbox.js';
|
|
@@ -47,30 +47,36 @@ import './ui/SortByRow.js';
|
|
|
47
47
|
import './CreateChannel/components/SelectChannelType.js';
|
|
48
48
|
import './ChannelList/components/ChannelPreview.js';
|
|
49
49
|
import './ui/ChannelAvatar.js';
|
|
50
|
-
import './utils-
|
|
50
|
+
import './utils-7d39b941.js';
|
|
51
51
|
import './ui/Badge.js';
|
|
52
|
-
import './index-
|
|
53
|
-
import './index-
|
|
54
|
-
import './index-
|
|
52
|
+
import './index-86b0a341.js';
|
|
53
|
+
import './index-f119413c.js';
|
|
54
|
+
import './index-4a59a866.js';
|
|
55
|
+
import './ui/MentionUserLabel.js';
|
|
55
56
|
import './ChannelList/components/ChannelPreviewAction.js';
|
|
56
57
|
import './EditUserProfile.js';
|
|
57
|
-
import './index-
|
|
58
|
+
import './index-358226c7.js';
|
|
58
59
|
import './ui/Input.js';
|
|
59
60
|
import './ui/TextButton.js';
|
|
60
|
-
import './color-
|
|
61
|
-
import './index-
|
|
61
|
+
import './color-2863fbbe.js';
|
|
62
|
+
import './index-303a3b6e.js';
|
|
62
63
|
import './ui/Loader.js';
|
|
63
|
-
import './ChannelProvider-
|
|
64
|
-
import './compareIds-
|
|
64
|
+
import './ChannelProvider-d5126903.js';
|
|
65
|
+
import './compareIds-48d87cc5.js';
|
|
66
|
+
import './const-3f63e129.js';
|
|
65
67
|
import './ui/ReactionButton.js';
|
|
66
68
|
import './Channel/components/ChannelUI.js';
|
|
67
69
|
import './ui/ConnectionStatus.js';
|
|
68
70
|
import './Channel/components/ChannelHeader.js';
|
|
69
71
|
import './Channel/components/MessageList.js';
|
|
70
72
|
import './Channel/components/Message.js';
|
|
73
|
+
import './Channel/components/SuggestedMentionList.js';
|
|
74
|
+
import './const-09c22c50.js';
|
|
71
75
|
import './ui/DateSeparator.js';
|
|
72
76
|
import './ui/MessageInput.js';
|
|
77
|
+
import 'stream';
|
|
73
78
|
import './ui/MessageContent.js';
|
|
79
|
+
import './ui/MessageStatus.js';
|
|
74
80
|
import './ui/MessageItemMenu.js';
|
|
75
81
|
import './ui/MessageItemReactionMenu.js';
|
|
76
82
|
import './ui/EmojiReactions.js';
|
|
@@ -79,10 +85,11 @@ import './ui/TooltipWrapper.js';
|
|
|
79
85
|
import './ui/ReactionBadge.js';
|
|
80
86
|
import './ui/AdminMessage.js';
|
|
81
87
|
import './ui/TextMessageItemBody.js';
|
|
88
|
+
import './index-4889e530.js';
|
|
89
|
+
import './ui/LinkLabel.js';
|
|
82
90
|
import './ui/FileMessageItemBody.js';
|
|
83
91
|
import './ui/ThumbnailMessageItemBody.js';
|
|
84
92
|
import './ui/OGMessageItemBody.js';
|
|
85
|
-
import './ui/LinkLabel.js';
|
|
86
93
|
import './ui/UnknownMessageItemBody.js';
|
|
87
94
|
import './ui/QuoteMessage.js';
|
|
88
95
|
import './Channel/components/FileViewer.js';
|
|
@@ -99,9 +106,9 @@ import './ChannelSettings/components/EditDetailsModal.js';
|
|
|
99
106
|
import './ChannelSettings/components/AdminPanel.js';
|
|
100
107
|
import './ui/Accordion.js';
|
|
101
108
|
import './ui/AccordionGroup.js';
|
|
102
|
-
import './context-
|
|
109
|
+
import './context-7877e5bb.js';
|
|
103
110
|
import './ChannelSettings/components/UserListItem.js';
|
|
104
|
-
import './MemberList-
|
|
111
|
+
import './MemberList-323e7517.js';
|
|
105
112
|
import './ChannelSettings/components/LeaveChannel.js';
|
|
106
113
|
import './ChannelSettings/components/UserPanel.js';
|
|
107
114
|
import './MessageSearch/components/MessageSearchUI.js';
|
|
@@ -121,6 +128,7 @@ function App(props) {
|
|
|
121
128
|
_props$config = props.config,
|
|
122
129
|
config = _props$config === void 0 ? {} : _props$config,
|
|
123
130
|
useReaction = props.useReaction,
|
|
131
|
+
isMentionEnabled = props.isMentionEnabled,
|
|
124
132
|
replyType = props.replyType,
|
|
125
133
|
useMessageGrouping = props.useMessageGrouping,
|
|
126
134
|
colorSet = props.colorSet,
|
|
@@ -173,7 +181,8 @@ function App(props) {
|
|
|
173
181
|
disableUserProfile: disableUserProfile,
|
|
174
182
|
renderUserProfile: renderUserProfile,
|
|
175
183
|
imageCompression: imageCompression,
|
|
176
|
-
useReaction: useReaction
|
|
184
|
+
useReaction: useReaction,
|
|
185
|
+
isMentionEnabled: isMentionEnabled
|
|
177
186
|
}, /*#__PURE__*/React__default.createElement("div", {
|
|
178
187
|
className: "sendbird-app__wrap"
|
|
179
188
|
}, /*#__PURE__*/React__default.createElement("div", {
|
|
@@ -266,7 +275,8 @@ App.propTypes = {
|
|
|
266
275
|
resizingWidth: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
|
|
267
276
|
resizingHeight: PropTypes.oneOfType([PropTypes.number, PropTypes.string])
|
|
268
277
|
}),
|
|
269
|
-
disableAutoSelect: PropTypes.bool
|
|
278
|
+
disableAutoSelect: PropTypes.bool,
|
|
279
|
+
isMentionEnabled: PropTypes.bool
|
|
270
280
|
};
|
|
271
281
|
App.defaultProps = {
|
|
272
282
|
accessToken: '',
|
|
@@ -282,6 +292,7 @@ App.defaultProps = {
|
|
|
282
292
|
renderUserProfile: null,
|
|
283
293
|
config: {},
|
|
284
294
|
useReaction: true,
|
|
295
|
+
isMentionEnabled: false,
|
|
285
296
|
replyType: 'NONE',
|
|
286
297
|
useMessageGrouping: true,
|
|
287
298
|
stringSet: null,
|
package/App.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.js","sources":["../src/smart-components/App/index.jsx"],"sourcesContent":["/**\n * This is a drop in Chat solution\n * Can also be used as an example for creating\n * default chat apps\n */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Sendbird from '../../lib/Sendbird';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearchPannel from '../MessageSearch';\n\nimport './index.scss';\n\nexport default function App(props) {\n const {\n appId,\n userId,\n accessToken,\n theme,\n userListQuery,\n nickname,\n profileUrl,\n dateLocale,\n config = {},\n useReaction,\n replyType,\n useMessageGrouping,\n colorSet,\n stringSet,\n allowProfileEdit,\n disableUserProfile,\n renderUserProfile,\n showSearchIcon,\n onProfileEditSuccess,\n imageCompression,\n disableAutoSelect,\n } = props;\n const [currentChannelUrl, setCurrentChannelUrl] = useState(null);\n const [showSettings, setShowSettings] = useState(false);\n const [showSearch, setShowSearch] = useState(false);\n const [highlightedMessage, setHighlightedMessage] = useState(null);\n const [startingPoint, setStartingPoint] = useState(null);\n\n return (\n <Sendbird\n stringSet={stringSet}\n appId={appId}\n userId={userId}\n accessToken={accessToken}\n theme={theme}\n nickname={nickname}\n profileUrl={profileUrl}\n dateLocale={dateLocale}\n userListQuery={userListQuery}\n config={config}\n colorSet={colorSet}\n disableUserProfile={disableUserProfile}\n renderUserProfile={renderUserProfile}\n imageCompression={imageCompression}\n useReaction={useReaction}\n >\n <div className=\"sendbird-app__wrap\">\n <div className=\"sendbird-app__channellist-wrap\">\n <ChannelList\n allowProfileEdit={allowProfileEdit}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n onChannelSelect={(channel) => {\n setStartingPoint(null);\n setHighlightedMessage(null);\n if (channel && channel.url) {\n setCurrentChannelUrl(channel.url);\n } else {\n setCurrentChannelUrl('');\n }\n }}\n />\n </div>\n <div\n className={`\n ${showSettings ? 'sendbird-app__conversation--settings-open' : ''}\n ${showSearch ? 'sendbird-app__conversation--search-open' : ''}\n sendbird-app__conversation-wrap\n `}\n >\n <Channel\n channelUrl={currentChannelUrl}\n onChatHeaderActionClick={() => {\n setShowSearch(false);\n setShowSettings(!showSettings);\n }}\n onSearchClick={() => {\n setShowSettings(false);\n setShowSearch(!showSearch);\n }}\n showSearchIcon={showSearchIcon}\n startingPoint={startingPoint}\n highlightedMessage={highlightedMessage}\n useReaction={useReaction}\n replyType={replyType}\n useMessageGrouping={useMessageGrouping}\n />\n </div>\n {showSettings && (\n <div className=\"sendbird-app__settingspanel-wrap\">\n <ChannelSettings\n className=\"sendbird-channel-settings\"\n channelUrl={currentChannelUrl}\n onCloseClick={() => {\n setShowSettings(false);\n }}\n />\n </div>\n )}\n {showSearch && (\n <div className=\"sendbird-app__searchpanel-wrap\">\n <MessageSearchPannel\n channelUrl={currentChannelUrl}\n onResultClick={(message) => {\n if (message.messageId === highlightedMessage) {\n setHighlightedMessage(null);\n setTimeout(() => {\n setHighlightedMessage(message.messageId);\n });\n } else {\n setStartingPoint(message.createdAt);\n setHighlightedMessage(message.messageId);\n }\n }}\n onCloseClick={() => {\n setShowSearch(false);\n }}\n />\n </div>\n )}\n </div>\n </Sendbird>\n );\n}\n\nApp.propTypes = {\n appId: PropTypes.string.isRequired,\n userId: PropTypes.string.isRequired,\n accessToken: PropTypes.string,\n theme: PropTypes.string,\n userListQuery: PropTypes.func,\n nickname: PropTypes.string,\n profileUrl: PropTypes.string,\n allowProfileEdit: PropTypes.bool,\n disableUserProfile: PropTypes.bool,\n renderUserProfile: PropTypes.func,\n onProfileEditSuccess: PropTypes.func,\n dateLocale: PropTypes.shape({}),\n config: PropTypes.shape({\n // None Error Warning Info 'All/Debug'\n logLevel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n useReaction: PropTypes.bool,\n replyType: PropTypes.oneOf(['NONE', 'QUOTE_REPLY', 'THREAD']),\n showSearchIcon: PropTypes.bool,\n useMessageGrouping: PropTypes.bool,\n stringSet: PropTypes.objectOf(PropTypes.string),\n colorSet: PropTypes.objectOf(PropTypes.string),\n imageCompression: PropTypes.shape({\n compressionRate: PropTypes.number,\n resizingWidth: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n resizingHeight: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n disableAutoSelect: PropTypes.bool,\n};\n\nApp.defaultProps = {\n accessToken: '',\n theme: 'light',\n nickname: '',\n profileUrl: '',\n userListQuery: null,\n dateLocale: null,\n allowProfileEdit: false,\n onProfileEditSuccess: null,\n disableUserProfile: false,\n showSearchIcon: false,\n renderUserProfile: null,\n config: {},\n useReaction: true,\n replyType: 'NONE',\n useMessageGrouping: true,\n stringSet: null,\n colorSet: null,\n imageCompression: {},\n disableAutoSelect: false,\n};\n"],"names":["App","props","appId","userId","accessToken","theme","userListQuery","nickname","profileUrl","dateLocale","config","useReaction","replyType","useMessageGrouping","colorSet","stringSet","allowProfileEdit","disableUserProfile","renderUserProfile","showSearchIcon","onProfileEditSuccess","imageCompression","disableAutoSelect","useState","currentChannelUrl","setCurrentChannelUrl","showSettings","setShowSettings","showSearch","setShowSearch","highlightedMessage","setHighlightedMessage","startingPoint","setStartingPoint","React","channel","url","message","messageId","setTimeout","createdAt","propTypes","PropTypes","string","isRequired","func","bool","shape","logLevel","oneOfType","arrayOf","oneOf","objectOf","compressionRate","number","resizingWidth","resizingHeight","defaultProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"App.js","sources":["../src/smart-components/App/index.jsx"],"sourcesContent":["/**\n * This is a drop in Chat solution\n * Can also be used as an example for creating\n * default chat apps\n */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Sendbird from '../../lib/Sendbird';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearchPannel from '../MessageSearch';\n\nimport './index.scss';\n\nexport default function App(props) {\n const {\n appId,\n userId,\n accessToken,\n theme,\n userListQuery,\n nickname,\n profileUrl,\n dateLocale,\n config = {},\n useReaction,\n isMentionEnabled,\n replyType,\n useMessageGrouping,\n colorSet,\n stringSet,\n allowProfileEdit,\n disableUserProfile,\n renderUserProfile,\n showSearchIcon,\n onProfileEditSuccess,\n imageCompression,\n disableAutoSelect,\n } = props;\n const [currentChannelUrl, setCurrentChannelUrl] = useState(null);\n const [showSettings, setShowSettings] = useState(false);\n const [showSearch, setShowSearch] = useState(false);\n const [highlightedMessage, setHighlightedMessage] = useState(null);\n const [startingPoint, setStartingPoint] = useState(null);\n\n return (\n <Sendbird\n stringSet={stringSet}\n appId={appId}\n userId={userId}\n accessToken={accessToken}\n theme={theme}\n nickname={nickname}\n profileUrl={profileUrl}\n dateLocale={dateLocale}\n userListQuery={userListQuery}\n config={config}\n colorSet={colorSet}\n disableUserProfile={disableUserProfile}\n renderUserProfile={renderUserProfile}\n imageCompression={imageCompression}\n useReaction={useReaction}\n isMentionEnabled={isMentionEnabled}\n >\n <div className=\"sendbird-app__wrap\">\n <div className=\"sendbird-app__channellist-wrap\">\n <ChannelList\n allowProfileEdit={allowProfileEdit}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n onChannelSelect={(channel) => {\n setStartingPoint(null);\n setHighlightedMessage(null);\n if (channel && channel.url) {\n setCurrentChannelUrl(channel.url);\n } else {\n setCurrentChannelUrl('');\n }\n }}\n />\n </div>\n <div\n className={`\n ${showSettings ? 'sendbird-app__conversation--settings-open' : ''}\n ${showSearch ? 'sendbird-app__conversation--search-open' : ''}\n sendbird-app__conversation-wrap\n `}\n >\n <Channel\n channelUrl={currentChannelUrl}\n onChatHeaderActionClick={() => {\n setShowSearch(false);\n setShowSettings(!showSettings);\n }}\n onSearchClick={() => {\n setShowSettings(false);\n setShowSearch(!showSearch);\n }}\n showSearchIcon={showSearchIcon}\n startingPoint={startingPoint}\n highlightedMessage={highlightedMessage}\n useReaction={useReaction}\n replyType={replyType}\n useMessageGrouping={useMessageGrouping}\n />\n </div>\n {showSettings && (\n <div className=\"sendbird-app__settingspanel-wrap\">\n <ChannelSettings\n className=\"sendbird-channel-settings\"\n channelUrl={currentChannelUrl}\n onCloseClick={() => {\n setShowSettings(false);\n }}\n />\n </div>\n )}\n {showSearch && (\n <div className=\"sendbird-app__searchpanel-wrap\">\n <MessageSearchPannel\n channelUrl={currentChannelUrl}\n onResultClick={(message) => {\n if (message.messageId === highlightedMessage) {\n setHighlightedMessage(null);\n setTimeout(() => {\n setHighlightedMessage(message.messageId);\n });\n } else {\n setStartingPoint(message.createdAt);\n setHighlightedMessage(message.messageId);\n }\n }}\n onCloseClick={() => {\n setShowSearch(false);\n }}\n />\n </div>\n )}\n </div>\n </Sendbird>\n );\n}\n\nApp.propTypes = {\n appId: PropTypes.string.isRequired,\n userId: PropTypes.string.isRequired,\n accessToken: PropTypes.string,\n theme: PropTypes.string,\n userListQuery: PropTypes.func,\n nickname: PropTypes.string,\n profileUrl: PropTypes.string,\n allowProfileEdit: PropTypes.bool,\n disableUserProfile: PropTypes.bool,\n renderUserProfile: PropTypes.func,\n onProfileEditSuccess: PropTypes.func,\n dateLocale: PropTypes.shape({}),\n config: PropTypes.shape({\n // None Error Warning Info 'All/Debug'\n logLevel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n useReaction: PropTypes.bool,\n replyType: PropTypes.oneOf(['NONE', 'QUOTE_REPLY', 'THREAD']),\n showSearchIcon: PropTypes.bool,\n useMessageGrouping: PropTypes.bool,\n stringSet: PropTypes.objectOf(PropTypes.string),\n colorSet: PropTypes.objectOf(PropTypes.string),\n imageCompression: PropTypes.shape({\n compressionRate: PropTypes.number,\n resizingWidth: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n resizingHeight: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n disableAutoSelect: PropTypes.bool,\n isMentionEnabled: PropTypes.bool,\n};\n\nApp.defaultProps = {\n accessToken: '',\n theme: 'light',\n nickname: '',\n profileUrl: '',\n userListQuery: null,\n dateLocale: null,\n allowProfileEdit: false,\n onProfileEditSuccess: null,\n disableUserProfile: false,\n showSearchIcon: false,\n renderUserProfile: null,\n config: {},\n useReaction: true,\n isMentionEnabled: false,\n replyType: 'NONE',\n useMessageGrouping: true,\n stringSet: null,\n colorSet: null,\n imageCompression: {},\n disableAutoSelect: false,\n};\n"],"names":["App","props","appId","userId","accessToken","theme","userListQuery","nickname","profileUrl","dateLocale","config","useReaction","isMentionEnabled","replyType","useMessageGrouping","colorSet","stringSet","allowProfileEdit","disableUserProfile","renderUserProfile","showSearchIcon","onProfileEditSuccess","imageCompression","disableAutoSelect","useState","currentChannelUrl","setCurrentChannelUrl","showSettings","setShowSettings","showSearch","setShowSearch","highlightedMessage","setHighlightedMessage","startingPoint","setStartingPoint","React","channel","url","message","messageId","setTimeout","createdAt","propTypes","PropTypes","string","isRequired","func","bool","shape","logLevel","oneOfType","arrayOf","oneOf","objectOf","compressionRate","number","resizingWidth","resizingHeight","defaultProps"],"mappings":"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"}
|
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# Changelog - v3
|
|
2
|
+
|
|
3
|
+
## [3.0.0-beta.2] (April 29 2022)
|
|
4
|
+
|
|
5
|
+
Feature:
|
|
6
|
+
* Mention
|
|
7
|
+
* Add isMentionEnabled props to the <App /> and <SendbirdProvider />
|
|
8
|
+
* Add userMention into the config props of the <App /> andd <SendbirdProvider />
|
|
9
|
+
* <SendbirdProvider config={{ userMention: { maxMentionCount: 10, maxSuggestionCount: 15 } }} />
|
|
10
|
+
* maxMentionCount: A maximum count that you can mention in the message input
|
|
11
|
+
* maxSuggestionCount: A maximum user count that the SuggestedMentionList suggests for user mention
|
|
12
|
+
* Create SuggestedMentionList component under the Channel smart component
|
|
13
|
+
* Create SuggestedUserMentionItem component
|
|
14
|
+
* Create MentionUserLabel ui component
|
|
15
|
+
* Add string set
|
|
16
|
+
* MENTION_NAME__NO_NAME: '(No name)'
|
|
17
|
+
* MENTION_COUNT__OVER_LIMIT: 'You can mention up to %d times per message.'
|
|
18
|
+
Fix:
|
|
19
|
+
* Type definition file fix for TS project
|
|
20
|
+
For typescript projects, add `node_modules/@sendbird/uikit-react/index.d.ts`
|
|
21
|
+
to your `include` section in tsconfig file to get type definitions
|
|
22
|
+
|
|
23
|
+
* Move font import to top of CSS file
|
|
24
|
+
Some bundlers such as parcel throw error:
|
|
25
|
+
`@import rules must precede all rules aside from @charset and @layer statements`
|
|
26
|
+
Resolve this issue by moving the line to the top
|
|
27
|
+
|
|
28
|
+
## [3.0.0-beta] (Apr 12 2022)
|
|
29
|
+
|
|
30
|
+
This is the official beta for Sendbird UIKit for React version 3!
|
|
31
|
+
|
|
32
|
+
TLDR -> We split the old `smart-components` into modules which contian context and UI. Context contain logic and UI Components handle UI
|
|
33
|
+
|
|
34
|
+
**[Check out the v2 to v3 migration guide for details](MIGRATION_v2-to-v3.md)**
|
|
35
|
+
|
|
36
|
+
Changelog:
|
|
37
|
+
* Package should be installed using `@sendbird/uikit-react`
|
|
38
|
+
* Restructure smart-components into modules that contain a context and related UI components
|
|
39
|
+
* Export these context and UI components to allow fine-grain customization
|
|
40
|
+
* Recommend to use these context elements `useXXXXX()` and react function components to make custom components
|
|
41
|
+
* All generic UI components are available as exports
|
|
42
|
+
* Restrcuture export paths to allow better tree-shaking
|
|
43
|
+
* Example:
|
|
44
|
+
```
|
|
45
|
+
import { useChannel } from '@sendbird/uikit-react/Channel/context';
|
|
46
|
+
import ChannelUI from '@sendbird/uikit-react/Channel/components/ChannelUI';
|
|
47
|
+
```
|
|
48
|
+
* We keep older export patterns to make migration easier
|
|
49
|
+
* Retained modules - ChannelList, Channel, ChannelSettings, OpenChannel, OpenChannelSettings, MessageSearch
|
|
50
|
+
* New modules(not including context and ui of above) - CreateChannel, EditUserProfile, ui
|
|
@@ -1,26 +1,27 @@
|
|
|
1
1
|
import React__default, { useContext } from 'react';
|
|
2
|
-
import { c as LabelStringSet, L as Label, a as LabelTypography, b as LabelColors } from '../../index-
|
|
2
|
+
import { c as LabelStringSet, L as Label, a as LabelTypography, b as LabelColors } from '../../index-a611bd38.js';
|
|
3
3
|
import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
|
|
4
4
|
import IconButton from '../../ui/IconButton.js';
|
|
5
5
|
import ChannelAvatar from '../../ui/ChannelAvatar.js';
|
|
6
|
-
import { a as LocalizationContext } from '../../LocalizationContext-
|
|
6
|
+
import { a as LocalizationContext } from '../../LocalizationContext-b021af8f.js';
|
|
7
7
|
import useSendbirdStateContext from '../../useSendbirdStateContext.js';
|
|
8
|
-
import { u as useChannel } from '../../ChannelProvider-
|
|
9
|
-
import '../../_rollupPluginBabelHelpers-
|
|
8
|
+
import { u as useChannel } from '../../ChannelProvider-d5126903.js';
|
|
9
|
+
import '../../_rollupPluginBabelHelpers-8e4fae98.js';
|
|
10
10
|
import 'prop-types';
|
|
11
|
-
import '../../stringSet-
|
|
11
|
+
import '../../stringSet-91746bf1.js';
|
|
12
12
|
import '../../ui/Avatar.js';
|
|
13
|
-
import '../../tslib.es6-
|
|
13
|
+
import '../../tslib.es6-83aa13f5.js';
|
|
14
14
|
import '../../ui/ImageRenderer.js';
|
|
15
|
-
import '../../uuid-
|
|
16
|
-
import '../../utils-
|
|
17
|
-
import '../../index-
|
|
15
|
+
import '../../uuid-6d14d007.js';
|
|
16
|
+
import '../../utils-7d39b941.js';
|
|
17
|
+
import '../../index-353f13f3.js';
|
|
18
18
|
import '../../withSendBird.js';
|
|
19
|
-
import '../../UserProfileContext-
|
|
20
|
-
import '../../index-
|
|
21
|
-
import '../../topics-
|
|
22
|
-
import '../../index-
|
|
23
|
-
import '../../compareIds-
|
|
19
|
+
import '../../UserProfileContext-daa99f9b.js';
|
|
20
|
+
import '../../index-4a59a866.js';
|
|
21
|
+
import '../../topics-17d99dd6.js';
|
|
22
|
+
import '../../index-ad4c9e58.js';
|
|
23
|
+
import '../../compareIds-48d87cc5.js';
|
|
24
|
+
import '../../const-3f63e129.js';
|
|
24
25
|
import '../../ui/ContextMenu.js';
|
|
25
26
|
import 'react-dom';
|
|
26
27
|
import '../../ui/SortByRow.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChannelHeader.js","sources":["../../../src/smart-components/Channel/components/ChannelHeader/utils.ts","../../../src/smart-components/Channel/components/ChannelHeader/index.tsx"],"sourcesContent":["import SendBird from 'sendbird';\nimport { LabelStringSet } from '../../../../ui/Label';\n\nexport const getChannelTitle = (\n channel: SendBird.GroupChannel,\n currentUserId: string,\n stringSet: { [label: string]: string }\n ): string => {\n const LABEL_STRING_SET: { [label: string]: string } = stringSet || LabelStringSet;\n if (!channel || (!channel.name && !channel.members)) {\n return LABEL_STRING_SET.NO_TITLE;\n }\n if (channel.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n\n if (channel.members.length === 1) {\n return LABEL_STRING_SET.NO_MEMBERS;\n }\n\n return channel.members\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || LABEL_STRING_SET.NO_NAME))\n .join(', ');\n};\n","import './channel-header.scss';\nimport React, { useContext } from 'react';\n\nimport * as utils from './utils';\n\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport IconButton from '../../../../ui/IconButton';\nimport ChannelAvatar from '../../../../ui/ChannelAvatar/index';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannel } from '../../context/ChannelProvider';\n\nconst ChatHeader: React.FC = () => {\n const globalStore = useSendbirdStateContext();\n const userId = globalStore?.config?.userId;\n const theme = globalStore?.config?.theme;\n\n const channelStore = useChannel();\n const {\n currentGroupChannel,\n showSearchIcon,\n onSearchClick,\n onChatHeaderActionClick,\n } = channelStore;\n const subTitle = (currentGroupChannel?.members\n && currentGroupChannel?.members?.length !== 2);\n const isMuted = currentGroupChannel?.myMutedState === \"muted\";\n\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-chat-header\">\n <div className=\"sendbird-chat-header__left\">\n <ChannelAvatar\n theme={theme}\n channel={currentGroupChannel}\n userId={userId}\n height={32}\n width={32}\n />\n <Label\n className=\"sendbird-chat-header__left__title\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {utils.getChannelTitle(currentGroupChannel, userId, stringSet)}\n </Label>\n <Label\n className=\"sendbird-chat-header__left__subtitle\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {subTitle}\n </Label>\n </div>\n <div className=\"sendbird-chat-header__right\">\n {\n ((typeof isMuted === 'string' && isMuted === 'true') || (typeof isMuted === 'boolean' && isMuted))\n && (\n <Icon\n className=\"sendbird-chat-header__right__mute\"\n type={IconTypes.NOTIFICATIONS_OFF_FILLED}\n width=\"24px\"\n height=\"24px\"\n />\n )\n }\n {\n showSearchIcon && (\n <IconButton\n className=\"sendbird-chat-header__right__search\"\n width=\"32px\"\n height=\"32px\"\n onClick={onSearchClick}\n >\n <Icon\n type={IconTypes.SEARCH}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n )\n }\n <IconButton\n className=\"sendbird-chat-header__right__info\"\n width=\"32px\"\n height=\"32px\"\n onClick={onChatHeaderActionClick}\n >\n <Icon\n type={IconTypes.INFO}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n </div>\n </div>\n );\n}\n\nexport default ChatHeader;\n"],"names":["getChannelTitle","channel","currentUserId","stringSet","LABEL_STRING_SET","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","_a","userId","map","nickname","NO_NAME","join","ChatHeader","globalStore","useSendbirdStateContext","config","theme","channelStore","useChannel","currentGroupChannel","showSearchIcon","onSearchClick","onChatHeaderActionClick","subTitle","isMuted","myMutedState","useContext","LocalizationContext","React","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","utils","BODY_1","ONBACKGROUND_2","IconTypes","NOTIFICATIONS_OFF_FILLED","SEARCH","IconColors","PRIMARY","INFO"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ChannelHeader.js","sources":["../../../src/smart-components/Channel/components/ChannelHeader/utils.ts","../../../src/smart-components/Channel/components/ChannelHeader/index.tsx"],"sourcesContent":["import SendBird from 'sendbird';\nimport { LabelStringSet } from '../../../../ui/Label';\n\nexport const getChannelTitle = (\n channel: SendBird.GroupChannel,\n currentUserId: string,\n stringSet: { [label: string]: string }\n ): string => {\n const LABEL_STRING_SET: { [label: string]: string } = stringSet || LabelStringSet;\n if (!channel || (!channel.name && !channel.members)) {\n return LABEL_STRING_SET.NO_TITLE;\n }\n if (channel.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n\n if (channel.members.length === 1) {\n return LABEL_STRING_SET.NO_MEMBERS;\n }\n\n return channel.members\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || LABEL_STRING_SET.NO_NAME))\n .join(', ');\n};\n","import './channel-header.scss';\nimport React, { useContext } from 'react';\n\nimport * as utils from './utils';\n\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport IconButton from '../../../../ui/IconButton';\nimport ChannelAvatar from '../../../../ui/ChannelAvatar/index';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannel } from '../../context/ChannelProvider';\n\nconst ChatHeader: React.FC = () => {\n const globalStore = useSendbirdStateContext();\n const userId = globalStore?.config?.userId;\n const theme = globalStore?.config?.theme;\n\n const channelStore = useChannel();\n const {\n currentGroupChannel,\n showSearchIcon,\n onSearchClick,\n onChatHeaderActionClick,\n } = channelStore;\n const subTitle = (currentGroupChannel?.members\n && currentGroupChannel?.members?.length !== 2);\n const isMuted = currentGroupChannel?.myMutedState === \"muted\";\n\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-chat-header\">\n <div className=\"sendbird-chat-header__left\">\n <ChannelAvatar\n theme={theme}\n channel={currentGroupChannel}\n userId={userId}\n height={32}\n width={32}\n />\n <Label\n className=\"sendbird-chat-header__left__title\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {utils.getChannelTitle(currentGroupChannel, userId, stringSet)}\n </Label>\n <Label\n className=\"sendbird-chat-header__left__subtitle\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {subTitle}\n </Label>\n </div>\n <div className=\"sendbird-chat-header__right\">\n {\n ((typeof isMuted === 'string' && isMuted === 'true') || (typeof isMuted === 'boolean' && isMuted))\n && (\n <Icon\n className=\"sendbird-chat-header__right__mute\"\n type={IconTypes.NOTIFICATIONS_OFF_FILLED}\n width=\"24px\"\n height=\"24px\"\n />\n )\n }\n {\n showSearchIcon && (\n <IconButton\n className=\"sendbird-chat-header__right__search\"\n width=\"32px\"\n height=\"32px\"\n onClick={onSearchClick}\n >\n <Icon\n type={IconTypes.SEARCH}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n )\n }\n <IconButton\n className=\"sendbird-chat-header__right__info\"\n width=\"32px\"\n height=\"32px\"\n onClick={onChatHeaderActionClick}\n >\n <Icon\n type={IconTypes.INFO}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n </div>\n </div>\n );\n}\n\nexport default ChatHeader;\n"],"names":["getChannelTitle","channel","currentUserId","stringSet","LABEL_STRING_SET","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","_a","userId","map","nickname","NO_NAME","join","ChatHeader","globalStore","useSendbirdStateContext","config","theme","channelStore","useChannel","currentGroupChannel","showSearchIcon","onSearchClick","onChatHeaderActionClick","subTitle","isMuted","myMutedState","useContext","LocalizationContext","React","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","utils","BODY_1","ONBACKGROUND_2","IconTypes","NOTIFICATIONS_OFF_FILLED","SEARCH","IconColors","PRIMARY","INFO"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React__default, { useState, useEffect } from 'react';
|
|
2
2
|
import useSendbirdStateContext from '../../useSendbirdStateContext.js';
|
|
3
|
-
import { u as useChannel, M as MARK_AS_READ } from '../../ChannelProvider-
|
|
4
|
-
import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-
|
|
3
|
+
import { u as useChannel, M as MARK_AS_READ } from '../../ChannelProvider-d5126903.js';
|
|
4
|
+
import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-303a3b6e.js';
|
|
5
5
|
import ConnectionStatus from '../../ui/ConnectionStatus.js';
|
|
6
6
|
import ChatHeader from './ChannelHeader.js';
|
|
7
7
|
import MessageList from './MessageList.js';
|
|
@@ -10,39 +10,45 @@ import FrozenNotification from './FrozenNotification.js';
|
|
|
10
10
|
import UnreadCount from './UnreadCount.js';
|
|
11
11
|
import MessageInputWrapper from './MessageInput.js';
|
|
12
12
|
import '../../withSendBird.js';
|
|
13
|
-
import '../../_rollupPluginBabelHelpers-
|
|
14
|
-
import '../../UserProfileContext-
|
|
13
|
+
import '../../_rollupPluginBabelHelpers-8e4fae98.js';
|
|
14
|
+
import '../../UserProfileContext-daa99f9b.js';
|
|
15
15
|
import 'prop-types';
|
|
16
|
-
import '../../index-
|
|
17
|
-
import '../../index-
|
|
18
|
-
import '../../topics-
|
|
19
|
-
import '../../index-
|
|
20
|
-
import '../../tslib.es6-
|
|
21
|
-
import '../../compareIds-
|
|
22
|
-
import '../../
|
|
16
|
+
import '../../index-4a59a866.js';
|
|
17
|
+
import '../../index-353f13f3.js';
|
|
18
|
+
import '../../topics-17d99dd6.js';
|
|
19
|
+
import '../../index-ad4c9e58.js';
|
|
20
|
+
import '../../tslib.es6-83aa13f5.js';
|
|
21
|
+
import '../../compareIds-48d87cc5.js';
|
|
22
|
+
import '../../const-3f63e129.js';
|
|
23
|
+
import '../../uuid-6d14d007.js';
|
|
23
24
|
import '../../ui/ContextMenu.js';
|
|
24
|
-
import '../../index-
|
|
25
|
-
import '../../stringSet-
|
|
25
|
+
import '../../index-a611bd38.js';
|
|
26
|
+
import '../../stringSet-91746bf1.js';
|
|
26
27
|
import 'react-dom';
|
|
27
28
|
import '../../ui/SortByRow.js';
|
|
28
29
|
import '../../ui/ReactionButton.js';
|
|
29
30
|
import '../../ui/ImageRenderer.js';
|
|
30
31
|
import '../../ui/Icon.js';
|
|
31
32
|
import '../../ui/Loader.js';
|
|
32
|
-
import '../../LocalizationContext-
|
|
33
|
+
import '../../LocalizationContext-b021af8f.js';
|
|
33
34
|
import '../../ui/IconButton.js';
|
|
34
35
|
import '../../ui/ChannelAvatar.js';
|
|
35
36
|
import '../../ui/Avatar.js';
|
|
36
|
-
import '../../utils-
|
|
37
|
-
import '../../index-
|
|
37
|
+
import '../../utils-7d39b941.js';
|
|
38
|
+
import '../../index-f119413c.js';
|
|
38
39
|
import './Message.js';
|
|
40
|
+
import './SuggestedMentionList.js';
|
|
41
|
+
import '../../const-09c22c50.js';
|
|
39
42
|
import '../../ui/DateSeparator.js';
|
|
40
|
-
import '../../color-
|
|
43
|
+
import '../../color-2863fbbe.js';
|
|
41
44
|
import '../../ui/MessageInput.js';
|
|
42
|
-
import '
|
|
45
|
+
import 'stream';
|
|
46
|
+
import '../../index-41a6f4f2.js';
|
|
47
|
+
import '../../ui/MentionUserLabel.js';
|
|
43
48
|
import '../../ui/MessageContent.js';
|
|
44
49
|
import '../../ui/UserProfile.js';
|
|
45
50
|
import '../../sendBirdSelectors.js';
|
|
51
|
+
import '../../ui/MessageStatus.js';
|
|
46
52
|
import '../../ui/MessageItemMenu.js';
|
|
47
53
|
import '../../ui/MessageItemReactionMenu.js';
|
|
48
54
|
import '../../ui/EmojiReactions.js';
|
|
@@ -51,18 +57,19 @@ import '../../ui/TooltipWrapper.js';
|
|
|
51
57
|
import '../../ui/ReactionBadge.js';
|
|
52
58
|
import '../../ui/AdminMessage.js';
|
|
53
59
|
import '../../ui/TextMessageItemBody.js';
|
|
60
|
+
import '../../index-4889e530.js';
|
|
61
|
+
import '../../ui/LinkLabel.js';
|
|
54
62
|
import '../../ui/FileMessageItemBody.js';
|
|
55
63
|
import '../../ui/TextButton.js';
|
|
56
64
|
import '../../ui/ThumbnailMessageItemBody.js';
|
|
57
65
|
import '../../ui/OGMessageItemBody.js';
|
|
58
|
-
import '../../ui/LinkLabel.js';
|
|
59
66
|
import '../../ui/UnknownMessageItemBody.js';
|
|
60
67
|
import '../../ui/QuoteMessage.js';
|
|
61
68
|
import './FileViewer.js';
|
|
62
|
-
import '../../index-
|
|
69
|
+
import '../../index-1fd114b0.js';
|
|
63
70
|
import './RemoveMessageModal.js';
|
|
64
71
|
import '../../ui/Modal.js';
|
|
65
|
-
import '../../utils-
|
|
72
|
+
import '../../utils-9ef11656.js';
|
|
66
73
|
import '../../ui/QuoteMessageInput.js';
|
|
67
74
|
|
|
68
75
|
var ChannelUI = function ChannelUI(_a) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChannelUI.js","sources":["../../../src/smart-components/Channel/components/ChannelUI/index.tsx"],"sourcesContent":["import './channel-ui.scss';\n\nimport React, { useEffect, useState } from 'react';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nimport { useChannel } from '../../context/ChannelProvider';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport ConnectionStatus from '../../../../ui/ConnectionStatus';\nimport ChannelHeader from '../ChannelHeader';\nimport MessageList from '../MessageList';\nimport TypingIndicator from '../TypingIndicator';\nimport FrozenNotification from '../FrozenNotification';\nimport UnreadCount from '../UnreadCount';\nimport MessageInputWrapper from '../MessageInput';\nimport { RenderMessageProps } from '../../../../types';\nimport * as messageActionTypes from '../../context/dux/actionTypes';\n\nexport interface ChannelUIProps {\n renderPlaceholderLoader?: () => React.ReactNode;\n renderPlaceholderInvalid?: () => React.ReactNode;\n renderPlaceholderEmpty?: () => React.ReactNode;\n renderChannelHeader?: () => React.ReactNode;\n renderMessage?: (props: RenderMessageProps) => React.ReactNode;\n renderMessageInput?: () => React.ReactNode;\n renderTypingIndicator?: () => React.ReactNode;\n renderCustomSeperator?: () => React.ReactNode;\n}\n\nconst ChannelUI: React.FC<ChannelUIProps> = ({\n renderPlaceholderLoader,\n renderPlaceholderInvalid,\n renderPlaceholderEmpty,\n renderChannelHeader,\n renderMessage,\n renderMessageInput,\n renderTypingIndicator,\n renderCustomSeperator,\n}: ChannelUIProps) => {\n const {\n currentGroupChannel,\n channelUrl,\n isInvalid,\n unreadSince,\n loading,\n setInitialTimeStamp,\n setAnimatedMessageId,\n setHighLightedMessageId,\n scrollRef,\n messagesDispatcher,\n } = useChannel();\n const [unreadCount, setUnreadCount] = useState(0);\n useEffect(() => {\n setUnreadCount(currentGroupChannel.unreadMessageCount);\n }, [currentGroupChannel?.unreadMessageCount]);\n\n const globalStore = useSendbirdStateContext();\n const sdkError = globalStore?.stores?.sdkStore?.error;\n const logger = globalStore?.config?.logger;\n const isOnline = globalStore?.config?.isOnline;\n\n if (!channelUrl) {\n return (<div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} />\n )\n }\n </div>);\n }\n if (isInvalid) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.WRONG} />\n )\n }\n </div>\n );\n }\n if (sdkError) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder\n type={PlaceHolderTypes.WRONG}\n retryToConnect={() => {\n logger.info('Channel: reconnecting');\n // reconnect();\n }}\n />\n )\n }\n </div>\n );\n }\n return (\n <div className='sendbird-conversation'>\n {\n renderChannelHeader?.() || (\n <ChannelHeader />\n )\n }\n {\n currentGroupChannel?.isFrozen && (\n <FrozenNotification />\n )\n }\n {\n unreadCount > 0 && (\n <UnreadCount\n count={unreadCount}\n time={unreadSince}\n onClick={() => {\n setUnreadCount(0);\n if (scrollRef?.current?.scrollTop) {\n scrollRef.current.scrollTop = scrollRef?.current?.scrollHeight - scrollRef?.current?.offsetHeight;\n }\n currentGroupChannel?.markAsRead();\n messagesDispatcher({\n type: messageActionTypes.MARK_AS_READ,\n payload: { channel: currentGroupChannel },\n });\n setInitialTimeStamp(null);\n setAnimatedMessageId(null);\n setHighLightedMessageId(null);\n }}\n />\n )\n }\n {\n loading\n ? (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderLoader?.() || (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n }\n </div>\n ) : (\n <MessageList\n renderMessage={renderMessage}\n renderPlaceholderEmpty={renderPlaceholderEmpty}\n renderCustomSeperator={renderCustomSeperator}\n />\n )\n }\n <div className=\"sendbird-conversation__footer\">\n {\n renderMessageInput?.() || (\n <MessageInputWrapper />\n )\n }\n <div className=\"sendbird-conversation__footer__typing-indicator\">\n {\n renderTypingIndicator?.() || (\n <TypingIndicator />\n )\n }\n {\n !isOnline && (\n <ConnectionStatus />\n )\n }\n </div>\n </div>\n </div>\n );\n}\n\nexport default ChannelUI;\n"],"names":["ChannelUI","_a","renderPlaceholderLoader","renderPlaceholderInvalid","renderPlaceholderEmpty","renderChannelHeader","renderMessage","renderMessageInput","renderTypingIndicator","renderCustomSeperator","_f","useChannel","currentGroupChannel","channelUrl","isInvalid","unreadSince","loading","setInitialTimeStamp","setAnimatedMessageId","setHighLightedMessageId","scrollRef","messagesDispatcher","_g","useState","unreadCount","setUnreadCount","useEffect","unreadMessageCount","globalStore","useSendbirdStateContext","sdkError","stores","sdkStore","error","logger","config","isOnline","React","PlaceHolderTypes","NO_CHANNELS","WRONG","info","ChannelHeader","isFrozen","current","scrollTop","scrollHeight","offsetHeight","markAsRead","type","messageActionTypes","payload","channel","LOADING"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ChannelUI.js","sources":["../../../src/smart-components/Channel/components/ChannelUI/index.tsx"],"sourcesContent":["import './channel-ui.scss';\n\nimport React, { useEffect, useState } from 'react';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nimport { useChannel } from '../../context/ChannelProvider';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport ConnectionStatus from '../../../../ui/ConnectionStatus';\nimport ChannelHeader from '../ChannelHeader';\nimport MessageList from '../MessageList';\nimport TypingIndicator from '../TypingIndicator';\nimport FrozenNotification from '../FrozenNotification';\nimport UnreadCount from '../UnreadCount';\nimport MessageInputWrapper from '../MessageInput';\nimport { RenderMessageProps } from '../../../../types';\nimport * as messageActionTypes from '../../context/dux/actionTypes';\n\nexport interface ChannelUIProps {\n renderPlaceholderLoader?: () => React.ReactNode;\n renderPlaceholderInvalid?: () => React.ReactNode;\n renderPlaceholderEmpty?: () => React.ReactNode;\n renderChannelHeader?: () => React.ReactNode;\n renderMessage?: (props: RenderMessageProps) => React.ReactNode;\n renderMessageInput?: () => React.ReactNode;\n renderTypingIndicator?: () => React.ReactNode;\n renderCustomSeperator?: () => React.ReactNode;\n}\n\nconst ChannelUI: React.FC<ChannelUIProps> = ({\n renderPlaceholderLoader,\n renderPlaceholderInvalid,\n renderPlaceholderEmpty,\n renderChannelHeader,\n renderMessage,\n renderMessageInput,\n renderTypingIndicator,\n renderCustomSeperator,\n}: ChannelUIProps) => {\n const {\n currentGroupChannel,\n channelUrl,\n isInvalid,\n unreadSince,\n loading,\n setInitialTimeStamp,\n setAnimatedMessageId,\n setHighLightedMessageId,\n scrollRef,\n messagesDispatcher,\n } = useChannel();\n const [unreadCount, setUnreadCount] = useState(0);\n useEffect(() => {\n setUnreadCount(currentGroupChannel.unreadMessageCount);\n }, [currentGroupChannel?.unreadMessageCount]);\n\n const globalStore = useSendbirdStateContext();\n const sdkError = globalStore?.stores?.sdkStore?.error;\n const logger = globalStore?.config?.logger;\n const isOnline = globalStore?.config?.isOnline;\n\n if (!channelUrl) {\n return (<div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} />\n )\n }\n </div>);\n }\n if (isInvalid) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.WRONG} />\n )\n }\n </div>\n );\n }\n if (sdkError) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder\n type={PlaceHolderTypes.WRONG}\n retryToConnect={() => {\n logger.info('Channel: reconnecting');\n // reconnect();\n }}\n />\n )\n }\n </div>\n );\n }\n return (\n <div className='sendbird-conversation'>\n {\n renderChannelHeader?.() || (\n <ChannelHeader />\n )\n }\n {\n currentGroupChannel?.isFrozen && (\n <FrozenNotification />\n )\n }\n {\n unreadCount > 0 && (\n <UnreadCount\n count={unreadCount}\n time={unreadSince}\n onClick={() => {\n setUnreadCount(0);\n if (scrollRef?.current?.scrollTop) {\n scrollRef.current.scrollTop = scrollRef?.current?.scrollHeight - scrollRef?.current?.offsetHeight;\n }\n currentGroupChannel?.markAsRead();\n messagesDispatcher({\n type: messageActionTypes.MARK_AS_READ,\n payload: { channel: currentGroupChannel },\n });\n setInitialTimeStamp(null);\n setAnimatedMessageId(null);\n setHighLightedMessageId(null);\n }}\n />\n )\n }\n {\n loading\n ? (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderLoader?.() || (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n }\n </div>\n ) : (\n <MessageList\n renderMessage={renderMessage}\n renderPlaceholderEmpty={renderPlaceholderEmpty}\n renderCustomSeperator={renderCustomSeperator}\n />\n )\n }\n <div className=\"sendbird-conversation__footer\">\n {\n renderMessageInput?.() || (\n <MessageInputWrapper />\n )\n }\n <div className=\"sendbird-conversation__footer__typing-indicator\">\n {\n renderTypingIndicator?.() || (\n <TypingIndicator />\n )\n }\n {\n !isOnline && (\n <ConnectionStatus />\n )\n }\n </div>\n </div>\n </div>\n );\n}\n\nexport default ChannelUI;\n"],"names":["ChannelUI","_a","renderPlaceholderLoader","renderPlaceholderInvalid","renderPlaceholderEmpty","renderChannelHeader","renderMessage","renderMessageInput","renderTypingIndicator","renderCustomSeperator","_f","useChannel","currentGroupChannel","channelUrl","isInvalid","unreadSince","loading","setInitialTimeStamp","setAnimatedMessageId","setHighLightedMessageId","scrollRef","messagesDispatcher","_g","useState","unreadCount","setUnreadCount","useEffect","unreadMessageCount","globalStore","useSendbirdStateContext","sdkError","stores","sdkStore","error","logger","config","isOnline","React","PlaceHolderTypes","NO_CHANNELS","WRONG","info","ChannelHeader","isFrozen","current","scrollTop","scrollHeight","offsetHeight","markAsRead","type","messageActionTypes","payload","channel","LOADING"],"mappings":"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"}
|
|
@@ -1,24 +1,25 @@
|
|
|
1
1
|
import React__default from 'react';
|
|
2
2
|
import { createPortal } from 'react-dom';
|
|
3
3
|
import Avatar from '../../ui/Avatar.js';
|
|
4
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-
|
|
4
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-a611bd38.js';
|
|
5
5
|
import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
|
|
6
|
-
import { M as MODAL_ROOT } from '../../index-
|
|
7
|
-
import { w as isSupportedFileView, x as isVideo, y as isImage } from '../../index-
|
|
6
|
+
import { M as MODAL_ROOT } from '../../index-1fd114b0.js';
|
|
7
|
+
import { w as isSupportedFileView, x as isVideo, y as isImage } from '../../index-ad4c9e58.js';
|
|
8
8
|
import useSendbirdStateContext from '../../useSendbirdStateContext.js';
|
|
9
|
-
import { u as useChannel } from '../../ChannelProvider-
|
|
10
|
-
import '../../tslib.es6-
|
|
9
|
+
import { u as useChannel } from '../../ChannelProvider-d5126903.js';
|
|
10
|
+
import '../../tslib.es6-83aa13f5.js';
|
|
11
11
|
import '../../ui/ImageRenderer.js';
|
|
12
|
-
import '../../_rollupPluginBabelHelpers-
|
|
12
|
+
import '../../_rollupPluginBabelHelpers-8e4fae98.js';
|
|
13
13
|
import 'prop-types';
|
|
14
|
-
import '../../uuid-
|
|
15
|
-
import '../../stringSet-
|
|
14
|
+
import '../../uuid-6d14d007.js';
|
|
15
|
+
import '../../stringSet-91746bf1.js';
|
|
16
16
|
import '../../withSendBird.js';
|
|
17
|
-
import '../../UserProfileContext-
|
|
18
|
-
import '../../index-
|
|
19
|
-
import '../../index-
|
|
20
|
-
import '../../topics-
|
|
21
|
-
import '../../compareIds-
|
|
17
|
+
import '../../UserProfileContext-daa99f9b.js';
|
|
18
|
+
import '../../index-4a59a866.js';
|
|
19
|
+
import '../../index-353f13f3.js';
|
|
20
|
+
import '../../topics-17d99dd6.js';
|
|
21
|
+
import '../../compareIds-48d87cc5.js';
|
|
22
|
+
import '../../const-3f63e129.js';
|
|
22
23
|
import '../../ui/ContextMenu.js';
|
|
23
24
|
import '../../ui/SortByRow.js';
|
|
24
25
|
import '../../ui/ReactionButton.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileViewer.js","sources":["../../../src/smart-components/Channel/components/FileViewer/index.tsx"],"sourcesContent":["import React from 'react';\nimport { createPortal } from 'react-dom';\n\nimport './file-viewer.scss';\nimport Avatar from '../../../../ui/Avatar';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconColors, IconTypes } from '../../../../ui/Icon';\nimport { MODAL_ROOT } from '../../../../hooks/useModal/ModalRoot';\n\nimport { isImage, isVideo, isSupportedFileView } from '../../../../utils';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannel } from '../../context/ChannelProvider';\n\ntype FileViewerUIProps = {\n profileUrl: string;\n nickname: string;\n // file\n name: string;\n type: string;\n url: string;\n // others\n isByMe: boolean;\n onCancel: () => void;\n onDelete: () => void;\n disableDelete: boolean;\n};\n\nexport const FileViewerComponent: React.FC<FileViewerUIProps> = ({\n // sender\n profileUrl,\n nickname,\n // file\n name,\n type,\n url,\n // others\n isByMe,\n onCancel,\n onDelete,\n disableDelete,\n}: FileViewerUIProps) => (\n <div className=\"sendbird-fileviewer\">\n <div className=\"sendbird-fileviewer__header\">\n <div className=\"sendbird-fileviewer__header__left\">\n <div className=\"sendbird-fileviewer__header__left__avatar\">\n <Avatar height=\"32px\" width=\"32px\" src={profileUrl} />\n </div>\n <Label\n className=\"sendbird-fileviewer__header__left__filename\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {name}\n </Label>\n <Label\n className=\"sendbird-fileviewer__header__left__sender-name\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {nickname}\n </Label>\n </div>\n <div className=\"sendbird-fileviewer__header__right\">\n {\n isSupportedFileView(type) && (\n <div className=\"sendbird-fileviewer__header__right__actions\">\n <a\n className=\"sendbird-fileviewer__header__right__actions__download\"\n rel=\"noopener noreferrer\"\n href={url}\n target=\"_blank\"\n >\n <Icon\n type={IconTypes.DOWNLOAD}\n fillColor={IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n />\n </a>\n {\n onDelete && isByMe && (\n <div className=\"sendbird-fileviewer__header__right__actions__delete\">\n <Icon\n className={disableDelete ? 'disabled' : ''}\n type={IconTypes.DELETE}\n fillColor={disableDelete ? IconColors.GRAY : IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n onClick={() => { if (!disableDelete) { onDelete(); } }}\n />\n </div>\n )\n }\n </div>\n )\n }\n <div className=\"sendbird-fileviewer__header__right__actions__close\">\n <Icon\n type={IconTypes.CLOSE}\n fillColor={IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n onClick={onCancel}\n />\n </div>\n </div>\n </div>\n <div className=\"sendbird-fileviewer__content\">\n {isVideo(type) && (\n <video controls className=\"sendbird-fileviewer__content__video\">\n <source src={url} type={type} />\n </video>\n )}\n {\n isImage(type) && (\n <img\n src={url}\n alt={name}\n className=\"sendbird-fileviewer__content__img\"\n />\n )\n }\n {\n !isSupportedFileView(type) && (\n <div className=\"sendbird-fileviewer__content__unsupported\">\n <Label type={LabelTypography.H_1} color={LabelColors.ONBACKGROUND_1}>\n Unsupoprted message\n </Label>\n </div>\n )\n }\n </div>\n </div>\n);\n\ntype FileViewerProps = {\n onCancel:() => void;\n message: SendbirdUIKit.ClientFileMessage;\n};\n\nconst FileViewer: React.FC<FileViewerProps> = ({ onCancel, message }: FileViewerProps) => {\n const { deleteMessage } = useChannel();\n const {\n sender,\n type,\n url,\n name = '',\n threadInfo,\n } = message;\n const user = useSendbirdStateContext()?.config?.userId;\n const isByMe = user === message?.sender?.userId;\n const disableDelete = threadInfo?.replyCount > 0;\n const { profileUrl, nickname = '' } = sender;\n return createPortal(\n (\n <FileViewerComponent\n profileUrl={profileUrl}\n nickname={nickname}\n type={type}\n url={url}\n name={name}\n onCancel={onCancel}\n onDelete={() => {\n deleteMessage(message).then(() => {\n onCancel();\n });\n }}\n isByMe={isByMe}\n disableDelete={disableDelete}\n />\n ),\n document.getElementById(MODAL_ROOT),\n );\n}\n\nexport default FileViewer;\n"],"names":["FileViewerComponent","_a","profileUrl","nickname","name","type","url","isByMe","onCancel","onDelete","disableDelete","React","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","BODY_1","ONBACKGROUND_2","isSupportedFileView","IconTypes","DOWNLOAD","IconColors","ON_BACKGROUND_1","DELETE","GRAY","CLOSE","isVideo","isImage","H_1","FileViewer","message","deleteMessage","useChannel","sender","_e","threadInfo","user","useSendbirdStateContext","config","userId","replyCount","_f","createPortal","then","document","getElementById","MODAL_ROOT"],"mappings":"
|
|
1
|
+
{"version":3,"file":"FileViewer.js","sources":["../../../src/smart-components/Channel/components/FileViewer/index.tsx"],"sourcesContent":["import React from 'react';\nimport { createPortal } from 'react-dom';\n\nimport './file-viewer.scss';\nimport Avatar from '../../../../ui/Avatar';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconColors, IconTypes } from '../../../../ui/Icon';\nimport { MODAL_ROOT } from '../../../../hooks/useModal/ModalRoot';\n\nimport { isImage, isVideo, isSupportedFileView } from '../../../../utils';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannel } from '../../context/ChannelProvider';\n\ntype FileViewerUIProps = {\n profileUrl: string;\n nickname: string;\n // file\n name: string;\n type: string;\n url: string;\n // others\n isByMe: boolean;\n onCancel: () => void;\n onDelete: () => void;\n disableDelete: boolean;\n};\n\nexport const FileViewerComponent: React.FC<FileViewerUIProps> = ({\n // sender\n profileUrl,\n nickname,\n // file\n name,\n type,\n url,\n // others\n isByMe,\n onCancel,\n onDelete,\n disableDelete,\n}: FileViewerUIProps) => (\n <div className=\"sendbird-fileviewer\">\n <div className=\"sendbird-fileviewer__header\">\n <div className=\"sendbird-fileviewer__header__left\">\n <div className=\"sendbird-fileviewer__header__left__avatar\">\n <Avatar height=\"32px\" width=\"32px\" src={profileUrl} />\n </div>\n <Label\n className=\"sendbird-fileviewer__header__left__filename\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {name}\n </Label>\n <Label\n className=\"sendbird-fileviewer__header__left__sender-name\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {nickname}\n </Label>\n </div>\n <div className=\"sendbird-fileviewer__header__right\">\n {\n isSupportedFileView(type) && (\n <div className=\"sendbird-fileviewer__header__right__actions\">\n <a\n className=\"sendbird-fileviewer__header__right__actions__download\"\n rel=\"noopener noreferrer\"\n href={url}\n target=\"_blank\"\n >\n <Icon\n type={IconTypes.DOWNLOAD}\n fillColor={IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n />\n </a>\n {\n onDelete && isByMe && (\n <div className=\"sendbird-fileviewer__header__right__actions__delete\">\n <Icon\n className={disableDelete ? 'disabled' : ''}\n type={IconTypes.DELETE}\n fillColor={disableDelete ? IconColors.GRAY : IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n onClick={() => { if (!disableDelete) { onDelete(); } }}\n />\n </div>\n )\n }\n </div>\n )\n }\n <div className=\"sendbird-fileviewer__header__right__actions__close\">\n <Icon\n type={IconTypes.CLOSE}\n fillColor={IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n onClick={onCancel}\n />\n </div>\n </div>\n </div>\n <div className=\"sendbird-fileviewer__content\">\n {isVideo(type) && (\n <video controls className=\"sendbird-fileviewer__content__video\">\n <source src={url} type={type} />\n </video>\n )}\n {\n isImage(type) && (\n <img\n src={url}\n alt={name}\n className=\"sendbird-fileviewer__content__img\"\n />\n )\n }\n {\n !isSupportedFileView(type) && (\n <div className=\"sendbird-fileviewer__content__unsupported\">\n <Label type={LabelTypography.H_1} color={LabelColors.ONBACKGROUND_1}>\n Unsupoprted message\n </Label>\n </div>\n )\n }\n </div>\n </div>\n);\n\ntype FileViewerProps = {\n onCancel:() => void;\n message: SendbirdUIKit.ClientFileMessage;\n};\n\nconst FileViewer: React.FC<FileViewerProps> = ({ onCancel, message }: FileViewerProps) => {\n const { deleteMessage } = useChannel();\n const {\n sender,\n type,\n url,\n name = '',\n threadInfo,\n } = message;\n const user = useSendbirdStateContext()?.config?.userId;\n const isByMe = user === message?.sender?.userId;\n const disableDelete = threadInfo?.replyCount > 0;\n const { profileUrl, nickname = '' } = sender;\n return createPortal(\n (\n <FileViewerComponent\n profileUrl={profileUrl}\n nickname={nickname}\n type={type}\n url={url}\n name={name}\n onCancel={onCancel}\n onDelete={() => {\n deleteMessage(message).then(() => {\n onCancel();\n });\n }}\n isByMe={isByMe}\n disableDelete={disableDelete}\n />\n ),\n document.getElementById(MODAL_ROOT),\n );\n}\n\nexport default FileViewer;\n"],"names":["FileViewerComponent","_a","profileUrl","nickname","name","type","url","isByMe","onCancel","onDelete","disableDelete","React","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","BODY_1","ONBACKGROUND_2","isSupportedFileView","IconTypes","DOWNLOAD","IconColors","ON_BACKGROUND_1","DELETE","GRAY","CLOSE","isVideo","isImage","H_1","FileViewer","message","deleteMessage","useChannel","sender","_e","threadInfo","user","useSendbirdStateContext","config","userId","replyCount","_f","createPortal","then","document","getElementById","MODAL_ROOT"],"mappings":"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"}
|