@sendbird/uikit-react 3.0.0-beta.4 → 3.0.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/App.js +316 -0
- package/App.js.map +1 -0
- package/CHANGELOG.md +43 -1
- package/Channel/components/ChannelHeader.js +121 -0
- package/Channel/components/ChannelHeader.js.map +1 -0
- package/Channel/components/ChannelUI.js +182 -0
- package/Channel/components/ChannelUI.js.map +1 -0
- package/Channel/components/FileViewer.js +153 -0
- package/Channel/components/FileViewer.js.map +1 -0
- package/Channel/components/FrozenNotification.js +20 -0
- package/Channel/components/FrozenNotification.js.map +1 -0
- package/Channel/components/Message.js +364 -0
- package/Channel/components/Message.js.map +1 -0
- package/Channel/components/MessageInput.js +214 -0
- package/Channel/components/MessageInput.js.map +1 -0
- package/Channel/components/MessageList.js +242 -0
- package/Channel/components/MessageList.js.map +1 -0
- package/Channel/components/RemoveMessageModal.js +55 -0
- package/Channel/components/RemoveMessageModal.js.map +1 -0
- package/Channel/components/SuggestedMentionList.js +306 -0
- package/Channel/components/SuggestedMentionList.js.map +1 -0
- package/Channel/components/TypingIndicator.js +102 -0
- package/Channel/components/TypingIndicator.js.map +1 -0
- package/Channel/components/UnreadCount.js +41 -0
- package/Channel/components/UnreadCount.js.map +1 -0
- package/Channel/context.js +26 -0
- package/Channel/context.js.map +1 -0
- package/Channel.js +109 -0
- package/Channel.js.map +1 -0
- package/ChannelList/components/AddChannel.js +70 -0
- package/ChannelList/components/AddChannel.js.map +1 -0
- package/ChannelList/components/ChannelListHeader.js +62 -0
- package/ChannelList/components/ChannelListHeader.js.map +1 -0
- package/ChannelList/components/ChannelListUI.js +235 -0
- package/ChannelList/components/ChannelListUI.js.map +1 -0
- package/ChannelList/components/ChannelPreview.js +216 -0
- package/ChannelList/components/ChannelPreview.js.map +1 -0
- package/ChannelList/components/ChannelPreviewAction.js +133 -0
- package/ChannelList/components/ChannelPreviewAction.js.map +1 -0
- package/ChannelList/context.js +15 -0
- package/ChannelList/context.js.map +1 -0
- package/ChannelList.js +91 -0
- package/ChannelList.js.map +1 -0
- package/ChannelListProvider-76b1ec23.js +944 -0
- package/ChannelListProvider-76b1ec23.js.map +1 -0
- package/ChannelProvider-c0ed5fae.js +2075 -0
- package/ChannelProvider-c0ed5fae.js.map +1 -0
- package/ChannelSettings/components/ChannelProfile.js +102 -0
- package/ChannelSettings/components/ChannelProfile.js.map +1 -0
- package/ChannelSettings/components/ChannelSettingsUI.js +152 -0
- package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -0
- package/ChannelSettings/components/EditDetailsModal.js +158 -0
- package/ChannelSettings/components/EditDetailsModal.js.map +1 -0
- package/ChannelSettings/components/LeaveChannel.js +53 -0
- package/ChannelSettings/components/LeaveChannel.js.map +1 -0
- package/ChannelSettings/components/ModerationPanel.js +851 -0
- package/ChannelSettings/components/ModerationPanel.js.map +1 -0
- package/ChannelSettings/components/UserListItem.js +106 -0
- package/ChannelSettings/components/UserListItem.js.map +1 -0
- package/ChannelSettings/components/UserPanel.js +79 -0
- package/ChannelSettings/components/UserPanel.js.map +1 -0
- package/ChannelSettings/context.js +93 -0
- package/ChannelSettings/context.js.map +1 -0
- package/ChannelSettings.js +71 -0
- package/ChannelSettings.js.map +1 -0
- package/CreateChannel/components/CreateChannelUI.js +53 -0
- package/CreateChannel/components/CreateChannelUI.js.map +1 -0
- package/CreateChannel/components/InviteUsers.js +180 -0
- package/CreateChannel/components/InviteUsers.js.map +1 -0
- package/CreateChannel/components/SelectChannelType.js +131 -0
- package/CreateChannel/components/SelectChannelType.js.map +1 -0
- package/CreateChannel/context.js +9 -0
- package/CreateChannel/context.js.map +1 -0
- package/CreateChannel.js +53 -0
- package/CreateChannel.js.map +1 -0
- package/CreateChannelProvider-8c72aa06.js +53 -0
- package/CreateChannelProvider-8c72aa06.js.map +1 -0
- package/EditUserProfile/components/EditUserProfileUI.js +26 -0
- package/EditUserProfile/components/EditUserProfileUI.js.map +1 -0
- package/EditUserProfile/context.js +27 -0
- package/EditUserProfile/context.js.map +1 -0
- package/EditUserProfile.js +39 -0
- package/EditUserProfile.js.map +1 -0
- package/LocalizationContext-fb3dafcd.js +22 -0
- package/LocalizationContext-fb3dafcd.js.map +1 -0
- package/MemberList-01d3c8bf.js +404 -0
- package/MemberList-01d3c8bf.js.map +1 -0
- package/MessageSearch/components/MessageSearchUI.js +151 -0
- package/MessageSearch/components/MessageSearchUI.js.map +1 -0
- package/MessageSearch/context.js +387 -0
- package/MessageSearch/context.js.map +1 -0
- package/MessageSearch.js +146 -0
- package/MessageSearch.js.map +1 -0
- package/OpenChannel/components/FrozenChannelNotification.js +20 -0
- package/OpenChannel/components/FrozenChannelNotification.js.map +1 -0
- package/OpenChannel/components/OpenChannelHeader.js +80 -0
- package/OpenChannel/components/OpenChannelHeader.js.map +1 -0
- package/OpenChannel/components/OpenChannelInput.js +58 -0
- package/OpenChannel/components/OpenChannelInput.js.map +1 -0
- package/OpenChannel/components/OpenChannelMessage.js +287 -0
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -0
- package/OpenChannel/components/OpenChannelMessageList.js +158 -0
- package/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
- package/OpenChannel/components/OpenChannelUI.js +111 -0
- package/OpenChannel/components/OpenChannelUI.js.map +1 -0
- package/OpenChannel/context.js +16 -0
- package/OpenChannel/context.js.map +1 -0
- package/OpenChannel.js +82 -0
- package/OpenChannel.js.map +1 -0
- package/OpenChannelProvider-0fb27972.js +1946 -0
- package/OpenChannelProvider-0fb27972.js.map +1 -0
- package/OpenChannelSettings/components/EditDetailsModal.js +143 -0
- package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -0
- package/OpenChannelSettings/components/OpenChannelProfile.js +81 -0
- package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -0
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +120 -0
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
- package/OpenChannelSettings/components/OperatorUI.js +199 -0
- package/OpenChannelSettings/components/OperatorUI.js.map +1 -0
- package/OpenChannelSettings/components/ParticipantUI.js +145 -0
- package/OpenChannelSettings/components/ParticipantUI.js.map +1 -0
- package/OpenChannelSettings/context.js +64 -0
- package/OpenChannelSettings/context.js.map +1 -0
- package/OpenChannelSettings.js +64 -0
- package/OpenChannelSettings.js.map +1 -0
- package/README.md +0 -1
- package/SendbirdProvider.js +782 -0
- package/SendbirdProvider.js.map +1 -0
- package/UserProfileContext-6a387a08.js +38 -0
- package/UserProfileContext-6a387a08.js.map +1 -0
- package/__bundle-7dfccc8c-03df3ada.js +24 -0
- package/__bundle-7dfccc8c-03df3ada.js.map +1 -0
- package/_rollupPluginBabelHelpers-084fb589.js +233 -0
- package/_rollupPluginBabelHelpers-084fb589.js.map +1 -0
- package/actionTypes-302a2801.js +6 -0
- package/actionTypes-302a2801.js.map +1 -0
- package/cjs/App.js +323 -0
- package/cjs/App.js.map +1 -0
- package/cjs/Channel/components/ChannelHeader.js +127 -0
- package/cjs/Channel/components/ChannelHeader.js.map +1 -0
- package/cjs/Channel/components/ChannelUI.js +188 -0
- package/cjs/Channel/components/ChannelUI.js.map +1 -0
- package/cjs/Channel/components/FileViewer.js +162 -0
- package/cjs/Channel/components/FileViewer.js.map +1 -0
- package/cjs/Channel/components/FrozenNotification.js +26 -0
- package/cjs/Channel/components/FrozenNotification.js.map +1 -0
- package/cjs/Channel/components/Message.js +370 -0
- package/cjs/Channel/components/Message.js.map +1 -0
- package/cjs/Channel/components/MessageInput.js +220 -0
- package/cjs/Channel/components/MessageInput.js.map +1 -0
- package/cjs/Channel/components/MessageList.js +248 -0
- package/cjs/Channel/components/MessageList.js.map +1 -0
- package/cjs/Channel/components/RemoveMessageModal.js +61 -0
- package/cjs/Channel/components/RemoveMessageModal.js.map +1 -0
- package/cjs/Channel/components/SuggestedMentionList.js +312 -0
- package/cjs/Channel/components/SuggestedMentionList.js.map +1 -0
- package/cjs/Channel/components/TypingIndicator.js +111 -0
- package/cjs/Channel/components/TypingIndicator.js.map +1 -0
- package/cjs/Channel/components/UnreadCount.js +47 -0
- package/cjs/Channel/components/UnreadCount.js.map +1 -0
- package/cjs/Channel/context.js +35 -0
- package/cjs/Channel/context.js.map +1 -0
- package/cjs/Channel.js +115 -0
- package/cjs/Channel.js.map +1 -0
- package/cjs/ChannelList/components/AddChannel.js +79 -0
- package/cjs/ChannelList/components/AddChannel.js.map +1 -0
- package/cjs/ChannelList/components/ChannelListHeader.js +68 -0
- package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -0
- package/cjs/ChannelList/components/ChannelListUI.js +241 -0
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -0
- package/cjs/ChannelList/components/ChannelPreview.js +222 -0
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -0
- package/cjs/ChannelList/components/ChannelPreviewAction.js +140 -0
- package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -0
- package/cjs/ChannelList/context.js +24 -0
- package/cjs/ChannelList/context.js.map +1 -0
- package/cjs/ChannelList.js +97 -0
- package/cjs/ChannelList.js.map +1 -0
- package/cjs/ChannelListProvider-7d1c0466.js +956 -0
- package/cjs/ChannelListProvider-7d1c0466.js.map +1 -0
- package/cjs/ChannelProvider-a3ec5a56.js +2088 -0
- package/cjs/ChannelProvider-a3ec5a56.js.map +1 -0
- package/cjs/ChannelSettings/components/ChannelProfile.js +108 -0
- package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -0
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +158 -0
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -0
- package/cjs/ChannelSettings/components/EditDetailsModal.js +164 -0
- package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -0
- package/cjs/ChannelSettings/components/LeaveChannel.js +59 -0
- package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -0
- package/cjs/ChannelSettings/components/ModerationPanel.js +857 -0
- package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -0
- package/cjs/ChannelSettings/components/UserListItem.js +112 -0
- package/cjs/ChannelSettings/components/UserListItem.js.map +1 -0
- package/cjs/ChannelSettings/components/UserPanel.js +85 -0
- package/cjs/ChannelSettings/components/UserPanel.js.map +1 -0
- package/cjs/ChannelSettings/context.js +102 -0
- package/cjs/ChannelSettings/context.js.map +1 -0
- package/cjs/ChannelSettings.js +77 -0
- package/cjs/ChannelSettings.js.map +1 -0
- package/cjs/CreateChannel/components/CreateChannelUI.js +59 -0
- package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -0
- package/cjs/CreateChannel/components/InviteUsers.js +186 -0
- package/cjs/CreateChannel/components/InviteUsers.js.map +1 -0
- package/cjs/CreateChannel/components/SelectChannelType.js +137 -0
- package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -0
- package/cjs/CreateChannel/context.js +18 -0
- package/cjs/CreateChannel/context.js.map +1 -0
- package/cjs/CreateChannel.js +59 -0
- package/cjs/CreateChannel.js.map +1 -0
- package/cjs/CreateChannelProvider-95fbfb06.js +60 -0
- package/cjs/CreateChannelProvider-95fbfb06.js.map +1 -0
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +32 -0
- package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -0
- package/cjs/EditUserProfile/context.js +36 -0
- package/cjs/EditUserProfile/context.js.map +1 -0
- package/cjs/EditUserProfile.js +45 -0
- package/cjs/EditUserProfile.js.map +1 -0
- package/cjs/LocalizationContext-5a6a0f67.js +30 -0
- package/cjs/LocalizationContext-5a6a0f67.js.map +1 -0
- package/cjs/MemberList-bfecdd64.js +410 -0
- package/cjs/MemberList-bfecdd64.js.map +1 -0
- package/cjs/MessageSearch/components/MessageSearchUI.js +160 -0
- package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -0
- package/cjs/MessageSearch/context.js +396 -0
- package/cjs/MessageSearch/context.js.map +1 -0
- package/cjs/MessageSearch.js +152 -0
- package/cjs/MessageSearch.js.map +1 -0
- package/cjs/OpenChannel/components/FrozenChannelNotification.js +26 -0
- package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -0
- package/cjs/OpenChannel/components/OpenChannelHeader.js +86 -0
- package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -0
- package/cjs/OpenChannel/components/OpenChannelInput.js +64 -0
- package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -0
- package/cjs/OpenChannel/components/OpenChannelMessage.js +293 -0
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -0
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +164 -0
- package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
- package/cjs/OpenChannel/components/OpenChannelUI.js +117 -0
- package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -0
- package/cjs/OpenChannel/context.js +25 -0
- package/cjs/OpenChannel/context.js.map +1 -0
- package/cjs/OpenChannel.js +88 -0
- package/cjs/OpenChannel.js.map +1 -0
- package/cjs/OpenChannelProvider-e8247193.js +1955 -0
- package/cjs/OpenChannelProvider-e8247193.js.map +1 -0
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +149 -0
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -0
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +87 -0
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -0
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +126 -0
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
- package/cjs/OpenChannelSettings/components/OperatorUI.js +209 -0
- package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -0
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +151 -0
- package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -0
- package/cjs/OpenChannelSettings/context.js +73 -0
- package/cjs/OpenChannelSettings/context.js.map +1 -0
- package/cjs/OpenChannelSettings.js +70 -0
- package/cjs/OpenChannelSettings.js.map +1 -0
- package/cjs/SendbirdProvider.js +790 -0
- package/cjs/SendbirdProvider.js.map +1 -0
- package/cjs/UserProfileContext-17c8f75c.js +46 -0
- package/cjs/UserProfileContext-17c8f75c.js.map +1 -0
- package/cjs/__bundle-7dfccc8c-c3c55861.js +151 -0
- package/cjs/__bundle-7dfccc8c-c3c55861.js.map +1 -0
- package/cjs/_rollupPluginBabelHelpers-d984e855.js +243 -0
- package/cjs/_rollupPluginBabelHelpers-d984e855.js.map +1 -0
- package/cjs/actionTypes-7a330bec.js +10 -0
- package/cjs/actionTypes-7a330bec.js.map +1 -0
- package/cjs/color-b30f84a2.js +42 -0
- package/cjs/color-b30f84a2.js.map +1 -0
- package/cjs/compareIds-d8053014.js +20 -0
- package/cjs/compareIds-d8053014.js.map +1 -0
- package/cjs/const-2623fae1.js +22 -0
- package/cjs/const-2623fae1.js.map +1 -0
- package/cjs/const-6aa26f9f.js +14 -0
- package/cjs/const-6aa26f9f.js.map +1 -0
- package/cjs/context-83ecdafd.js +19 -0
- package/cjs/context-83ecdafd.js.map +1 -0
- package/cjs/dist/index.css +4603 -0
- package/cjs/dist/index.css.map +1 -0
- package/cjs/groupChannel-e311e26a.js +9 -0
- package/cjs/groupChannel-e311e26a.js.map +1 -0
- package/cjs/index-1e14c5b9.js +130 -0
- package/cjs/index-1e14c5b9.js.map +1 -0
- package/cjs/index-2537cbc7.js +284 -0
- package/cjs/index-2537cbc7.js.map +1 -0
- package/cjs/index-40d245a3.js +729 -0
- package/cjs/index-40d245a3.js.map +1 -0
- package/cjs/index-5e7b82c2.js +178 -0
- package/cjs/index-5e7b82c2.js.map +1 -0
- package/cjs/index-72479c2a.js +514 -0
- package/cjs/index-72479c2a.js.map +1 -0
- package/cjs/index-ab5d906d.js +67 -0
- package/cjs/index-ab5d906d.js.map +1 -0
- package/cjs/index-cdcd27bc.js +1880 -0
- package/cjs/index-cdcd27bc.js.map +1 -0
- package/cjs/index-ce679d41.js +9 -0
- package/cjs/index-ce679d41.js.map +1 -0
- package/cjs/index-df05e765.js +142 -0
- package/cjs/index-df05e765.js.map +1 -0
- package/cjs/index-f9677913.js +97 -0
- package/cjs/index-f9677913.js.map +1 -0
- package/cjs/index.js +165 -0
- package/cjs/index.js.map +1 -0
- package/cjs/openChannel-e9f65946.js +13 -0
- package/cjs/openChannel-e9f65946.js.map +1 -0
- package/cjs/openChannelUtils-4b7d2697.js +97 -0
- package/cjs/openChannelUtils-4b7d2697.js.map +1 -0
- package/cjs/sendbirdSelectors.js +696 -0
- package/cjs/sendbirdSelectors.js.map +1 -0
- package/cjs/stringSet-2f3588b5.js +118 -0
- package/cjs/stringSet-2f3588b5.js.map +1 -0
- package/cjs/topics-582e38dc.js +18 -0
- package/cjs/topics-582e38dc.js.map +1 -0
- package/cjs/tslib.es6-d9c7aa8b.js +40 -0
- package/cjs/tslib.es6-d9c7aa8b.js.map +1 -0
- package/cjs/ui/Accordion.js +74 -0
- package/cjs/ui/Accordion.js.map +1 -0
- package/cjs/ui/AccordionGroup.js +32 -0
- package/cjs/ui/AccordionGroup.js.map +1 -0
- package/cjs/ui/AdminMessage.js +45 -0
- package/cjs/ui/AdminMessage.js.map +1 -0
- package/cjs/ui/Avatar.js +226 -0
- package/cjs/ui/Avatar.js.map +1 -0
- package/cjs/ui/Badge.js +45 -0
- package/cjs/ui/Badge.js.map +1 -0
- package/cjs/ui/Button.js +17 -0
- package/cjs/ui/Button.js.map +1 -0
- package/cjs/ui/ChannelAvatar.js +59 -0
- package/cjs/ui/ChannelAvatar.js.map +1 -0
- package/cjs/ui/ChannelPreview.js +208 -0
- package/cjs/ui/ChannelPreview.js.map +1 -0
- package/cjs/ui/ChatHeader.js +152 -0
- package/cjs/ui/ChatHeader.js.map +1 -0
- package/cjs/ui/Checkbox.js +49 -0
- package/cjs/ui/Checkbox.js.map +1 -0
- package/cjs/ui/ConnectionStatus.js +34 -0
- package/cjs/ui/ConnectionStatus.js.map +1 -0
- package/cjs/ui/ContextMenu.js +410 -0
- package/cjs/ui/ContextMenu.js.map +1 -0
- package/cjs/ui/DateSeparator.js +44 -0
- package/cjs/ui/DateSeparator.js.map +1 -0
- package/cjs/ui/Dropdown.js +107 -0
- package/cjs/ui/Dropdown.js.map +1 -0
- package/cjs/ui/EmojiReactions.js +127 -0
- package/cjs/ui/EmojiReactions.js.map +1 -0
- package/cjs/ui/FileMessageItemBody.js +57 -0
- package/cjs/ui/FileMessageItemBody.js.map +1 -0
- package/cjs/ui/FileViewer.js +174 -0
- package/cjs/ui/FileViewer.js.map +1 -0
- package/cjs/ui/Icon.js +1466 -0
- package/cjs/ui/Icon.js.map +1 -0
- package/cjs/ui/IconButton.js +83 -0
- package/cjs/ui/IconButton.js.map +1 -0
- package/cjs/ui/ImageRenderer.js +138 -0
- package/cjs/ui/ImageRenderer.js.map +1 -0
- package/cjs/ui/Input.js +74 -0
- package/cjs/ui/Input.js.map +1 -0
- package/cjs/ui/Label.js +17 -0
- package/cjs/ui/Label.js.map +1 -0
- package/cjs/ui/LinkLabel.js +51 -0
- package/cjs/ui/LinkLabel.js.map +1 -0
- package/cjs/ui/Loader.js +44 -0
- package/cjs/ui/Loader.js.map +1 -0
- package/cjs/ui/MentionLabel.js +100 -0
- package/cjs/ui/MentionLabel.js.map +1 -0
- package/cjs/ui/MentionUserLabel.js +25 -0
- package/cjs/ui/MentionUserLabel.js.map +1 -0
- package/cjs/ui/MessageContent.js +297 -0
- package/cjs/ui/MessageContent.js.map +1 -0
- package/cjs/ui/MessageInput.js +5052 -0
- package/cjs/ui/MessageInput.js.map +1 -0
- package/cjs/ui/MessageItemMenu.js +137 -0
- package/cjs/ui/MessageItemMenu.js.map +1 -0
- package/cjs/ui/MessageItemReactionMenu.js +112 -0
- package/cjs/ui/MessageItemReactionMenu.js.map +1 -0
- package/cjs/ui/MessageSearchFileItem.js +131 -0
- package/cjs/ui/MessageSearchFileItem.js.map +1 -0
- package/cjs/ui/MessageSearchItem.js +93 -0
- package/cjs/ui/MessageSearchItem.js.map +1 -0
- package/cjs/ui/MessageStatus.js +66 -0
- package/cjs/ui/MessageStatus.js.map +1 -0
- package/cjs/ui/Modal.js +140 -0
- package/cjs/ui/Modal.js.map +1 -0
- package/cjs/ui/MutedAvatarOverlay.js +40 -0
- package/cjs/ui/MutedAvatarOverlay.js.map +1 -0
- package/cjs/ui/OGMessageItemBody.js +119 -0
- package/cjs/ui/OGMessageItemBody.js.map +1 -0
- package/cjs/ui/OpenChannelAdminMessage.js +27 -0
- package/cjs/ui/OpenChannelAdminMessage.js.map +1 -0
- package/cjs/ui/OpenChannelAvatar.js +41 -0
- package/cjs/ui/OpenChannelAvatar.js.map +1 -0
- package/cjs/ui/OpenchannelConversationHeader.js +73 -0
- package/cjs/ui/OpenchannelConversationHeader.js.map +1 -0
- package/cjs/ui/OpenchannelFileMessage.js +231 -0
- package/cjs/ui/OpenchannelFileMessage.js.map +1 -0
- package/cjs/ui/OpenchannelOGMessage.js +346 -0
- package/cjs/ui/OpenchannelOGMessage.js.map +1 -0
- package/cjs/ui/OpenchannelThumbnailMessage.js +306 -0
- package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -0
- package/cjs/ui/OpenchannelUserMessage.js +265 -0
- package/cjs/ui/OpenchannelUserMessage.js.map +1 -0
- package/cjs/ui/PlaceHolder.js +20 -0
- package/cjs/ui/PlaceHolder.js.map +1 -0
- package/cjs/ui/QuoteMessage.js +131 -0
- package/cjs/ui/QuoteMessage.js.map +1 -0
- package/cjs/ui/QuoteMessageInput.js +97 -0
- package/cjs/ui/QuoteMessageInput.js.map +1 -0
- package/cjs/ui/ReactionBadge.js +68 -0
- package/cjs/ui/ReactionBadge.js.map +1 -0
- package/cjs/ui/ReactionButton.js +55 -0
- package/cjs/ui/ReactionButton.js.map +1 -0
- package/cjs/ui/SortByRow.js +57 -0
- package/cjs/ui/SortByRow.js.map +1 -0
- package/cjs/ui/TextButton.js +45 -0
- package/cjs/ui/TextButton.js.map +1 -0
- package/cjs/ui/TextMessageItemBody.js +76 -0
- package/cjs/ui/TextMessageItemBody.js.map +1 -0
- package/cjs/ui/ThumbnailMessageItemBody.js +82 -0
- package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -0
- package/cjs/ui/Tooltip.js +35 -0
- package/cjs/ui/Tooltip.js.map +1 -0
- package/cjs/ui/TooltipWrapper.js +65 -0
- package/cjs/ui/TooltipWrapper.js.map +1 -0
- package/cjs/ui/UnknownMessageItemBody.js +41 -0
- package/cjs/ui/UnknownMessageItemBody.js.map +1 -0
- package/cjs/ui/UserListItem.js +159 -0
- package/cjs/ui/UserListItem.js.map +1 -0
- package/cjs/ui/UserProfile.js +88 -0
- package/cjs/ui/UserProfile.js.map +1 -0
- package/cjs/ui/Word.js +76 -0
- package/cjs/ui/Word.js.map +1 -0
- package/cjs/useSendbirdStateContext.js +22 -0
- package/cjs/useSendbirdStateContext.js.map +1 -0
- package/cjs/utils-031aba48.js +6 -0
- package/cjs/utils-031aba48.js.map +1 -0
- package/cjs/utils-510b93ac.js +38 -0
- package/cjs/utils-510b93ac.js.map +1 -0
- package/cjs/utils-689065e6.js +32 -0
- package/cjs/utils-689065e6.js.map +1 -0
- package/cjs/uuid-099485ae.js +19 -0
- package/cjs/uuid-099485ae.js.map +1 -0
- package/cjs/withSendBird.js +35 -0
- package/cjs/withSendBird.js.map +1 -0
- package/color-9bf8c922.js +39 -0
- package/color-9bf8c922.js.map +1 -0
- package/compareIds-b78d7cd6.js +18 -0
- package/compareIds-b78d7cd6.js.map +1 -0
- package/const-40b58d8b.js +18 -0
- package/const-40b58d8b.js.map +1 -0
- package/const-99800b8d.js +8 -0
- package/const-99800b8d.js.map +1 -0
- package/context-bedea43b.js +12 -0
- package/context-bedea43b.js.map +1 -0
- package/dist/index.css +292 -152
- package/dist/index.css.map +1 -1
- package/groupChannel-96502de7.js +6 -0
- package/groupChannel-96502de7.js.map +1 -0
- package/index-13729368.js +512 -0
- package/index-13729368.js.map +1 -0
- package/index-16bed610.js +64 -0
- package/index-16bed610.js.map +1 -0
- package/index-1d112ad4.js +7 -0
- package/index-1d112ad4.js.map +1 -0
- package/index-71ad343b.js +171 -0
- package/index-71ad343b.js.map +1 -0
- package/index-71e2bf26.js +131 -0
- package/index-71e2bf26.js.map +1 -0
- package/index-8e6a607b.js +688 -0
- package/index-8e6a607b.js.map +1 -0
- package/index-a5e8849a.js +280 -0
- package/index-a5e8849a.js.map +1 -0
- package/index-b574cc8e.js +87 -0
- package/index-b574cc8e.js.map +1 -0
- package/index-c95d2aab.js +121 -0
- package/index-c95d2aab.js.map +1 -0
- package/index-ccd99cfe.js +1873 -0
- package/index-ccd99cfe.js.map +1 -0
- package/index.d.ts +1965 -0
- package/index.d.ts_bkup +1883 -0
- package/index.js +146 -0
- package/index.js.map +1 -0
- package/openChannel-dd5c9246.js +8 -0
- package/openChannel-dd5c9246.js.map +1 -0
- package/openChannelUtils-211a679a.js +86 -0
- package/openChannelUtils-211a679a.js.map +1 -0
- package/package.json +11 -33
- package/sendbirdSelectors.js +671 -0
- package/sendbirdSelectors.js.map +1 -0
- package/stringSet-d3a8a2a0.js +116 -0
- package/stringSet-d3a8a2a0.js.map +1 -0
- package/topics-f941ba80.js +10 -0
- package/topics-f941ba80.js.map +1 -0
- package/tslib.es6-a7db0cc5.js +38 -0
- package/tslib.es6-a7db0cc5.js.map +1 -0
- package/ui/Accordion.js +65 -0
- package/ui/Accordion.js.map +1 -0
- package/ui/AccordionGroup.js +26 -0
- package/ui/AccordionGroup.js.map +1 -0
- package/ui/AdminMessage.js +38 -0
- package/ui/AdminMessage.js.map +1 -0
- package/ui/Avatar.js +217 -0
- package/ui/Avatar.js.map +1 -0
- package/ui/Badge.js +38 -0
- package/ui/Badge.js.map +1 -0
- package/ui/Button.js +7 -0
- package/ui/Button.js.map +1 -0
- package/ui/ChannelAvatar.js +53 -0
- package/ui/ChannelAvatar.js.map +1 -0
- package/ui/ChannelPreview.js +201 -0
- package/ui/ChannelPreview.js.map +1 -0
- package/ui/ChatHeader.js +145 -0
- package/ui/ChatHeader.js.map +1 -0
- package/ui/Checkbox.js +42 -0
- package/ui/Checkbox.js.map +1 -0
- package/ui/ConnectionStatus.js +28 -0
- package/ui/ConnectionStatus.js.map +1 -0
- package/ui/ContextMenu.js +396 -0
- package/ui/ContextMenu.js.map +1 -0
- package/ui/DateSeparator.js +37 -0
- package/ui/DateSeparator.js.map +1 -0
- package/ui/Dropdown.js +97 -0
- package/ui/Dropdown.js.map +1 -0
- package/ui/EmojiReactions.js +121 -0
- package/ui/EmojiReactions.js.map +1 -0
- package/ui/FileMessageItemBody.js +51 -0
- package/ui/FileMessageItemBody.js.map +1 -0
- package/ui/FileViewer.js +164 -0
- package/ui/FileViewer.js.map +1 -0
- package/ui/Icon.js +1436 -0
- package/ui/Icon.js.map +1 -0
- package/ui/IconButton.js +76 -0
- package/ui/IconButton.js.map +1 -0
- package/ui/ImageRenderer.js +131 -0
- package/ui/ImageRenderer.js.map +1 -0
- package/ui/Input.js +64 -0
- package/ui/Input.js.map +1 -0
- package/ui/Label.js +6 -0
- package/ui/Label.js.map +1 -0
- package/ui/LinkLabel.js +40 -0
- package/ui/LinkLabel.js.map +1 -0
- package/ui/Loader.js +37 -0
- package/ui/Loader.js.map +1 -0
- package/ui/MentionLabel.js +94 -0
- package/ui/MentionLabel.js.map +1 -0
- package/ui/MentionUserLabel.js +19 -0
- package/ui/MentionUserLabel.js.map +1 -0
- package/ui/MessageContent.js +291 -0
- package/ui/MessageContent.js.map +1 -0
- package/ui/MessageInput.js +5044 -0
- package/ui/MessageInput.js.map +1 -0
- package/ui/MessageItemMenu.js +131 -0
- package/ui/MessageItemMenu.js.map +1 -0
- package/ui/MessageItemReactionMenu.js +106 -0
- package/ui/MessageItemReactionMenu.js.map +1 -0
- package/ui/MessageSearchFileItem.js +125 -0
- package/ui/MessageSearchFileItem.js.map +1 -0
- package/ui/MessageSearchItem.js +87 -0
- package/ui/MessageSearchItem.js.map +1 -0
- package/ui/MessageStatus.js +57 -0
- package/ui/MessageStatus.js.map +1 -0
- package/ui/Modal.js +128 -0
- package/ui/Modal.js.map +1 -0
- package/ui/MutedAvatarOverlay.js +34 -0
- package/ui/MutedAvatarOverlay.js.map +1 -0
- package/ui/OGMessageItemBody.js +113 -0
- package/ui/OGMessageItemBody.js.map +1 -0
- package/ui/OpenChannelAdminMessage.js +21 -0
- package/ui/OpenChannelAdminMessage.js.map +1 -0
- package/ui/OpenChannelAvatar.js +35 -0
- package/ui/OpenChannelAvatar.js.map +1 -0
- package/ui/OpenchannelConversationHeader.js +67 -0
- package/ui/OpenchannelConversationHeader.js.map +1 -0
- package/ui/OpenchannelFileMessage.js +225 -0
- package/ui/OpenchannelFileMessage.js.map +1 -0
- package/ui/OpenchannelOGMessage.js +340 -0
- package/ui/OpenchannelOGMessage.js.map +1 -0
- package/ui/OpenchannelThumbnailMessage.js +300 -0
- package/ui/OpenchannelThumbnailMessage.js.map +1 -0
- package/ui/OpenchannelUserMessage.js +259 -0
- package/ui/OpenchannelUserMessage.js.map +1 -0
- package/ui/PlaceHolder.js +11 -0
- package/ui/PlaceHolder.js.map +1 -0
- package/ui/QuoteMessage.js +125 -0
- package/ui/QuoteMessage.js.map +1 -0
- package/ui/QuoteMessageInput.js +91 -0
- package/ui/QuoteMessageInput.js.map +1 -0
- package/ui/ReactionBadge.js +61 -0
- package/ui/ReactionBadge.js.map +1 -0
- package/ui/ReactionButton.js +48 -0
- package/ui/ReactionButton.js.map +1 -0
- package/ui/SortByRow.js +50 -0
- package/ui/SortByRow.js.map +1 -0
- package/ui/TextButton.js +38 -0
- package/ui/TextButton.js.map +1 -0
- package/ui/TextMessageItemBody.js +70 -0
- package/ui/TextMessageItemBody.js.map +1 -0
- package/ui/ThumbnailMessageItemBody.js +76 -0
- package/ui/ThumbnailMessageItemBody.js.map +1 -0
- package/ui/Tooltip.js +28 -0
- package/ui/Tooltip.js.map +1 -0
- package/ui/TooltipWrapper.js +58 -0
- package/ui/TooltipWrapper.js.map +1 -0
- package/ui/UnknownMessageItemBody.js +35 -0
- package/ui/UnknownMessageItemBody.js.map +1 -0
- package/ui/UserListItem.js +152 -0
- package/ui/UserListItem.js.map +1 -0
- package/ui/UserProfile.js +82 -0
- package/ui/UserProfile.js.map +1 -0
- package/ui/Word.js +70 -0
- package/ui/Word.js.map +1 -0
- package/useSendbirdStateContext.js +20 -0
- package/useSendbirdStateContext.js.map +1 -0
- package/utils-2e3623c0.js +30 -0
- package/utils-2e3623c0.js.map +1 -0
- package/utils-cadde06a.js +4 -0
- package/utils-cadde06a.js.map +1 -0
- package/utils-d9325ddf.js +34 -0
- package/utils-d9325ddf.js.map +1 -0
- package/uuid-748dae7a.js +17 -0
- package/uuid-748dae7a.js.map +1 -0
- package/withSendBird.js +26 -0
- package/withSendBird.js.map +1 -0
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var React = require('react');
|
|
6
|
+
var LocalizationContext = require('../../LocalizationContext-5a6a0f67.js');
|
|
7
|
+
var MessageSearch_context = require('../context.js');
|
|
8
|
+
var ui_MessageSearchItem = require('../../ui/MessageSearchItem.js');
|
|
9
|
+
var ui_PlaceHolder = require('../../index-1e14c5b9.js');
|
|
10
|
+
var ui_MessageSearchFileItem = require('../../ui/MessageSearchFileItem.js');
|
|
11
|
+
require('../../stringSet-2f3588b5.js');
|
|
12
|
+
require('../../index-72479c2a.js');
|
|
13
|
+
require('../../useSendbirdStateContext.js');
|
|
14
|
+
require('../../withSendBird.js');
|
|
15
|
+
require('../../_rollupPluginBabelHelpers-d984e855.js');
|
|
16
|
+
require('../../tslib.es6-d9c7aa8b.js');
|
|
17
|
+
require('../../index-cdcd27bc.js');
|
|
18
|
+
require('../../index-2537cbc7.js');
|
|
19
|
+
require('../../index-ab5d906d.js');
|
|
20
|
+
require('../../ui/Avatar.js');
|
|
21
|
+
require('../../ui/ImageRenderer.js');
|
|
22
|
+
require('prop-types');
|
|
23
|
+
require('../../ui/Icon.js');
|
|
24
|
+
require('../../uuid-099485ae.js');
|
|
25
|
+
require('../../index-df05e765.js');
|
|
26
|
+
require('../../ui/Loader.js');
|
|
27
|
+
|
|
28
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
29
|
+
|
|
30
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
31
|
+
|
|
32
|
+
var COMPONENT_CLASS_NAME = 'sendbird-message-search';
|
|
33
|
+
var MessageSearchUI = function MessageSearchUI(_a) {
|
|
34
|
+
var renderPlaceHolderError = _a.renderPlaceHolderError,
|
|
35
|
+
renderPlaceHolderLoading = _a.renderPlaceHolderLoading,
|
|
36
|
+
renderPlaceHolderNoString = _a.renderPlaceHolderNoString,
|
|
37
|
+
renderPlaceHolderEmptyList = _a.renderPlaceHolderEmptyList,
|
|
38
|
+
renderSearchItem = _a.renderSearchItem;
|
|
39
|
+
|
|
40
|
+
var _b = MessageSearch_context.useMessageSearchContext(),
|
|
41
|
+
isInvalid = _b.isInvalid,
|
|
42
|
+
searchString = _b.searchString,
|
|
43
|
+
requestString = _b.requestString,
|
|
44
|
+
currentChannel = _b.currentChannel,
|
|
45
|
+
retryCount = _b.retryCount,
|
|
46
|
+
setRetryCount = _b.setRetryCount,
|
|
47
|
+
loading = _b.loading,
|
|
48
|
+
scrollRef = _b.scrollRef,
|
|
49
|
+
hasMoreResult = _b.hasMoreResult,
|
|
50
|
+
onScroll = _b.onScroll,
|
|
51
|
+
allMessages = _b.allMessages,
|
|
52
|
+
onResultClick = _b.onResultClick,
|
|
53
|
+
selectedMessageId = _b.selectedMessageId,
|
|
54
|
+
setSelectedMessageId = _b.setSelectedMessageId;
|
|
55
|
+
|
|
56
|
+
var stringSet = React.useContext(LocalizationContext.LocalizationContext).stringSet;
|
|
57
|
+
|
|
58
|
+
var handleRetryToConnect = function handleRetryToConnect() {
|
|
59
|
+
setRetryCount(retryCount + 1);
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
var handleOnScroll = function handleOnScroll(e) {
|
|
63
|
+
var scrollElement = e.target;
|
|
64
|
+
var scrollTop = scrollElement.scrollTop,
|
|
65
|
+
scrollHeight = scrollElement.scrollHeight,
|
|
66
|
+
clientHeight = scrollElement.clientHeight;
|
|
67
|
+
|
|
68
|
+
if (!hasMoreResult) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
if (scrollTop + clientHeight >= scrollHeight - 1) {
|
|
73
|
+
onScroll(function () {// after load more searched messages
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
var getChannelName = function getChannelName() {
|
|
79
|
+
if (currentChannel && (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.name) && (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.name) !== 'Group Channel') {
|
|
80
|
+
return currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.name;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
if (currentChannel && ((currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.name) === 'Group Channel' || !(currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.name))) {
|
|
84
|
+
return currentChannel.members.map(function (member) {
|
|
85
|
+
return member.nickname || stringSet.NO_NAME;
|
|
86
|
+
}).join(', ');
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
return stringSet.NO_TITLE;
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
if (isInvalid && searchString && requestString) {
|
|
93
|
+
return (renderPlaceHolderError === null || renderPlaceHolderError === void 0 ? void 0 : renderPlaceHolderError()) || /*#__PURE__*/React__default["default"].createElement("div", {
|
|
94
|
+
className: COMPONENT_CLASS_NAME
|
|
95
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_PlaceHolder.PlaceHolder, {
|
|
96
|
+
type: ui_PlaceHolder.PlaceHolderTypes.WRONG,
|
|
97
|
+
retryToConnect: handleRetryToConnect
|
|
98
|
+
}));
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
if (loading && searchString && requestString) {
|
|
102
|
+
return (renderPlaceHolderLoading === null || renderPlaceHolderLoading === void 0 ? void 0 : renderPlaceHolderLoading()) || /*#__PURE__*/React__default["default"].createElement("div", {
|
|
103
|
+
className: COMPONENT_CLASS_NAME
|
|
104
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_PlaceHolder.PlaceHolder, {
|
|
105
|
+
type: ui_PlaceHolder.PlaceHolderTypes.SEARCHING
|
|
106
|
+
}));
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
if (!searchString) {
|
|
110
|
+
return (renderPlaceHolderNoString === null || renderPlaceHolderNoString === void 0 ? void 0 : renderPlaceHolderNoString()) || /*#__PURE__*/React__default["default"].createElement("div", {
|
|
111
|
+
className: COMPONENT_CLASS_NAME
|
|
112
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_PlaceHolder.PlaceHolder, {
|
|
113
|
+
type: ui_PlaceHolder.PlaceHolderTypes.SEARCH_IN,
|
|
114
|
+
searchInString: getChannelName()
|
|
115
|
+
}));
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
119
|
+
className: COMPONENT_CLASS_NAME,
|
|
120
|
+
onScroll: handleOnScroll,
|
|
121
|
+
ref: scrollRef
|
|
122
|
+
}, allMessages.length > 0 ? allMessages.map(function (message) {
|
|
123
|
+
if (renderSearchItem) {
|
|
124
|
+
return renderSearchItem({
|
|
125
|
+
message: message,
|
|
126
|
+
onResultClick: onResultClick
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
if (message.messageType === 'file') {
|
|
131
|
+
return /*#__PURE__*/React__default["default"].createElement(ui_MessageSearchFileItem, {
|
|
132
|
+
className: "".concat(COMPONENT_CLASS_NAME, "__message-search-item"),
|
|
133
|
+
message: message,
|
|
134
|
+
key: message.messageId,
|
|
135
|
+
selected: selectedMessageId === message.messageId,
|
|
136
|
+
onClick: function onClick() {
|
|
137
|
+
onResultClick(message);
|
|
138
|
+
setSelectedMessageId(message.messageId);
|
|
139
|
+
}
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
return /*#__PURE__*/React__default["default"].createElement(ui_MessageSearchItem, {
|
|
144
|
+
className: "".concat(COMPONENT_CLASS_NAME, "__message-search-item"),
|
|
145
|
+
message: message,
|
|
146
|
+
key: message.messageId,
|
|
147
|
+
selected: selectedMessageId === message.messageId,
|
|
148
|
+
onClick: function onClick() {
|
|
149
|
+
onResultClick(message);
|
|
150
|
+
setSelectedMessageId(message.messageId);
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
}) : (renderPlaceHolderEmptyList === null || renderPlaceHolderEmptyList === void 0 ? void 0 : renderPlaceHolderEmptyList()) || /*#__PURE__*/React__default["default"].createElement(ui_PlaceHolder.PlaceHolder, {
|
|
154
|
+
type: ui_PlaceHolder.PlaceHolderTypes.NO_RESULTS
|
|
155
|
+
}));
|
|
156
|
+
};
|
|
157
|
+
|
|
158
|
+
exports.MessageSearchUI = MessageSearchUI;
|
|
159
|
+
exports["default"] = MessageSearchUI;
|
|
160
|
+
//# sourceMappingURL=MessageSearchUI.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MessageSearchUI.js","sources":["../../../../src/smart-components/MessageSearch/components/MessageSearchUI/index.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport './index.scss';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useMessageSearchContext } from '../../context/MessageSearchProvider';\n\nimport MessageSearchItem from '../../../../ui/MessageSearchItem';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport MessageSearchFileItem from '../../../../ui/MessageSearchFileItem';\nimport { ClientSentMessages } from '../../../../types';\n\n\nconst COMPONENT_CLASS_NAME = 'sendbird-message-search';\n\nexport interface MessageSearchUIProps {\n renderPlaceHolderError?: (props: void) => React.ReactNode;\n renderPlaceHolderLoading?: (props: void) => React.ReactNode;\n renderPlaceHolderNoString?: (props: void) => React.ReactNode;\n renderPlaceHolderEmptyList?: (props: void) => React.ReactNode;\n renderSearchItem?(\n {\n message,\n onResultClick,\n }: {\n message: ClientSentMessages,\n onResultClick?: (message: ClientSentMessages) => void,\n }\n ): JSX.Element;\n}\n\nexport const MessageSearchUI: React.FC<MessageSearchUIProps> = ({\n renderPlaceHolderError,\n renderPlaceHolderLoading,\n renderPlaceHolderNoString,\n renderPlaceHolderEmptyList,\n renderSearchItem,\n}: MessageSearchUIProps) => {\n const {\n isInvalid,\n searchString,\n requestString,\n currentChannel,\n retryCount,\n setRetryCount,\n loading,\n scrollRef,\n hasMoreResult,\n onScroll,\n allMessages,\n onResultClick,\n selectedMessageId,\n setSelectedMessageId,\n } = useMessageSearchContext();\n\n const { stringSet } = useContext(LocalizationContext);\n\n const handleRetryToConnect = () => {\n setRetryCount(retryCount + 1);\n };\n\n const handleOnScroll = (e) => {\n const scrollElement = e.target;\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n } = scrollElement;\n\n if (!hasMoreResult) {\n return;\n }\n if (scrollTop + clientHeight >= scrollHeight - 1) {\n onScroll(() => {\n // after load more searched messages\n });\n }\n };\n\n const getChannelName = () => {\n if (currentChannel && currentChannel?.name && currentChannel?.name !== 'Group Channel') {\n return currentChannel?.name;\n }\n if (currentChannel && (currentChannel?.name === 'Group Channel' || !currentChannel?.name)) {\n return currentChannel.members.map((member) => member.nickname || stringSet.NO_NAME).join(', ');\n }\n return stringSet.NO_TITLE;\n };\n\n if (isInvalid && searchString && requestString) {\n return renderPlaceHolderError?.() || (\n <div className={COMPONENT_CLASS_NAME}>\n <PlaceHolder\n type={PlaceHolderTypes.WRONG}\n retryToConnect={handleRetryToConnect}\n />\n </div>\n );\n }\n\n if (loading && searchString && requestString) {\n return renderPlaceHolderLoading?.() || (\n <div className={COMPONENT_CLASS_NAME}>\n <PlaceHolder type={PlaceHolderTypes.SEARCHING} />\n </div>\n );\n }\n\n if (!searchString) {\n return renderPlaceHolderNoString?.() || (\n <div className={COMPONENT_CLASS_NAME}>\n <PlaceHolder\n type={PlaceHolderTypes.SEARCH_IN}\n searchInString={getChannelName()}\n />\n </div>\n );\n }\n\n return (\n <div\n className={COMPONENT_CLASS_NAME}\n onScroll={handleOnScroll}\n ref={scrollRef}\n >\n {\n (allMessages.length > 0)\n ? (\n allMessages.map((message) => {\n if (renderSearchItem) {\n return renderSearchItem({ message, onResultClick });\n }\n if (message.messageType === 'file') {\n return (\n <MessageSearchFileItem\n className={`${COMPONENT_CLASS_NAME}__message-search-item`}\n message={message as FileMessage}\n key={message.messageId}\n selected={(selectedMessageId === message.messageId)}\n onClick={() => {\n onResultClick(message);\n setSelectedMessageId(message.messageId);\n }}\n />\n );\n }\n return (\n <MessageSearchItem\n className={`${COMPONENT_CLASS_NAME}__message-search-item`}\n message={message as UserMessage}\n key={message.messageId}\n selected={(selectedMessageId === message.messageId)}\n onClick={() => {\n onResultClick(message);\n setSelectedMessageId(message.messageId);\n }}\n />\n );\n })\n )\n : renderPlaceHolderEmptyList?.() || (\n <PlaceHolder type={PlaceHolderTypes.NO_RESULTS} />\n )\n }\n </div>\n );\n};\n\nexport default MessageSearchUI;\n"],"names":["COMPONENT_CLASS_NAME","MessageSearchUI","_a","renderPlaceHolderError","renderPlaceHolderLoading","renderPlaceHolderNoString","renderPlaceHolderEmptyList","renderSearchItem","_b","useMessageSearchContext","isInvalid","searchString","requestString","currentChannel","retryCount","setRetryCount","loading","scrollRef","hasMoreResult","onScroll","allMessages","onResultClick","selectedMessageId","setSelectedMessageId","stringSet","useContext","LocalizationContext","handleRetryToConnect","handleOnScroll","e","scrollElement","target","scrollTop","scrollHeight","clientHeight","getChannelName","name","members","map","member","nickname","NO_NAME","join","NO_TITLE","React","PlaceHolder","PlaceHolderTypes","WRONG","SEARCHING","SEARCH_IN","length","message","messageType","MessageSearchFileItem","messageId","MessageSearchItem","NO_RESULTS"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,IAAMA,oBAAoB,GAAG,yBAA7B;IAkBaC,eAAe,GAAmC,SAAlDA,eAAkD,CAACC,EAAD;MAC7DC,sBAAsB;MACtBC,wBAAwB;MACxBC,yBAAyB;MACzBC,0BAA0B;MAC1BC,gBAAgB;;AAEV,MAAAC,KAeFC,6CAAuB,EAfrB;AAAA,MACJC,SAAS,eADL;AAAA,MAEJC,YAAY,kBAFR;AAAA,MAGJC,aAAa,mBAHT;AAAA,MAIJC,cAAc,oBAJV;AAAA,MAKJC,UAAU,gBALN;AAAA,MAMJC,aAAa,mBANT;AAAA,MAOJC,OAAO,aAPH;AAAA,MAQJC,SAAS,eARL;AAAA,MASJC,aAAa,mBATT;AAAA,MAUJC,QAAQ,cAVJ;AAAA,MAWJC,WAAW,iBAXP;AAAA,MAYJC,aAAa,mBAZT;AAAA,MAaJC,iBAAiB,uBAbb;AAAA,MAcJC,oBAAoB,0BAdhB;;AAiBE,MAAAC,SAAS,GAAKC,gBAAU,CAACC,uCAAD,CAAV,UAAd;;AAER,MAAMC,oBAAoB,GAAG,SAAvBA,oBAAuB;AAC3BZ,IAAAA,aAAa,CAACD,UAAU,GAAG,CAAd,CAAb;AACD,GAFD;;AAIA,MAAMc,cAAc,GAAG,SAAjBA,cAAiB,CAACC,CAAD;AACrB,QAAMC,aAAa,GAAGD,CAAC,CAACE,MAAxB;AAEE,QAAAC,SAAS,GAGPF,aAAa,UAHf;AAAA,QACAG,YAAY,GAEVH,aAAa,aAHf;AAAA,QAEAI,YAAY,GACVJ,aAAa,aAHf;;AAKF,QAAI,CAACZ,aAAL,EAAoB;AAClB;AACD;;AACD,QAAIc,SAAS,GAAGE,YAAZ,IAA4BD,YAAY,GAAG,CAA/C,EAAkD;AAChDd,MAAAA,QAAQ,CAAC;AAER,OAFO,CAAR;AAGD;AACF,GAhBD;;AAkBA,MAAMgB,cAAc,GAAG,SAAjBA,cAAiB;AACrB,QAAItB,cAAc,KAAIA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAEuB,IAApB,CAAd,IAA0C,CAAAvB,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAEuB,IAAhB,MAAyB,eAAvE,EAAwF;AACtF,aAAOvB,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAEuB,IAAvB;AACD;;AACD,QAAIvB,cAAc,KAAK,CAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAEuB,IAAhB,MAAyB,eAAzB,IAA4C,EAACvB,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAEuB,IAAjB,CAAjD,CAAlB,EAA2F;AACzF,aAAOvB,cAAc,CAACwB,OAAf,CAAuBC,GAAvB,CAA2B,UAACC,MAAD;AAAY,eAAAA,MAAM,CAACC,QAAP,IAAmBhB,SAAS,CAACiB,OAA7B;AAAoC,OAA3E,EAA6EC,IAA7E,CAAkF,IAAlF,CAAP;AACD;;AACD,WAAOlB,SAAS,CAACmB,QAAjB;AACD,GARD;;AAUA,MAAIjC,SAAS,IAAIC,YAAb,IAA6BC,aAAjC,EAAgD;AAC9C,WAAO,CAAAT,sBAAsB,SAAtB,IAAAA,sBAAsB,WAAtB,SAAA,GAAAA,sBAAsB,EAAtB,kBACLyC;AAAK,MAAA,SAAS,EAAE5C;AAAhB,oBACE4C,wCAACC,0BAAD;AACE,MAAA,IAAI,EAAEC,+BAAgB,CAACC,KADzB;AAEE,MAAA,cAAc,EAAEpB;AAFlB,MADF,CADF;AAQD;;AAED,MAAIX,OAAO,IAAIL,YAAX,IAA2BC,aAA/B,EAA8C;AAC5C,WAAO,CAAAR,wBAAwB,SAAxB,IAAAA,wBAAwB,WAAxB,SAAA,GAAAA,wBAAwB,EAAxB,kBACLwC;AAAK,MAAA,SAAS,EAAE5C;AAAhB,oBACE4C,wCAACC,0BAAD;AAAa,MAAA,IAAI,EAAEC,+BAAgB,CAACE;AAApC,MADF,CADF;AAKD;;AAED,MAAI,CAACrC,YAAL,EAAmB;AACjB,WAAO,CAAAN,yBAAyB,SAAzB,IAAAA,yBAAyB,WAAzB,SAAA,GAAAA,yBAAyB,EAAzB,kBACLuC;AAAK,MAAA,SAAS,EAAE5C;AAAhB,oBACE4C,wCAACC,0BAAD;AACE,MAAA,IAAI,EAAEC,+BAAgB,CAACG,SADzB;AAEE,MAAA,cAAc,EAAEd,cAAc;AAFhC,MADF,CADF;AAQD;;AAED,sBACES;AACE,IAAA,SAAS,EAAE5C,oBADb;AAEE,IAAA,QAAQ,EAAE4B,cAFZ;AAGE,IAAA,GAAG,EAAEX;AAHP,KAMKG,WAAW,CAAC8B,MAAZ,GAAqB,CAAtB,GAEI9B,WAAW,CAACkB,GAAZ,CAAgB,UAACa,OAAD;AACd,QAAI5C,gBAAJ,EAAsB;AACpB,aAAOA,gBAAgB,CAAC;AAAE4C,QAAAA,OAAO,SAAT;AAAW9B,QAAAA,aAAa;AAAxB,OAAD,CAAvB;AACD;;AACD,QAAI8B,OAAO,CAACC,WAAR,KAAwB,MAA5B,EAAoC;AAClC,0BACER,wCAACS,wBAAD;AACE,QAAA,SAAS,EAAE,SAAA,CAAGrD,oBAAH,yBAAA,CADb;AAEE,QAAA,OAAO,EAAEmD,OAFX;AAGE,QAAA,GAAG,EAAEA,OAAO,CAACG,SAHf;AAIE,QAAA,QAAQ,EAAGhC,iBAAiB,KAAK6B,OAAO,CAACG,SAJ3C;AAKE,QAAA,OAAO,EAAE;AACPjC,UAAAA,aAAa,CAAC8B,OAAD,CAAb;AACA5B,UAAAA,oBAAoB,CAAC4B,OAAO,CAACG,SAAT,CAApB;AACD;AARH,QADF;AAYD;;AACD,wBACEV,wCAACW,oBAAD;AACE,MAAA,SAAS,EAAE,SAAA,CAAGvD,oBAAH,yBAAA,CADb;AAEE,MAAA,OAAO,EAAEmD,OAFX;AAGE,MAAA,GAAG,EAAEA,OAAO,CAACG,SAHf;AAIE,MAAA,QAAQ,EAAGhC,iBAAiB,KAAK6B,OAAO,CAACG,SAJ3C;AAKE,MAAA,OAAO,EAAE;AACPjC,QAAAA,aAAa,CAAC8B,OAAD,CAAb;AACA5B,QAAAA,oBAAoB,CAAC4B,OAAO,CAACG,SAAT,CAApB;AACD;AARH,MADF;AAYD,GA9BD,CAFJ,GAkCI,CAAAhD,0BAA0B,SAA1B,IAAAA,0BAA0B,WAA1B,SAAA,GAAAA,0BAA0B,EAA1B,kBACAsC,wCAACC,0BAAD;AAAa,IAAA,IAAI,EAAEC,+BAAgB,CAACU;AAApC,IAzCR,CADF;AA+CD;;;;;"}
|
|
@@ -0,0 +1,396 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var React = require('react');
|
|
6
|
+
var useSendbirdStateContext = require('../useSendbirdStateContext.js');
|
|
7
|
+
var tslib_es6 = require('../tslib.es6-d9c7aa8b.js');
|
|
8
|
+
require('../withSendBird.js');
|
|
9
|
+
require('../_rollupPluginBabelHelpers-d984e855.js');
|
|
10
|
+
|
|
11
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
12
|
+
|
|
13
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
14
|
+
|
|
15
|
+
var GET_SEARCHED_MESSAGES = 'GET_SEARCHED_MESSAGES';
|
|
16
|
+
var GET_NEXT_SEARCHED_MESSAGES = 'GET_NEXT_SEARCHED_MESSAGES';
|
|
17
|
+
var START_MESSAGE_SEARCH = 'START_MESSAGE_SEARCH';
|
|
18
|
+
var START_GETTING_SEARCHED_MESSAGES = 'START_GETTING_SEARCHED_MESSAGES';
|
|
19
|
+
var SET_QUERY_INVALID = 'SET_QUERY_INVALID';
|
|
20
|
+
var SET_CURRENT_CHANNEL = 'SET_CURRENT_CHANNEL';
|
|
21
|
+
var CHANNEL_INVALID = 'CHANNEL_INVALID';
|
|
22
|
+
var RESET_SEARCH_STRING = 'RESET_SEARCH_STRING';
|
|
23
|
+
|
|
24
|
+
function reducer(state, action) {
|
|
25
|
+
switch (action.type) {
|
|
26
|
+
case SET_CURRENT_CHANNEL:
|
|
27
|
+
{
|
|
28
|
+
var currentChannel = action.payload;
|
|
29
|
+
return tslib_es6.__assign(tslib_es6.__assign({}, state), {
|
|
30
|
+
currentChannel: currentChannel,
|
|
31
|
+
initialized: true
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
case CHANNEL_INVALID:
|
|
36
|
+
{
|
|
37
|
+
return tslib_es6.__assign(tslib_es6.__assign({}, state), {
|
|
38
|
+
currentChannel: null,
|
|
39
|
+
initialized: false
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
case GET_SEARCHED_MESSAGES:
|
|
44
|
+
{
|
|
45
|
+
var _a = action.payload,
|
|
46
|
+
messages = _a.messages,
|
|
47
|
+
createdQuery = _a.createdQuery;
|
|
48
|
+
|
|
49
|
+
if (createdQuery && createdQuery.channelUrl === (state === null || state === void 0 ? void 0 : state.currentMessageSearchQuery).channelUrl && createdQuery.key === (state === null || state === void 0 ? void 0 : state.currentMessageSearchQuery).key) {
|
|
50
|
+
return tslib_es6.__assign(tslib_es6.__assign({}, state), {
|
|
51
|
+
loading: false,
|
|
52
|
+
isInvalid: false,
|
|
53
|
+
allMessages: tslib_es6.__spreadArray([], messages, true),
|
|
54
|
+
hasMoreResult: (state === null || state === void 0 ? void 0 : state.currentMessageSearchQuery).hasNext
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
return tslib_es6.__assign({}, state);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
case SET_QUERY_INVALID:
|
|
62
|
+
{
|
|
63
|
+
return tslib_es6.__assign(tslib_es6.__assign({}, state), {
|
|
64
|
+
isInvalid: true
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
case START_MESSAGE_SEARCH:
|
|
69
|
+
{
|
|
70
|
+
return tslib_es6.__assign(tslib_es6.__assign({}, state), {
|
|
71
|
+
isInvalid: false,
|
|
72
|
+
loading: false
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
case START_GETTING_SEARCHED_MESSAGES:
|
|
77
|
+
{
|
|
78
|
+
var currentMessageSearchQuery = action.payload;
|
|
79
|
+
return tslib_es6.__assign(tslib_es6.__assign({}, state), {
|
|
80
|
+
loading: true,
|
|
81
|
+
currentMessageSearchQuery: currentMessageSearchQuery
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
case GET_NEXT_SEARCHED_MESSAGES:
|
|
86
|
+
{
|
|
87
|
+
var messages = action.payload;
|
|
88
|
+
return tslib_es6.__assign(tslib_es6.__assign({}, state), {
|
|
89
|
+
allMessages: tslib_es6.__spreadArray(tslib_es6.__spreadArray([], state.allMessages, true), messages, true),
|
|
90
|
+
hasMoreResult: (state === null || state === void 0 ? void 0 : state.currentMessageSearchQuery).hasNext
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
case RESET_SEARCH_STRING:
|
|
95
|
+
{
|
|
96
|
+
return tslib_es6.__assign(tslib_es6.__assign({}, state), {
|
|
97
|
+
allMessages: []
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
default:
|
|
102
|
+
{
|
|
103
|
+
return state;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
var initialState = {
|
|
109
|
+
allMessages: [],
|
|
110
|
+
loading: false,
|
|
111
|
+
isInvalid: false,
|
|
112
|
+
initialized: false,
|
|
113
|
+
currentChannel: null,
|
|
114
|
+
currentMessageSearchQuery: null,
|
|
115
|
+
hasMoreResult: false
|
|
116
|
+
};
|
|
117
|
+
|
|
118
|
+
function useSetChannel(_a, _b) {
|
|
119
|
+
var channelUrl = _a.channelUrl,
|
|
120
|
+
sdkInit = _a.sdkInit;
|
|
121
|
+
var sdk = _b.sdk,
|
|
122
|
+
logger = _b.logger,
|
|
123
|
+
messageSearchDispatcher = _b.messageSearchDispatcher;
|
|
124
|
+
React.useEffect(function () {
|
|
125
|
+
if (channelUrl && sdkInit && (sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel)) {
|
|
126
|
+
sdk.groupChannel.getChannel(channelUrl).then(function (groupChannel) {
|
|
127
|
+
logger.info('MessageSearch | useSetChannel group channel', groupChannel);
|
|
128
|
+
messageSearchDispatcher({
|
|
129
|
+
type: SET_CURRENT_CHANNEL,
|
|
130
|
+
payload: groupChannel
|
|
131
|
+
});
|
|
132
|
+
}).catch(function () {
|
|
133
|
+
messageSearchDispatcher({
|
|
134
|
+
type: CHANNEL_INVALID,
|
|
135
|
+
payload: null
|
|
136
|
+
});
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
}, [channelUrl, sdkInit]);
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
function useGetSearchedMessages(_a, _b) {
|
|
143
|
+
var currentChannel = _a.currentChannel,
|
|
144
|
+
channelUrl = _a.channelUrl,
|
|
145
|
+
requestString = _a.requestString,
|
|
146
|
+
messageSearchQuery = _a.messageSearchQuery,
|
|
147
|
+
onResultLoaded = _a.onResultLoaded,
|
|
148
|
+
retryCount = _a.retryCount;
|
|
149
|
+
var sdk = _b.sdk,
|
|
150
|
+
logger = _b.logger,
|
|
151
|
+
messageSearchDispatcher = _b.messageSearchDispatcher;
|
|
152
|
+
React.useEffect(function () {
|
|
153
|
+
messageSearchDispatcher({
|
|
154
|
+
type: START_MESSAGE_SEARCH,
|
|
155
|
+
payload: null
|
|
156
|
+
});
|
|
157
|
+
|
|
158
|
+
if (sdk && channelUrl && sdk.createMessageSearchQuery && currentChannel) {
|
|
159
|
+
if (requestString) {
|
|
160
|
+
var inputSearchMessageQueryObject = tslib_es6.__assign(tslib_es6.__assign({}, messageSearchQuery), {
|
|
161
|
+
order: 'ts',
|
|
162
|
+
channelUrl: channelUrl,
|
|
163
|
+
messageTimestampFrom: currentChannel.invitedAt,
|
|
164
|
+
keyword: requestString
|
|
165
|
+
});
|
|
166
|
+
|
|
167
|
+
var createdQuery_1 = sdk.createMessageSearchQuery(inputSearchMessageQueryObject);
|
|
168
|
+
createdQuery_1.next().then(function (messages) {
|
|
169
|
+
logger.info('MessageSearch | useGetSearchedMessages: succeeded getting messages', messages);
|
|
170
|
+
messageSearchDispatcher({
|
|
171
|
+
type: GET_SEARCHED_MESSAGES,
|
|
172
|
+
payload: {
|
|
173
|
+
messages: messages,
|
|
174
|
+
createdQuery: createdQuery_1
|
|
175
|
+
}
|
|
176
|
+
});
|
|
177
|
+
|
|
178
|
+
if (onResultLoaded && typeof onResultLoaded === 'function') {
|
|
179
|
+
onResultLoaded(messages, null);
|
|
180
|
+
}
|
|
181
|
+
}).catch(function (error) {
|
|
182
|
+
logger.warning('MessageSearch | useGetSearchedMessages: getting failed', error);
|
|
183
|
+
messageSearchDispatcher({
|
|
184
|
+
type: SET_QUERY_INVALID,
|
|
185
|
+
payload: null
|
|
186
|
+
});
|
|
187
|
+
|
|
188
|
+
if (onResultLoaded && typeof onResultLoaded === 'function') {
|
|
189
|
+
onResultLoaded(null, error);
|
|
190
|
+
}
|
|
191
|
+
});
|
|
192
|
+
messageSearchDispatcher({
|
|
193
|
+
type: START_GETTING_SEARCHED_MESSAGES,
|
|
194
|
+
payload: createdQuery_1
|
|
195
|
+
});
|
|
196
|
+
} else {
|
|
197
|
+
logger.info('MessageSearch | useGetSeasrchedMessages: search string is empty');
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
}, [channelUrl, messageSearchQuery, requestString, currentChannel, retryCount]);
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
function useScrollCallback(_a, _b) {
|
|
204
|
+
var currentMessageSearchQuery = _a.currentMessageSearchQuery,
|
|
205
|
+
hasMoreResult = _a.hasMoreResult,
|
|
206
|
+
onResultLoaded = _a.onResultLoaded;
|
|
207
|
+
var logger = _b.logger,
|
|
208
|
+
messageSearchDispatcher = _b.messageSearchDispatcher;
|
|
209
|
+
return React.useCallback(function (cb) {
|
|
210
|
+
if (!hasMoreResult) {
|
|
211
|
+
logger.warning('MessageSearch | useScrollCallback: no more searched results', hasMoreResult);
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
if (currentMessageSearchQuery && currentMessageSearchQuery.hasNext) {
|
|
215
|
+
currentMessageSearchQuery.next().then(function (messages) {
|
|
216
|
+
logger.info('MessageSearch | useScrollCallback: succeeded getting searched messages', messages);
|
|
217
|
+
messageSearchDispatcher({
|
|
218
|
+
type: GET_NEXT_SEARCHED_MESSAGES,
|
|
219
|
+
payload: messages
|
|
220
|
+
});
|
|
221
|
+
cb(messages, null);
|
|
222
|
+
|
|
223
|
+
if (onResultLoaded && typeof onResultLoaded === 'function') {
|
|
224
|
+
onResultLoaded(messages, null);
|
|
225
|
+
}
|
|
226
|
+
}).catch(function (error) {
|
|
227
|
+
logger.warning('MessageSearch | useScrollCallback: failed getting searched messages', error);
|
|
228
|
+
cb(null, error);
|
|
229
|
+
|
|
230
|
+
if (onResultLoaded && typeof onResultLoaded === 'function') {
|
|
231
|
+
onResultLoaded(null, error);
|
|
232
|
+
}
|
|
233
|
+
});
|
|
234
|
+
} else {
|
|
235
|
+
logger.warning('MessageSearch | useScrollCallback: no currentMessageSearchQuery');
|
|
236
|
+
}
|
|
237
|
+
}, [currentMessageSearchQuery, hasMoreResult]);
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
var DEBOUNCING_TIME = 500;
|
|
241
|
+
|
|
242
|
+
function useSearchStringEffect(_a, _b) {
|
|
243
|
+
var searchString = _a.searchString;
|
|
244
|
+
var messageSearchDispatcher = _b.messageSearchDispatcher;
|
|
245
|
+
|
|
246
|
+
var _c = React.useState(''),
|
|
247
|
+
requestString = _c[0],
|
|
248
|
+
setRequestString = _c[1];
|
|
249
|
+
|
|
250
|
+
var _d = React.useState(null),
|
|
251
|
+
debouncingTimer = _d[0],
|
|
252
|
+
setDebouncingTimer = _d[1];
|
|
253
|
+
|
|
254
|
+
React.useEffect(function () {
|
|
255
|
+
clearTimeout(debouncingTimer);
|
|
256
|
+
|
|
257
|
+
if (searchString) {
|
|
258
|
+
setDebouncingTimer(setTimeout(function () {
|
|
259
|
+
setRequestString(searchString);
|
|
260
|
+
}, DEBOUNCING_TIME));
|
|
261
|
+
} else {
|
|
262
|
+
setRequestString('');
|
|
263
|
+
messageSearchDispatcher({
|
|
264
|
+
type: RESET_SEARCH_STRING,
|
|
265
|
+
payload: ''
|
|
266
|
+
});
|
|
267
|
+
}
|
|
268
|
+
}, [searchString]);
|
|
269
|
+
return requestString;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
var MessageSearchContext = /*#__PURE__*/React__default["default"].createContext(undefined);
|
|
273
|
+
|
|
274
|
+
var MessageSearchProvider = function MessageSearchProvider(props) {
|
|
275
|
+
var _a, _b, _c, _d, _e;
|
|
276
|
+
|
|
277
|
+
var // message search props
|
|
278
|
+
channelUrl = props.channelUrl,
|
|
279
|
+
searchString = props.searchString,
|
|
280
|
+
messageSearchQuery = props.messageSearchQuery,
|
|
281
|
+
onResultLoaded = props.onResultLoaded,
|
|
282
|
+
onResultClick = props.onResultClick;
|
|
283
|
+
var globalState = useSendbirdStateContext(); // hook variables
|
|
284
|
+
|
|
285
|
+
var _f = React.useState(0),
|
|
286
|
+
retryCount = _f[0],
|
|
287
|
+
setRetryCount = _f[1]; // this is a trigger flag for activating useGetSearchMessages
|
|
288
|
+
|
|
289
|
+
|
|
290
|
+
var _g = React.useState(0),
|
|
291
|
+
selectedMessageId = _g[0],
|
|
292
|
+
setSelectedMessageId = _g[1];
|
|
293
|
+
|
|
294
|
+
var _h = React.useReducer(reducer, initialState),
|
|
295
|
+
messageSearchStore = _h[0],
|
|
296
|
+
messageSearchDispatcher = _h[1];
|
|
297
|
+
|
|
298
|
+
var allMessages = messageSearchStore.allMessages,
|
|
299
|
+
loading = messageSearchStore.loading,
|
|
300
|
+
isInvalid = messageSearchStore.isInvalid,
|
|
301
|
+
currentChannel = messageSearchStore.currentChannel,
|
|
302
|
+
currentMessageSearchQuery = messageSearchStore.currentMessageSearchQuery,
|
|
303
|
+
hasMoreResult = messageSearchStore.hasMoreResult;
|
|
304
|
+
var logger = (_a = globalState === null || globalState === void 0 ? void 0 : globalState.config) === null || _a === void 0 ? void 0 : _a.logger;
|
|
305
|
+
var sdk = (_c = (_b = globalState === null || globalState === void 0 ? void 0 : globalState.stores) === null || _b === void 0 ? void 0 : _b.sdkStore) === null || _c === void 0 ? void 0 : _c.sdk;
|
|
306
|
+
var sdkInit = (_e = (_d = globalState === null || globalState === void 0 ? void 0 : globalState.stores) === null || _d === void 0 ? void 0 : _d.sdkStore) === null || _e === void 0 ? void 0 : _e.initialized;
|
|
307
|
+
var scrollRef = React.useRef(null);
|
|
308
|
+
|
|
309
|
+
var handleOnScroll = function handleOnScroll(e) {
|
|
310
|
+
var scrollElement = e.target;
|
|
311
|
+
var scrollTop = scrollElement.scrollTop,
|
|
312
|
+
scrollHeight = scrollElement.scrollHeight,
|
|
313
|
+
clientHeight = scrollElement.clientHeight;
|
|
314
|
+
|
|
315
|
+
if (!hasMoreResult) {
|
|
316
|
+
return;
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
if (scrollTop + clientHeight >= scrollHeight) {
|
|
320
|
+
onScroll(function () {// after load more searched messages
|
|
321
|
+
});
|
|
322
|
+
}
|
|
323
|
+
};
|
|
324
|
+
|
|
325
|
+
useSetChannel({
|
|
326
|
+
channelUrl: channelUrl,
|
|
327
|
+
sdkInit: sdkInit
|
|
328
|
+
}, {
|
|
329
|
+
sdk: sdk,
|
|
330
|
+
logger: logger,
|
|
331
|
+
messageSearchDispatcher: messageSearchDispatcher
|
|
332
|
+
});
|
|
333
|
+
var requestString = useSearchStringEffect({
|
|
334
|
+
searchString: searchString
|
|
335
|
+
}, {
|
|
336
|
+
messageSearchDispatcher: messageSearchDispatcher
|
|
337
|
+
});
|
|
338
|
+
useGetSearchedMessages({
|
|
339
|
+
currentChannel: currentChannel,
|
|
340
|
+
channelUrl: channelUrl,
|
|
341
|
+
requestString: requestString,
|
|
342
|
+
messageSearchQuery: messageSearchQuery,
|
|
343
|
+
onResultLoaded: onResultLoaded,
|
|
344
|
+
retryCount: retryCount
|
|
345
|
+
}, {
|
|
346
|
+
sdk: sdk,
|
|
347
|
+
logger: logger,
|
|
348
|
+
messageSearchDispatcher: messageSearchDispatcher
|
|
349
|
+
});
|
|
350
|
+
var onScroll = useScrollCallback({
|
|
351
|
+
currentMessageSearchQuery: currentMessageSearchQuery,
|
|
352
|
+
hasMoreResult: hasMoreResult,
|
|
353
|
+
onResultLoaded: onResultLoaded
|
|
354
|
+
}, {
|
|
355
|
+
logger: logger,
|
|
356
|
+
messageSearchDispatcher: messageSearchDispatcher
|
|
357
|
+
});
|
|
358
|
+
|
|
359
|
+
var handleRetryToConnect = function handleRetryToConnect() {
|
|
360
|
+
setRetryCount(retryCount + 1);
|
|
361
|
+
};
|
|
362
|
+
|
|
363
|
+
return /*#__PURE__*/React__default["default"].createElement(MessageSearchContext.Provider, {
|
|
364
|
+
value: {
|
|
365
|
+
channelUrl: channelUrl,
|
|
366
|
+
searchString: searchString,
|
|
367
|
+
requestString: requestString,
|
|
368
|
+
messageSearchQuery: messageSearchQuery,
|
|
369
|
+
onResultLoaded: onResultLoaded,
|
|
370
|
+
onResultClick: onResultClick,
|
|
371
|
+
retryCount: retryCount,
|
|
372
|
+
setRetryCount: setRetryCount,
|
|
373
|
+
selectedMessageId: selectedMessageId,
|
|
374
|
+
setSelectedMessageId: setSelectedMessageId,
|
|
375
|
+
messageSearchDispatcher: messageSearchDispatcher,
|
|
376
|
+
allMessages: allMessages,
|
|
377
|
+
loading: loading,
|
|
378
|
+
isInvalid: isInvalid,
|
|
379
|
+
currentChannel: currentChannel,
|
|
380
|
+
currentMessageSearchQuery: currentMessageSearchQuery,
|
|
381
|
+
hasMoreResult: hasMoreResult,
|
|
382
|
+
onScroll: onScroll,
|
|
383
|
+
scrollRef: scrollRef,
|
|
384
|
+
handleRetryToConnect: handleRetryToConnect,
|
|
385
|
+
handleOnScroll: handleOnScroll
|
|
386
|
+
}
|
|
387
|
+
}, props === null || props === void 0 ? void 0 : props.children);
|
|
388
|
+
};
|
|
389
|
+
|
|
390
|
+
var useMessageSearchContext = function useMessageSearchContext() {
|
|
391
|
+
return React__default["default"].useContext(MessageSearchContext);
|
|
392
|
+
};
|
|
393
|
+
|
|
394
|
+
exports.MessageSearchProvider = MessageSearchProvider;
|
|
395
|
+
exports.useMessageSearchContext = useMessageSearchContext;
|
|
396
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +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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"}
|