@sendbird/uikit-react 3.1.1 → 3.1.2-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/App.js +36 -35
- package/App.js.map +1 -1
- package/CHANGELOG.md +29 -0
- package/Channel/components/ChannelHeader.js +19 -19
- package/Channel/components/ChannelUI.js +26 -26
- package/Channel/components/ChannelUI.js.map +1 -1
- package/Channel/components/FileViewer.js +18 -18
- package/Channel/components/FrozenNotification.js +5 -5
- package/Channel/components/Message.js +23 -23
- package/Channel/components/MessageInput.js +20 -20
- package/Channel/components/MessageList.js +25 -25
- package/Channel/components/RemoveMessageModal.js +22 -23
- package/Channel/components/RemoveMessageModal.js.map +1 -1
- package/Channel/components/SuggestedMentionList.js +19 -19
- package/Channel/components/TypingIndicator.js +18 -18
- package/Channel/components/UnreadCount.js +5 -5
- package/Channel/context.js +17 -17
- package/Channel.js +26 -26
- package/ChannelList/components/AddChannel.js +14 -14
- package/ChannelList/components/ChannelListHeader.js +7 -7
- package/ChannelList/components/ChannelListHeader.js.map +1 -1
- package/ChannelList/components/ChannelListUI.js +30 -30
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +23 -23
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +18 -18
- package/ChannelList/context.js +12 -12
- package/ChannelList.js +30 -30
- package/{ChannelListProvider-bdac2e90.js → ChannelListProvider-536de516.js} +9 -9
- package/ChannelListProvider-536de516.js.map +1 -0
- package/{ChannelProvider-0174d0f3.js → ChannelProvider-288abd6e.js} +31 -30
- package/ChannelProvider-288abd6e.js.map +1 -0
- package/ChannelSettings/components/ChannelProfile.js +13 -14
- package/ChannelSettings/components/ChannelProfile.js.map +1 -1
- package/ChannelSettings/components/ChannelSettingsUI.js +22 -22
- package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
- package/ChannelSettings/components/EditDetailsModal.js +14 -15
- package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/ChannelSettings/components/LeaveChannel.js +12 -11
- package/ChannelSettings/components/LeaveChannel.js.map +1 -1
- package/ChannelSettings/components/ModerationPanel.js +19 -19
- package/ChannelSettings/components/UserListItem.js +12 -12
- package/ChannelSettings/components/UserPanel.js +14 -14
- package/ChannelSettings/context.js +3 -3
- package/ChannelSettings/context.js.map +1 -1
- package/ChannelSettings.js +23 -23
- package/CreateChannel/components/CreateChannelUI.js +16 -16
- package/CreateChannel/components/CreateChannelUI.js.map +1 -1
- package/CreateChannel/components/InviteUsers.js +16 -16
- package/CreateChannel/components/SelectChannelType.js +11 -10
- package/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/CreateChannel/context.js +4 -4
- package/CreateChannel.js +16 -16
- package/{CreateChannelProvider-1cf4ef27.js → CreateChannelProvider-1d4c08d8.js} +1 -1
- package/CreateChannelProvider-1d4c08d8.js.map +1 -0
- package/EditUserProfile/components/EditUserProfileUI.js +14 -14
- package/EditUserProfile/context.js.map +1 -1
- package/EditUserProfile.js +15 -15
- package/{LocalizationContext-61a4a931.js → LocalizationContext-7d740b0a.js} +3 -3
- package/LocalizationContext-7d740b0a.js.map +1 -0
- package/{MemberList-24ad6b63.js → MemberList-8bc3c1e1.js} +6 -6
- package/{MemberList-24ad6b63.js.map → MemberList-8bc3c1e1.js.map} +1 -1
- package/MessageSearch/components/MessageSearchUI.js +13 -12
- package/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/MessageSearch/context.js +4 -3
- package/MessageSearch/context.js.map +1 -1
- package/MessageSearch.js +13 -12
- package/MessageSearch.js.map +1 -1
- package/OpenChannel/components/FrozenChannelNotification.js +5 -5
- package/OpenChannel/components/OpenChannelHeader.js +17 -17
- package/OpenChannel/components/OpenChannelInput.js +21 -21
- package/OpenChannel/components/OpenChannelMessage.js +29 -29
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +28 -28
- package/OpenChannel/components/OpenChannelUI.js +28 -28
- package/OpenChannel/context.js +14 -14
- package/OpenChannel.js +28 -28
- package/{OpenChannelProvider-9b3a6eb1.js → OpenChannelProvider-2e64f2d2.js} +15 -14
- package/{OpenChannelProvider-9b3a6eb1.js.map → OpenChannelProvider-2e64f2d2.js.map} +1 -1
- package/OpenChannelSettings/components/EditDetailsModal.js +18 -19
- package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/OpenChannelSettings/components/OpenChannelProfile.js +16 -17
- package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -21
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
- package/OpenChannelSettings/components/OperatorUI.js +20 -20
- package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/OpenChannelSettings/components/ParticipantUI.js +20 -20
- package/OpenChannelSettings/context.js +6 -6
- package/OpenChannelSettings/context.js.map +1 -1
- package/OpenChannelSettings.js +21 -21
- package/SendbirdProvider.js +15 -15
- package/{UserProfileContext-3524e64c.js → UserProfileContext-9b7b1d4f.js} +1 -1
- package/{UserProfileContext-3524e64c.js.map → UserProfileContext-9b7b1d4f.js.map} +1 -1
- package/{__bundle-6316ce22-b659cee1.js → __bundle-6316ce22-41ee43fe.js} +1 -1
- package/{__bundle-6316ce22-b659cee1.js.map → __bundle-6316ce22-41ee43fe.js.map} +1 -1
- package/{__bundle-7dfccc8c-37d3f8ab.js → __bundle-7dfccc8c-c1f95345.js} +2 -2
- package/{__bundle-7dfccc8c-37d3f8ab.js.map → __bundle-7dfccc8c-c1f95345.js.map} +1 -1
- package/{__bundle-fbda47dd-ef31252f.js → __bundle-fbda47dd-ee456253.js} +2 -2
- package/{__bundle-fbda47dd-ef31252f.js.map → __bundle-fbda47dd-ee456253.js.map} +1 -1
- package/{_rollupPluginBabelHelpers-30d122aa.js → _rollupPluginBabelHelpers-4e546dea.js} +2 -105
- package/_rollupPluginBabelHelpers-4e546dea.js.map +1 -0
- package/{actionTypes-d5d5ac7b.js → actionTypes-f1946e3f.js} +1 -1
- package/{actionTypes-d5d5ac7b.js.map → actionTypes-f1946e3f.js.map} +1 -1
- package/cjs/App.js +36 -35
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +19 -19
- package/cjs/Channel/components/ChannelUI.js +26 -26
- package/cjs/Channel/components/ChannelUI.js.map +1 -1
- package/cjs/Channel/components/FileViewer.js +18 -18
- package/cjs/Channel/components/FrozenNotification.js +5 -5
- package/cjs/Channel/components/Message.js +23 -23
- package/cjs/Channel/components/MessageInput.js +20 -20
- package/cjs/Channel/components/MessageList.js +25 -25
- package/cjs/Channel/components/RemoveMessageModal.js +22 -23
- package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
- package/cjs/Channel/components/SuggestedMentionList.js +19 -19
- package/cjs/Channel/components/TypingIndicator.js +18 -18
- package/cjs/Channel/components/UnreadCount.js +5 -5
- package/cjs/Channel/context.js +17 -17
- package/cjs/Channel.js +26 -26
- package/cjs/ChannelList/components/AddChannel.js +14 -14
- package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
- package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -1
- package/cjs/ChannelList/components/ChannelListUI.js +30 -30
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +23 -23
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +18 -18
- package/cjs/ChannelList/context.js +12 -12
- package/cjs/ChannelList.js +30 -30
- package/cjs/{ChannelListProvider-e7756677.js → ChannelListProvider-40eb170c.js} +9 -9
- package/cjs/ChannelListProvider-40eb170c.js.map +1 -0
- package/cjs/{ChannelProvider-c179835a.js → ChannelProvider-e1a06efe.js} +31 -30
- package/cjs/ChannelProvider-e1a06efe.js.map +1 -0
- package/cjs/ChannelSettings/components/ChannelProfile.js +13 -14
- package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +22 -22
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
- package/cjs/ChannelSettings/components/EditDetailsModal.js +14 -15
- package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/cjs/ChannelSettings/components/LeaveChannel.js +12 -11
- package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
- package/cjs/ChannelSettings/components/ModerationPanel.js +19 -19
- package/cjs/ChannelSettings/components/UserListItem.js +12 -12
- package/cjs/ChannelSettings/components/UserPanel.js +14 -14
- package/cjs/ChannelSettings/context.js +3 -3
- package/cjs/ChannelSettings/context.js.map +1 -1
- package/cjs/ChannelSettings.js +23 -23
- package/cjs/CreateChannel/components/CreateChannelUI.js +16 -16
- package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
- package/cjs/CreateChannel/components/InviteUsers.js +16 -16
- package/cjs/CreateChannel/components/SelectChannelType.js +11 -10
- package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/cjs/CreateChannel/context.js +4 -4
- package/cjs/CreateChannel.js +16 -16
- package/cjs/{CreateChannelProvider-a7ca5511.js → CreateChannelProvider-4acaac2e.js} +1 -1
- package/cjs/CreateChannelProvider-4acaac2e.js.map +1 -0
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +14 -14
- package/cjs/EditUserProfile/context.js.map +1 -1
- package/cjs/EditUserProfile.js +15 -15
- package/cjs/{LocalizationContext-f05328b8.js → LocalizationContext-a4d8d6fa.js} +3 -3
- package/cjs/LocalizationContext-a4d8d6fa.js.map +1 -0
- package/cjs/{MemberList-bfaafb40.js → MemberList-b5653b8e.js} +6 -6
- package/cjs/{MemberList-bfaafb40.js.map → MemberList-b5653b8e.js.map} +1 -1
- package/cjs/MessageSearch/components/MessageSearchUI.js +13 -12
- package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/cjs/MessageSearch/context.js +4 -3
- package/cjs/MessageSearch/context.js.map +1 -1
- package/cjs/MessageSearch.js +13 -12
- package/cjs/MessageSearch.js.map +1 -1
- package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
- package/cjs/OpenChannel/components/OpenChannelHeader.js +17 -17
- package/cjs/OpenChannel/components/OpenChannelInput.js +21 -21
- package/cjs/OpenChannel/components/OpenChannelMessage.js +29 -29
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +28 -28
- package/cjs/OpenChannel/components/OpenChannelUI.js +28 -28
- package/cjs/OpenChannel/context.js +14 -14
- package/cjs/OpenChannel.js +28 -28
- package/cjs/{OpenChannelProvider-12e0412f.js → OpenChannelProvider-3d3298fd.js} +15 -14
- package/cjs/{OpenChannelProvider-12e0412f.js.map → OpenChannelProvider-3d3298fd.js.map} +1 -1
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +18 -19
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +16 -17
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -21
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OperatorUI.js +20 -20
- package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +20 -20
- package/cjs/OpenChannelSettings/context.js +6 -6
- package/cjs/OpenChannelSettings/context.js.map +1 -1
- package/cjs/OpenChannelSettings.js +21 -21
- package/cjs/SendbirdProvider.js +15 -15
- package/cjs/{UserProfileContext-87ebb4a4.js → UserProfileContext-9fb4f747.js} +1 -1
- package/cjs/{UserProfileContext-87ebb4a4.js.map → UserProfileContext-9fb4f747.js.map} +1 -1
- package/cjs/{__bundle-6316ce22-c57c6fe0.js → __bundle-6316ce22-e09a7a94.js} +1 -1
- package/cjs/{__bundle-6316ce22-c57c6fe0.js.map → __bundle-6316ce22-e09a7a94.js.map} +1 -1
- package/cjs/{__bundle-7dfccc8c-205c0e66.js → __bundle-7dfccc8c-3af98778.js} +2 -2
- package/cjs/{__bundle-7dfccc8c-205c0e66.js.map → __bundle-7dfccc8c-3af98778.js.map} +1 -1
- package/cjs/{__bundle-fbda47dd-f6e08be2.js → __bundle-fbda47dd-a50b4334.js} +2 -2
- package/cjs/{__bundle-fbda47dd-f6e08be2.js.map → __bundle-fbda47dd-a50b4334.js.map} +1 -1
- package/cjs/{_rollupPluginBabelHelpers-92e5e012.js → _rollupPluginBabelHelpers-e3f84a90.js} +1 -110
- package/cjs/_rollupPluginBabelHelpers-e3f84a90.js.map +1 -0
- package/cjs/{actionTypes-331e63c2.js → actionTypes-8907b806.js} +1 -1
- package/cjs/{actionTypes-331e63c2.js.map → actionTypes-8907b806.js.map} +1 -1
- package/cjs/color-047cfbdf.js +45 -0
- package/cjs/color-047cfbdf.js.map +1 -0
- package/cjs/{compareIds-2df40a8f.js → compareIds-a4c74921.js} +1 -1
- package/cjs/{compareIds-2df40a8f.js.map → compareIds-a4c74921.js.map} +1 -1
- package/cjs/{const-77f608c8.js → const-66e78150.js} +1 -1
- package/cjs/{const-77f608c8.js.map → const-66e78150.js.map} +1 -1
- package/cjs/{const-e0dbad82.js → const-b4516fd9.js} +1 -1
- package/cjs/{const-e0dbad82.js.map → const-b4516fd9.js.map} +1 -1
- package/cjs/{context-5e7ba41f.js → context-24f7ccd5.js} +2 -2
- package/cjs/{context-5e7ba41f.js.map → context-24f7ccd5.js.map} +1 -1
- package/cjs/dist/index.css +50 -72
- package/cjs/dist/index.css.map +1 -1
- package/cjs/{groupChannel-ddd470ad.js → groupChannel-ab450f40.js} +4 -4
- package/cjs/{groupChannel-ddd470ad.js.map → groupChannel-ab450f40.js.map} +1 -1
- package/cjs/handlers/ConnectionHandler.js +3 -3
- package/cjs/handlers/GroupChannelHandler.js +4 -4
- package/cjs/handlers/OpenChannelHandler.js +3 -3
- package/cjs/handlers/UserEventHandler.js +3 -3
- package/cjs/{index-cce2b8c0.js → index-13532266.js} +3 -3
- package/cjs/{index-cce2b8c0.js.map → index-13532266.js.map} +1 -1
- package/cjs/{index-1c009ee9.js → index-4f96bea7.js} +15 -27
- package/cjs/{index-1c009ee9.js.map → index-4f96bea7.js.map} +1 -1
- package/cjs/index-65aaad9e.js +90 -0
- package/cjs/index-65aaad9e.js.map +1 -0
- package/cjs/{index-4bebe375.js → index-6d74425b.js} +1 -1
- package/cjs/{index-4bebe375.js.map → index-6d74425b.js.map} +1 -1
- package/cjs/{index-4911c708.js → index-83f6a684.js} +2 -2
- package/cjs/{index-4911c708.js.map → index-83f6a684.js.map} +1 -1
- package/cjs/{index-52631939.js → index-9a12fc25.js} +11 -10
- package/cjs/{index-52631939.js.map → index-9a12fc25.js.map} +1 -1
- package/cjs/{index-39372722.js → index-9aaba1c0.js} +2 -2
- package/cjs/{index-39372722.js.map → index-9aaba1c0.js.map} +1 -1
- package/cjs/{index-10b68ab4.js → index-bf23b757.js} +2 -2
- package/cjs/{index-10b68ab4.js.map → index-bf23b757.js.map} +1 -1
- package/cjs/{index-2dacade8.js → index-df5b04e6.js} +1 -1
- package/cjs/{index-2dacade8.js.map → index-df5b04e6.js.map} +1 -1
- package/cjs/{index-b1ed74bd.js → index-f4dec25b.js} +4 -4
- package/cjs/{index-b1ed74bd.js.map → index-f4dec25b.js.map} +1 -1
- package/cjs/{index-edd379fd.js → index-f6ccdc07.js} +7 -7
- package/cjs/index-f6ccdc07.js.map +1 -0
- package/cjs/index.js +40 -39
- package/cjs/index.js.map +1 -1
- package/cjs/{openChannel-865f6910.js → openChannel-bb5e32ba.js} +3 -3
- package/cjs/{openChannel-865f6910.js.map → openChannel-bb5e32ba.js.map} +1 -1
- package/cjs/{openChannelUtils-341c5ad7.js → openChannelUtils-ea9b884a.js} +1 -1
- package/cjs/{openChannelUtils-341c5ad7.js.map → openChannelUtils-ea9b884a.js.map} +1 -1
- package/cjs/{sendbird-313241e2.js → sendbird-f219ad11.js} +3 -3
- package/cjs/{sendbird-313241e2.js.map → sendbird-f219ad11.js.map} +1 -1
- package/cjs/sendbirdSelectors.js +2 -2
- package/cjs/{stringSet-afc1ff3b.js → stringSet-0e48356d.js} +3 -2
- package/cjs/stringSet-0e48356d.js.map +1 -0
- package/cjs/{topics-57ad0394.js → topics-6314d5b3.js} +1 -1
- package/cjs/{topics-57ad0394.js.map → topics-6314d5b3.js.map} +1 -1
- package/cjs/{tslib.es6-12c25052.js → tslib.es6-4d92f5f1.js} +1 -1
- package/cjs/{tslib.es6-12c25052.js.map → tslib.es6-4d92f5f1.js.map} +1 -1
- package/cjs/ui/Accordion.js +4 -4
- package/cjs/ui/AccordionGroup.js +2 -2
- package/cjs/ui/AdminMessage.js +14 -24
- package/cjs/ui/AdminMessage.js.map +1 -1
- package/cjs/ui/Avatar.js +3 -3
- package/cjs/ui/Avatar.js.map +1 -1
- package/cjs/ui/Badge.js +15 -25
- package/cjs/ui/Badge.js.map +1 -1
- package/cjs/ui/Button.js +5 -4
- package/cjs/ui/Button.js.map +1 -1
- package/cjs/ui/ChannelAvatar.js +4 -4
- package/cjs/ui/ChannelPreview.js +16 -12
- package/cjs/ui/ChannelPreview.js.map +1 -1
- package/cjs/ui/ChatHeader.js +42 -74
- package/cjs/ui/ChatHeader.js.map +1 -1
- package/cjs/ui/ConnectionStatus.js +6 -8
- package/cjs/ui/ConnectionStatus.js.map +1 -1
- package/cjs/ui/ContextMenu.js +186 -290
- package/cjs/ui/ContextMenu.js.map +1 -1
- package/cjs/ui/DateSeparator.js +18 -25
- package/cjs/ui/DateSeparator.js.map +1 -1
- package/cjs/ui/EmojiReactions.js +8 -7
- package/cjs/ui/EmojiReactions.js.map +1 -1
- package/cjs/ui/FileMessageItemBody.js +7 -7
- package/cjs/ui/FileMessageItemBody.js.map +1 -1
- package/cjs/ui/FileViewer.js +46 -83
- package/cjs/ui/FileViewer.js.map +1 -1
- package/cjs/ui/Icon.js +1 -1
- package/cjs/ui/IconButton.js +45 -68
- package/cjs/ui/IconButton.js.map +1 -1
- package/cjs/ui/ImageRenderer.js +43 -78
- package/cjs/ui/ImageRenderer.js.map +1 -1
- package/cjs/ui/Input.js +11 -30
- package/cjs/ui/Input.js.map +1 -1
- package/cjs/ui/Label.js +3 -3
- package/cjs/ui/LinkLabel.js +3 -3
- package/cjs/ui/Loader.js +15 -24
- package/cjs/ui/Loader.js.map +1 -1
- package/cjs/ui/MentionLabel.js +12 -12
- package/cjs/ui/MessageContent.js +15 -15
- package/cjs/ui/MessageInput.js +10 -10
- package/cjs/ui/MessageItemMenu.js +9 -8
- package/cjs/ui/MessageItemMenu.js.map +1 -1
- package/cjs/ui/MessageItemReactionMenu.js +7 -6
- package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
- package/cjs/ui/MessageSearchFileItem.js +10 -10
- package/cjs/ui/MessageSearchItem.js +11 -11
- package/cjs/ui/MessageStatus.js +8 -8
- package/cjs/ui/Modal.js +36 -68
- package/cjs/ui/Modal.js.map +1 -1
- package/cjs/ui/MutedAvatarOverlay.js +1 -1
- package/cjs/ui/OGMessageItemBody.js +11 -11
- package/cjs/ui/OpenChannelAdminMessage.js +4 -4
- package/cjs/ui/OpenChannelAvatar.js +8 -8
- package/cjs/ui/OpenchannelConversationHeader.js +7 -7
- package/cjs/ui/OpenchannelFileMessage.js +15 -15
- package/cjs/ui/OpenchannelOGMessage.js +15 -15
- package/cjs/ui/OpenchannelThumbnailMessage.js +14 -14
- package/cjs/ui/OpenchannelUserMessage.js +15 -15
- package/cjs/ui/PlaceHolder.js +8 -7
- package/cjs/ui/PlaceHolder.js.map +1 -1
- package/cjs/ui/QuoteMessage.js +7 -7
- package/cjs/ui/QuoteMessageInput.js +7 -7
- package/cjs/ui/ReactionBadge.js +16 -26
- package/cjs/ui/ReactionBadge.js.map +1 -1
- package/cjs/ui/ReactionButton.js +4 -21
- package/cjs/ui/ReactionButton.js.map +1 -1
- package/cjs/ui/SortByRow.js +16 -26
- package/cjs/ui/SortByRow.js.map +1 -1
- package/cjs/ui/TextButton.js +22 -29
- package/cjs/ui/TextButton.js.map +1 -1
- package/cjs/ui/TextMessageItemBody.js +11 -11
- package/cjs/ui/ThumbnailMessageItemBody.js +3 -3
- package/cjs/ui/Tooltip.js +11 -17
- package/cjs/ui/Tooltip.js.map +1 -1
- package/cjs/ui/TooltipWrapper.js +10 -20
- package/cjs/ui/TooltipWrapper.js.map +1 -1
- package/cjs/ui/UnknownMessageItemBody.js +7 -7
- package/cjs/ui/UserListItem.js +12 -12
- package/cjs/ui/UserProfile.js +11 -11
- package/cjs/ui/Word.js +11 -11
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/{utils-1a8a0b72.js → utils-1cdb42c0.js} +1 -1
- package/cjs/{utils-1a8a0b72.js.map → utils-1cdb42c0.js.map} +1 -1
- package/cjs/{utils-71bd80e8.js → utils-b6436b0d.js} +1 -1
- package/cjs/{utils-71bd80e8.js.map → utils-b6436b0d.js.map} +1 -1
- package/cjs/{utils-6f828dbd.js → utils-b8eff714.js} +1 -1
- package/cjs/{utils-6f828dbd.js.map → utils-b8eff714.js.map} +1 -1
- package/cjs/{uuid-920ae00d.js → uuid-6fae7fc4.js} +1 -1
- package/cjs/{uuid-920ae00d.js.map → uuid-6fae7fc4.js.map} +1 -1
- package/cjs/withSendbird.js +1 -1
- package/{color-f6548425.js → color-7a9e9046.js} +16 -12
- package/color-7a9e9046.js.map +1 -0
- package/{compareIds-8402fa74.js → compareIds-b5421ba2.js} +1 -1
- package/{compareIds-8402fa74.js.map → compareIds-b5421ba2.js.map} +1 -1
- package/{const-c81e2d08.js → const-2017fde0.js} +1 -1
- package/{const-c81e2d08.js.map → const-2017fde0.js.map} +1 -1
- package/{const-9039e539.js → const-43ed4c6f.js} +1 -1
- package/{const-9039e539.js.map → const-43ed4c6f.js.map} +1 -1
- package/{context-3629064f.js → context-d85e90c3.js} +2 -2
- package/{context-3629064f.js.map → context-d85e90c3.js.map} +1 -1
- package/dist/index.css +50 -72
- package/dist/index.css.map +1 -1
- package/{groupChannel-fc842dca.js → groupChannel-1ce183d5.js} +4 -4
- package/{groupChannel-fc842dca.js.map → groupChannel-1ce183d5.js.map} +1 -1
- package/handlers/ConnectionHandler.js +4 -4
- package/handlers/GroupChannelHandler.js +5 -5
- package/handlers/OpenChannelHandler.js +4 -4
- package/handlers/UserEventHandler.js +4 -4
- package/{index-2034978f.js → index-00ac1d60.js} +15 -26
- package/index-00ac1d60.js.map +1 -0
- package/{index-191d1d43.js → index-3d519005.js} +1 -1
- package/{index-191d1d43.js.map → index-3d519005.js.map} +1 -1
- package/{index-5428ab4f.js → index-47b8d0ce.js} +2 -2
- package/{index-5428ab4f.js.map → index-47b8d0ce.js.map} +1 -1
- package/{index-07cd4778.js → index-5efc096b.js} +3 -3
- package/{index-07cd4778.js.map → index-5efc096b.js.map} +1 -1
- package/{index-b1f9e3f9.js → index-62f1a209.js} +4 -4
- package/{index-b1f9e3f9.js.map → index-62f1a209.js.map} +1 -1
- package/{index-fc480728.js → index-6e4da943.js} +11 -10
- package/{index-fc480728.js.map → index-6e4da943.js.map} +1 -1
- package/{index-42b2527f.js → index-7965b338.js} +1 -1
- package/{index-42b2527f.js.map → index-7965b338.js.map} +1 -1
- package/index-9ba00bc1.js +82 -0
- package/index-9ba00bc1.js.map +1 -0
- package/{index-17024830.js → index-cdcfdf8f.js} +7 -7
- package/index-cdcfdf8f.js.map +1 -0
- package/{index-aa2d32cc.js → index-d4e18807.js} +2 -2
- package/{index-aa2d32cc.js.map → index-d4e18807.js.map} +1 -1
- package/{index-65007eeb.js → index-f37bc955.js} +2 -2
- package/{index-65007eeb.js.map → index-f37bc955.js.map} +1 -1
- package/index.d.ts +116 -109
- package/index.js +40 -39
- package/index.js.map +1 -1
- package/{openChannel-2b51e3d3.js → openChannel-654409d7.js} +3 -3
- package/{openChannel-2b51e3d3.js.map → openChannel-654409d7.js.map} +1 -1
- package/{openChannelUtils-6a414996.js → openChannelUtils-1ae6ef95.js} +1 -1
- package/{openChannelUtils-6a414996.js.map → openChannelUtils-1ae6ef95.js.map} +1 -1
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/{sendbird-d625a809.js → sendbird-ae433167.js} +3 -3
- package/{sendbird-d625a809.js.map → sendbird-ae433167.js.map} +1 -1
- package/sendbirdSelectors.js +2 -2
- package/{stringSet-92f53c6e.js → stringSet-53204a58.js} +3 -2
- package/stringSet-53204a58.js.map +1 -0
- package/{topics-71b67878.js → topics-3dbd69e2.js} +1 -1
- package/{topics-71b67878.js.map → topics-3dbd69e2.js.map} +1 -1
- package/{tslib.es6-c793443a.js → tslib.es6-5c8a20bb.js} +1 -1
- package/{tslib.es6-c793443a.js.map → tslib.es6-5c8a20bb.js.map} +1 -1
- package/ui/Accordion.js +4 -4
- package/ui/AccordionGroup.js +2 -2
- package/ui/AdminMessage.js +14 -23
- package/ui/AdminMessage.js.map +1 -1
- package/ui/Avatar.js +3 -3
- package/ui/Avatar.js.map +1 -1
- package/ui/Badge.js +15 -24
- package/ui/Badge.js.map +1 -1
- package/ui/Button.js +5 -4
- package/ui/Button.js.map +1 -1
- package/ui/ChannelAvatar.js +4 -4
- package/ui/ChannelPreview.js +17 -13
- package/ui/ChannelPreview.js.map +1 -1
- package/ui/ChatHeader.js +43 -74
- package/ui/ChatHeader.js.map +1 -1
- package/ui/ConnectionStatus.js +6 -8
- package/ui/ConnectionStatus.js.map +1 -1
- package/ui/ContextMenu.js +188 -291
- package/ui/ContextMenu.js.map +1 -1
- package/ui/DateSeparator.js +18 -24
- package/ui/DateSeparator.js.map +1 -1
- package/ui/EmojiReactions.js +8 -7
- package/ui/EmojiReactions.js.map +1 -1
- package/ui/FileMessageItemBody.js +7 -7
- package/ui/FileMessageItemBody.js.map +1 -1
- package/ui/FileViewer.js +47 -83
- package/ui/FileViewer.js.map +1 -1
- package/ui/Icon.js +1 -1
- package/ui/IconButton.js +43 -65
- package/ui/IconButton.js.map +1 -1
- package/ui/ImageRenderer.js +43 -77
- package/ui/ImageRenderer.js.map +1 -1
- package/ui/Input.js +11 -29
- package/ui/Input.js.map +1 -1
- package/ui/Label.js +3 -3
- package/ui/LinkLabel.js +3 -3
- package/ui/Loader.js +15 -23
- package/ui/Loader.js.map +1 -1
- package/ui/MentionLabel.js +12 -12
- package/ui/MessageContent.js +15 -15
- package/ui/MessageInput.js +10 -10
- package/ui/MessageItemMenu.js +9 -8
- package/ui/MessageItemMenu.js.map +1 -1
- package/ui/MessageItemReactionMenu.js +7 -6
- package/ui/MessageItemReactionMenu.js.map +1 -1
- package/ui/MessageSearchFileItem.js +10 -10
- package/ui/MessageSearchItem.js +11 -11
- package/ui/MessageStatus.js +8 -8
- package/ui/Modal.js +36 -67
- package/ui/Modal.js.map +1 -1
- package/ui/MutedAvatarOverlay.js +1 -1
- package/ui/OGMessageItemBody.js +11 -11
- package/ui/OpenChannelAdminMessage.js +4 -4
- package/ui/OpenChannelAvatar.js +8 -8
- package/ui/OpenchannelConversationHeader.js +7 -7
- package/ui/OpenchannelFileMessage.js +15 -15
- package/ui/OpenchannelOGMessage.js +15 -15
- package/ui/OpenchannelThumbnailMessage.js +14 -14
- package/ui/OpenchannelUserMessage.js +15 -15
- package/ui/PlaceHolder.js +8 -7
- package/ui/PlaceHolder.js.map +1 -1
- package/ui/QuoteMessage.js +7 -7
- package/ui/QuoteMessageInput.js +7 -7
- package/ui/ReactionBadge.js +16 -25
- package/ui/ReactionBadge.js.map +1 -1
- package/ui/ReactionButton.js +4 -20
- package/ui/ReactionButton.js.map +1 -1
- package/ui/SortByRow.js +15 -24
- package/ui/SortByRow.js.map +1 -1
- package/ui/TextButton.js +22 -28
- package/ui/TextButton.js.map +1 -1
- package/ui/TextMessageItemBody.js +11 -11
- package/ui/ThumbnailMessageItemBody.js +3 -3
- package/ui/Tooltip.js +11 -16
- package/ui/Tooltip.js.map +1 -1
- package/ui/TooltipWrapper.js +10 -19
- package/ui/TooltipWrapper.js.map +1 -1
- package/ui/UnknownMessageItemBody.js +7 -7
- package/ui/UserListItem.js +12 -12
- package/ui/UserProfile.js +11 -11
- package/ui/Word.js +11 -11
- package/useSendbirdStateContext.js +1 -1
- package/{utils-b69f7583.js → utils-e0115d03.js} +1 -1
- package/{utils-b69f7583.js.map → utils-e0115d03.js.map} +1 -1
- package/{utils-972c4edb.js → utils-ea818d4c.js} +1 -1
- package/{utils-972c4edb.js.map → utils-ea818d4c.js.map} +1 -1
- package/{utils-b37c6db3.js → utils-edeb25c5.js} +1 -1
- package/{utils-b37c6db3.js.map → utils-edeb25c5.js.map} +1 -1
- package/{uuid-7c3f59a3.js → uuid-8d849862.js} +1 -1
- package/{uuid-7c3f59a3.js.map → uuid-8d849862.js.map} +1 -1
- package/withSendbird.js +1 -1
- package/ChannelListProvider-bdac2e90.js.map +0 -1
- package/ChannelProvider-0174d0f3.js.map +0 -1
- package/CreateChannelProvider-1cf4ef27.js.map +0 -1
- package/LocalizationContext-61a4a931.js.map +0 -1
- package/_rollupPluginBabelHelpers-30d122aa.js.map +0 -1
- package/cjs/ChannelListProvider-e7756677.js.map +0 -1
- package/cjs/ChannelProvider-c179835a.js.map +0 -1
- package/cjs/CreateChannelProvider-a7ca5511.js.map +0 -1
- package/cjs/LocalizationContext-f05328b8.js.map +0 -1
- package/cjs/_rollupPluginBabelHelpers-92e5e012.js.map +0 -1
- package/cjs/color-2f811855.js +0 -42
- package/cjs/color-2f811855.js.map +0 -1
- package/cjs/index-188e8e7f.js +0 -97
- package/cjs/index-188e8e7f.js.map +0 -1
- package/cjs/index-edd379fd.js.map +0 -1
- package/cjs/stringSet-afc1ff3b.js.map +0 -1
- package/cjs/ui/Dropdown.js +0 -107
- package/cjs/ui/Dropdown.js.map +0 -1
- package/color-f6548425.js.map +0 -1
- package/index-17024830.js.map +0 -1
- package/index-2034978f.js.map +0 -1
- package/index-d3358aa9.js +0 -87
- package/index-d3358aa9.js.map +0 -1
- package/stringSet-92f53c6e.js.map +0 -1
- package/ui/Dropdown.js +0 -97
- package/ui/Dropdown.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sources":["../../src/smart-components/MessageSearch/context/dux/actionTypes.ts","../../src/smart-components/MessageSearch/context/dux/reducers.ts","../../src/smart-components/MessageSearch/context/dux/initialState.ts","../../src/smart-components/MessageSearch/context/hooks/useSetChannel.ts","../../src/smart-components/MessageSearch/context/hooks/useGetSearchedMessages.ts","../../src/smart-components/MessageSearch/context/hooks/useScrollCallback.ts","../../src/smart-components/MessageSearch/context/hooks/useSearchStringEffect.ts","../../src/smart-components/MessageSearch/context/MessageSearchProvider.tsx"],"sourcesContent":["export const GET_SEARCHED_MESSAGES = 'GET_SEARCHED_MESSAGES';\nexport const GET_NEXT_SEARCHED_MESSAGES = 'GET_NEXT_SEARCHED_MESSAGES';\nexport const START_MESSAGE_SEARCH = 'START_MESSAGE_SEARCH';\nexport const START_GETTING_SEARCHED_MESSAGES = 'START_GETTING_SEARCHED_MESSAGES';\nexport const SET_QUERY_INVALID = 'SET_QUERY_INVALID';\n\nexport const SET_CURRENT_CHANNEL = 'SET_CURRENT_CHANNEL';\nexport const CHANNEL_INVALID = 'CHANNEL_INVALID';\nexport const RESET_SEARCH_STRING = 'RESET_SEARCH_STRING';\n","import { State as initialStateInterface } from './initialState';\nimport type { MessageSearchQuery } from '@sendbird/chat/message';\nimport * as actionTypes from './actionTypes';\n\ninterface MessageSearchQueryType extends MessageSearchQuery {\n key?: string;\n}\ninterface ActionInterface {\n type: string;\n /* eslint-disable @typescript-eslint/no-explicit-any */\n payload?: any;\n}\n\nexport default function reducer(\n state: initialStateInterface,\n action: ActionInterface,\n): initialStateInterface {\n switch (action.type) {\n case actionTypes.SET_CURRENT_CHANNEL: {\n const currentChannel = action.payload;\n return {\n ...state,\n currentChannel,\n initialized: true,\n };\n }\n case actionTypes.CHANNEL_INVALID: {\n return {\n ...state,\n currentChannel: null,\n initialized: false,\n };\n }\n case actionTypes.GET_SEARCHED_MESSAGES: {\n const { messages, createdQuery } = action.payload;\n if (\n createdQuery\n && createdQuery.channelUrl === (state?.currentMessageSearchQuery as MessageSearchQueryType).channelUrl\n && createdQuery.key === (state?.currentMessageSearchQuery as MessageSearchQueryType).key\n ) {\n return {\n ...state,\n loading: false,\n isInvalid: false,\n allMessages: [...messages],\n hasMoreResult: (state?.currentMessageSearchQuery as MessageSearchQueryType).hasNext,\n };\n }\n return { ...state };\n }\n case actionTypes.SET_QUERY_INVALID: {\n return {\n ...state,\n isInvalid: true,\n }\n }\n case actionTypes.START_MESSAGE_SEARCH: {\n return {\n ...state,\n isInvalid: false,\n loading: false,\n }\n }\n case actionTypes.START_GETTING_SEARCHED_MESSAGES: {\n const currentMessageSearchQuery = action.payload;\n return {\n ...state,\n loading: true,\n currentMessageSearchQuery,\n };\n }\n case actionTypes.GET_NEXT_SEARCHED_MESSAGES: {\n const messages = action.payload;\n return {\n ...state,\n allMessages: [...state.allMessages, ...messages],\n hasMoreResult: (state?.currentMessageSearchQuery as MessageSearchQuery).hasNext,\n };\n }\n case actionTypes.RESET_SEARCH_STRING: {\n return {\n ...state,\n allMessages: [],\n };\n }\n default: {\n return state;\n }\n }\n}\n","import type { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { MessageSearchQuery } from '@sendbird/chat/message';\nimport {\n ClientFileMessage,\n ClientUserMessage,\n} from '../../../../types';\n\nexport interface State {\n allMessages: Array<ClientFileMessage | ClientUserMessage>;\n loading: boolean;\n isInvalid: boolean;\n initialized: boolean;\n currentChannel: GroupChannel;\n currentMessageSearchQuery: MessageSearchQuery;\n hasMoreResult: boolean;\n}\n\nconst initialState: State = {\n allMessages: [],\n loading: false,\n isInvalid: false,\n initialized: false,\n currentChannel: null,\n currentMessageSearchQuery: null,\n hasMoreResult: false,\n};\n\nexport default initialState;\n","import type { SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport { useEffect } from 'react';\nimport type { Logger } from '../../../../lib/SendbirdState';\nimport * as messageActionTypes from '../dux/actionTypes';\n\ninterface MainProps {\n channelUrl: string;\n sdkInit: boolean;\n}\ninterface ToolProps {\n sdk: SendbirdGroupChat;\n logger: Logger;\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n}\n\nfunction useSetChannel(\n { channelUrl, sdkInit }: MainProps,\n { sdk, logger, messageSearchDispatcher }: ToolProps,\n): void {\n useEffect(() => {\n if (channelUrl && sdkInit && (sdk?.groupChannel)) {\n sdk.groupChannel.getChannel(channelUrl).then((groupChannel) => {\n logger.info('MessageSearch | useSetChannel group channel', groupChannel);\n messageSearchDispatcher({\n type: messageActionTypes.SET_CURRENT_CHANNEL,\n payload: groupChannel,\n });\n }).catch(() => {\n messageSearchDispatcher({\n type: messageActionTypes.CHANNEL_INVALID,\n payload: null,\n });\n });\n }\n }, [channelUrl, sdkInit]);\n}\n\nexport default useSetChannel;\n","import { useEffect } from 'react';\n\nimport type { GroupChannel, SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport type { MessageSearchQueryParams } from '@sendbird/chat/lib/__definition';\nimport type {\n AdminMessage,\n BaseMessage,\n FileMessage,\n MessageSearchQuery,\n UserMessage,\n} from '@sendbird/chat/message';\nimport type { SendbirdError } from '@sendbird/chat';\n\nimport type { Logger } from '../../../../lib/SendbirdState';\nimport * as messageActionTypes from '../dux/actionTypes';\n\ninterface MainProps {\n currentChannel: GroupChannel;\n channelUrl: string;\n requestString?: string;\n messageSearchQuery?: MessageSearchQuery;\n onResultLoaded?: (\n messages?: Array<BaseMessage | UserMessage | FileMessage | AdminMessage>,\n error?: SendbirdError,\n ) => void;\n retryCount: number;\n}\ninterface ToolProps {\n sdk: SendbirdGroupChat;\n logger: Logger;\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n}\n\nfunction useGetSearchedMessages(\n { currentChannel, channelUrl, requestString, messageSearchQuery, onResultLoaded, retryCount }: MainProps,\n { sdk, logger, messageSearchDispatcher }: ToolProps,\n): void {\n useEffect(() => {\n messageSearchDispatcher({\n type: messageActionTypes.START_MESSAGE_SEARCH,\n payload: null,\n });\n if (sdk && channelUrl && sdk.createMessageSearchQuery && currentChannel) {\n if (requestString) {\n const inputSearchMessageQueryObject: MessageSearchQueryParams = {\n ...messageSearchQuery,\n order: 'ts' as const,\n channelUrl,\n messageTimestampFrom: currentChannel.invitedAt,\n keyword: requestString,\n };\n const createdQuery = sdk.createMessageSearchQuery(inputSearchMessageQueryObject);\n createdQuery.next().then((messages) => {\n logger.info('MessageSearch | useGetSearchedMessages: succeeded getting messages', messages);\n messageSearchDispatcher({\n type: messageActionTypes.GET_SEARCHED_MESSAGES,\n payload: {\n messages,\n createdQuery,\n },\n });\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(messages, null);\n }\n }).catch((error) => {\n logger.warning('MessageSearch | useGetSearchedMessages: getting failed', error);\n messageSearchDispatcher({\n type: messageActionTypes.SET_QUERY_INVALID,\n payload: null,\n });\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(null, error);\n }\n });\n messageSearchDispatcher({\n type: messageActionTypes.START_GETTING_SEARCHED_MESSAGES,\n payload: createdQuery,\n });\n } else {\n logger.info('MessageSearch | useGetSeasrchedMessages: search string is empty');\n }\n }\n }, [channelUrl, messageSearchQuery, requestString, currentChannel, retryCount]);\n}\n\nexport default useGetSearchedMessages;\n","import type { SendbirdError } from '@sendbird/chat';\nimport type { AdminMessage, FileMessage, MessageSearchQuery, UserMessage } from '@sendbird/chat/message';\nimport { useCallback } from 'react';\nimport { Logger } from '../../../..';\nimport * as messageActionTypes from '../dux/actionTypes';\n\ninterface MainProps {\n currentMessageSearchQuery: MessageSearchQuery;\n hasMoreResult: boolean;\n onResultLoaded?: (\n messages?: Array<UserMessage | FileMessage | AdminMessage>,\n error?: SendbirdError,\n ) => void;\n}\n\ntype MessageSearchDispatcherType = { type: string, payload: any };\n\ninterface ToolProps {\n logger: Logger;\n messageSearchDispatcher: (payload: MessageSearchDispatcherType) => void;\n}\n\nexport type CallbackReturn = (\n callback: (\n messages: Array<UserMessage | FileMessage | AdminMessage>,\n /* eslint-disable @typescript-eslint/no-explicit-any*/\n error: any,\n ) => void\n) => void;\n\nfunction useScrollCallback(\n { currentMessageSearchQuery, hasMoreResult, onResultLoaded }: MainProps,\n { logger, messageSearchDispatcher }: ToolProps,\n): CallbackReturn {\n return useCallback((cb) => {\n if (!hasMoreResult) {\n logger.warning('MessageSearch | useScrollCallback: no more searched results', hasMoreResult);\n }\n if (currentMessageSearchQuery && currentMessageSearchQuery.hasNext) {\n currentMessageSearchQuery.next().then((messages) => {\n logger.info('MessageSearch | useScrollCallback: succeeded getting searched messages', messages);\n messageSearchDispatcher({\n type: messageActionTypes.GET_NEXT_SEARCHED_MESSAGES,\n payload: messages,\n });\n cb(messages, null);\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(messages, null);\n }\n }).catch((error) => {\n logger.warning('MessageSearch | useScrollCallback: failed getting searched messages', error);\n cb(null, error);\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(null, error);\n }\n });\n } else {\n logger.warning('MessageSearch | useScrollCallback: no currentMessageSearchQuery');\n }\n }, [currentMessageSearchQuery, hasMoreResult]);\n}\n\nexport default useScrollCallback;\n","import { useState, useEffect } from 'react';\nimport * as messageActionTypes from '../dux/actionTypes';\n\ninterface DynamicParams {\n searchString: string;\n}\n\ninterface StaticParams {\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n}\n\nconst DEBOUNCING_TIME = 500;\n\nfunction useSearchStringEffect(\n { searchString }: DynamicParams,\n { messageSearchDispatcher }: StaticParams,\n): string {\n const [requestString, setRequestString] = useState('');\n const [debouncingTimer, setDebouncingTimer] = useState(null);\n useEffect(() => {\n clearTimeout(debouncingTimer);\n if (searchString) {\n setDebouncingTimer(\n setTimeout(() => {\n setRequestString(searchString);\n }, DEBOUNCING_TIME)\n );\n } else {\n setRequestString('');\n messageSearchDispatcher({\n type: messageActionTypes.RESET_SEARCH_STRING,\n payload: '',\n });\n }\n }, [searchString]);\n return requestString;\n}\n\nexport default useSearchStringEffect;\n","import React, {\n useRef,\n useState,\n useReducer,\n} from 'react';\nimport type { MessageSearchQuery } from '@sendbird/chat/message';\nimport type { GroupChannel } from '@sendbird/chat/groupChannel';\nimport type { MessageSearchQueryParams } from '@sendbird/chat/lib/__definition';\n\nimport useSendbirdStateContext from '../../../hooks/useSendbirdStateContext';\nimport { ClientSentMessages } from '../../../types';\n\nimport messageSearchReducer from './dux/reducers';\nimport messageSearchInitialState from './dux/initialState';\nimport { State as MessageSearchReducerState } from './dux/initialState';\n\nimport useSetChannel from './hooks/useSetChannel';\nimport useGetSearchMessages from './hooks/useGetSearchedMessages';\nimport useScrollCallback, {\n CallbackReturn as UseScrollCallbackType,\n} from './hooks/useScrollCallback';\nimport useSearchStringEffect from './hooks/useSearchStringEffect';\n\nexport interface MessageSearchProviderProps {\n channelUrl: string;\n children?: React.ReactNode;\n searchString?: string;\n requestString?: string;\n messageSearchQuery?: MessageSearchQueryParams;\n onResultLoaded?(messages?: Array<ClientSentMessages>, error?: SendBird.SendBirdError): void;\n onResultClick?(message: ClientSentMessages): void;\n}\n\ninterface MessageSearchProviderInterface extends MessageSearchProviderProps {\n retryCount: number;\n setRetryCount: React.Dispatch<React.SetStateAction<number>>;\n selectedMessageId: number;\n setSelectedMessageId: React.Dispatch<React.SetStateAction<number>>;\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n scrollRef: React.MutableRefObject<HTMLDivElement>;\n allMessages: MessageSearchReducerState['allMessages'];\n loading: boolean;\n isInvalid: boolean;\n currentChannel: GroupChannel;\n currentMessageSearchQuery: MessageSearchQuery;\n hasMoreResult: boolean;\n onScroll: UseScrollCallbackType;\n handleRetryToConnect: () => void;\n handleOnScroll: (e: React.BaseSyntheticEvent) => void;\n}\n\nconst MessageSearchContext = React.createContext<MessageSearchProviderInterface|null>(undefined);\n\nconst MessageSearchProvider: React.FC<MessageSearchProviderProps> = (props: MessageSearchProviderProps) => {\n const {\n // message search props\n channelUrl,\n searchString,\n messageSearchQuery,\n onResultLoaded,\n onResultClick,\n } = props;\n\n const globalState = useSendbirdStateContext();\n\n // hook variables\n const [retryCount, setRetryCount] = useState(0); // this is a trigger flag for activating useGetSearchMessages\n const [selectedMessageId, setSelectedMessageId] = useState(0);\n const [messageSearchStore, messageSearchDispatcher] = useReducer(messageSearchReducer, messageSearchInitialState);\n const {\n allMessages,\n loading,\n isInvalid,\n currentChannel,\n currentMessageSearchQuery,\n hasMoreResult,\n } = messageSearchStore;\n\n const logger = globalState?.config?.logger;\n const sdk = globalState?.stores?.sdkStore?.sdk;\n const sdkInit = globalState?.stores?.sdkStore?.initialized;\n const scrollRef = useRef(null);\n const handleOnScroll = (e: React.BaseSyntheticEvent) => {\n const scrollElement = e.target as HTMLDivElement;\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n } = scrollElement;\n\n if (!hasMoreResult) {\n return;\n }\n if (scrollTop + clientHeight >= scrollHeight) {\n onScroll(() => {\n // after load more searched messages\n });\n }\n };\n\n useSetChannel(\n { channelUrl, sdkInit },\n { sdk, logger, messageSearchDispatcher },\n );\n\n const requestString = useSearchStringEffect({ searchString }, { messageSearchDispatcher });\n\n useGetSearchMessages(\n { currentChannel, channelUrl, requestString, messageSearchQuery, onResultLoaded, retryCount },\n { sdk, logger, messageSearchDispatcher },\n );\n\n const onScroll = useScrollCallback(\n { currentMessageSearchQuery, hasMoreResult, onResultLoaded },\n { logger, messageSearchDispatcher },\n );\n\n const handleRetryToConnect = () => {\n setRetryCount(retryCount + 1);\n };\n return (\n <MessageSearchContext.Provider value={{\n channelUrl,\n searchString,\n requestString,\n messageSearchQuery,\n onResultLoaded,\n onResultClick,\n retryCount,\n setRetryCount,\n selectedMessageId,\n setSelectedMessageId,\n messageSearchDispatcher,\n allMessages,\n loading,\n isInvalid,\n currentChannel,\n currentMessageSearchQuery,\n hasMoreResult,\n onScroll,\n scrollRef,\n handleRetryToConnect,\n handleOnScroll,\n }}>\n {props?.children}\n </MessageSearchContext.Provider>\n );\n}\n\nexport type UseMessageSearchType = () => MessageSearchProviderInterface;\nconst useMessageSearchContext: UseMessageSearchType = () => React.useContext(MessageSearchContext);\n\nexport {\n MessageSearchProvider,\n useMessageSearchContext,\n};\n"],"names":["GET_SEARCHED_MESSAGES","GET_NEXT_SEARCHED_MESSAGES","START_MESSAGE_SEARCH","START_GETTING_SEARCHED_MESSAGES","SET_QUERY_INVALID","SET_CURRENT_CHANNEL","CHANNEL_INVALID","RESET_SEARCH_STRING","reducer","state","action","type","actionTypes","currentChannel","payload","initialized","_a","messages","createdQuery","channelUrl","currentMessageSearchQuery","key","loading","isInvalid","allMessages","hasMoreResult","hasNext","initialState","useSetChannel","_b","sdkInit","sdk","logger","messageSearchDispatcher","useEffect","groupChannel","getChannel","then","info","messageActionTypes","catch","useGetSearchedMessages","requestString","messageSearchQuery","onResultLoaded","retryCount","createMessageSearchQuery","inputSearchMessageQueryObject","order","messageTimestampFrom","invitedAt","keyword","createdQuery_1","next","error","warning","useScrollCallback","useCallback","cb","DEBOUNCING_TIME","useSearchStringEffect","searchString","_c","useState","setRequestString","_d","debouncingTimer","setDebouncingTimer","clearTimeout","setTimeout","MessageSearchContext","React","createContext","undefined","MessageSearchProvider","props","onResultClick","globalState","useSendbirdStateContext","_f","setRetryCount","_g","selectedMessageId","setSelectedMessageId","_h","useReducer","messageSearchReducer","messageSearchInitialState","messageSearchStore","config","stores","sdkStore","scrollRef","useRef","handleOnScroll","e","scrollElement","target","scrollTop","scrollHeight","clientHeight","onScroll","useGetSearchMessages","handleRetryToConnect","children","useMessageSearchContext","useContext"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context.js","sources":["../../src/smart-components/MessageSearch/context/dux/actionTypes.ts","../../src/smart-components/MessageSearch/context/dux/reducers.ts","../../src/smart-components/MessageSearch/context/dux/initialState.ts","../../src/smart-components/MessageSearch/context/hooks/useSetChannel.ts","../../src/smart-components/MessageSearch/context/hooks/useGetSearchedMessages.ts","../../src/smart-components/MessageSearch/context/hooks/useScrollCallback.ts","../../src/smart-components/MessageSearch/context/hooks/useSearchStringEffect.ts","../../src/smart-components/MessageSearch/context/MessageSearchProvider.tsx"],"sourcesContent":["export const GET_SEARCHED_MESSAGES = 'GET_SEARCHED_MESSAGES';\nexport const GET_NEXT_SEARCHED_MESSAGES = 'GET_NEXT_SEARCHED_MESSAGES';\nexport const START_MESSAGE_SEARCH = 'START_MESSAGE_SEARCH';\nexport const START_GETTING_SEARCHED_MESSAGES = 'START_GETTING_SEARCHED_MESSAGES';\nexport const SET_QUERY_INVALID = 'SET_QUERY_INVALID';\n\nexport const SET_CURRENT_CHANNEL = 'SET_CURRENT_CHANNEL';\nexport const CHANNEL_INVALID = 'CHANNEL_INVALID';\nexport const RESET_SEARCH_STRING = 'RESET_SEARCH_STRING';\n","import { State as initialStateInterface } from './initialState';\nimport type { MessageSearchQuery } from '@sendbird/chat/message';\nimport * as actionTypes from './actionTypes';\n\ninterface MessageSearchQueryType extends MessageSearchQuery {\n key?: string;\n}\ninterface ActionInterface {\n type: string;\n /* eslint-disable @typescript-eslint/no-explicit-any */\n payload?: any;\n}\n\nexport default function reducer(\n state: initialStateInterface,\n action: ActionInterface,\n): initialStateInterface {\n switch (action.type) {\n case actionTypes.SET_CURRENT_CHANNEL: {\n const currentChannel = action.payload;\n return {\n ...state,\n currentChannel,\n initialized: true,\n };\n }\n case actionTypes.CHANNEL_INVALID: {\n return {\n ...state,\n currentChannel: null,\n initialized: false,\n };\n }\n case actionTypes.GET_SEARCHED_MESSAGES: {\n const { messages, createdQuery } = action.payload;\n if (\n createdQuery\n && createdQuery.channelUrl === (state?.currentMessageSearchQuery as MessageSearchQueryType).channelUrl\n && createdQuery.key === (state?.currentMessageSearchQuery as MessageSearchQueryType).key\n ) {\n return {\n ...state,\n loading: false,\n isInvalid: false,\n allMessages: [...messages],\n hasMoreResult: (state?.currentMessageSearchQuery as MessageSearchQueryType).hasNext,\n };\n }\n return { ...state };\n }\n case actionTypes.SET_QUERY_INVALID: {\n return {\n ...state,\n isInvalid: true,\n }\n }\n case actionTypes.START_MESSAGE_SEARCH: {\n return {\n ...state,\n isInvalid: false,\n loading: false,\n }\n }\n case actionTypes.START_GETTING_SEARCHED_MESSAGES: {\n const currentMessageSearchQuery = action.payload;\n return {\n ...state,\n loading: true,\n currentMessageSearchQuery,\n };\n }\n case actionTypes.GET_NEXT_SEARCHED_MESSAGES: {\n const messages = action.payload;\n return {\n ...state,\n allMessages: [...state.allMessages, ...messages],\n hasMoreResult: (state?.currentMessageSearchQuery as MessageSearchQuery).hasNext,\n };\n }\n case actionTypes.RESET_SEARCH_STRING: {\n return {\n ...state,\n allMessages: [],\n };\n }\n default: {\n return state;\n }\n }\n}\n","import type { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { MessageSearchQuery } from '@sendbird/chat/message';\nimport {\n ClientFileMessage,\n ClientUserMessage,\n} from '../../../../types';\n\nexport interface State {\n allMessages: Array<ClientFileMessage | ClientUserMessage>;\n loading: boolean;\n isInvalid: boolean;\n initialized: boolean;\n currentChannel: GroupChannel;\n currentMessageSearchQuery: MessageSearchQuery;\n hasMoreResult: boolean;\n}\n\nconst initialState: State = {\n allMessages: [],\n loading: false,\n isInvalid: false,\n initialized: false,\n currentChannel: null,\n currentMessageSearchQuery: null,\n hasMoreResult: false,\n};\n\nexport default initialState;\n","import type { SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport { useEffect } from 'react';\nimport type { Logger } from '../../../../lib/SendbirdState';\nimport * as messageActionTypes from '../dux/actionTypes';\n\ninterface MainProps {\n channelUrl: string;\n sdkInit: boolean;\n}\ninterface ToolProps {\n sdk: SendbirdGroupChat;\n logger: Logger;\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n}\n\nfunction useSetChannel(\n { channelUrl, sdkInit }: MainProps,\n { sdk, logger, messageSearchDispatcher }: ToolProps,\n): void {\n useEffect(() => {\n if (channelUrl && sdkInit && (sdk?.groupChannel)) {\n sdk.groupChannel.getChannel(channelUrl).then((groupChannel) => {\n logger.info('MessageSearch | useSetChannel group channel', groupChannel);\n messageSearchDispatcher({\n type: messageActionTypes.SET_CURRENT_CHANNEL,\n payload: groupChannel,\n });\n }).catch(() => {\n messageSearchDispatcher({\n type: messageActionTypes.CHANNEL_INVALID,\n payload: null,\n });\n });\n }\n }, [channelUrl, sdkInit]);\n}\n\nexport default useSetChannel;\n","import { useEffect } from 'react';\n\nimport type { GroupChannel, SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport { MessageSearchOrder, MessageSearchQueryParams } from '@sendbird/chat/lib/__definition';\nimport type {\n AdminMessage,\n BaseMessage,\n FileMessage,\n UserMessage,\n} from '@sendbird/chat/message';\nimport type { SendbirdError } from '@sendbird/chat';\n\nimport type { Logger } from '../../../../lib/SendbirdState';\nimport * as messageActionTypes from '../dux/actionTypes';\n\ninterface MainProps {\n currentChannel: GroupChannel;\n channelUrl: string;\n requestString?: string;\n messageSearchQuery?: MessageSearchQueryParams;\n onResultLoaded?: (\n messages?: Array<BaseMessage | UserMessage | FileMessage | AdminMessage>,\n error?: SendbirdError,\n ) => void;\n retryCount: number;\n}\ninterface ToolProps {\n sdk: SendbirdGroupChat;\n logger: Logger;\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n}\n\nfunction useGetSearchedMessages(\n { currentChannel, channelUrl, requestString, messageSearchQuery, onResultLoaded, retryCount }: MainProps,\n { sdk, logger, messageSearchDispatcher }: ToolProps,\n): void {\n useEffect(() => {\n messageSearchDispatcher({\n type: messageActionTypes.START_MESSAGE_SEARCH,\n payload: null,\n });\n if (sdk && channelUrl && sdk.createMessageSearchQuery && currentChannel) {\n if (requestString) {\n const inputSearchMessageQueryObject: MessageSearchQueryParams = {\n ...messageSearchQuery,\n order: MessageSearchOrder.TIMESTAMP,\n channelUrl,\n messageTimestampFrom: currentChannel.invitedAt,\n keyword: requestString,\n };\n const createdQuery = sdk.createMessageSearchQuery(inputSearchMessageQueryObject);\n createdQuery.next().then((messages) => {\n logger.info('MessageSearch | useGetSearchedMessages: succeeded getting messages', messages);\n messageSearchDispatcher({\n type: messageActionTypes.GET_SEARCHED_MESSAGES,\n payload: {\n messages,\n createdQuery,\n },\n });\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(messages, null);\n }\n }).catch((error) => {\n logger.warning('MessageSearch | useGetSearchedMessages: getting failed', error);\n messageSearchDispatcher({\n type: messageActionTypes.SET_QUERY_INVALID,\n payload: null,\n });\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(null, error);\n }\n });\n messageSearchDispatcher({\n type: messageActionTypes.START_GETTING_SEARCHED_MESSAGES,\n payload: createdQuery,\n });\n } else {\n logger.info('MessageSearch | useGetSeasrchedMessages: search string is empty');\n }\n }\n }, [channelUrl, messageSearchQuery, requestString, currentChannel, retryCount]);\n}\n\nexport default useGetSearchedMessages;\n","import type { SendbirdError } from '@sendbird/chat';\nimport type { AdminMessage, FileMessage, MessageSearchQuery, UserMessage } from '@sendbird/chat/message';\nimport { useCallback } from 'react';\nimport { Logger } from '../../../..';\nimport * as messageActionTypes from '../dux/actionTypes';\n\ninterface MainProps {\n currentMessageSearchQuery: MessageSearchQuery;\n hasMoreResult: boolean;\n onResultLoaded?: (\n messages?: Array<UserMessage | FileMessage | AdminMessage>,\n error?: SendbirdError,\n ) => void;\n}\n\ntype MessageSearchDispatcherType = { type: string, payload: any };\n\ninterface ToolProps {\n logger: Logger;\n messageSearchDispatcher: (payload: MessageSearchDispatcherType) => void;\n}\n\nexport type CallbackReturn = (\n callback: (\n messages: Array<UserMessage | FileMessage | AdminMessage>,\n /* eslint-disable @typescript-eslint/no-explicit-any*/\n error: any,\n ) => void\n) => void;\n\nfunction useScrollCallback(\n { currentMessageSearchQuery, hasMoreResult, onResultLoaded }: MainProps,\n { logger, messageSearchDispatcher }: ToolProps,\n): CallbackReturn {\n return useCallback((cb) => {\n if (!hasMoreResult) {\n logger.warning('MessageSearch | useScrollCallback: no more searched results', hasMoreResult);\n }\n if (currentMessageSearchQuery && currentMessageSearchQuery.hasNext) {\n currentMessageSearchQuery.next().then((messages) => {\n logger.info('MessageSearch | useScrollCallback: succeeded getting searched messages', messages);\n messageSearchDispatcher({\n type: messageActionTypes.GET_NEXT_SEARCHED_MESSAGES,\n payload: messages,\n });\n cb(messages, null);\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(messages, null);\n }\n }).catch((error) => {\n logger.warning('MessageSearch | useScrollCallback: failed getting searched messages', error);\n cb(null, error);\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(null, error);\n }\n });\n } else {\n logger.warning('MessageSearch | useScrollCallback: no currentMessageSearchQuery');\n }\n }, [currentMessageSearchQuery, hasMoreResult]);\n}\n\nexport default useScrollCallback;\n","import { useState, useEffect } from 'react';\nimport * as messageActionTypes from '../dux/actionTypes';\n\ninterface DynamicParams {\n searchString: string;\n}\n\ninterface StaticParams {\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n}\n\nconst DEBOUNCING_TIME = 500;\n\nfunction useSearchStringEffect(\n { searchString }: DynamicParams,\n { messageSearchDispatcher }: StaticParams,\n): string {\n const [requestString, setRequestString] = useState('');\n const [debouncingTimer, setDebouncingTimer] = useState(null);\n useEffect(() => {\n clearTimeout(debouncingTimer);\n if (searchString) {\n setDebouncingTimer(\n setTimeout(() => {\n setRequestString(searchString);\n }, DEBOUNCING_TIME)\n );\n } else {\n setRequestString('');\n messageSearchDispatcher({\n type: messageActionTypes.RESET_SEARCH_STRING,\n payload: '',\n });\n }\n }, [searchString]);\n return requestString;\n}\n\nexport default useSearchStringEffect;\n","import React, {\n useRef,\n useState,\n useReducer,\n} from 'react';\nimport { SendbirdError } from '@sendbird/chat';\nimport type { MessageSearchQuery } from '@sendbird/chat/message';\nimport type { GroupChannel } from '@sendbird/chat/groupChannel';\nimport type { MessageSearchQueryParams } from '@sendbird/chat/lib/__definition';\n\nimport useSendbirdStateContext from '../../../hooks/useSendbirdStateContext';\nimport { ClientSentMessages } from '../../../types';\n\nimport messageSearchReducer from './dux/reducers';\nimport messageSearchInitialState from './dux/initialState';\nimport { State as MessageSearchReducerState } from './dux/initialState';\n\nimport useSetChannel from './hooks/useSetChannel';\nimport useGetSearchMessages from './hooks/useGetSearchedMessages';\nimport useScrollCallback, {\n CallbackReturn as UseScrollCallbackType,\n} from './hooks/useScrollCallback';\nimport useSearchStringEffect from './hooks/useSearchStringEffect';\n\nexport interface MessageSearchProviderProps {\n channelUrl: string;\n children?: React.ReactElement;\n searchString?: string;\n requestString?: string;\n messageSearchQuery?: MessageSearchQueryParams;\n onResultLoaded?(messages?: Array<ClientSentMessages>, error?: SendbirdError): void;\n onResultClick?(message: ClientSentMessages): void;\n}\n\ninterface MessageSearchProviderInterface extends MessageSearchProviderProps {\n retryCount: number;\n setRetryCount: React.Dispatch<React.SetStateAction<number>>;\n selectedMessageId: number;\n setSelectedMessageId: React.Dispatch<React.SetStateAction<number>>;\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n scrollRef: React.MutableRefObject<HTMLDivElement>;\n allMessages: MessageSearchReducerState['allMessages'];\n loading: boolean;\n isInvalid: boolean;\n currentChannel: GroupChannel;\n currentMessageSearchQuery: MessageSearchQuery;\n hasMoreResult: boolean;\n onScroll: UseScrollCallbackType;\n handleRetryToConnect: () => void;\n handleOnScroll: (e: React.BaseSyntheticEvent) => void;\n}\n\nconst MessageSearchContext = React.createContext<MessageSearchProviderInterface|null>(undefined);\n\nconst MessageSearchProvider: React.FC<MessageSearchProviderProps> = (props: MessageSearchProviderProps) => {\n const {\n // message search props\n channelUrl,\n searchString,\n messageSearchQuery,\n onResultLoaded,\n onResultClick,\n } = props;\n\n const globalState = useSendbirdStateContext();\n\n // hook variables\n const [retryCount, setRetryCount] = useState(0); // this is a trigger flag for activating useGetSearchMessages\n const [selectedMessageId, setSelectedMessageId] = useState(0);\n const [messageSearchStore, messageSearchDispatcher] = useReducer(messageSearchReducer, messageSearchInitialState);\n const {\n allMessages,\n loading,\n isInvalid,\n currentChannel,\n currentMessageSearchQuery,\n hasMoreResult,\n } = messageSearchStore;\n\n const logger = globalState?.config?.logger;\n const sdk = globalState?.stores?.sdkStore?.sdk;\n const sdkInit = globalState?.stores?.sdkStore?.initialized;\n const scrollRef = useRef(null);\n const handleOnScroll = (e: React.BaseSyntheticEvent) => {\n const scrollElement = e.target as HTMLDivElement;\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n } = scrollElement;\n\n if (!hasMoreResult) {\n return;\n }\n if (scrollTop + clientHeight >= scrollHeight) {\n onScroll(() => {\n // after load more searched messages\n });\n }\n };\n\n useSetChannel(\n { channelUrl, sdkInit },\n { sdk, logger, messageSearchDispatcher },\n );\n\n const requestString = useSearchStringEffect({ searchString }, { messageSearchDispatcher });\n\n useGetSearchMessages(\n { currentChannel, channelUrl, requestString, messageSearchQuery, onResultLoaded, retryCount },\n { sdk, logger, messageSearchDispatcher },\n );\n\n const onScroll = useScrollCallback(\n { currentMessageSearchQuery, hasMoreResult, onResultLoaded },\n { logger, messageSearchDispatcher },\n );\n\n const handleRetryToConnect = () => {\n setRetryCount(retryCount + 1);\n };\n return (\n <MessageSearchContext.Provider value={{\n channelUrl,\n searchString,\n requestString,\n messageSearchQuery,\n onResultLoaded,\n onResultClick,\n retryCount,\n setRetryCount,\n selectedMessageId,\n setSelectedMessageId,\n messageSearchDispatcher,\n allMessages,\n loading,\n isInvalid,\n currentChannel,\n currentMessageSearchQuery,\n hasMoreResult,\n onScroll,\n scrollRef,\n handleRetryToConnect,\n handleOnScroll,\n }}>\n {props?.children}\n </MessageSearchContext.Provider>\n );\n}\n\nexport type UseMessageSearchType = () => MessageSearchProviderInterface;\nconst useMessageSearchContext: UseMessageSearchType = () => React.useContext(MessageSearchContext);\n\nexport {\n MessageSearchProvider,\n useMessageSearchContext,\n};\n"],"names":["GET_SEARCHED_MESSAGES","GET_NEXT_SEARCHED_MESSAGES","START_MESSAGE_SEARCH","START_GETTING_SEARCHED_MESSAGES","SET_QUERY_INVALID","SET_CURRENT_CHANNEL","CHANNEL_INVALID","RESET_SEARCH_STRING","reducer","state","action","type","actionTypes","currentChannel","payload","initialized","_a","messages","createdQuery","channelUrl","currentMessageSearchQuery","key","loading","isInvalid","allMessages","hasMoreResult","hasNext","initialState","useSetChannel","_b","sdkInit","sdk","logger","messageSearchDispatcher","useEffect","groupChannel","getChannel","then","info","messageActionTypes","catch","useGetSearchedMessages","requestString","messageSearchQuery","onResultLoaded","retryCount","createMessageSearchQuery","inputSearchMessageQueryObject","order","MessageSearchOrder","TIMESTAMP","messageTimestampFrom","invitedAt","keyword","createdQuery_1","next","error","warning","useScrollCallback","useCallback","cb","DEBOUNCING_TIME","useSearchStringEffect","searchString","_c","useState","setRequestString","_d","debouncingTimer","setDebouncingTimer","clearTimeout","setTimeout","MessageSearchContext","React","createContext","undefined","MessageSearchProvider","props","onResultClick","globalState","useSendbirdStateContext","_f","setRetryCount","_g","selectedMessageId","setSelectedMessageId","_h","useReducer","messageSearchReducer","messageSearchInitialState","messageSearchStore","config","stores","sdkStore","scrollRef","useRef","handleOnScroll","e","scrollElement","target","scrollTop","scrollHeight","clientHeight","onScroll","useGetSearchMessages","handleRetryToConnect","children","useMessageSearchContext","useContext"],"mappings":"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"}
|
package/MessageSearch.js
CHANGED
|
@@ -1,27 +1,28 @@
|
|
|
1
1
|
import React__default, { useState, useContext, useEffect } from 'react';
|
|
2
2
|
import { MessageSearchUI } from './MessageSearch/components/MessageSearchUI.js';
|
|
3
|
-
import { a as LocalizationContext } from './LocalizationContext-
|
|
3
|
+
import { a as LocalizationContext } from './LocalizationContext-7d740b0a.js';
|
|
4
4
|
import Icon, { IconTypes, IconColors } from './ui/Icon.js';
|
|
5
5
|
import IconButton from './ui/IconButton.js';
|
|
6
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from './index-
|
|
6
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from './index-5efc096b.js';
|
|
7
7
|
import Loader from './ui/Loader.js';
|
|
8
8
|
import { MessageSearchProvider } from './MessageSearch/context.js';
|
|
9
9
|
import './ui/MessageSearchItem.js';
|
|
10
|
-
import './tslib.es6-
|
|
11
|
-
import './index-
|
|
12
|
-
import './index-
|
|
13
|
-
import './index-
|
|
14
|
-
import './index-
|
|
10
|
+
import './tslib.es6-5c8a20bb.js';
|
|
11
|
+
import './index-d4e18807.js';
|
|
12
|
+
import './index-3d519005.js';
|
|
13
|
+
import './index-62f1a209.js';
|
|
14
|
+
import './index-47b8d0ce.js';
|
|
15
15
|
import './ui/Avatar.js';
|
|
16
16
|
import './ui/ImageRenderer.js';
|
|
17
|
-
import './
|
|
18
|
-
import '
|
|
19
|
-
import './uuid-7c3f59a3.js';
|
|
20
|
-
import './index-2034978f.js';
|
|
17
|
+
import './uuid-8d849862.js';
|
|
18
|
+
import './index-00ac1d60.js';
|
|
21
19
|
import './ui/MessageSearchFileItem.js';
|
|
22
|
-
import './stringSet-
|
|
20
|
+
import './stringSet-53204a58.js';
|
|
21
|
+
import './_rollupPluginBabelHelpers-4e546dea.js';
|
|
22
|
+
import 'prop-types';
|
|
23
23
|
import './useSendbirdStateContext.js';
|
|
24
24
|
import './withSendbird.js';
|
|
25
|
+
import '@sendbird/chat/lib/__definition';
|
|
25
26
|
|
|
26
27
|
var COMPONENT_CLASS_NAME = 'sendbird-message-search-pannel';
|
|
27
28
|
|
package/MessageSearch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageSearch.js","sources":["../src/smart-components/MessageSearch/index.tsx"],"sourcesContent":["import React, { useState, useContext, useEffect } from 'react';\nimport './index.scss';\n\nimport MessageSearch, { MessageSearchUIProps } from './components/MessageSearchUI';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\nimport Icon, { IconTypes, IconColors } from '../../ui/Icon';\nimport IconButton from '../../ui/IconButton';\nimport Label, { LabelTypography, LabelColors } from '../../ui/Label';\nimport Loader from '../../ui/Loader';\nimport { MessageSearchProvider, MessageSearchProviderProps } from './context/MessageSearchProvider';\n\nexport interface MessageSearchPannelProps extends\n MessageSearchUIProps, MessageSearchProviderProps {\n onResultClick?: (message) => void;\n onCloseClick?: () => void;\n}\n\nconst COMPONENT_CLASS_NAME = 'sendbird-message-search-pannel';\n\nfunction MessageSearchPannel(props: MessageSearchPannelProps): JSX.Element {\n const {\n channelUrl,\n onResultClick,\n onCloseClick,\n messageSearchQuery,\n renderPlaceHolderError,\n renderPlaceHolderLoading,\n renderPlaceHolderNoString,\n renderPlaceHolderEmptyList,\n renderSearchItem,\n } = props;\n\n const [searchString, setSearchString] = useState('');\n const [inputString, setInputString] = useState('');\n const [loading, setLoading] = useState(false);\n const { stringSet } = useContext(LocalizationContext);\n\n let timeout = null;\n useEffect(() => {\n if (timeout) {\n clearTimeout(timeout);\n }\n timeout = setTimeout(() => {\n setSearchString(inputString);\n setLoading(true);\n timeout = null;\n }, 500);\n }, [inputString]);\n\n const handleOnChangeInputString = (e) => {\n setInputString(e.target.value);\n };\n\n const handleOnResultLoaded = () => {\n setLoading(false);\n };\n\n const handleOnClickResetStringButton = (e) => {\n e.stopPropagation();\n setInputString('');\n setSearchString('');\n };\n\n return (\n <div className={COMPONENT_CLASS_NAME}>\n <div className={`${COMPONENT_CLASS_NAME}__header`}>\n <Label\n className={`${COMPONENT_CLASS_NAME}__header__title`}\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.SEARCH_IN_CHANNEL}\n </Label>\n <IconButton\n className={`${COMPONENT_CLASS_NAME}__header__close-button`}\n width=\"32px\"\n height=\"32px\"\n onClick={onCloseClick}\n >\n <Icon\n type={IconTypes.CLOSE}\n fillColor={IconColors.ON_BACKGROUND_1}\n width=\"22px\"\n height=\"22px\"\n />\n </IconButton>\n </div>\n <div className={`${COMPONENT_CLASS_NAME}__input`}>\n <div className={`${COMPONENT_CLASS_NAME}__input__container`}>\n <Icon\n className={`${COMPONENT_CLASS_NAME}__input__container__search-icon`}\n type={IconTypes.SEARCH}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"24px\"\n height=\"24px\"\n />\n <input\n className={`${COMPONENT_CLASS_NAME}__input__container__input-area`}\n placeholder={stringSet.SEARCH}\n value={inputString}\n onChange={handleOnChangeInputString}\n />\n {\n inputString && loading && (\n <Loader\n className={`${COMPONENT_CLASS_NAME}__input__container__spinner`}\n width=\"20px\"\n height=\"20px\"\n >\n <Icon\n type={IconTypes.SPINNER}\n fillColor={IconColors.PRIMARY}\n width=\"20px\"\n height=\"20px\"\n />\n </Loader>\n )\n }\n {\n !loading && inputString && (\n <Icon\n className={`${COMPONENT_CLASS_NAME}__input__container__reset-input-button`}\n type={IconTypes.REMOVE}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"20px\"\n height=\"20px\"\n onClick={handleOnClickResetStringButton}\n />\n )\n }\n </div>\n </div>\n <div className={`${COMPONENT_CLASS_NAME}__message-search`}>\n <MessageSearchProvider\n channelUrl={channelUrl}\n searchString={searchString}\n onResultClick={onResultClick}\n onResultLoaded={handleOnResultLoaded}\n messageSearchQuery={messageSearchQuery}\n >\n <MessageSearch\n renderPlaceHolderError={renderPlaceHolderError}\n renderPlaceHolderLoading={renderPlaceHolderLoading}\n renderPlaceHolderNoString={renderPlaceHolderNoString}\n renderPlaceHolderEmptyList={renderPlaceHolderEmptyList}\n renderSearchItem={renderSearchItem}\n />\n </MessageSearchProvider>\n </div>\n </div>\n );\n}\n\nexport default MessageSearchPannel;\n"],"names":["COMPONENT_CLASS_NAME","MessageSearchPannel","props","channelUrl","onResultClick","onCloseClick","messageSearchQuery","renderPlaceHolderError","renderPlaceHolderLoading","renderPlaceHolderNoString","renderPlaceHolderEmptyList","renderSearchItem","_a","useState","searchString","setSearchString","_b","inputString","setInputString","_c","loading","setLoading","stringSet","useContext","LocalizationContext","timeout","useEffect","clearTimeout","setTimeout","handleOnChangeInputString","e","target","value","handleOnResultLoaded","handleOnClickResetStringButton","stopPropagation","React","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","SEARCH_IN_CHANNEL","IconTypes","CLOSE","IconColors","ON_BACKGROUND_1","SEARCH","ON_BACKGROUND_3","SPINNER","PRIMARY","REMOVE","MessageSearch"],"mappings":"
|
|
1
|
+
{"version":3,"file":"MessageSearch.js","sources":["../src/smart-components/MessageSearch/index.tsx"],"sourcesContent":["import React, { useState, useContext, useEffect } from 'react';\nimport './index.scss';\n\nimport MessageSearch, { MessageSearchUIProps } from './components/MessageSearchUI';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\nimport Icon, { IconTypes, IconColors } from '../../ui/Icon';\nimport IconButton from '../../ui/IconButton';\nimport Label, { LabelTypography, LabelColors } from '../../ui/Label';\nimport Loader from '../../ui/Loader';\nimport { MessageSearchProvider, MessageSearchProviderProps } from './context/MessageSearchProvider';\n\nexport interface MessageSearchPannelProps extends\n MessageSearchUIProps, MessageSearchProviderProps {\n onResultClick?: (message) => void;\n onCloseClick?: () => void;\n}\n\nconst COMPONENT_CLASS_NAME = 'sendbird-message-search-pannel';\n\nfunction MessageSearchPannel(props: MessageSearchPannelProps): JSX.Element {\n const {\n channelUrl,\n onResultClick,\n onCloseClick,\n messageSearchQuery,\n renderPlaceHolderError,\n renderPlaceHolderLoading,\n renderPlaceHolderNoString,\n renderPlaceHolderEmptyList,\n renderSearchItem,\n } = props;\n\n const [searchString, setSearchString] = useState('');\n const [inputString, setInputString] = useState('');\n const [loading, setLoading] = useState(false);\n const { stringSet } = useContext(LocalizationContext);\n\n let timeout = null;\n useEffect(() => {\n if (timeout) {\n clearTimeout(timeout);\n }\n timeout = setTimeout(() => {\n setSearchString(inputString);\n setLoading(true);\n timeout = null;\n }, 500);\n }, [inputString]);\n\n const handleOnChangeInputString = (e) => {\n setInputString(e.target.value);\n };\n\n const handleOnResultLoaded = () => {\n setLoading(false);\n };\n\n const handleOnClickResetStringButton = (e) => {\n e.stopPropagation();\n setInputString('');\n setSearchString('');\n };\n\n return (\n <div className={COMPONENT_CLASS_NAME}>\n <div className={`${COMPONENT_CLASS_NAME}__header`}>\n <Label\n className={`${COMPONENT_CLASS_NAME}__header__title`}\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.SEARCH_IN_CHANNEL}\n </Label>\n <IconButton\n className={`${COMPONENT_CLASS_NAME}__header__close-button`}\n width=\"32px\"\n height=\"32px\"\n onClick={onCloseClick}\n >\n <Icon\n type={IconTypes.CLOSE}\n fillColor={IconColors.ON_BACKGROUND_1}\n width=\"22px\"\n height=\"22px\"\n />\n </IconButton>\n </div>\n <div className={`${COMPONENT_CLASS_NAME}__input`}>\n <div className={`${COMPONENT_CLASS_NAME}__input__container`}>\n <Icon\n className={`${COMPONENT_CLASS_NAME}__input__container__search-icon`}\n type={IconTypes.SEARCH}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"24px\"\n height=\"24px\"\n />\n <input\n className={`${COMPONENT_CLASS_NAME}__input__container__input-area`}\n placeholder={stringSet.SEARCH}\n value={inputString}\n onChange={handleOnChangeInputString}\n />\n {\n inputString && loading && (\n <Loader\n className={`${COMPONENT_CLASS_NAME}__input__container__spinner`}\n width=\"20px\"\n height=\"20px\"\n >\n <Icon\n type={IconTypes.SPINNER}\n fillColor={IconColors.PRIMARY}\n width=\"20px\"\n height=\"20px\"\n />\n </Loader>\n )\n }\n {\n !loading && inputString && (\n <Icon\n className={`${COMPONENT_CLASS_NAME}__input__container__reset-input-button`}\n type={IconTypes.REMOVE}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"20px\"\n height=\"20px\"\n onClick={handleOnClickResetStringButton}\n />\n )\n }\n </div>\n </div>\n <div className={`${COMPONENT_CLASS_NAME}__message-search`}>\n <MessageSearchProvider\n channelUrl={channelUrl}\n searchString={searchString}\n onResultClick={onResultClick}\n onResultLoaded={handleOnResultLoaded}\n messageSearchQuery={messageSearchQuery}\n >\n <MessageSearch\n renderPlaceHolderError={renderPlaceHolderError}\n renderPlaceHolderLoading={renderPlaceHolderLoading}\n renderPlaceHolderNoString={renderPlaceHolderNoString}\n renderPlaceHolderEmptyList={renderPlaceHolderEmptyList}\n renderSearchItem={renderSearchItem}\n />\n </MessageSearchProvider>\n </div>\n </div>\n );\n}\n\nexport default MessageSearchPannel;\n"],"names":["COMPONENT_CLASS_NAME","MessageSearchPannel","props","channelUrl","onResultClick","onCloseClick","messageSearchQuery","renderPlaceHolderError","renderPlaceHolderLoading","renderPlaceHolderNoString","renderPlaceHolderEmptyList","renderSearchItem","_a","useState","searchString","setSearchString","_b","inputString","setInputString","_c","loading","setLoading","stringSet","useContext","LocalizationContext","timeout","useEffect","clearTimeout","setTimeout","handleOnChangeInputString","e","target","value","handleOnResultLoaded","handleOnClickResetStringButton","stopPropagation","React","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","SEARCH_IN_CHANNEL","IconTypes","CLOSE","IconColors","ON_BACKGROUND_1","SEARCH","ON_BACKGROUND_3","SPINNER","PRIMARY","REMOVE","MessageSearch"],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React__default, { useContext } from 'react';
|
|
2
|
-
import { a as LocalizationContext } from '../../LocalizationContext-
|
|
3
|
-
import { L as Label, a as LabelTypography } from '../../index-
|
|
4
|
-
import '../../stringSet-
|
|
5
|
-
import '../../index-
|
|
6
|
-
import '../../_rollupPluginBabelHelpers-
|
|
2
|
+
import { a as LocalizationContext } from '../../LocalizationContext-7d740b0a.js';
|
|
3
|
+
import { L as Label, a as LabelTypography } from '../../index-5efc096b.js';
|
|
4
|
+
import '../../stringSet-53204a58.js';
|
|
5
|
+
import '../../index-3d519005.js';
|
|
6
|
+
import '../../_rollupPluginBabelHelpers-4e546dea.js';
|
|
7
7
|
import 'prop-types';
|
|
8
8
|
|
|
9
9
|
var FrozenNotification = function FrozenNotification() {
|
|
@@ -2,25 +2,25 @@ import React__default, { useContext } from 'react';
|
|
|
2
2
|
import Avatar from '../../ui/Avatar.js';
|
|
3
3
|
import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
|
|
4
4
|
import IconButton from '../../ui/IconButton.js';
|
|
5
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-
|
|
6
|
-
import { a as LocalizationContext } from '../../LocalizationContext-
|
|
7
|
-
import { u as useOpenChannelContext, k as kFormatter } from '../../OpenChannelProvider-
|
|
8
|
-
import '../../tslib.es6-
|
|
5
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-5efc096b.js';
|
|
6
|
+
import { a as LocalizationContext } from '../../LocalizationContext-7d740b0a.js';
|
|
7
|
+
import { u as useOpenChannelContext, k as kFormatter } from '../../OpenChannelProvider-2e64f2d2.js';
|
|
8
|
+
import '../../tslib.es6-5c8a20bb.js';
|
|
9
9
|
import '../../ui/ImageRenderer.js';
|
|
10
|
-
import '../../
|
|
10
|
+
import '../../uuid-8d849862.js';
|
|
11
|
+
import '../../_rollupPluginBabelHelpers-4e546dea.js';
|
|
11
12
|
import 'prop-types';
|
|
12
|
-
import '../../
|
|
13
|
-
import '../../
|
|
14
|
-
import '../../index-
|
|
15
|
-
import '../../
|
|
16
|
-
import '../../
|
|
17
|
-
import '../../
|
|
18
|
-
import '../../
|
|
19
|
-
import '../../
|
|
20
|
-
import '../../__bundle-
|
|
21
|
-
import '../../
|
|
22
|
-
import '../../
|
|
23
|
-
import '../../__bundle-7dfccc8c-37d3f8ab.js';
|
|
13
|
+
import '../../stringSet-53204a58.js';
|
|
14
|
+
import '../../index-3d519005.js';
|
|
15
|
+
import '../../index-d4e18807.js';
|
|
16
|
+
import '../../UserProfileContext-9b7b1d4f.js';
|
|
17
|
+
import '../../compareIds-b5421ba2.js';
|
|
18
|
+
import '../../topics-3dbd69e2.js';
|
|
19
|
+
import '../../sendbird-ae433167.js';
|
|
20
|
+
import '../../__bundle-6316ce22-41ee43fe.js';
|
|
21
|
+
import '../../__bundle-fbda47dd-ee456253.js';
|
|
22
|
+
import '../../openChannel-654409d7.js';
|
|
23
|
+
import '../../__bundle-7dfccc8c-c1f95345.js';
|
|
24
24
|
import '../../useSendbirdStateContext.js';
|
|
25
25
|
import '../../withSendbird.js';
|
|
26
26
|
|
|
@@ -1,30 +1,30 @@
|
|
|
1
1
|
import React__default, { useContext } from 'react';
|
|
2
|
-
import { a as LocalizationContext } from '../../LocalizationContext-
|
|
2
|
+
import { a as LocalizationContext } from '../../LocalizationContext-7d740b0a.js';
|
|
3
3
|
import MessageInput from '../../ui/MessageInput.js';
|
|
4
|
-
import { u as useOpenChannelContext } from '../../OpenChannelProvider-
|
|
5
|
-
import '../../stringSet-
|
|
6
|
-
import '../../index-
|
|
7
|
-
import '../../_rollupPluginBabelHelpers-
|
|
4
|
+
import { u as useOpenChannelContext } from '../../OpenChannelProvider-2e64f2d2.js';
|
|
5
|
+
import '../../stringSet-53204a58.js';
|
|
6
|
+
import '../../index-3d519005.js';
|
|
7
|
+
import '../../_rollupPluginBabelHelpers-4e546dea.js';
|
|
8
8
|
import 'prop-types';
|
|
9
|
-
import '../../const-
|
|
10
|
-
import '../../const-
|
|
9
|
+
import '../../const-2017fde0.js';
|
|
10
|
+
import '../../const-43ed4c6f.js';
|
|
11
11
|
import '../../ui/IconButton.js';
|
|
12
|
-
import '../../
|
|
13
|
-
import '../../index-
|
|
12
|
+
import '../../tslib.es6-5c8a20bb.js';
|
|
13
|
+
import '../../index-9ba00bc1.js';
|
|
14
|
+
import '../../index-5efc096b.js';
|
|
14
15
|
import '../../ui/MentionUserLabel.js';
|
|
15
16
|
import '../../ui/Icon.js';
|
|
16
|
-
import '../../index-
|
|
17
|
-
import '../../
|
|
18
|
-
import '../../
|
|
19
|
-
import '../../
|
|
20
|
-
import '../../
|
|
21
|
-
import '../../
|
|
22
|
-
import '../../
|
|
23
|
-
import '../../__bundle-
|
|
24
|
-
import '../../
|
|
25
|
-
import '../../
|
|
26
|
-
import '../../
|
|
27
|
-
import '../../uuid-7c3f59a3.js';
|
|
17
|
+
import '../../index-f37bc955.js';
|
|
18
|
+
import '../../index-d4e18807.js';
|
|
19
|
+
import '../../UserProfileContext-9b7b1d4f.js';
|
|
20
|
+
import '../../compareIds-b5421ba2.js';
|
|
21
|
+
import '../../topics-3dbd69e2.js';
|
|
22
|
+
import '../../sendbird-ae433167.js';
|
|
23
|
+
import '../../__bundle-6316ce22-41ee43fe.js';
|
|
24
|
+
import '../../__bundle-fbda47dd-ee456253.js';
|
|
25
|
+
import '../../openChannel-654409d7.js';
|
|
26
|
+
import '../../__bundle-7dfccc8c-c1f95345.js';
|
|
27
|
+
import '../../uuid-8d849862.js';
|
|
28
28
|
import '../../useSendbirdStateContext.js';
|
|
29
29
|
import '../../withSendbird.js';
|
|
30
30
|
|
|
@@ -1,55 +1,55 @@
|
|
|
1
1
|
import React__default, { useContext, useMemo, useState, useRef } from 'react';
|
|
2
|
-
import { f as format } from '../../index-
|
|
2
|
+
import { f as format } from '../../index-d4e18807.js';
|
|
3
3
|
import OpenchannelUserMessage from '../../ui/OpenchannelUserMessage.js';
|
|
4
4
|
import OpenChannelAdminMessage from '../../ui/OpenChannelAdminMessage.js';
|
|
5
5
|
import OpenchannelOGMessage from '../../ui/OpenchannelOGMessage.js';
|
|
6
6
|
import OpenchannelThumbnailMessage from '../../ui/OpenchannelThumbnailMessage.js';
|
|
7
7
|
import OpenchannelFileMessage from '../../ui/OpenchannelFileMessage.js';
|
|
8
8
|
import DateSeparator from '../../ui/DateSeparator.js';
|
|
9
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-
|
|
9
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-5efc096b.js';
|
|
10
10
|
import MessageInput from '../../ui/MessageInput.js';
|
|
11
11
|
import FileViewer from '../../ui/FileViewer.js';
|
|
12
12
|
import Modal from '../../ui/Modal.js';
|
|
13
|
-
import { a as LocalizationContext, u as useLocalization } from '../../LocalizationContext-
|
|
14
|
-
import {
|
|
13
|
+
import { a as LocalizationContext, u as useLocalization } from '../../LocalizationContext-7d740b0a.js';
|
|
14
|
+
import { _ as __assign } from '../../tslib.es6-5c8a20bb.js';
|
|
15
|
+
import { u as useOpenChannelContext } from '../../OpenChannelProvider-2e64f2d2.js';
|
|
15
16
|
import useSendbirdStateContext from '../../useSendbirdStateContext.js';
|
|
16
|
-
import '../../index-
|
|
17
|
-
import '../../tslib.es6-c793443a.js';
|
|
17
|
+
import '../../index-3d519005.js';
|
|
18
18
|
import '../../ui/Avatar.js';
|
|
19
19
|
import '../../ui/ImageRenderer.js';
|
|
20
|
-
import '../../_rollupPluginBabelHelpers-30d122aa.js';
|
|
21
|
-
import 'prop-types';
|
|
22
20
|
import '../../ui/Icon.js';
|
|
23
|
-
import '../../
|
|
21
|
+
import '../../_rollupPluginBabelHelpers-4e546dea.js';
|
|
22
|
+
import 'prop-types';
|
|
23
|
+
import '../../uuid-8d849862.js';
|
|
24
24
|
import '../../ui/ContextMenu.js';
|
|
25
|
-
import '../../index-65007eeb.js';
|
|
26
25
|
import 'react-dom';
|
|
27
26
|
import '../../ui/SortByRow.js';
|
|
28
|
-
import '../../
|
|
27
|
+
import '../../index-f37bc955.js';
|
|
28
|
+
import '../../stringSet-53204a58.js';
|
|
29
29
|
import '../../ui/IconButton.js';
|
|
30
30
|
import '../../ui/Loader.js';
|
|
31
31
|
import '../../ui/UserProfile.js';
|
|
32
32
|
import '../../withSendbird.js';
|
|
33
33
|
import '../../sendbirdSelectors.js';
|
|
34
|
-
import '../../topics-
|
|
35
|
-
import '../../utils-
|
|
36
|
-
import '../../index-
|
|
37
|
-
import '../../UserProfileContext-
|
|
38
|
-
import '../../utils-
|
|
39
|
-
import '../../openChannelUtils-
|
|
34
|
+
import '../../topics-3dbd69e2.js';
|
|
35
|
+
import '../../utils-e0115d03.js';
|
|
36
|
+
import '../../index-9ba00bc1.js';
|
|
37
|
+
import '../../UserProfileContext-9b7b1d4f.js';
|
|
38
|
+
import '../../utils-ea818d4c.js';
|
|
39
|
+
import '../../openChannelUtils-1ae6ef95.js';
|
|
40
40
|
import '../../ui/LinkLabel.js';
|
|
41
41
|
import '../../ui/TextButton.js';
|
|
42
|
-
import '../../color-
|
|
43
|
-
import '../../const-
|
|
44
|
-
import '../../const-
|
|
42
|
+
import '../../color-7a9e9046.js';
|
|
43
|
+
import '../../const-2017fde0.js';
|
|
44
|
+
import '../../const-43ed4c6f.js';
|
|
45
45
|
import '../../ui/MentionUserLabel.js';
|
|
46
|
-
import '../../index-
|
|
47
|
-
import '../../compareIds-
|
|
48
|
-
import '../../sendbird-
|
|
49
|
-
import '../../__bundle-6316ce22-
|
|
50
|
-
import '../../__bundle-fbda47dd-
|
|
51
|
-
import '../../openChannel-
|
|
52
|
-
import '../../__bundle-7dfccc8c-
|
|
46
|
+
import '../../index-7965b338.js';
|
|
47
|
+
import '../../compareIds-b5421ba2.js';
|
|
48
|
+
import '../../sendbird-ae433167.js';
|
|
49
|
+
import '../../__bundle-6316ce22-41ee43fe.js';
|
|
50
|
+
import '../../__bundle-fbda47dd-ee456253.js';
|
|
51
|
+
import '../../openChannel-654409d7.js';
|
|
52
|
+
import '../../__bundle-7dfccc8c-c1f95345.js';
|
|
53
53
|
|
|
54
54
|
function RemoveMessageModal(_a) {
|
|
55
55
|
var onCloseModal = _a.onCloseModal,
|
|
@@ -65,8 +65,7 @@ function RemoveMessageModal(_a) {
|
|
|
65
65
|
|
|
66
66
|
// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types
|
|
67
67
|
var SUPPORTED_MIMES = {
|
|
68
|
-
IMAGE: ['image/jpeg', 'image/jpg', 'image/png', 'image/gif', 'image/svg+xml', 'image/webp'
|
|
69
|
-
],
|
|
68
|
+
IMAGE: ['image/jpeg', 'image/jpg', 'image/png', 'image/gif', 'image/svg+xml', 'image/webp'],
|
|
70
69
|
VIDEO: ['video/mpeg', 'video/ogg', 'video/webm', 'video/mp4']
|
|
71
70
|
};
|
|
72
71
|
var isImage = function isImage(type) {
|
|
@@ -75,6 +74,7 @@ var isImage = function isImage(type) {
|
|
|
75
74
|
var isVideo = function isVideo(type) {
|
|
76
75
|
return SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;
|
|
77
76
|
};
|
|
77
|
+
__assign({}, SUPPORTED_MIMES);
|
|
78
78
|
|
|
79
79
|
var MessageTypes = {
|
|
80
80
|
ADMIN: 'ADMIN',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenChannelMessage.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelMessage/RemoveMessageModal.tsx","../../../src/ui/FileViewer/types.js","../../../src/smart-components/OpenChannel/components/OpenChannelMessage/utils.ts","../../../src/smart-components/OpenChannel/components/OpenChannelMessage/index.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport { ClientFileMessage, ClientUserMessage } from '../../../../index';\nimport Modal from '../../../../ui/Modal';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\ninterface Props {\n onCloseModal(): void;\n onDeleteMessage(message: ClientUserMessage | ClientFileMessage, callback?: () => void): void;\n}\n\nexport default function RemoveMessageModal({\n onCloseModal,\n onDeleteMessage,\n}: Props): JSX.Element {\n const { stringSet } = useContext(LocalizationContext);\n\n return (\n <Modal\n onCancel={onCloseModal}\n onSubmit={onDeleteMessage}\n submitText={stringSet.MESSAGE_MENU__DELETE}\n titleText={stringSet.MODAL__DELETE_MESSAGE__TITLE}\n />\n );\n}\n","// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types\nconst SUPPORTED_MIMES = {\n IMAGE: [\n 'image/jpeg',\n 'image/jpg',\n 'image/png',\n 'image/gif',\n 'image/svg+xml',\n 'image/webp', // not supported in IE\n ],\n VIDEO: [\n 'video/mpeg',\n 'video/ogg',\n 'video/webm',\n 'video/mp4',\n ],\n};\n\nexport const isImage = (type) => SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;\nexport const isVideo = (type) => SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;\nexport const isGif = (type) => type === 'image/gif';\nexport const unSupported = (type) => !(isImage(type) || isVideo(type));\n\nexport default SUPPORTED_MIMES;\n","import { AdminMessage, FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { isImage, isVideo } from '../../../../ui/FileViewer/types';\n\nexport const MessageTypes = {\n ADMIN: 'ADMIN',\n USER: 'USER',\n FILE: 'FILE',\n THUMBNAIL: 'THUMBNAIL',\n OG: 'OG',\n UNKNOWN: 'UNKNOWN',\n};\n\nexport const SendingMessageStatus = {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n};\n\nexport const getMessageType = (message: UserMessage | FileMessage | AdminMessage): string => {\n if ((message?.isUserMessage?.()) || message?.messageType === 'user') {\n return (message?.ogMetaData)\n ? MessageTypes.OG\n : MessageTypes.USER;\n }\n if (message?.isAdminMessage?.()) {\n return MessageTypes.ADMIN;\n }\n if (message?.messageType === 'file') {\n return (isImage((message as FileMessage).type) || isVideo((message as FileMessage).type))\n ? MessageTypes.THUMBNAIL\n : MessageTypes.FILE;\n }\n return MessageTypes.UNKNOWN;\n};\n\nexport default {\n MessageTypes,\n SendingMessageStatus,\n getMessageType,\n};\n","import React, {\n useState,\n useRef,\n ReactElement,\n useMemo,\n} from 'react';\nimport { AdminMessage, FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { User } from '@sendbird/chat';\nimport format from 'date-fns/format';\n\nimport OpenChannelUserMessage from '../../../../ui/OpenchannelUserMessage';\nimport OpenChannelAdminMessage from '../../../../ui/OpenChannelAdminMessage';\nimport OpenChannelOGMessage from '../../../../ui/OpenchannelOGMessage';\nimport OpenChannelThumbnailMessage from '../../../../ui/OpenchannelThumbnailMessage';\nimport OpenChannelFileMessage from '../../../../ui/OpenchannelFileMessage';\n// import UnknownMessage from '../../../../ui/UnknownMessage';\n\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport MessageInput from '../../../../ui/MessageInput';\nimport FileViewer from '../../../../ui/FileViewer';\n\nimport RemoveMessageModal from './RemoveMessageModal';\nimport {\n MessageTypes,\n SendingMessageStatus,\n getMessageType,\n} from './utils';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport type { RenderMessageProps } from '../../../../types';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\nexport type OpenChannelMessageProps = {\n renderMessage?: (props: RenderMessageProps) => React.ElementType<RenderMessageProps>;\n message: UserMessage | FileMessage | AdminMessage;\n chainTop?: boolean;\n chainBottom?: boolean;\n hasSeparator?: boolean;\n editDisabled?: boolean;\n};\n\nexport default function MessagOpenChannelMessageeHoc(props: OpenChannelMessageProps): ReactElement {\n const {\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n renderMessage,\n } = props;\n\n const {\n currentOpenChannel,\n deleteMessage,\n updateMessage,\n resendMessage,\n } = useOpenChannelContext();\n const { dateLocale } = useLocalization();\n const editDisabled = currentOpenChannel?.isFrozen;\n\n const globalState = useSendbirdStateContext();\n const userId = globalState?.config?.userId;\n\n let sender: User = null;\n if (message?.messageType !== 'admin') {\n sender = (message as UserMessage | FileMessage)?.sender;\n }\n\n const RenderedMessage = useMemo(() => (props: RenderMessageProps) => {\n return (\n <>\n {\n renderMessage\n ? (renderMessage(props))\n : null\n }\n </>\n );\n }, [message, renderMessage]);\n\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const editMessageInputRef = useRef(null);\n\n let isByMe = false;\n\n if (sender && message?.messageType !== 'admin') {\n // pending and failed messages are by me\n isByMe = (userId === sender.userId)\n || ((message as UserMessage | FileMessage)?.sendingStatus === SendingMessageStatus.PENDING)\n || ((message as UserMessage | FileMessage)?.sendingStatus === SendingMessageStatus.FAILED);\n }\n\n if (renderMessage && RenderedMessage) {\n return (\n <div className=\"sendbird-msg-hoc sendbird-msg--scroll-ref\">\n <RenderedMessage message={message} chainTop={chainTop} chainBottom={chainBottom} />\n </div>\n );\n }\n\n if (message?.messageType === 'user' && showEdit) {\n return (\n <MessageInput\n isEdit\n disabled={editDisabled}\n ref={editMessageInputRef}\n message={message as UserMessage}\n name={message?.messageId}\n onUpdateMessage={({ messageId, message }) => {\n updateMessage(messageId, message);\n setShowEdit(false);\n }}\n onCancelEdit={() => { setShowEdit(false); }}\n />\n );\n }\n\n return (\n <div className=\"sendbird-msg-hoc sendbird-msg--scroll-ref\">\n {/* date-separator */}\n {\n (hasSeparator && message?.createdAt) && (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message?.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n )\n }\n {/* Message */}\n {\n {\n [MessageTypes.ADMIN]: (() => {\n if (message?.messageType === 'admin') {\n return (\n <OpenChannelAdminMessage message={message as AdminMessage} />\n )\n }\n })(),\n [MessageTypes.FILE]: (() => {\n if (message?.messageType === 'file') {\n return (\n <OpenChannelFileMessage\n message={message as FileMessage}\n isOperator={currentOpenChannel?.isOperator((message as FileMessage)?.sender?.userId)}\n disabled={editDisabled}\n userId={userId}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.OG]: (() => {\n if (message?.messageType === 'user') {\n return (\n <OpenChannelOGMessage\n message={message as UserMessage}\n isOperator={currentOpenChannel?.isOperator((message as UserMessage)?.sender?.userId)}\n userId={userId}\n showEdit={setShowEdit}\n disabled={editDisabled}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.THUMBNAIL]: (() => {\n if (message?.messageType === 'file') {\n return (\n <OpenChannelThumbnailMessage\n message={message as FileMessage}\n isOperator={currentOpenChannel?.isOperator((message as FileMessage)?.sender?.userId)}\n disabled={editDisabled}\n userId={userId}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n onClick={setShowFileViewer}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.USER]: (() => {\n if (message?.messageType === 'user') {\n return (\n <OpenChannelUserMessage\n message={message as UserMessage}\n isOperator={currentOpenChannel?.isOperator((message as UserMessage)?.sender?.userId)}\n userId={userId}\n disabled={editDisabled}\n showEdit={setShowEdit}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.UNKNOWN]: (() => {\n return;\n // return (\n // <OpenChannelUnknownMessage message={message} />\n // );\n })(),\n }[getMessageType(message)]\n }\n {/* Modal */}\n {\n showRemove && (\n <RemoveMessageModal\n onCloseModal={() => setShowRemove(false)}\n onDeleteMessage={() => {\n if (message?.messageType !== 'admin') {\n deleteMessage(message);\n }\n }}\n />\n )\n }\n {\n (showFileViewer && message?.messageType === 'file') && (\n <FileViewer\n onClose={() => setShowFileViewer(false)}\n message={message}\n onDelete={() => deleteMessage(message)}\n isByMe={isByMe}\n />\n )\n }\n {/* {\n !((message?.isFileMessage && message?.isFileMessage()) || message?.messageType === 'file')\n && !(message?.isAdminMessage && message?.isAdminMessage())\n && !(((message?.isUserMessage && message?.isUserMessage()) || message?.messageType === 'user'))\n && !(showFileViewer)\n && (\n <UnknownMessage\n message={message}\n isByMe={isByMe}\n showRemove={setShowRemove}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n )\n } */}\n </div>\n );\n}\n"],"names":["RemoveMessageModal","_a","onCloseModal","onDeleteMessage","stringSet","useContext","LocalizationContext","React","MESSAGE_MENU__DELETE","MODAL__DELETE_MESSAGE__TITLE","SUPPORTED_MIMES","IMAGE","VIDEO","isImage","type","indexOf","isVideo","MessageTypes","ADMIN","USER","FILE","THUMBNAIL","OG","UNKNOWN","SendingMessageStatus","NONE","SUCCEEDED","FAILED","PENDING","getMessageType","message","isUserMessage","messageType","ogMetaData","isAdminMessage","MessagOpenChannelMessageeHoc","props","chainTop","chainBottom","hasSeparator","renderMessage","_c","useOpenChannelContext","currentOpenChannel","deleteMessage","updateMessage","resendMessage","dateLocale","useLocalization","editDisabled","isFrozen","globalState","useSendbirdStateContext","userId","config","sender","RenderedMessage","useMemo","_d","useState","showEdit","setShowEdit","_e","showRemove","setShowRemove","_f","showFileViewer","setShowFileViewer","editMessageInputRef","useRef","isByMe","sendingStatus","messageId","createdAt","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","format","locale","OpenChannelFileMessage","isOperator","OpenChannelOGMessage","OpenChannelThumbnailMessage","OpenChannelUserMessage"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OpenChannelMessage.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelMessage/RemoveMessageModal.tsx","../../../src/ui/FileViewer/types.ts","../../../src/smart-components/OpenChannel/components/OpenChannelMessage/utils.ts","../../../src/smart-components/OpenChannel/components/OpenChannelMessage/index.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport { ClientFileMessage, ClientUserMessage } from '../../../../index';\nimport Modal from '../../../../ui/Modal';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\ninterface Props {\n onCloseModal(): void;\n onDeleteMessage(message: ClientUserMessage | ClientFileMessage, callback?: () => void): void;\n}\n\nexport default function RemoveMessageModal({\n onCloseModal,\n onDeleteMessage,\n}: Props): JSX.Element {\n const { stringSet } = useContext(LocalizationContext);\n\n return (\n <Modal\n onCancel={onCloseModal}\n onSubmit={onDeleteMessage}\n submitText={stringSet.MESSAGE_MENU__DELETE}\n titleText={stringSet.MODAL__DELETE_MESSAGE__TITLE}\n />\n );\n}\n","// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types\n\nexport type SupportedImageMimesType = 'image/jpeg' | 'image/jpg' | 'image/png' | 'image/gif' | 'image/svg+xml' | 'image/webp';\nexport type SupportedVideoMimesType = 'video/mpeg' | 'video/ogg' | 'video/webm' | 'video/mp4';\nexport type SupportedMimesType = SupportedImageMimesType | SupportedVideoMimesType;\n\nconst SUPPORTED_MIMES = {\n IMAGE: [\n 'image/jpeg',\n 'image/jpg',\n 'image/png',\n 'image/gif',\n 'image/svg+xml',\n 'image/webp',\n ],\n VIDEO: [\n 'video/mpeg',\n 'video/ogg',\n 'video/webm',\n 'video/mp4',\n ],\n};\n\nexport const isImage = (type: SupportedImageMimesType): boolean => SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;\nexport const isVideo = (type: SupportedVideoMimesType): boolean => SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;\nexport const isGif = (type: SupportedMimesType): boolean => type === 'image/gif';\nexport const unSupported = (type: SupportedMimesType): boolean => (\n !(\n isImage(type as SupportedImageMimesType)\n || isVideo(type as SupportedVideoMimesType)\n )\n);\n\nexport default { ...SUPPORTED_MIMES };\n","import { AdminMessage, FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { isImage, isVideo } from '../../../../ui/FileViewer/types';\n\nexport const MessageTypes = {\n ADMIN: 'ADMIN',\n USER: 'USER',\n FILE: 'FILE',\n THUMBNAIL: 'THUMBNAIL',\n OG: 'OG',\n UNKNOWN: 'UNKNOWN',\n};\n\nexport const SendingMessageStatus = {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n};\n\nexport const getMessageType = (message: UserMessage | FileMessage | AdminMessage): string => {\n if ((message?.isUserMessage?.()) || message?.messageType === 'user') {\n return (message?.ogMetaData)\n ? MessageTypes.OG\n : MessageTypes.USER;\n }\n if (message?.isAdminMessage?.()) {\n return MessageTypes.ADMIN;\n }\n if (message?.messageType === 'file') {\n return (isImage((message as FileMessage).type) || isVideo((message as FileMessage).type))\n ? MessageTypes.THUMBNAIL\n : MessageTypes.FILE;\n }\n return MessageTypes.UNKNOWN;\n};\n\nexport default {\n MessageTypes,\n SendingMessageStatus,\n getMessageType,\n};\n","import React, {\n useState,\n useRef,\n ReactElement,\n useMemo,\n} from 'react';\nimport { AdminMessage, FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { User } from '@sendbird/chat';\nimport format from 'date-fns/format';\n\nimport OpenChannelUserMessage from '../../../../ui/OpenchannelUserMessage';\nimport OpenChannelAdminMessage from '../../../../ui/OpenChannelAdminMessage';\nimport OpenChannelOGMessage from '../../../../ui/OpenchannelOGMessage';\nimport OpenChannelThumbnailMessage from '../../../../ui/OpenchannelThumbnailMessage';\nimport OpenChannelFileMessage from '../../../../ui/OpenchannelFileMessage';\n// import UnknownMessage from '../../../../ui/UnknownMessage';\n\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport MessageInput from '../../../../ui/MessageInput';\nimport FileViewer from '../../../../ui/FileViewer';\n\nimport RemoveMessageModal from './RemoveMessageModal';\nimport {\n MessageTypes,\n SendingMessageStatus,\n getMessageType,\n} from './utils';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport type { RenderMessageProps } from '../../../../types';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\nexport type OpenChannelMessageProps = {\n renderMessage?: (props: RenderMessageProps) => React.ElementType<RenderMessageProps>;\n message: UserMessage | FileMessage | AdminMessage;\n chainTop?: boolean;\n chainBottom?: boolean;\n hasSeparator?: boolean;\n editDisabled?: boolean;\n};\n\nexport default function MessagOpenChannelMessageeHoc(props: OpenChannelMessageProps): ReactElement {\n const {\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n renderMessage,\n } = props;\n\n const {\n currentOpenChannel,\n deleteMessage,\n updateMessage,\n resendMessage,\n } = useOpenChannelContext();\n const { dateLocale } = useLocalization();\n const editDisabled = currentOpenChannel?.isFrozen;\n\n const globalState = useSendbirdStateContext();\n const userId = globalState?.config?.userId;\n\n let sender: User = null;\n if (message?.messageType !== 'admin') {\n sender = (message as UserMessage | FileMessage)?.sender;\n }\n\n const RenderedMessage = useMemo(() => (props: RenderMessageProps) => {\n return (\n <>\n {\n renderMessage\n ? (renderMessage(props))\n : null\n }\n </>\n );\n }, [message, renderMessage]);\n\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const editMessageInputRef = useRef(null);\n\n let isByMe = false;\n\n if (sender && message?.messageType !== 'admin') {\n // pending and failed messages are by me\n isByMe = (userId === sender.userId)\n || ((message as UserMessage | FileMessage)?.sendingStatus === SendingMessageStatus.PENDING)\n || ((message as UserMessage | FileMessage)?.sendingStatus === SendingMessageStatus.FAILED);\n }\n\n if (renderMessage && RenderedMessage) {\n return (\n <div className=\"sendbird-msg-hoc sendbird-msg--scroll-ref\">\n <RenderedMessage message={message} chainTop={chainTop} chainBottom={chainBottom} />\n </div>\n );\n }\n\n if (message?.messageType === 'user' && showEdit) {\n return (\n <MessageInput\n isEdit\n disabled={editDisabled}\n ref={editMessageInputRef}\n message={message as UserMessage}\n name={message?.messageId}\n onUpdateMessage={({ messageId, message }) => {\n updateMessage(messageId, message);\n setShowEdit(false);\n }}\n onCancelEdit={() => { setShowEdit(false); }}\n />\n );\n }\n\n return (\n <div className=\"sendbird-msg-hoc sendbird-msg--scroll-ref\">\n {/* date-separator */}\n {\n (hasSeparator && message?.createdAt) && (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message?.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n )\n }\n {/* Message */}\n {\n {\n [MessageTypes.ADMIN]: (() => {\n if (message?.messageType === 'admin') {\n return (\n <OpenChannelAdminMessage message={message as AdminMessage} />\n )\n }\n })(),\n [MessageTypes.FILE]: (() => {\n if (message?.messageType === 'file') {\n return (\n <OpenChannelFileMessage\n message={message as FileMessage}\n isOperator={currentOpenChannel?.isOperator((message as FileMessage)?.sender?.userId)}\n disabled={editDisabled}\n userId={userId}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.OG]: (() => {\n if (message?.messageType === 'user') {\n return (\n <OpenChannelOGMessage\n message={message as UserMessage}\n isOperator={currentOpenChannel?.isOperator((message as UserMessage)?.sender?.userId)}\n userId={userId}\n showEdit={setShowEdit}\n disabled={editDisabled}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.THUMBNAIL]: (() => {\n if (message?.messageType === 'file') {\n return (\n <OpenChannelThumbnailMessage\n message={message as FileMessage}\n isOperator={currentOpenChannel?.isOperator((message as FileMessage)?.sender?.userId)}\n disabled={editDisabled}\n userId={userId}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n onClick={setShowFileViewer}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.USER]: (() => {\n if (message?.messageType === 'user') {\n return (\n <OpenChannelUserMessage\n message={message as UserMessage}\n isOperator={currentOpenChannel?.isOperator((message as UserMessage)?.sender?.userId)}\n userId={userId}\n disabled={editDisabled}\n showEdit={setShowEdit}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.UNKNOWN]: (() => {\n return;\n // return (\n // <OpenChannelUnknownMessage message={message} />\n // );\n })(),\n }[getMessageType(message)]\n }\n {/* Modal */}\n {\n showRemove && (\n <RemoveMessageModal\n onCloseModal={() => setShowRemove(false)}\n onDeleteMessage={() => {\n if (message?.messageType !== 'admin') {\n deleteMessage(message);\n }\n }}\n />\n )\n }\n {\n (showFileViewer && message?.messageType === 'file') && (\n <FileViewer\n onClose={() => setShowFileViewer(false)}\n message={message}\n onDelete={() => deleteMessage(message)}\n isByMe={isByMe}\n />\n )\n }\n {/* {\n !((message?.isFileMessage && message?.isFileMessage()) || message?.messageType === 'file')\n && !(message?.isAdminMessage && message?.isAdminMessage())\n && !(((message?.isUserMessage && message?.isUserMessage()) || message?.messageType === 'user'))\n && !(showFileViewer)\n && (\n <UnknownMessage\n message={message}\n isByMe={isByMe}\n showRemove={setShowRemove}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n )\n } */}\n </div>\n );\n}\n"],"names":["RemoveMessageModal","_a","onCloseModal","onDeleteMessage","stringSet","useContext","LocalizationContext","React","MESSAGE_MENU__DELETE","MODAL__DELETE_MESSAGE__TITLE","SUPPORTED_MIMES","IMAGE","VIDEO","isImage","type","indexOf","isVideo","MessageTypes","ADMIN","USER","FILE","THUMBNAIL","OG","UNKNOWN","SendingMessageStatus","NONE","SUCCEEDED","FAILED","PENDING","getMessageType","message","isUserMessage","messageType","ogMetaData","isAdminMessage","MessagOpenChannelMessageeHoc","props","chainTop","chainBottom","hasSeparator","renderMessage","_c","useOpenChannelContext","currentOpenChannel","deleteMessage","updateMessage","resendMessage","dateLocale","useLocalization","editDisabled","isFrozen","globalState","useSendbirdStateContext","userId","config","sender","RenderedMessage","useMemo","_d","useState","showEdit","setShowEdit","_e","showRemove","setShowRemove","_f","showFileViewer","setShowFileViewer","editMessageInputRef","useRef","isByMe","sendingStatus","messageId","createdAt","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","format","locale","OpenChannelFileMessage","isOperator","OpenChannelOGMessage","OpenChannelThumbnailMessage","OpenChannelUserMessage"],"mappings":"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"}
|