@sendbird/uikit-react 3.0.0-alpha.2 → 3.0.0-beta.3
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 +54 -35
- package/App.js.map +1 -1
- package/Channel/components/ChannelHeader.js +15 -14
- package/Channel/components/ChannelHeader.js.map +1 -1
- package/Channel/components/ChannelUI.js +30 -23
- package/Channel/components/ChannelUI.js.map +1 -1
- package/Channel/components/FileViewer.js +14 -13
- package/Channel/components/FileViewer.js.map +1 -1
- package/Channel/components/FrozenNotification.js +5 -5
- package/Channel/components/Message.js +189 -66
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +145 -30
- package/Channel/components/MessageInput.js.map +1 -1
- package/Channel/components/MessageList.js +72 -60
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +17 -16
- package/Channel/components/RemoveMessageModal.js.map +1 -1
- package/Channel/components/SuggestedMentionList.js +250 -0
- package/Channel/components/SuggestedMentionList.js.map +1 -0
- package/Channel/components/TypingIndicator.js +16 -15
- package/Channel/components/TypingIndicator.js.map +1 -1
- package/Channel/components/UnreadCount.js +5 -5
- package/Channel/context.js +13 -12
- package/Channel/context.js.map +1 -1
- package/Channel.js +29 -22
- package/Channel.js.map +1 -1
- package/ChannelList/components/AddChannel.js +14 -14
- package/ChannelList/components/ChannelListHeader.js +7 -7
- package/ChannelList/components/ChannelListUI.js +52 -29
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +55 -21
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/ChannelList/context.js +8 -8
- package/ChannelList.js +34 -25
- package/ChannelList.js.map +1 -1
- package/{ChannelListProvider-0b0c2c40.js → ChannelListProvider-d602a166.js} +92 -27
- package/ChannelListProvider-d602a166.js.map +1 -0
- package/{ChannelProvider-459e463f.js → ChannelProvider-cf8fc05a.js} +72 -41
- package/ChannelProvider-cf8fc05a.js.map +1 -0
- package/ChannelSettings/components/AdminPanel.js +15 -15
- package/ChannelSettings/components/ChannelProfile.js +13 -13
- package/ChannelSettings/components/ChannelSettingsUI.js +18 -18
- package/ChannelSettings/components/EditDetailsModal.js +13 -13
- package/ChannelSettings/components/LeaveChannel.js +10 -10
- package/ChannelSettings/components/UserListItem.js +11 -11
- package/ChannelSettings/components/UserPanel.js +14 -14
- package/ChannelSettings/context.js +3 -3
- package/ChannelSettings.js +18 -18
- package/CreateChannel/components/CreateChannelUI.js +14 -14
- package/CreateChannel/components/InviteMembers.js +14 -14
- package/CreateChannel/components/SelectChannelType.js +10 -10
- package/CreateChannel/context.js +3 -3
- package/CreateChannel.js +14 -14
- package/{CreateChannelProvider-c617a1bb.js → CreateChannelProvider-3f3dafed.js} +1 -1
- package/{CreateChannelProvider-c617a1bb.js.map → CreateChannelProvider-3f3dafed.js.map} +1 -1
- package/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/EditUserProfile.js +13 -13
- package/{LocalizationContext-e4391013.js → LocalizationContext-b970a73c.js} +3 -3
- package/{LocalizationContext-e4391013.js.map → LocalizationContext-b970a73c.js.map} +1 -1
- package/{MemberList-6655cba0.js → MemberList-9d29bee4.js} +5 -5
- package/{MemberList-6655cba0.js.map → MemberList-9d29bee4.js.map} +1 -1
- package/MessageSearch/components/MessageSearchUI.js +11 -11
- package/MessageSearch/context.js +2 -2
- package/MessageSearch.js +11 -11
- package/OpenChannel/components/FrozenChannelNotification.js +5 -5
- package/OpenChannel/components/OpenChannelHeader.js +12 -12
- package/OpenChannel/components/OpenChannelInput.js +18 -14
- package/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessage.js +23 -19
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +25 -21
- package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/OpenChannel/components/OpenChannelUI.js +25 -21
- package/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/OpenChannel/context.js +9 -9
- package/OpenChannel.js +25 -21
- package/OpenChannel.js.map +1 -1
- package/{OpenChannelProvider-a7691eb4.js → OpenChannelProvider-821fb008.js} +7 -7
- package/{OpenChannelProvider-a7691eb4.js.map → OpenChannelProvider-821fb008.js.map} +1 -1
- package/OpenChannelSettings/components/EditDetailsModal.js +13 -13
- package/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
- package/OpenChannelSettings/components/OperatorUI.js +16 -16
- package/OpenChannelSettings/components/ParticipantUI.js +14 -14
- package/OpenChannelSettings/context.js +2 -2
- package/OpenChannelSettings.js +17 -17
- package/SendbirdProvider.js +36 -14
- package/SendbirdProvider.js.map +1 -1
- package/{UserProfileContext-865db5e6.js → UserProfileContext-f4ff4291.js} +1 -1
- package/{UserProfileContext-865db5e6.js.map → UserProfileContext-f4ff4291.js.map} +1 -1
- package/{_rollupPluginBabelHelpers-20904f21.js → _rollupPluginBabelHelpers-6bf18550.js} +1 -1
- package/{_rollupPluginBabelHelpers-20904f21.js.map → _rollupPluginBabelHelpers-6bf18550.js.map} +1 -1
- package/{actionTypes-1e3a4074.js → actionTypes-8e320ded.js} +1 -1
- package/{actionTypes-1e3a4074.js.map → actionTypes-8e320ded.js.map} +1 -1
- package/cjs/App.js +54 -35
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +15 -14
- package/cjs/Channel/components/ChannelHeader.js.map +1 -1
- package/cjs/Channel/components/ChannelUI.js +31 -24
- package/cjs/Channel/components/ChannelUI.js.map +1 -1
- package/cjs/Channel/components/FileViewer.js +14 -13
- package/cjs/Channel/components/FileViewer.js.map +1 -1
- package/cjs/Channel/components/FrozenNotification.js +5 -5
- package/cjs/Channel/components/Message.js +188 -65
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +144 -29
- package/cjs/Channel/components/MessageInput.js.map +1 -1
- package/cjs/Channel/components/MessageList.js +71 -59
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +17 -16
- package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
- package/cjs/Channel/components/SuggestedMentionList.js +256 -0
- package/cjs/Channel/components/SuggestedMentionList.js.map +1 -0
- package/cjs/Channel/components/TypingIndicator.js +18 -14
- package/cjs/Channel/components/TypingIndicator.js.map +1 -1
- package/cjs/Channel/components/UnreadCount.js +5 -5
- package/cjs/Channel/context.js +13 -12
- package/cjs/Channel/context.js.map +1 -1
- package/cjs/Channel.js +29 -22
- package/cjs/Channel.js.map +1 -1
- package/cjs/ChannelList/components/AddChannel.js +14 -14
- package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
- package/cjs/ChannelList/components/ChannelListUI.js +52 -29
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +55 -21
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/cjs/ChannelList/context.js +8 -8
- package/cjs/ChannelList.js +34 -25
- package/cjs/ChannelList.js.map +1 -1
- package/cjs/{ChannelListProvider-5a152618.js → ChannelListProvider-64db9f70.js} +92 -27
- package/cjs/ChannelListProvider-64db9f70.js.map +1 -0
- package/cjs/{ChannelProvider-f1fb0108.js → ChannelProvider-5e8e33b1.js} +79 -48
- package/cjs/ChannelProvider-5e8e33b1.js.map +1 -0
- package/cjs/ChannelSettings/components/AdminPanel.js +15 -15
- package/cjs/ChannelSettings/components/ChannelProfile.js +13 -13
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -18
- package/cjs/ChannelSettings/components/EditDetailsModal.js +13 -13
- package/cjs/ChannelSettings/components/LeaveChannel.js +10 -10
- package/cjs/ChannelSettings/components/UserListItem.js +11 -11
- package/cjs/ChannelSettings/components/UserPanel.js +14 -14
- package/cjs/ChannelSettings/context.js +3 -3
- package/cjs/ChannelSettings.js +18 -18
- package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
- package/cjs/CreateChannel/components/InviteMembers.js +14 -14
- package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
- package/cjs/CreateChannel/context.js +3 -3
- package/cjs/CreateChannel.js +14 -14
- package/cjs/{CreateChannelProvider-df42106f.js → CreateChannelProvider-dcf7f906.js} +1 -1
- package/cjs/{CreateChannelProvider-df42106f.js.map → CreateChannelProvider-dcf7f906.js.map} +1 -1
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/cjs/EditUserProfile.js +13 -13
- package/cjs/{LocalizationContext-68e55e2a.js → LocalizationContext-382a9ef1.js} +3 -3
- package/cjs/{LocalizationContext-68e55e2a.js.map → LocalizationContext-382a9ef1.js.map} +1 -1
- package/cjs/{MemberList-dc84e303.js → MemberList-03a241cd.js} +5 -5
- package/cjs/{MemberList-dc84e303.js.map → MemberList-03a241cd.js.map} +1 -1
- package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
- package/cjs/MessageSearch/context.js +2 -2
- package/cjs/MessageSearch.js +11 -11
- package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
- package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
- package/cjs/OpenChannel/components/OpenChannelInput.js +18 -14
- package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessage.js +23 -19
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +25 -21
- package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelUI.js +25 -21
- package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/cjs/OpenChannel/context.js +9 -9
- package/cjs/OpenChannel.js +25 -21
- package/cjs/OpenChannel.js.map +1 -1
- package/cjs/{OpenChannelProvider-7a1a996f.js → OpenChannelProvider-9000ccb9.js} +7 -7
- package/cjs/{OpenChannelProvider-7a1a996f.js.map → OpenChannelProvider-9000ccb9.js.map} +1 -1
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +13 -13
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
- package/cjs/OpenChannelSettings/components/OperatorUI.js +16 -16
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
- package/cjs/OpenChannelSettings/context.js +2 -2
- package/cjs/OpenChannelSettings.js +17 -17
- package/cjs/SendbirdProvider.js +36 -14
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/{UserProfileContext-3533547d.js → UserProfileContext-0b7ef11a.js} +1 -1
- package/cjs/{UserProfileContext-3533547d.js.map → UserProfileContext-0b7ef11a.js.map} +1 -1
- package/cjs/{_rollupPluginBabelHelpers-fc14118c.js → _rollupPluginBabelHelpers-6193d45d.js} +1 -1
- package/cjs/{_rollupPluginBabelHelpers-fc14118c.js.map → _rollupPluginBabelHelpers-6193d45d.js.map} +1 -1
- package/cjs/{actionTypes-bc47f97a.js → actionTypes-092bc172.js} +1 -1
- package/cjs/{actionTypes-bc47f97a.js.map → actionTypes-092bc172.js.map} +1 -1
- package/cjs/{color-4afb15fb.js → color-1816dacf.js} +1 -1
- package/cjs/{color-4afb15fb.js.map → color-1816dacf.js.map} +1 -1
- package/cjs/{compareIds-01306377.js → compareIds-e9bca8c4.js} +1 -1
- package/cjs/{compareIds-01306377.js.map → compareIds-e9bca8c4.js.map} +1 -1
- package/cjs/const-c65837c1.js +22 -0
- package/cjs/const-c65837c1.js.map +1 -0
- package/cjs/const-d9f4d880.js +14 -0
- package/cjs/const-d9f4d880.js.map +1 -0
- package/cjs/{context-c1f9d650.js → context-6ebf3379.js} +2 -2
- package/cjs/{context-c1f9d650.js.map → context-6ebf3379.js.map} +1 -1
- package/cjs/{index-1044f1ed.js → index-01072ac9.js} +3 -3
- package/cjs/{index-1044f1ed.js.map → index-01072ac9.js.map} +1 -1
- package/cjs/{index-e2bb862c.js → index-20a06ed6.js} +1 -1
- package/cjs/{index-e2bb862c.js.map → index-20a06ed6.js.map} +1 -1
- package/cjs/{index-d4880236.js → index-212a11f2.js} +84 -3
- package/cjs/index-212a11f2.js.map +1 -0
- package/cjs/{index-aecc8d24.js → index-2faa2f93.js} +1 -1
- package/cjs/{index-aecc8d24.js.map → index-2faa2f93.js.map} +1 -1
- package/cjs/{index-9dc3863f.js → index-4f40f311.js} +2 -2
- package/cjs/{index-9dc3863f.js.map → index-4f40f311.js.map} +1 -1
- package/cjs/index-75453415.js +54 -0
- package/cjs/index-75453415.js.map +1 -0
- package/cjs/{index-8becccd8.js → index-948426a8.js} +4 -4
- package/cjs/{index-8becccd8.js.map → index-948426a8.js.map} +1 -1
- package/cjs/{index-905331fa.js → index-a2ce047a.js} +2 -2
- package/cjs/{index-905331fa.js.map → index-a2ce047a.js.map} +1 -1
- package/cjs/{index-4987c8b2.js → index-d57081d1.js} +6 -6
- package/cjs/{index-4987c8b2.js.map → index-d57081d1.js.map} +1 -1
- package/cjs/{index-659c9ca5.js → index-e63da805.js} +4 -4
- package/cjs/{index-659c9ca5.js.map → index-e63da805.js.map} +1 -1
- package/cjs/{index-1468d245.js → index-f1971e28.js} +3 -3
- package/cjs/{index-1468d245.js.map → index-f1971e28.js.map} +1 -1
- package/cjs/index.css +243 -133
- package/cjs/index.css.map +1 -1
- package/cjs/index.js +40 -33
- package/cjs/index.js.map +1 -1
- package/cjs/{openChannelUtils-37919a36.js → openChannelUtils-16f29ba2.js} +1 -1
- package/cjs/{openChannelUtils-37919a36.js.map → openChannelUtils-16f29ba2.js.map} +1 -1
- package/cjs/sendBirdSelectors.js +1 -1
- package/cjs/{stringSet-aa544ce5.js → stringSet-b9ea6eef.js} +4 -2
- package/cjs/stringSet-b9ea6eef.js.map +1 -0
- package/cjs/{topics-8314d425.js → topics-11048db8.js} +1 -1
- package/cjs/{topics-8314d425.js.map → topics-11048db8.js.map} +1 -1
- package/cjs/{tslib.es6-4a281a05.js → tslib.es6-07dd6257.js} +1 -1
- package/cjs/{tslib.es6-4a281a05.js.map → tslib.es6-07dd6257.js.map} +1 -1
- package/cjs/ui/Accordion.js +4 -4
- package/cjs/ui/AccordionGroup.js +2 -2
- package/cjs/ui/AdminMessage.js +3 -3
- package/cjs/ui/Avatar.js +3 -3
- package/cjs/ui/Badge.js +5 -5
- package/cjs/ui/Button.js +4 -4
- package/cjs/ui/ChannelAvatar.js +4 -4
- package/cjs/ui/ChannelPreview.js +12 -12
- package/cjs/ui/ChatHeader.js +8 -8
- package/cjs/ui/Checkbox.js +1 -1
- package/cjs/ui/ConnectionStatus.js +5 -5
- package/cjs/ui/ContextMenu.js +5 -5
- package/cjs/ui/DateSeparator.js +4 -4
- package/cjs/ui/Dropdown.js +3 -3
- package/cjs/ui/EmojiReactions.js +7 -7
- package/cjs/ui/FileMessageItemBody.js +6 -6
- package/cjs/ui/FileViewer.js +7 -7
- package/cjs/ui/Icon.js +1 -1
- package/cjs/ui/IconButton.js +1 -1
- package/cjs/ui/ImageRenderer.js +1 -1
- package/cjs/ui/Input.js +3 -3
- package/cjs/ui/Label.js +3 -3
- package/cjs/ui/LinkLabel.js +3 -3
- package/cjs/ui/Loader.js +1 -1
- package/cjs/ui/MentionUserLabel.js +25 -0
- package/cjs/ui/MentionUserLabel.js.map +1 -0
- package/cjs/ui/MessageContent.js +25 -62
- package/cjs/ui/MessageContent.js.map +1 -1
- package/cjs/ui/MessageInput.js +4900 -84
- package/cjs/ui/MessageInput.js.map +1 -1
- package/cjs/ui/MessageItemMenu.js +7 -7
- package/cjs/ui/MessageItemReactionMenu.js +5 -5
- package/cjs/ui/MessageSearchFileItem.js +10 -10
- package/cjs/ui/MessageSearchItem.js +10 -10
- package/cjs/ui/MessageStatus.js +66 -0
- package/cjs/ui/MessageStatus.js.map +1 -0
- package/cjs/ui/Modal.js +8 -8
- package/cjs/ui/MutedAvatarOverlay.js +1 -1
- package/cjs/ui/OGMessageItemBody.js +38 -28
- package/cjs/ui/OGMessageItemBody.js.map +1 -1
- package/cjs/ui/OpenChannelAdminMessage.js +4 -4
- package/cjs/ui/OpenChannelAvatar.js +7 -7
- package/cjs/ui/OpenchannelConversationHeader.js +7 -7
- package/cjs/ui/OpenchannelFileMessage.js +14 -14
- package/cjs/ui/OpenchannelOGMessage.js +14 -14
- package/cjs/ui/OpenchannelThumbnailMessage.js +13 -13
- package/cjs/ui/OpenchannelUserMessage.js +14 -14
- package/cjs/ui/PlaceHolder.js +6 -6
- package/cjs/ui/QuoteMessage.js +7 -7
- package/cjs/ui/QuoteMessageInput.js +7 -7
- package/cjs/ui/QuoteMessageInput.js.map +1 -1
- package/cjs/ui/ReactionBadge.js +3 -3
- package/cjs/ui/ReactionButton.js +1 -1
- package/cjs/ui/SortByRow.js +1 -1
- package/cjs/ui/TextButton.js +2 -2
- package/cjs/ui/TextMessageItemBody.js +36 -14
- package/cjs/ui/TextMessageItemBody.js.map +1 -1
- package/cjs/ui/ThumbnailMessageItemBody.js +3 -3
- package/cjs/ui/Tooltip.js +3 -3
- package/cjs/ui/TooltipWrapper.js +1 -1
- package/cjs/ui/UnknownMessageItemBody.js +7 -7
- package/cjs/ui/UserListItem.js +11 -11
- package/cjs/ui/UserProfile.js +9 -9
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/{utils-cbd3ed99.js → utils-3240365f.js} +1 -1
- package/cjs/{utils-cbd3ed99.js.map → utils-3240365f.js.map} +1 -1
- package/cjs/{utils-66b3f4ec.js → utils-53d332a6.js} +1 -1
- package/cjs/{utils-66b3f4ec.js.map → utils-53d332a6.js.map} +1 -1
- package/cjs/{utils-3b0815dc.js → utils-94ae6cec.js} +1 -1
- package/cjs/{utils-3b0815dc.js.map → utils-94ae6cec.js.map} +1 -1
- package/cjs/{uuid-1d5ec8b2.js → uuid-172844fb.js} +1 -1
- package/cjs/{uuid-1d5ec8b2.js.map → uuid-172844fb.js.map} +1 -1
- package/cjs/withSendBird.js +1 -1
- package/{color-ee3fc5ee.js → color-38dc84d3.js} +1 -1
- package/{color-ee3fc5ee.js.map → color-38dc84d3.js.map} +1 -1
- package/{compareIds-808956f2.js → compareIds-f01e0c3c.js} +1 -1
- package/{compareIds-808956f2.js.map → compareIds-f01e0c3c.js.map} +1 -1
- package/const-b6685801.js +8 -0
- package/const-b6685801.js.map +1 -0
- package/const-d46f09a1.js +18 -0
- package/const-d46f09a1.js.map +1 -0
- package/{context-98ce535c.js → context-b5168bd0.js} +2 -2
- package/{context-98ce535c.js.map → context-b5168bd0.js.map} +1 -1
- package/dist/index.css +243 -133
- package/dist/index.css.map +1 -1
- package/{index-770d7112.js → index-1c2588aa.js} +2 -2
- package/{index-770d7112.js.map → index-1c2588aa.js.map} +1 -1
- package/{index-acebc2ff.js → index-2dce3a04.js} +3 -3
- package/{index-acebc2ff.js.map → index-2dce3a04.js.map} +1 -1
- package/{index-5c2c81bc.js → index-3bd4a058.js} +6 -6
- package/{index-5c2c81bc.js.map → index-3bd4a058.js.map} +1 -1
- package/index-62fd2db7.js +48 -0
- package/index-62fd2db7.js.map +1 -0
- package/{index-6ebf7894.js → index-6381b534.js} +1 -1
- package/{index-6ebf7894.js.map → index-6381b534.js.map} +1 -1
- package/{index-cd21929d.js → index-9afb4d01.js} +2 -2
- package/{index-cd21929d.js.map → index-9afb4d01.js.map} +1 -1
- package/{index-1718324d.js → index-a6675155.js} +4 -4
- package/{index-1718324d.js.map → index-a6675155.js.map} +1 -1
- package/{index-e818a8a3.js → index-b12b270e.js} +4 -4
- package/{index-e818a8a3.js.map → index-b12b270e.js.map} +1 -1
- package/{index-7a51bd16.js → index-d0b30cd5.js} +3 -3
- package/{index-7a51bd16.js.map → index-d0b30cd5.js.map} +1 -1
- package/{index-942c85a6.js → index-d0fe8fe1.js} +1 -1
- package/{index-942c85a6.js.map → index-d0fe8fe1.js.map} +1 -1
- package/{index-8c72a94a.js → index-e6d0889d.js} +83 -3
- package/index-e6d0889d.js.map +1 -0
- package/index.d.ts +238 -210
- package/index.js +40 -33
- package/index.js.map +1 -1
- package/{openChannelUtils-56a372e7.js → openChannelUtils-22ed0258.js} +1 -1
- package/{openChannelUtils-56a372e7.js.map → openChannelUtils-22ed0258.js.map} +1 -1
- package/package.json +5 -2
- package/sendBirdSelectors.js +1 -1
- package/{stringSet-4f6eaa60.js → stringSet-2e6c1d2c.js} +4 -2
- package/stringSet-2e6c1d2c.js.map +1 -0
- package/{topics-9442035c.js → topics-67738aac.js} +1 -1
- package/{topics-9442035c.js.map → topics-67738aac.js.map} +1 -1
- package/{tslib.es6-e3c44017.js → tslib.es6-b6e567bd.js} +1 -1
- package/{tslib.es6-e3c44017.js.map → tslib.es6-b6e567bd.js.map} +1 -1
- package/ui/Accordion.js +4 -4
- package/ui/AccordionGroup.js +2 -2
- package/ui/AdminMessage.js +3 -3
- package/ui/Avatar.js +3 -3
- package/ui/Badge.js +5 -5
- package/ui/Button.js +4 -4
- package/ui/ChannelAvatar.js +4 -4
- package/ui/ChannelPreview.js +12 -12
- package/ui/ChatHeader.js +8 -8
- package/ui/Checkbox.js +1 -1
- package/ui/ConnectionStatus.js +5 -5
- package/ui/ContextMenu.js +5 -5
- package/ui/DateSeparator.js +4 -4
- package/ui/Dropdown.js +3 -3
- package/ui/EmojiReactions.js +7 -7
- package/ui/FileMessageItemBody.js +6 -6
- package/ui/FileViewer.js +7 -7
- package/ui/Icon.js +1 -1
- package/ui/IconButton.js +1 -1
- package/ui/ImageRenderer.js +1 -1
- package/ui/Input.js +3 -3
- package/ui/Label.js +3 -3
- package/ui/LinkLabel.js +3 -3
- package/ui/Loader.js +1 -1
- package/ui/MentionUserLabel.js +19 -0
- package/ui/MentionUserLabel.js.map +1 -0
- package/ui/MessageContent.js +25 -62
- package/ui/MessageContent.js.map +1 -1
- package/ui/MessageInput.js +4900 -85
- package/ui/MessageInput.js.map +1 -1
- package/ui/MessageItemMenu.js +7 -7
- package/ui/MessageItemReactionMenu.js +5 -5
- package/ui/MessageSearchFileItem.js +10 -10
- package/ui/MessageSearchItem.js +10 -10
- package/ui/MessageStatus.js +57 -0
- package/ui/MessageStatus.js.map +1 -0
- package/ui/Modal.js +8 -8
- package/ui/MutedAvatarOverlay.js +1 -1
- package/ui/OGMessageItemBody.js +38 -28
- package/ui/OGMessageItemBody.js.map +1 -1
- package/ui/OpenChannelAdminMessage.js +4 -4
- package/ui/OpenChannelAvatar.js +7 -7
- package/ui/OpenchannelConversationHeader.js +7 -7
- package/ui/OpenchannelFileMessage.js +14 -14
- package/ui/OpenchannelOGMessage.js +14 -14
- package/ui/OpenchannelThumbnailMessage.js +13 -13
- package/ui/OpenchannelUserMessage.js +14 -14
- package/ui/PlaceHolder.js +6 -6
- package/ui/QuoteMessage.js +7 -7
- package/ui/QuoteMessageInput.js +7 -7
- package/ui/QuoteMessageInput.js.map +1 -1
- package/ui/ReactionBadge.js +3 -3
- package/ui/ReactionButton.js +1 -1
- package/ui/SortByRow.js +1 -1
- package/ui/TextButton.js +2 -2
- package/ui/TextMessageItemBody.js +37 -15
- package/ui/TextMessageItemBody.js.map +1 -1
- package/ui/ThumbnailMessageItemBody.js +3 -3
- package/ui/Tooltip.js +3 -3
- package/ui/TooltipWrapper.js +1 -1
- package/ui/UnknownMessageItemBody.js +7 -7
- package/ui/UserListItem.js +11 -11
- package/ui/UserProfile.js +9 -9
- package/useSendbirdStateContext.js +1 -1
- package/{utils-08c4dbdc.js → utils-04c291d8.js} +1 -1
- package/{utils-08c4dbdc.js.map → utils-04c291d8.js.map} +1 -1
- package/{utils-af1b9829.js → utils-28de36e9.js} +1 -1
- package/{utils-af1b9829.js.map → utils-28de36e9.js.map} +1 -1
- package/{utils-c393e880.js → utils-f5c9ef64.js} +1 -1
- package/{utils-c393e880.js.map → utils-f5c9ef64.js.map} +1 -1
- package/{uuid-b0c93400.js → uuid-0139dc21.js} +1 -1
- package/{uuid-b0c93400.js.map → uuid-0139dc21.js.map} +1 -1
- package/withSendBird.js +1 -1
- package/ChannelListProvider-0b0c2c40.js.map +0 -1
- package/ChannelProvider-459e463f.js.map +0 -1
- package/cjs/ChannelListProvider-5a152618.js.map +0 -1
- package/cjs/ChannelProvider-f1fb0108.js.map +0 -1
- package/cjs/index-d4880236.js.map +0 -1
- package/cjs/stringSet-aa544ce5.js.map +0 -1
- package/index-8c72a94a.js.map +0 -1
- package/index.css +0 -4355
- package/index.css.map +0 -1
- package/stringSet-4f6eaa60.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-d4880236.js","sources":["../../src/utils/index.ts"],"sourcesContent":["import SendBird, { AdminMessage, Emoji, EmojiCategory, EmojiContainer, FileMessage, GroupChannel, GroupChannelListQuery, Member, MessageListParams, OpenChannel, Reaction, SendBirdInstance, User, UserMessage } from \"sendbird\";\nimport { EveryMessage } from '../types';\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 AUDIO: [\n 'audio/aac',\n 'audio/midi',\n 'audio/x-midi',\n 'audio/mpeg',\n 'audio/ogg',\n 'audio/opus',\n 'audio/wav',\n 'audio/webm',\n 'audio/3gpp',\n 'audio/3gpp2',\n 'audio/mp3',\n ],\n};\n\nexport interface UIKitMessageTypes {\n ADMIN: \"ADMIN\",\n TEXT: \"TEXT\",\n FILE: \"FILE\",\n THUMBNAIL: \"THUMBNAIL\",\n OG: \"OG\",\n UNKNOWN: \"UNKNOWN\",\n}\nconst UIKitMessageTypes: UIKitMessageTypes = {\n ADMIN: \"ADMIN\",\n TEXT: \"TEXT\",\n FILE: \"FILE\",\n THUMBNAIL: \"THUMBNAIL\",\n OG: \"OG\",\n UNKNOWN: \"UNKNOWN\",\n};\nexport interface UIKitFileTypes {\n IMAGE: \"IMAGE\",\n AUDIO: \"AUDIO\",\n VIDEO: \"VIDEO\",\n GIF: \"GIF\",\n OTHERS: \"OTHERS\",\n}\nexport const UIKitFileTypes: UIKitFileTypes = {\n IMAGE: \"IMAGE\",\n AUDIO: \"AUDIO\",\n VIDEO: \"VIDEO\",\n GIF: \"GIF\",\n OTHERS: \"OTHERS\",\n};\n\nexport interface SendingMessageStatus {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n}\nconst SendingMessageStatus: SendingMessageStatus = {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n};\n\nexport interface OutgoingMessageStates {\n NONE: 'NONE',\n PENDING: 'PENDING',\n SENT: 'SENT',\n FAILED: 'FAILED',\n DELIVERED: 'DELIVERED',\n READ: 'READ',\n // delivered and read are only in group channel\n}\nexport const OutgoingMessageStates: OutgoingMessageStates = {\n NONE: 'NONE',\n PENDING: 'PENDING',\n SENT: 'SENT',\n FAILED: 'FAILED',\n DELIVERED: 'DELIVERED',\n READ: 'READ',\n};\n\nexport type CoreMessageType = EveryMessage;\n\nexport const isTextuallyNull = (text: string): boolean => {\n if (text === '' || text === null) {\n return true;\n }\n return false;\n};\n\nexport const isImage = (type: string): boolean => SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;\nexport const isVideo = (type: string): boolean => SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;\nexport const isGif = (type: string): boolean => type === 'image/gif';\nexport const isSupportedFileView = (type: string): boolean => isImage(type) || isVideo(type);\nexport const isAudio = (type: string): boolean => SUPPORTED_MIMES.AUDIO.indexOf(type) >= 0;\n\nexport const getUIKitFileTypes = (): UIKitFileTypes => ({ ...UIKitFileTypes });\nexport const getUIKitFileType = (type: string): string => {\n if (isGif(type)) return UIKitFileTypes.GIF;\n if (isImage(type)) return UIKitFileTypes.IMAGE;\n if (isVideo(type)) return UIKitFileTypes.VIDEO;\n if (isAudio(type)) return UIKitFileTypes.AUDIO;\n return UIKitFileTypes.OTHERS;\n};\nexport const getOutgoingMessageStates = (): OutgoingMessageStates => ({ ...OutgoingMessageStates });\nexport const getOutgoingMessageState = (channel: GroupChannel | OpenChannel, message: UserMessage | FileMessage): string => {\n if (message.sendingStatus === 'pending') return OutgoingMessageStates.PENDING;\n if (message.sendingStatus === 'failed') return OutgoingMessageStates.FAILED;\n if (channel?.isGroupChannel?.()) {\n /* GroupChannel only */\n if ((channel as GroupChannel).getUnreadMemberCount(message) === 0) {\n return OutgoingMessageStates.READ;\n } else if ((channel as GroupChannel).getUndeliveredMemberCount(message) === 0) {\n return OutgoingMessageStates.DELIVERED;\n }\n }\n if (message.sendingStatus === 'succeeded') return OutgoingMessageStates.SENT;\n return OutgoingMessageStates.NONE;\n};\nexport const isSentMessage = (message: UserMessage | FileMessage): boolean => (message.sendingStatus === 'succeeded');\nexport const isDeliveredMessage = (channel: GroupChannel, message: UserMessage | FileMessage): boolean => (\n getOutgoingMessageState(channel, message) === OutgoingMessageStates.DELIVERED\n || getOutgoingMessageState(channel, message) === OutgoingMessageStates.READ\n);\nexport const isReadMessage = (channel: GroupChannel, message: UserMessage | FileMessage): boolean => (\n getOutgoingMessageState(channel, message) === OutgoingMessageStates.READ\n);\n// TODO: Remove channel from the params, it seems unnecessary\nexport const isFailedMessage = (message: UserMessage | FileMessage): boolean => (message.sendingStatus === 'failed');\nexport const isPendingMessage = (message: UserMessage | FileMessage): boolean => (message.sendingStatus === 'pending');\nexport const isSentStatus = (state: string): boolean => (\n state === OutgoingMessageStates.SENT\n || state === OutgoingMessageStates.DELIVERED\n || state === OutgoingMessageStates.READ\n);\n\nexport const isAdminMessage = (message: AdminMessage): boolean => (\n message && (message.isAdminMessage?.() || (message['messageType'] && message.messageType === 'admin'))\n);\nexport const isUserMessage = (message: UserMessage): boolean => (\n message && (message.isUserMessage?.() || (message['messageType'] && message.messageType === 'user'))\n);\nexport const isFileMessage = (message: FileMessage): boolean => (\n message && (message.isFileMessage?.() || (message['messageType'] && message.messageType === 'file'))\n);\n\nexport const isOGMessage = (message: UserMessage): boolean => !!(\n message && isUserMessage(message) && message?.ogMetaData && message?.ogMetaData?.url\n);\nexport const isTextMessage = (message: UserMessage): boolean => isUserMessage(message) && !isOGMessage(message);\nexport const isThumbnailMessage = (message: FileMessage): boolean => message && isFileMessage(message) && isSupportedFileView(message.type);\nexport const isImageMessage = (message: FileMessage): boolean => message && isThumbnailMessage(message) && isImage(message.type);\nexport const isVideoMessage = (message: FileMessage): boolean => message && isThumbnailMessage(message) && isVideo(message.type);\nexport const isGifMessage = (message: FileMessage): boolean => message && isThumbnailMessage(message) && isGif(message.type);\nexport const isAudioMessage = (message: FileMessage): boolean => message && isFileMessage(message) && isAudio(message.type);\n\nexport const isEditedMessage = (message: UserMessage): boolean => isUserMessage(message) && (message?.updatedAt > 0);\nexport const isEnabledOGMessage = (message: UserMessage): boolean => (\n (!message || !message.ogMetaData || !message.ogMetaData.url) ? false : true\n);\n\nexport const getUIKitMessageTypes = (): UIKitMessageTypes => ({ ...UIKitMessageTypes });\nexport const getUIKitMessageType = (message: SendBird.UserMessage | SendBird.FileMessage | SendBird.AdminMessage): string => {\n if (isAdminMessage(message as SendBird.AdminMessage)) return UIKitMessageTypes.ADMIN;\n if (isUserMessage(message as UserMessage)) {\n return isOGMessage(message as UserMessage) ? UIKitMessageTypes.OG : UIKitMessageTypes.TEXT;\n }\n if (isFileMessage(message as FileMessage)) {\n return isThumbnailMessage(message as FileMessage) ? UIKitMessageTypes.THUMBNAIL : UIKitMessageTypes.FILE;\n }\n return UIKitMessageTypes.UNKNOWN;\n};\nexport const getSendingMessageStatus = (): SendingMessageStatus => ({ ...SendingMessageStatus });\n\nconst reducer = (accumulator: Array<string>, currentValue: string | Array<string>): Array<any> => {\n if (Array.isArray(currentValue)) {\n return [...accumulator, ...currentValue];\n } else {\n accumulator.push(currentValue);\n return accumulator;\n }\n};\nexport const getClassName = (classNames: string | Array<string | Array<string>>): string => (\n Array.isArray(classNames)\n ? classNames.reduce(reducer, []).join(' ')\n : classNames\n);\nexport const isReactedBy = (userId: string, reaction: Reaction): boolean => (\n reaction.userIds.some((reactorUserId: string): boolean => reactorUserId === userId)\n);\ninterface StringSet {\n TOOLTIP__YOU: string;\n TOOLTIP__AND_YOU: string;\n TOOLTIP__UNKNOWN_USER: string;\n}\nexport const getEmojiTooltipString = (reaction: Reaction, userId: string, memberNicknamesMap: Map<string, string>, stringSet: StringSet): string => {\n let you = '';\n if (isReactedBy(userId, reaction)) {\n you = reaction.userIds.length === 1 ? stringSet.TOOLTIP__YOU : stringSet.TOOLTIP__AND_YOU;\n }\n return (`${reaction.userIds\n .filter((reactorUserId: string) => reactorUserId !== userId)\n .map((reactorUserId: string) => (memberNicknamesMap.get(reactorUserId) || stringSet.TOOLTIP__UNKNOWN_USER))\n .join(', ')}${you}`);\n};\n\n// TODO: Use the interface after language tranlsatation of Sendbird.js\ninterface UIKitStore {\n stores: {\n sdkStore: {\n sdk: SendBirdInstance,\n },\n userStore: {\n user: User,\n },\n },\n config: {\n useReaction: boolean,\n }\n}\nexport const getCurrentUserId = (store: UIKitStore): string => (store?.stores?.userStore?.user?.userId);\nexport const getUseReaction = (store: UIKitStore, channel: GroupChannel | OpenChannel): boolean => {\n if (!store?.config?.useReaction)\n return false;\n if (!store?.stores?.sdkStore?.sdk?.appInfo?.isUsingReaction)\n return false;\n if (channel?.isGroupChannel())\n return !((channel as GroupChannel).isBroadcast || (channel as GroupChannel).isSuper);\n return store?.config?.useReaction;\n};\n\nexport const isMessageSentByMe = (userId: string, message: UserMessage | FileMessage): boolean => (\n (userId && message?.sender?.userId) && userId === message.sender.userId\n);\n\nconst URL_REG = /[-a-zA-Z0-9@:%._+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_+.~#?&//=]*)/;\nexport const isUrl = (text: string): boolean => URL_REG.test(text);\n\nexport const truncateString = (fullStr: string, strLen?: number): string => {\n if (!strLen) strLen = 40;\n if (fullStr === null || fullStr === undefined) return '';\n if (fullStr.length <= strLen) return fullStr;\n const separator = '...';\n const sepLen = separator.length;\n const charsToShow = strLen - sepLen;\n const frontChars = Math.ceil(charsToShow / 2);\n const backChars = Math.floor(charsToShow / 2);\n return fullStr.substr(0, frontChars) + separator + fullStr.substr(fullStr.length - backChars);\n};\n\nexport const copyToClipboard = (text: string): boolean => {\n // @ts-ignore: Unreachable code error\n if (window.clipboardData && window.clipboardData.setData) {\n // Internet Explorer-specific code path to prevent textarea being shown while dialog is visible.\n // @ts-ignore: Unreachable code error\n return window.clipboardData.setData('Text', text);\n }\n if (document.queryCommandSupported && document.queryCommandSupported('copy')) {\n const textarea = document.createElement('textarea');\n textarea.textContent = text;\n textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in Microsoft Edge.\n document.body.appendChild(textarea);\n textarea.select();\n try {\n return document.execCommand('copy'); // Security exception may be thrown by some browsers.\n } catch (ex) {\n return false;\n } finally {\n document.body.removeChild(textarea);\n }\n }\n return false;\n};\n\nexport const getEmojiListAll = (emojiContainer: EmojiContainer): Array<Emoji> => (\n emojiContainer?.emojiCategories?.map((emojiCategory: EmojiCategory) => emojiCategory.emojis)\n .reduce((prevArr: Array<Emoji>, currArr: Array<Emoji>) => prevArr.concat(currArr), [])\n);\nexport const getEmojiMapAll = (emojiContainer: EmojiContainer): Map<string, Emoji> => {\n const emojiMap = new Map();\n emojiContainer?.emojiCategories?.forEach((category: EmojiCategory) => {\n category?.emojis?.forEach((emoji: Emoji): void => {\n if (emoji && emoji.key) {\n emojiMap.set(emoji.key, emoji);\n }\n });\n });\n return emojiMap;\n};\n\nexport const getUserName = (user: User): string => (user?.friendName || user?.nickname || user?.userId);\nexport const getSenderName = (message: UserMessage | FileMessage): string => (message.sender && getUserName(message.sender));\n\nexport const hasSameMembers = <T>(a: T[], b: T[]): boolean => {\n if (a === b) {\n return true;\n }\n if (a == null || b == null) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n\n const sortedA = [...a].sort();\n const sortedB = [...b].sort();\n\n for (let i = 0; i < sortedA.length; ++i) {\n if (sortedA[i] !== sortedB[i]) {\n return false;\n }\n }\n return true;\n}\nexport const isFriend = (user: User): boolean => !!(user.friendDiscoveryKey || user.friendName);\n\nexport const filterMessageListParams = (params: MessageListParams, message: UserMessage | FileMessage): boolean => {\n if (params?.messageType && params.messageType !== message.messageType) {\n return false;\n }\n if (params?.customTypes?.length > 0) {\n const customTypes = params.customTypes.filter((item) => item !== '*');\n // Because Chat SDK inserts '*' when customTypes is empty\n if (customTypes.length > 0 && !customTypes.includes(message.customType)) {\n return false;\n }\n }\n if (params?.senderUserIds && params?.senderUserIds?.length > 0) {\n if (message?.isUserMessage() || message.isFileMessage()) {\n const messageSender = (message as UserMessage | FileMessage).sender || message['_sender'];\n if (!params?.senderUserIds?.includes(messageSender?.userId)) {\n return false;\n }\n } else {\n return false;\n }\n }\n if (!params?.includeParentMessageInfo && (message?.parentMessageId || message?.parentMessage)) {\n return false;\n }\n return true;\n};\n\ninterface SDKChannelListParamsPrivateProps extends GroupChannelListQuery {\n _searchFilter: {\n search_query: string,\n search_fields: Array<'member_nickname' | 'channel_name'>,\n };\n _userIdsFilter: {\n userIds: Array<string>,\n includeMode: boolean,\n queryType: 'AND' | 'OR',\n };\n}\nexport const filterChannelListParams = (params: SDKChannelListParamsPrivateProps, channel: GroupChannel, currentUserId: string): boolean => {\n if (!params?.includeEmpty && channel?.lastMessage && channel.lastMessage === null) {\n return false;\n }\n if (params?._searchFilter?.search_query && params._searchFilter.search_fields?.length > 0) {\n const searchFilter = params._searchFilter;\n const searchQuery = searchFilter.search_query;\n const searchFields = searchFilter.search_fields;\n if (searchQuery && searchFields && searchFields.length > 0) {\n if (!searchFields.some((searchField) => {\n switch (searchField) {\n case 'channel_name': {\n return channel.name.toLowerCase().includes(searchQuery.toLowerCase());\n }\n case 'member_nickname': {\n return channel.members.some((member: Member) => member.nickname.toLowerCase().includes(searchQuery.toLowerCase()));\n }\n default: {\n return true;\n }\n }\n })) {\n return false;\n }\n }\n }\n if (params?._userIdsFilter?.userIds?.length > 0) {\n const userIdsFilter = params._userIdsFilter;\n const { includeMode, queryType } = userIdsFilter;\n const userIds: string[] = userIdsFilter.userIds;\n const memberIds = channel.members.map((member: Member) => member.userId);\n if (!includeMode) { // exact match\n if (!userIds.includes(currentUserId)) {\n userIds.push(currentUserId); // add the caller's userId if not added already.\n }\n if (channel.members.length > userIds.length) {\n return false; // userIds may contain one or more non-member(s).\n }\n if (!hasSameMembers(userIds, memberIds)) {\n return false;\n }\n } else if (userIds.length > 0) { // inclusive\n switch (queryType) {\n case 'AND': {\n if (userIds.some((userId: string) => !memberIds.includes(userId))) {\n return false;\n }\n break;\n }\n case 'OR': {\n if (userIds.every((userId: string) => !memberIds.includes(userId))) {\n return false;\n }\n break;\n }\n default: {\n break;\n }\n }\n }\n }\n if (params?.includeEmpty === false && channel?.lastMessage === null) {\n return false;\n }\n if (params?.includeFrozen === false && channel?.isFrozen === true) {\n return false;\n }\n if (params?.customTypesFilter?.length > 0 && !params.customTypesFilter.includes(channel?.customType)) {\n return false;\n }\n if (params?.customTypeStartsWithFilter && !new RegExp(`^${params.customTypeStartsWithFilter}`).test(channel?.customType)) {\n return false;\n }\n if (params?.channelNameContainsFilter && !channel?.name?.toLowerCase().includes(params.channelNameContainsFilter.toLowerCase())) {\n return false;\n }\n if (params?.nicknameContainsFilter) {\n const lowerCasedSubString = params.nicknameContainsFilter.toLowerCase();\n if (channel?.members?.every((member: Member) => !member.nickname.toLowerCase().includes(lowerCasedSubString))) {\n return false;\n }\n }\n if (params?.channelUrlsFilter?.length > 0 && !params.channelUrlsFilter.includes(channel?.url)) {\n return false;\n }\n if (params?.memberStateFilter) {\n switch (params.memberStateFilter) {\n case 'joined_only':\n if (channel?.myMemberState !== 'joined') {\n return false;\n }\n break;\n case 'invited_only':\n if (channel?.myMemberState !== 'invited') {\n return false;\n }\n break;\n case 'invited_by_friend':\n if (channel?.myMemberState !== 'invited' || !isFriend(channel.inviter)) {\n return false;\n }\n break;\n case 'invited_by_non_friend':\n if (channel?.myMemberState !== 'invited' || isFriend(channel.inviter)) {\n return false;\n }\n break;\n }\n }\n if (params?.hiddenChannelFilter) {\n switch (params.hiddenChannelFilter) {\n case 'unhidden_only':\n if (channel?.isHidden || channel?.hiddenState !== 'unhidden') {\n return false;\n }\n break;\n case 'hidden_only':\n if (!channel?.isHidden) {\n return false;\n }\n break;\n case 'hidden_allow_auto_unhide':\n if (!channel?.isHidden || channel?.hiddenState !== 'hidden_allow_auto_unhide') {\n return false;\n }\n break;\n case 'hidden_prevent_auto_unhide':\n if (!channel?.isHidden || channel?.hiddenState !== 'hidden_prevent_auto_unhide') {\n return false;\n }\n break;\n }\n }\n if (params?.unreadChannelFilter) {\n switch (params.unreadChannelFilter) {\n case 'unread_message':\n if (channel?.unreadMessageCount === 0) {\n return false;\n }\n break;\n }\n }\n if (params?.publicChannelFilter) {\n switch (params.publicChannelFilter) {\n case 'public':\n if (!channel?.isPublic) {\n return false;\n }\n break;\n case 'private':\n if (channel?.isPublic) {\n return false;\n }\n break;\n }\n }\n if (params?.superChannelFilter) {\n switch (params.superChannelFilter) {\n case 'super':\n if (!channel?.isSuper) {\n return false;\n }\n break;\n case 'nonsuper':\n if (channel?.isSuper) {\n return false;\n }\n break;\n }\n }\n return true;\n};\n\nexport const binarySearch = (list: Array<number>, number: number): number => {// [100, 99, 98, 97, ...]\n const pivot = Math.floor(list.length / 2);\n if (list[pivot] === number) {\n return pivot;\n }\n const leftList = list.slice(0, pivot);\n const rightList = list.slice(pivot + 1, list.length);\n if (list[pivot] > number) {\n return pivot + 1 + (rightList.length === 0 ? 0 : binarySearch(rightList, number));\n } else {\n return (leftList.length === 0) ? pivot : binarySearch(leftList, number);\n }\n};\n// This is required when channel is displayed on channel list by filter\nexport const getChannelsWithUpsertedChannel = (channels: Array<GroupChannel>, channel: GroupChannel): Array<GroupChannel> => {\n if (channels.some((ch: GroupChannel) => ch.url === channel.url)) {\n return channels.map((ch: GroupChannel) => (ch.url === channel.url ? channel : ch));\n }\n const targetIndex = binarySearch(\n channels.map((channel: GroupChannel) => channel?.lastMessage?.createdAt || channel?.createdAt),\n channel?.lastMessage?.createdAt || channel?.createdAt\n );\n return [...channels.slice(0, targetIndex), channel, ...channels.slice(targetIndex, channels.length)];\n};\n"],"names":["SUPPORTED_MIMES","IMAGE","VIDEO","AUDIO","UIKitMessageTypes","ADMIN","TEXT","FILE","THUMBNAIL","OG","UNKNOWN","UIKitFileTypes","GIF","OTHERS","SendingMessageStatus","NONE","SUCCEEDED","FAILED","PENDING","OutgoingMessageStates","SENT","DELIVERED","READ","isTextuallyNull","text","isImage","type","indexOf","isVideo","isGif","isSupportedFileView","isAudio","getUIKitFileTypes","getUIKitFileType","getOutgoingMessageStates","getOutgoingMessageState","channel","message","sendingStatus","isGroupChannel","getUnreadMemberCount","getUndeliveredMemberCount","isSentMessage","isFailedMessage","isPendingMessage","isSentStatus","state","isAdminMessage","messageType","isUserMessage","isFileMessage","isOGMessage","ogMetaData","url","isTextMessage","isThumbnailMessage","isImageMessage","isVideoMessage","isGifMessage","isAudioMessage","isEditedMessage","updatedAt","getUIKitMessageTypes","getUIKitMessageType","getSendingMessageStatus","reducer","accumulator","currentValue","Array","isArray","push","getClassName","classNames","reduce","join","isReactedBy","userId","reaction","userIds","some","reactorUserId","getEmojiTooltipString","memberNicknamesMap","stringSet","you","length","TOOLTIP__YOU","TOOLTIP__AND_YOU","filter","map","get","TOOLTIP__UNKNOWN_USER","URL_REG","isUrl","test","truncateString","fullStr","strLen","undefined","separator","sepLen","charsToShow","frontChars","Math","ceil","backChars","floor","substr","copyToClipboard","window","clipboardData","setData","document","queryCommandSupported","textarea","createElement","textContent","style","position","body","appendChild","select","execCommand","ex","removeChild","getEmojiListAll","emojiContainer","emojiCategories","emojiCategory","emojis","prevArr","currArr","concat","getEmojiMapAll","emojiMap","Map","forEach","category","emoji","key","set","getUserName","user","friendName","nickname","getSenderName","sender","hasSameMembers","a","b","sortedA","__spreadArray","sort","sortedB","i","isFriend","friendDiscoveryKey","filterMessageListParams","params","customTypes","item","includes","customType","senderUserIds","messageSender","includeParentMessageInfo","parentMessageId","parentMessage","filterChannelListParams","currentUserId","includeEmpty","lastMessage","_searchFilter","search_query","search_fields","searchFilter","searchQuery_1","searchFields","searchField","name","toLowerCase","members","member","_userIdsFilter","userIdsFilter","includeMode","queryType","memberIds_1","every","includeFrozen","isFrozen","customTypesFilter","customTypeStartsWithFilter","RegExp","channelNameContainsFilter","nicknameContainsFilter","lowerCasedSubString_1","channelUrlsFilter","memberStateFilter","myMemberState","inviter","hiddenChannelFilter","isHidden","hiddenState","unreadChannelFilter","unreadMessageCount","publicChannelFilter","isPublic","superChannelFilter","isSuper","binarySearch","list","number","pivot","leftList","slice","rightList","getChannelsWithUpsertedChannel","channels","ch","targetIndex","createdAt"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stringSet-aa544ce5.js","sources":["../../src/ui/Label/stringSet.js"],"sourcesContent":["const getStringSet = (lang = 'en') => {\n const stringSet = {\n en: {\n OPEN_CHANNEL_SETTINGS__OPERATOR_TITLE: 'Channel Information',\n OPEN_CHANNEL_SETTINGS__OPERATOR_URL: 'URL',\n OPEN_CHANNEL_SETTINGS__PARTICIPANTS_ACCORDION_TITLE: 'Participants',\n OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_PANEL: 'Delete channel',\n OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_TITLE: 'Delete this channel',\n OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_SUBMIT: 'Delete',\n OPEN_CHANNEL_SETTINGS__PARTICIPANTS_TITLE: 'Participants',\n OPEN_CHANNEL_SETTINGS__EMPTY_LIST: 'No participants yet',\n OPEN_CHANNEL_SETTINGS__SEE_ALL: 'See all participants',\n OPEN_CHANNEL_SETTINGS__ALL_PARTICIPANTS_TITLE: 'All participants',\n OPEN_CHANNEL_SETTINGS__NO_TITLE: '(No title)',\n OPEN_CHANNEL_CONVERSATION__TITLE_PARTICIPANTS: 'participants',\n TRYING_TO_CONNECT: 'Trying to connect…',\n USER_PROFILE__MESSAGE: 'Message',\n USER_PROFILE__USER_ID: 'User ID',\n EDIT_PROFILE__TITLE: 'My profile',\n EDIT_PROFILE__IMAGE_LABEL: 'Profile image',\n EDIT_PROFILE__IMAGE_UPLOAD: 'Upload',\n EDIT_PROFILE__NICKNAME_LABEL: 'Nickname',\n EDIT_PROFILE__NICKNAME_PLACEHOLDER: 'Enter your nickname',\n EDIT_PROFILE__USERID_LABEL: 'User ID',\n EDIT_PROFILE__THEME_LABEL: 'Dark theme',\n MESSAGE_INPUT__PLACE_HOLDER: 'Enter message',\n MESSAGE_INPUT__PLACE_HOLDER__DISABLED: 'Chat is unavailable in this channel',\n MESSAGE_INPUT__PLACE_HOLDER__MUTED: 'Chat is unavailable because you are being muted',\n MESSAGE_INPUT__QUOTE_REPLY__PLACE_HOLDER: 'Reply to message',\n CHANNEL__MESSAGE_LIST__NOTIFICATION__NEW_MESSAGE: 'new message(s) since',\n CHANNEL__MESSAGE_LIST__NOTIFICATION__ON: 'on',\n CHANNEL_SETTING__HEADER__TITLE: 'Channel information',\n CHANNEL_SETTING__PROFILE__EDIT: 'Edit',\n CHANNEL_SETTING__MEMBERS__TITLE: 'Members',\n CHANNEL_SETTING__MEMBERS__SEE_ALL_MEMBERS: 'All members',\n CHANNEL_SETTING__MEMBERS__INVITE_MEMBER: 'Invite users',\n CHANNEL_SETTING__MEMBERS__YOU: ' (You)',\n CHANNEL_SETTING__LEAVE_CHANNEL__TITLE: 'Leave channel',\n CHANNEL_SETTING__OPERATORS__TITLE: 'Operators',\n CHANNEL_SETTING__OPERATORS__TITLE_ALL: 'All operators',\n CHANNEL_SETTING__OPERATORS__TITLE_ADD: 'Add operator',\n CHANNEL_SETTING__MUTED_MEMBERS__TITLE: 'Muted members',\n CHANNEL_SETTING__BANNED_MEMBERS__TITLE: 'Banned members',\n CHANNEL_SETTING__FREEZE_CHANNEL: 'Freeze Channel',\n BUTTON__CANCEL: 'Cancel',\n BUTTON__DELETE: 'Delete',\n BUTTON__SAVE: 'Save',\n BUTTON__CREATE: 'Create',\n BUTTON__INVITE: 'Invite',\n BADGE__OVER: '+',\n MODAL__DELETE_MESSAGE__TITLE: 'Delete this message?',\n MODAL__CHANNEL_INFORMATION__TITLE: 'Edit channel information',\n MODAL__CHANNEL_INFORMATION__CHANNEL_IMAGE: 'Channel image',\n MODAL__CHANNEL_INFORMATION__UPLOAD: 'Upload',\n MODAL__CHANNEL_INFORMATION__CHANNEL_NAME: 'Channel name',\n MODAL__CHANNEL_INFORMATION__INPUT__PLACE_HOLDER: 'Enter name',\n MODAL__INVITE_MEMBER__TITLE: 'Invite member',\n MODAL__INVITE_MEMBER__SELECTEC: 'selected',\n MODAL__CHOOSE_CHANNEL_TYPE__TITLE: 'New channel',\n MODAL__CHOOSE_CHANNEL_TYPE__GROUP: 'Group',\n MODAL__CHOOSE_CHANNEL_TYPE__SUPER_GROUP: 'Super group',\n MODAL__CHOOSE_CHANNEL_TYPE__BROADCAST: 'Broadcast',\n MODAL__CREATE_CHANNEL__TITLE: 'New channel',\n MODAL__CREATE_CHANNEL__GROUP: 'Group',\n MODAL__CREATE_CHANNEL__SUPER: 'Super group',\n MODAL__CREATE_CHANNEL__BROADCAST: 'Broadcast',\n MODAL__CREATE_CHANNEL__SELECTED: 'selected',\n TYPING_INDICATOR__IS_TYPING: 'is typing...',\n TYPING_INDICATOR__AND: 'and',\n TYPING_INDICATOR__ARE_TYPING: 'are typing...',\n TYPING_INDICATOR__MULTIPLE_TYPING: 'Several people are typing...',\n CHANNEL_FROZEN: 'Channel frozen',\n PLACE_HOLDER__NO_CHANNEL: 'No channels',\n PLACE_HOLDER__WRONG: 'Something went wrong',\n PLACE_HOLDER__RETRY_TO_CONNECT: 'Retry',\n PLACE_HOLDER__NO_MESSAGES: 'No messages',\n NO_TITLE: 'No title',\n NO_NAME: '(No name)',\n NO_MEMBERS: '(No members)',\n TOOLTIP__AND_YOU: ', and you',\n TOOLTIP__YOU: 'you',\n TOOLTIP__UNKNOWN_USER: '(no name)',\n UNKNOWN__UNKNOWN_MESSAGE_TYPE: '(Unknown message type)',\n UNKNOWN__CANNOT_READ_MESSAGE: 'Cannot read this message.',\n MESSAGE_EDITED: '(edited)',\n MESSAGE_MENU__COPY: 'Copy',\n MESSAGE_MENU__REPLY: 'Reply',\n MESSAGE_MENU__EDIT: 'Edit',\n MESSAGE_MENU__RESEND: 'Resend',\n MESSAGE_MENU__DELETE: 'Delete',\n SEARCH: 'Search',\n SEARCH_IN_CHANNEL: 'Search in channel',\n SEARCH_IN: 'Search in',\n SEARCHING: 'Searching for messages...',\n NO_SEARCHED_MESSAGE: 'No results found.',\n QUOTE_MESSAGE_INPUT__REPLY_TO: 'Reply to',\n QUOTE_MESSAGE_INPUT__FILE_TYPE_IMAGE: 'Photo',\n QUOTE_MESSAGE_INPUT__FILE_TYPE_GIF: 'GIF',\n QUOTE_MESSAGE_INPUT__FILE_TYPE__VIDEO: 'Video',\n QUOTED_MESSAGE__REPLIED_TO: 'replied to',\n QUOTED_MESSAGE__CURRENT_USER: 'You',\n // FIXME: get back legacy, remove after refactoring open channel messages\n CONTEXT_MENU_DROPDOWN__COPY: 'Copy',\n CONTEXT_MENU_DROPDOWN__EDIT: 'Edit',\n CONTEXT_MENU_DROPDOWN__RESEND: 'Resend',\n CONTEXT_MENU_DROPDOWN__DELETE: 'Delete',\n },\n };\n return stringSet[lang];\n};\n\nexport default getStringSet;\n"],"names":["getStringSet","lang","stringSet","en","OPEN_CHANNEL_SETTINGS__OPERATOR_TITLE","OPEN_CHANNEL_SETTINGS__OPERATOR_URL","OPEN_CHANNEL_SETTINGS__PARTICIPANTS_ACCORDION_TITLE","OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_PANEL","OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_TITLE","OPEN_CHANNEL_SETTINGS__DELETE_CHANNEL_SUBMIT","OPEN_CHANNEL_SETTINGS__PARTICIPANTS_TITLE","OPEN_CHANNEL_SETTINGS__EMPTY_LIST","OPEN_CHANNEL_SETTINGS__SEE_ALL","OPEN_CHANNEL_SETTINGS__ALL_PARTICIPANTS_TITLE","OPEN_CHANNEL_SETTINGS__NO_TITLE","OPEN_CHANNEL_CONVERSATION__TITLE_PARTICIPANTS","TRYING_TO_CONNECT","USER_PROFILE__MESSAGE","USER_PROFILE__USER_ID","EDIT_PROFILE__TITLE","EDIT_PROFILE__IMAGE_LABEL","EDIT_PROFILE__IMAGE_UPLOAD","EDIT_PROFILE__NICKNAME_LABEL","EDIT_PROFILE__NICKNAME_PLACEHOLDER","EDIT_PROFILE__USERID_LABEL","EDIT_PROFILE__THEME_LABEL","MESSAGE_INPUT__PLACE_HOLDER","MESSAGE_INPUT__PLACE_HOLDER__DISABLED","MESSAGE_INPUT__PLACE_HOLDER__MUTED","MESSAGE_INPUT__QUOTE_REPLY__PLACE_HOLDER","CHANNEL__MESSAGE_LIST__NOTIFICATION__NEW_MESSAGE","CHANNEL__MESSAGE_LIST__NOTIFICATION__ON","CHANNEL_SETTING__HEADER__TITLE","CHANNEL_SETTING__PROFILE__EDIT","CHANNEL_SETTING__MEMBERS__TITLE","CHANNEL_SETTING__MEMBERS__SEE_ALL_MEMBERS","CHANNEL_SETTING__MEMBERS__INVITE_MEMBER","CHANNEL_SETTING__MEMBERS__YOU","CHANNEL_SETTING__LEAVE_CHANNEL__TITLE","CHANNEL_SETTING__OPERATORS__TITLE","CHANNEL_SETTING__OPERATORS__TITLE_ALL","CHANNEL_SETTING__OPERATORS__TITLE_ADD","CHANNEL_SETTING__MUTED_MEMBERS__TITLE","CHANNEL_SETTING__BANNED_MEMBERS__TITLE","CHANNEL_SETTING__FREEZE_CHANNEL","BUTTON__CANCEL","BUTTON__DELETE","BUTTON__SAVE","BUTTON__CREATE","BUTTON__INVITE","BADGE__OVER","MODAL__DELETE_MESSAGE__TITLE","MODAL__CHANNEL_INFORMATION__TITLE","MODAL__CHANNEL_INFORMATION__CHANNEL_IMAGE","MODAL__CHANNEL_INFORMATION__UPLOAD","MODAL__CHANNEL_INFORMATION__CHANNEL_NAME","MODAL__CHANNEL_INFORMATION__INPUT__PLACE_HOLDER","MODAL__INVITE_MEMBER__TITLE","MODAL__INVITE_MEMBER__SELECTEC","MODAL__CHOOSE_CHANNEL_TYPE__TITLE","MODAL__CHOOSE_CHANNEL_TYPE__GROUP","MODAL__CHOOSE_CHANNEL_TYPE__SUPER_GROUP","MODAL__CHOOSE_CHANNEL_TYPE__BROADCAST","MODAL__CREATE_CHANNEL__TITLE","MODAL__CREATE_CHANNEL__GROUP","MODAL__CREATE_CHANNEL__SUPER","MODAL__CREATE_CHANNEL__BROADCAST","MODAL__CREATE_CHANNEL__SELECTED","TYPING_INDICATOR__IS_TYPING","TYPING_INDICATOR__AND","TYPING_INDICATOR__ARE_TYPING","TYPING_INDICATOR__MULTIPLE_TYPING","CHANNEL_FROZEN","PLACE_HOLDER__NO_CHANNEL","PLACE_HOLDER__WRONG","PLACE_HOLDER__RETRY_TO_CONNECT","PLACE_HOLDER__NO_MESSAGES","NO_TITLE","NO_NAME","NO_MEMBERS","TOOLTIP__AND_YOU","TOOLTIP__YOU","TOOLTIP__UNKNOWN_USER","UNKNOWN__UNKNOWN_MESSAGE_TYPE","UNKNOWN__CANNOT_READ_MESSAGE","MESSAGE_EDITED","MESSAGE_MENU__COPY","MESSAGE_MENU__REPLY","MESSAGE_MENU__EDIT","MESSAGE_MENU__RESEND","MESSAGE_MENU__DELETE","SEARCH","SEARCH_IN_CHANNEL","SEARCH_IN","SEARCHING","NO_SEARCHED_MESSAGE","QUOTE_MESSAGE_INPUT__REPLY_TO","QUOTE_MESSAGE_INPUT__FILE_TYPE_IMAGE","QUOTE_MESSAGE_INPUT__FILE_TYPE_GIF","QUOTE_MESSAGE_INPUT__FILE_TYPE__VIDEO","QUOTED_MESSAGE__REPLIED_TO","QUOTED_MESSAGE__CURRENT_USER","CONTEXT_MENU_DROPDOWN__COPY","CONTEXT_MENU_DROPDOWN__EDIT","CONTEXT_MENU_DROPDOWN__RESEND","CONTEXT_MENU_DROPDOWN__DELETE"],"mappings":"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"}
|
package/index-8c72a94a.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-8c72a94a.js","sources":["../src/utils/index.ts"],"sourcesContent":["import SendBird, { AdminMessage, Emoji, EmojiCategory, EmojiContainer, FileMessage, GroupChannel, GroupChannelListQuery, Member, MessageListParams, OpenChannel, Reaction, SendBirdInstance, User, UserMessage } from \"sendbird\";\nimport { EveryMessage } from '../types';\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 AUDIO: [\n 'audio/aac',\n 'audio/midi',\n 'audio/x-midi',\n 'audio/mpeg',\n 'audio/ogg',\n 'audio/opus',\n 'audio/wav',\n 'audio/webm',\n 'audio/3gpp',\n 'audio/3gpp2',\n 'audio/mp3',\n ],\n};\n\nexport interface UIKitMessageTypes {\n ADMIN: \"ADMIN\",\n TEXT: \"TEXT\",\n FILE: \"FILE\",\n THUMBNAIL: \"THUMBNAIL\",\n OG: \"OG\",\n UNKNOWN: \"UNKNOWN\",\n}\nconst UIKitMessageTypes: UIKitMessageTypes = {\n ADMIN: \"ADMIN\",\n TEXT: \"TEXT\",\n FILE: \"FILE\",\n THUMBNAIL: \"THUMBNAIL\",\n OG: \"OG\",\n UNKNOWN: \"UNKNOWN\",\n};\nexport interface UIKitFileTypes {\n IMAGE: \"IMAGE\",\n AUDIO: \"AUDIO\",\n VIDEO: \"VIDEO\",\n GIF: \"GIF\",\n OTHERS: \"OTHERS\",\n}\nexport const UIKitFileTypes: UIKitFileTypes = {\n IMAGE: \"IMAGE\",\n AUDIO: \"AUDIO\",\n VIDEO: \"VIDEO\",\n GIF: \"GIF\",\n OTHERS: \"OTHERS\",\n};\n\nexport interface SendingMessageStatus {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n}\nconst SendingMessageStatus: SendingMessageStatus = {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n};\n\nexport interface OutgoingMessageStates {\n NONE: 'NONE',\n PENDING: 'PENDING',\n SENT: 'SENT',\n FAILED: 'FAILED',\n DELIVERED: 'DELIVERED',\n READ: 'READ',\n // delivered and read are only in group channel\n}\nexport const OutgoingMessageStates: OutgoingMessageStates = {\n NONE: 'NONE',\n PENDING: 'PENDING',\n SENT: 'SENT',\n FAILED: 'FAILED',\n DELIVERED: 'DELIVERED',\n READ: 'READ',\n};\n\nexport type CoreMessageType = EveryMessage;\n\nexport const isTextuallyNull = (text: string): boolean => {\n if (text === '' || text === null) {\n return true;\n }\n return false;\n};\n\nexport const isImage = (type: string): boolean => SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;\nexport const isVideo = (type: string): boolean => SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;\nexport const isGif = (type: string): boolean => type === 'image/gif';\nexport const isSupportedFileView = (type: string): boolean => isImage(type) || isVideo(type);\nexport const isAudio = (type: string): boolean => SUPPORTED_MIMES.AUDIO.indexOf(type) >= 0;\n\nexport const getUIKitFileTypes = (): UIKitFileTypes => ({ ...UIKitFileTypes });\nexport const getUIKitFileType = (type: string): string => {\n if (isGif(type)) return UIKitFileTypes.GIF;\n if (isImage(type)) return UIKitFileTypes.IMAGE;\n if (isVideo(type)) return UIKitFileTypes.VIDEO;\n if (isAudio(type)) return UIKitFileTypes.AUDIO;\n return UIKitFileTypes.OTHERS;\n};\nexport const getOutgoingMessageStates = (): OutgoingMessageStates => ({ ...OutgoingMessageStates });\nexport const getOutgoingMessageState = (channel: GroupChannel | OpenChannel, message: UserMessage | FileMessage): string => {\n if (message.sendingStatus === 'pending') return OutgoingMessageStates.PENDING;\n if (message.sendingStatus === 'failed') return OutgoingMessageStates.FAILED;\n if (channel?.isGroupChannel?.()) {\n /* GroupChannel only */\n if ((channel as GroupChannel).getUnreadMemberCount(message) === 0) {\n return OutgoingMessageStates.READ;\n } else if ((channel as GroupChannel).getUndeliveredMemberCount(message) === 0) {\n return OutgoingMessageStates.DELIVERED;\n }\n }\n if (message.sendingStatus === 'succeeded') return OutgoingMessageStates.SENT;\n return OutgoingMessageStates.NONE;\n};\nexport const isSentMessage = (message: UserMessage | FileMessage): boolean => (message.sendingStatus === 'succeeded');\nexport const isDeliveredMessage = (channel: GroupChannel, message: UserMessage | FileMessage): boolean => (\n getOutgoingMessageState(channel, message) === OutgoingMessageStates.DELIVERED\n || getOutgoingMessageState(channel, message) === OutgoingMessageStates.READ\n);\nexport const isReadMessage = (channel: GroupChannel, message: UserMessage | FileMessage): boolean => (\n getOutgoingMessageState(channel, message) === OutgoingMessageStates.READ\n);\n// TODO: Remove channel from the params, it seems unnecessary\nexport const isFailedMessage = (message: UserMessage | FileMessage): boolean => (message.sendingStatus === 'failed');\nexport const isPendingMessage = (message: UserMessage | FileMessage): boolean => (message.sendingStatus === 'pending');\nexport const isSentStatus = (state: string): boolean => (\n state === OutgoingMessageStates.SENT\n || state === OutgoingMessageStates.DELIVERED\n || state === OutgoingMessageStates.READ\n);\n\nexport const isAdminMessage = (message: AdminMessage): boolean => (\n message && (message.isAdminMessage?.() || (message['messageType'] && message.messageType === 'admin'))\n);\nexport const isUserMessage = (message: UserMessage): boolean => (\n message && (message.isUserMessage?.() || (message['messageType'] && message.messageType === 'user'))\n);\nexport const isFileMessage = (message: FileMessage): boolean => (\n message && (message.isFileMessage?.() || (message['messageType'] && message.messageType === 'file'))\n);\n\nexport const isOGMessage = (message: UserMessage): boolean => !!(\n message && isUserMessage(message) && message?.ogMetaData && message?.ogMetaData?.url\n);\nexport const isTextMessage = (message: UserMessage): boolean => isUserMessage(message) && !isOGMessage(message);\nexport const isThumbnailMessage = (message: FileMessage): boolean => message && isFileMessage(message) && isSupportedFileView(message.type);\nexport const isImageMessage = (message: FileMessage): boolean => message && isThumbnailMessage(message) && isImage(message.type);\nexport const isVideoMessage = (message: FileMessage): boolean => message && isThumbnailMessage(message) && isVideo(message.type);\nexport const isGifMessage = (message: FileMessage): boolean => message && isThumbnailMessage(message) && isGif(message.type);\nexport const isAudioMessage = (message: FileMessage): boolean => message && isFileMessage(message) && isAudio(message.type);\n\nexport const isEditedMessage = (message: UserMessage): boolean => isUserMessage(message) && (message?.updatedAt > 0);\nexport const isEnabledOGMessage = (message: UserMessage): boolean => (\n (!message || !message.ogMetaData || !message.ogMetaData.url) ? false : true\n);\n\nexport const getUIKitMessageTypes = (): UIKitMessageTypes => ({ ...UIKitMessageTypes });\nexport const getUIKitMessageType = (message: SendBird.UserMessage | SendBird.FileMessage | SendBird.AdminMessage): string => {\n if (isAdminMessage(message as SendBird.AdminMessage)) return UIKitMessageTypes.ADMIN;\n if (isUserMessage(message as UserMessage)) {\n return isOGMessage(message as UserMessage) ? UIKitMessageTypes.OG : UIKitMessageTypes.TEXT;\n }\n if (isFileMessage(message as FileMessage)) {\n return isThumbnailMessage(message as FileMessage) ? UIKitMessageTypes.THUMBNAIL : UIKitMessageTypes.FILE;\n }\n return UIKitMessageTypes.UNKNOWN;\n};\nexport const getSendingMessageStatus = (): SendingMessageStatus => ({ ...SendingMessageStatus });\n\nconst reducer = (accumulator: Array<string>, currentValue: string | Array<string>): Array<any> => {\n if (Array.isArray(currentValue)) {\n return [...accumulator, ...currentValue];\n } else {\n accumulator.push(currentValue);\n return accumulator;\n }\n};\nexport const getClassName = (classNames: string | Array<string | Array<string>>): string => (\n Array.isArray(classNames)\n ? classNames.reduce(reducer, []).join(' ')\n : classNames\n);\nexport const isReactedBy = (userId: string, reaction: Reaction): boolean => (\n reaction.userIds.some((reactorUserId: string): boolean => reactorUserId === userId)\n);\ninterface StringSet {\n TOOLTIP__YOU: string;\n TOOLTIP__AND_YOU: string;\n TOOLTIP__UNKNOWN_USER: string;\n}\nexport const getEmojiTooltipString = (reaction: Reaction, userId: string, memberNicknamesMap: Map<string, string>, stringSet: StringSet): string => {\n let you = '';\n if (isReactedBy(userId, reaction)) {\n you = reaction.userIds.length === 1 ? stringSet.TOOLTIP__YOU : stringSet.TOOLTIP__AND_YOU;\n }\n return (`${reaction.userIds\n .filter((reactorUserId: string) => reactorUserId !== userId)\n .map((reactorUserId: string) => (memberNicknamesMap.get(reactorUserId) || stringSet.TOOLTIP__UNKNOWN_USER))\n .join(', ')}${you}`);\n};\n\n// TODO: Use the interface after language tranlsatation of Sendbird.js\ninterface UIKitStore {\n stores: {\n sdkStore: {\n sdk: SendBirdInstance,\n },\n userStore: {\n user: User,\n },\n },\n config: {\n useReaction: boolean,\n }\n}\nexport const getCurrentUserId = (store: UIKitStore): string => (store?.stores?.userStore?.user?.userId);\nexport const getUseReaction = (store: UIKitStore, channel: GroupChannel | OpenChannel): boolean => {\n if (!store?.config?.useReaction)\n return false;\n if (!store?.stores?.sdkStore?.sdk?.appInfo?.isUsingReaction)\n return false;\n if (channel?.isGroupChannel())\n return !((channel as GroupChannel).isBroadcast || (channel as GroupChannel).isSuper);\n return store?.config?.useReaction;\n};\n\nexport const isMessageSentByMe = (userId: string, message: UserMessage | FileMessage): boolean => (\n (userId && message?.sender?.userId) && userId === message.sender.userId\n);\n\nconst URL_REG = /[-a-zA-Z0-9@:%._+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_+.~#?&//=]*)/;\nexport const isUrl = (text: string): boolean => URL_REG.test(text);\n\nexport const truncateString = (fullStr: string, strLen?: number): string => {\n if (!strLen) strLen = 40;\n if (fullStr === null || fullStr === undefined) return '';\n if (fullStr.length <= strLen) return fullStr;\n const separator = '...';\n const sepLen = separator.length;\n const charsToShow = strLen - sepLen;\n const frontChars = Math.ceil(charsToShow / 2);\n const backChars = Math.floor(charsToShow / 2);\n return fullStr.substr(0, frontChars) + separator + fullStr.substr(fullStr.length - backChars);\n};\n\nexport const copyToClipboard = (text: string): boolean => {\n // @ts-ignore: Unreachable code error\n if (window.clipboardData && window.clipboardData.setData) {\n // Internet Explorer-specific code path to prevent textarea being shown while dialog is visible.\n // @ts-ignore: Unreachable code error\n return window.clipboardData.setData('Text', text);\n }\n if (document.queryCommandSupported && document.queryCommandSupported('copy')) {\n const textarea = document.createElement('textarea');\n textarea.textContent = text;\n textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in Microsoft Edge.\n document.body.appendChild(textarea);\n textarea.select();\n try {\n return document.execCommand('copy'); // Security exception may be thrown by some browsers.\n } catch (ex) {\n return false;\n } finally {\n document.body.removeChild(textarea);\n }\n }\n return false;\n};\n\nexport const getEmojiListAll = (emojiContainer: EmojiContainer): Array<Emoji> => (\n emojiContainer?.emojiCategories?.map((emojiCategory: EmojiCategory) => emojiCategory.emojis)\n .reduce((prevArr: Array<Emoji>, currArr: Array<Emoji>) => prevArr.concat(currArr), [])\n);\nexport const getEmojiMapAll = (emojiContainer: EmojiContainer): Map<string, Emoji> => {\n const emojiMap = new Map();\n emojiContainer?.emojiCategories?.forEach((category: EmojiCategory) => {\n category?.emojis?.forEach((emoji: Emoji): void => {\n if (emoji && emoji.key) {\n emojiMap.set(emoji.key, emoji);\n }\n });\n });\n return emojiMap;\n};\n\nexport const getUserName = (user: User): string => (user?.friendName || user?.nickname || user?.userId);\nexport const getSenderName = (message: UserMessage | FileMessage): string => (message.sender && getUserName(message.sender));\n\nexport const hasSameMembers = <T>(a: T[], b: T[]): boolean => {\n if (a === b) {\n return true;\n }\n if (a == null || b == null) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n\n const sortedA = [...a].sort();\n const sortedB = [...b].sort();\n\n for (let i = 0; i < sortedA.length; ++i) {\n if (sortedA[i] !== sortedB[i]) {\n return false;\n }\n }\n return true;\n}\nexport const isFriend = (user: User): boolean => !!(user.friendDiscoveryKey || user.friendName);\n\nexport const filterMessageListParams = (params: MessageListParams, message: UserMessage | FileMessage): boolean => {\n if (params?.messageType && params.messageType !== message.messageType) {\n return false;\n }\n if (params?.customTypes?.length > 0) {\n const customTypes = params.customTypes.filter((item) => item !== '*');\n // Because Chat SDK inserts '*' when customTypes is empty\n if (customTypes.length > 0 && !customTypes.includes(message.customType)) {\n return false;\n }\n }\n if (params?.senderUserIds && params?.senderUserIds?.length > 0) {\n if (message?.isUserMessage() || message.isFileMessage()) {\n const messageSender = (message as UserMessage | FileMessage).sender || message['_sender'];\n if (!params?.senderUserIds?.includes(messageSender?.userId)) {\n return false;\n }\n } else {\n return false;\n }\n }\n if (!params?.includeParentMessageInfo && (message?.parentMessageId || message?.parentMessage)) {\n return false;\n }\n return true;\n};\n\ninterface SDKChannelListParamsPrivateProps extends GroupChannelListQuery {\n _searchFilter: {\n search_query: string,\n search_fields: Array<'member_nickname' | 'channel_name'>,\n };\n _userIdsFilter: {\n userIds: Array<string>,\n includeMode: boolean,\n queryType: 'AND' | 'OR',\n };\n}\nexport const filterChannelListParams = (params: SDKChannelListParamsPrivateProps, channel: GroupChannel, currentUserId: string): boolean => {\n if (!params?.includeEmpty && channel?.lastMessage && channel.lastMessage === null) {\n return false;\n }\n if (params?._searchFilter?.search_query && params._searchFilter.search_fields?.length > 0) {\n const searchFilter = params._searchFilter;\n const searchQuery = searchFilter.search_query;\n const searchFields = searchFilter.search_fields;\n if (searchQuery && searchFields && searchFields.length > 0) {\n if (!searchFields.some((searchField) => {\n switch (searchField) {\n case 'channel_name': {\n return channel.name.toLowerCase().includes(searchQuery.toLowerCase());\n }\n case 'member_nickname': {\n return channel.members.some((member: Member) => member.nickname.toLowerCase().includes(searchQuery.toLowerCase()));\n }\n default: {\n return true;\n }\n }\n })) {\n return false;\n }\n }\n }\n if (params?._userIdsFilter?.userIds?.length > 0) {\n const userIdsFilter = params._userIdsFilter;\n const { includeMode, queryType } = userIdsFilter;\n const userIds: string[] = userIdsFilter.userIds;\n const memberIds = channel.members.map((member: Member) => member.userId);\n if (!includeMode) { // exact match\n if (!userIds.includes(currentUserId)) {\n userIds.push(currentUserId); // add the caller's userId if not added already.\n }\n if (channel.members.length > userIds.length) {\n return false; // userIds may contain one or more non-member(s).\n }\n if (!hasSameMembers(userIds, memberIds)) {\n return false;\n }\n } else if (userIds.length > 0) { // inclusive\n switch (queryType) {\n case 'AND': {\n if (userIds.some((userId: string) => !memberIds.includes(userId))) {\n return false;\n }\n break;\n }\n case 'OR': {\n if (userIds.every((userId: string) => !memberIds.includes(userId))) {\n return false;\n }\n break;\n }\n default: {\n break;\n }\n }\n }\n }\n if (params?.includeEmpty === false && channel?.lastMessage === null) {\n return false;\n }\n if (params?.includeFrozen === false && channel?.isFrozen === true) {\n return false;\n }\n if (params?.customTypesFilter?.length > 0 && !params.customTypesFilter.includes(channel?.customType)) {\n return false;\n }\n if (params?.customTypeStartsWithFilter && !new RegExp(`^${params.customTypeStartsWithFilter}`).test(channel?.customType)) {\n return false;\n }\n if (params?.channelNameContainsFilter && !channel?.name?.toLowerCase().includes(params.channelNameContainsFilter.toLowerCase())) {\n return false;\n }\n if (params?.nicknameContainsFilter) {\n const lowerCasedSubString = params.nicknameContainsFilter.toLowerCase();\n if (channel?.members?.every((member: Member) => !member.nickname.toLowerCase().includes(lowerCasedSubString))) {\n return false;\n }\n }\n if (params?.channelUrlsFilter?.length > 0 && !params.channelUrlsFilter.includes(channel?.url)) {\n return false;\n }\n if (params?.memberStateFilter) {\n switch (params.memberStateFilter) {\n case 'joined_only':\n if (channel?.myMemberState !== 'joined') {\n return false;\n }\n break;\n case 'invited_only':\n if (channel?.myMemberState !== 'invited') {\n return false;\n }\n break;\n case 'invited_by_friend':\n if (channel?.myMemberState !== 'invited' || !isFriend(channel.inviter)) {\n return false;\n }\n break;\n case 'invited_by_non_friend':\n if (channel?.myMemberState !== 'invited' || isFriend(channel.inviter)) {\n return false;\n }\n break;\n }\n }\n if (params?.hiddenChannelFilter) {\n switch (params.hiddenChannelFilter) {\n case 'unhidden_only':\n if (channel?.isHidden || channel?.hiddenState !== 'unhidden') {\n return false;\n }\n break;\n case 'hidden_only':\n if (!channel?.isHidden) {\n return false;\n }\n break;\n case 'hidden_allow_auto_unhide':\n if (!channel?.isHidden || channel?.hiddenState !== 'hidden_allow_auto_unhide') {\n return false;\n }\n break;\n case 'hidden_prevent_auto_unhide':\n if (!channel?.isHidden || channel?.hiddenState !== 'hidden_prevent_auto_unhide') {\n return false;\n }\n break;\n }\n }\n if (params?.unreadChannelFilter) {\n switch (params.unreadChannelFilter) {\n case 'unread_message':\n if (channel?.unreadMessageCount === 0) {\n return false;\n }\n break;\n }\n }\n if (params?.publicChannelFilter) {\n switch (params.publicChannelFilter) {\n case 'public':\n if (!channel?.isPublic) {\n return false;\n }\n break;\n case 'private':\n if (channel?.isPublic) {\n return false;\n }\n break;\n }\n }\n if (params?.superChannelFilter) {\n switch (params.superChannelFilter) {\n case 'super':\n if (!channel?.isSuper) {\n return false;\n }\n break;\n case 'nonsuper':\n if (channel?.isSuper) {\n return false;\n }\n break;\n }\n }\n return true;\n};\n\nexport const binarySearch = (list: Array<number>, number: number): number => {// [100, 99, 98, 97, ...]\n const pivot = Math.floor(list.length / 2);\n if (list[pivot] === number) {\n return pivot;\n }\n const leftList = list.slice(0, pivot);\n const rightList = list.slice(pivot + 1, list.length);\n if (list[pivot] > number) {\n return pivot + 1 + (rightList.length === 0 ? 0 : binarySearch(rightList, number));\n } else {\n return (leftList.length === 0) ? pivot : binarySearch(leftList, number);\n }\n};\n// This is required when channel is displayed on channel list by filter\nexport const getChannelsWithUpsertedChannel = (channels: Array<GroupChannel>, channel: GroupChannel): Array<GroupChannel> => {\n if (channels.some((ch: GroupChannel) => ch.url === channel.url)) {\n return channels.map((ch: GroupChannel) => (ch.url === channel.url ? channel : ch));\n }\n const targetIndex = binarySearch(\n channels.map((channel: GroupChannel) => channel?.lastMessage?.createdAt || channel?.createdAt),\n channel?.lastMessage?.createdAt || channel?.createdAt\n );\n return [...channels.slice(0, targetIndex), channel, ...channels.slice(targetIndex, channels.length)];\n};\n"],"names":["SUPPORTED_MIMES","IMAGE","VIDEO","AUDIO","UIKitMessageTypes","ADMIN","TEXT","FILE","THUMBNAIL","OG","UNKNOWN","UIKitFileTypes","GIF","OTHERS","SendingMessageStatus","NONE","SUCCEEDED","FAILED","PENDING","OutgoingMessageStates","SENT","DELIVERED","READ","isTextuallyNull","text","isImage","type","indexOf","isVideo","isGif","isSupportedFileView","isAudio","getUIKitFileTypes","getUIKitFileType","getOutgoingMessageStates","getOutgoingMessageState","channel","message","sendingStatus","isGroupChannel","getUnreadMemberCount","getUndeliveredMemberCount","isSentMessage","isFailedMessage","isPendingMessage","isSentStatus","state","isAdminMessage","messageType","isUserMessage","isFileMessage","isOGMessage","ogMetaData","url","isTextMessage","isThumbnailMessage","isImageMessage","isVideoMessage","isGifMessage","isAudioMessage","isEditedMessage","updatedAt","getUIKitMessageTypes","getUIKitMessageType","getSendingMessageStatus","reducer","accumulator","currentValue","Array","isArray","push","getClassName","classNames","reduce","join","isReactedBy","userId","reaction","userIds","some","reactorUserId","getEmojiTooltipString","memberNicknamesMap","stringSet","you","length","TOOLTIP__YOU","TOOLTIP__AND_YOU","filter","map","get","TOOLTIP__UNKNOWN_USER","URL_REG","isUrl","test","truncateString","fullStr","strLen","undefined","separator","sepLen","charsToShow","frontChars","Math","ceil","backChars","floor","substr","copyToClipboard","window","clipboardData","setData","document","queryCommandSupported","textarea","createElement","textContent","style","position","body","appendChild","select","execCommand","ex","removeChild","getEmojiListAll","emojiContainer","emojiCategories","emojiCategory","emojis","prevArr","currArr","concat","getEmojiMapAll","emojiMap","Map","forEach","category","emoji","key","set","getUserName","user","friendName","nickname","getSenderName","sender","hasSameMembers","a","b","sortedA","__spreadArray","sort","sortedB","i","isFriend","friendDiscoveryKey","filterMessageListParams","params","customTypes","item","includes","customType","senderUserIds","messageSender","includeParentMessageInfo","parentMessageId","parentMessage","filterChannelListParams","currentUserId","includeEmpty","lastMessage","_searchFilter","search_query","search_fields","searchFilter","searchQuery_1","searchFields","searchField","name","toLowerCase","members","member","_userIdsFilter","userIdsFilter","includeMode","queryType","memberIds_1","every","includeFrozen","isFrozen","customTypesFilter","customTypeStartsWithFilter","RegExp","channelNameContainsFilter","nicknameContainsFilter","lowerCasedSubString_1","channelUrlsFilter","memberStateFilter","myMemberState","inviter","hiddenChannelFilter","isHidden","hiddenState","unreadChannelFilter","unreadMessageCount","publicChannelFilter","isPublic","superChannelFilter","isSuper","binarySearch","list","number","pivot","leftList","slice","rightList","getChannelsWithUpsertedChannel","channels","ch","targetIndex","createdAt"],"mappings":"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"}
|