@sendbird/uikit-react 3.4.5 → 3.4.6-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 +103 -128
- package/App.js.map +1 -1
- package/CHANGELOG.md +14 -0
- package/Channel/components/ChannelHeader.js +26 -27
- package/Channel/components/ChannelHeader.js.map +1 -1
- package/Channel/components/ChannelUI.js +54 -59
- package/Channel/components/ChannelUI.js.map +1 -1
- package/Channel/components/FileViewer.js +36 -37
- package/Channel/components/FileViewer.js.map +1 -1
- package/Channel/components/FrozenNotification.js +5 -5
- package/Channel/components/FrozenNotification.js.map +1 -1
- package/Channel/components/Message.js +106 -136
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +67 -87
- package/Channel/components/MessageInput.js.map +1 -1
- package/Channel/components/MessageList.js +95 -140
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +20 -21
- package/Channel/components/RemoveMessageModal.js.map +1 -1
- package/Channel/components/SuggestedMentionList.js +59 -90
- package/Channel/components/SuggestedMentionList.js.map +1 -1
- package/Channel/components/TypingIndicator.js +19 -33
- package/Channel/components/TypingIndicator.js.map +1 -1
- package/Channel/components/UnreadCount.js +9 -10
- package/Channel/components/UnreadCount.js.map +1 -1
- package/Channel/context.js +14 -14
- package/Channel.js +39 -38
- package/Channel.js.map +1 -1
- package/ChannelList/components/AddChannel.js +19 -23
- package/ChannelList/components/AddChannel.js.map +1 -1
- package/ChannelList/components/ChannelListHeader.js +14 -18
- package/ChannelList/components/ChannelListHeader.js.map +1 -1
- package/ChannelList/components/ChannelListUI.js +49 -64
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +43 -49
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +19 -22
- package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
- package/ChannelList/context.js +8 -8
- package/ChannelList.js +29 -30
- package/ChannelList.js.map +1 -1
- package/{ChannelListProvider-10fe7340.js → ChannelListProvider-45cf488b.js} +77 -172
- package/ChannelListProvider-45cf488b.js.map +1 -0
- package/{ChannelProvider-4ac82784.js → ChannelProvider-9a52ed96.js} +185 -340
- package/ChannelProvider-9a52ed96.js.map +1 -0
- package/ChannelSettings/components/ChannelProfile.js +13 -21
- package/ChannelSettings/components/ChannelProfile.js.map +1 -1
- package/ChannelSettings/components/ChannelSettingsUI.js +24 -31
- package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
- package/ChannelSettings/components/EditDetailsModal.js +20 -29
- package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/ChannelSettings/components/LeaveChannel.js +18 -26
- package/ChannelSettings/components/LeaveChannel.js.map +1 -1
- package/ChannelSettings/components/ModerationPanel.js +66 -109
- package/ChannelSettings/components/ModerationPanel.js.map +1 -1
- package/ChannelSettings/components/UserListItem.js +21 -21
- package/ChannelSettings/components/UserListItem.js.map +1 -1
- package/ChannelSettings/components/UserPanel.js +16 -19
- package/ChannelSettings/components/UserPanel.js.map +1 -1
- package/ChannelSettings/context.js +22 -30
- package/ChannelSettings/context.js.map +1 -1
- package/ChannelSettings.js +17 -17
- package/ChannelSettings.js.map +1 -1
- package/CreateChannel/components/CreateChannelUI.js +17 -19
- package/CreateChannel/components/CreateChannelUI.js.map +1 -1
- package/CreateChannel/components/InviteUsers.js +35 -56
- package/CreateChannel/components/InviteUsers.js.map +1 -1
- package/CreateChannel/components/SelectChannelType.js +11 -17
- package/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/CreateChannel/context.js +4 -4
- package/CreateChannel.js +18 -18
- package/CreateChannel.js.map +1 -1
- package/{CreateChannelProvider-11045f46.js → CreateChannelProvider-8c395571.js} +9 -16
- package/{CreateChannelProvider-11045f46.js.map → CreateChannelProvider-8c395571.js.map} +1 -1
- package/CreateOpenChannel/components/CreateOpenChannelUI.js +17 -25
- package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
- package/CreateOpenChannel/context.js +7 -12
- package/CreateOpenChannel/context.js.map +1 -1
- package/CreateOpenChannel.js +14 -14
- package/CreateOpenChannel.js.map +1 -1
- package/EditUserProfile/components/EditUserProfileUI.js +11 -12
- package/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
- package/EditUserProfile/context.js +0 -2
- package/EditUserProfile/context.js.map +1 -1
- package/EditUserProfile.js +13 -14
- package/EditUserProfile.js.map +1 -1
- package/{LocalizationContext-654ae04f.js → LocalizationContext-428ea690.js} +3 -5
- package/{LocalizationContext-654ae04f.js.map → LocalizationContext-428ea690.js.map} +1 -1
- package/{MediaQueryContext-e791a4d1.js → MediaQueryContext-e4d4fb2a.js} +14 -24
- package/MediaQueryContext-e4d4fb2a.js.map +1 -0
- package/{MemberList-6f3c8288.js → MemberList-f0614320.js} +35 -68
- package/MemberList-f0614320.js.map +1 -0
- package/Message/context.js +3 -7
- package/Message/context.js.map +1 -1
- package/MessageSearch/components/MessageSearchUI.js +33 -47
- package/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/MessageSearch/context.js +44 -79
- package/MessageSearch/context.js.map +1 -1
- package/MessageSearch.js +25 -35
- package/MessageSearch.js.map +1 -1
- package/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
- package/OpenChannel/components/OpenChannelHeader.js +16 -18
- package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
- package/OpenChannel/components/OpenChannelInput.js +25 -28
- package/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessage.js +46 -70
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +44 -90
- package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/OpenChannel/components/OpenChannelUI.js +43 -47
- package/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/OpenChannel/context.js +8 -8
- package/OpenChannel.js +32 -30
- package/OpenChannel.js.map +1 -1
- package/OpenChannelList/components/OpenChannelListUI.js +31 -45
- package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
- package/OpenChannelList/components/OpenChannelPreview.js +7 -7
- package/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
- package/OpenChannelList/context.js +3 -3
- package/OpenChannelList.js +24 -23
- package/OpenChannelList.js.map +1 -1
- package/{OpenChannelListProvider-eb189b41.js → OpenChannelListProvider-1657d7da.js} +39 -66
- package/OpenChannelListProvider-1657d7da.js.map +1 -0
- package/{OpenChannelProvider-e418b369.js → OpenChannelProvider-de3ddd2b.js} +137 -293
- package/OpenChannelProvider-de3ddd2b.js.map +1 -0
- package/OpenChannelSettings/components/EditDetailsModal.js +23 -31
- package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/OpenChannelSettings/components/OpenChannelProfile.js +14 -18
- package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -27
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
- package/OpenChannelSettings/components/OperatorUI.js +58 -110
- package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/OpenChannelSettings/components/ParticipantUI.js +14 -14
- package/OpenChannelSettings/context.js +15 -26
- package/OpenChannelSettings/context.js.map +1 -1
- package/OpenChannelSettings.js +17 -17
- package/OpenChannelSettings.js.map +1 -1
- package/README.md +25 -5
- package/{RemoveMessageModal-938b400d.js → RemoveMessageModal-cced59b5.js} +5 -6
- package/{RemoveMessageModal-938b400d.js.map → RemoveMessageModal-cced59b5.js.map} +1 -1
- package/SendbirdProvider.js +260 -285
- package/SendbirdProvider.js.map +1 -1
- package/Thread/components/ParentMessageInfo.js +81 -109
- package/Thread/components/ParentMessageInfo.js.map +1 -1
- package/Thread/components/ParentMessageInfoItem.js +34 -41
- package/Thread/components/ParentMessageInfoItem.js.map +1 -1
- package/Thread/components/ThreadHeader.js +10 -11
- package/Thread/components/ThreadHeader.js.map +1 -1
- package/Thread/components/ThreadList.js +45 -53
- package/Thread/components/ThreadList.js.map +1 -1
- package/Thread/components/ThreadListItem.js +120 -148
- package/Thread/components/ThreadListItem.js.map +1 -1
- package/Thread/components/ThreadMessageInput.js +65 -83
- package/Thread/components/ThreadMessageInput.js.map +1 -1
- package/Thread/components/ThreadUI.js +75 -94
- package/Thread/components/ThreadUI.js.map +1 -1
- package/Thread/context/types.js +0 -5
- package/Thread/context/types.js.map +1 -1
- package/Thread/context.js +8 -8
- package/Thread.js +56 -55
- package/Thread.js.map +1 -1
- package/{ThreadProvider-faf3df5d.js → ThreadProvider-c33f66a4.js} +164 -282
- package/ThreadProvider-c33f66a4.js.map +1 -0
- package/{UserProfileContext-1996d4d2.js → UserProfileContext-576f1ef9.js} +1 -4
- package/{UserProfileContext-1996d4d2.js.map → UserProfileContext-576f1ef9.js.map} +1 -1
- package/{VoiceMessageInputWrapper-59373f20.js → VoiceMessageInputWrapper-8f6bfd36.js} +48 -57
- package/VoiceMessageInputWrapper-8f6bfd36.js.map +1 -0
- package/VoicePlayer/context.js +3 -3
- package/VoicePlayer/useVoicePlayer.js +14 -26
- package/VoicePlayer/useVoicePlayer.js.map +1 -1
- package/VoiceRecorder/context.js +26 -172
- package/VoiceRecorder/context.js.map +1 -1
- package/VoiceRecorder/useVoiceRecorder.js +14 -26
- package/VoiceRecorder/useVoiceRecorder.js.map +1 -1
- package/WebAudioUtils-f9237c94.js +123 -0
- package/WebAudioUtils-f9237c94.js.map +1 -0
- package/{_rollupPluginBabelHelpers-e908c50d.js → _rollupPluginBabelHelpers-6e60e429.js} +16 -10
- package/_rollupPluginBabelHelpers-6e60e429.js.map +1 -0
- package/cjs/App.js +103 -128
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +26 -27
- package/cjs/Channel/components/ChannelHeader.js.map +1 -1
- package/cjs/Channel/components/ChannelUI.js +54 -59
- package/cjs/Channel/components/ChannelUI.js.map +1 -1
- package/cjs/Channel/components/FileViewer.js +36 -37
- package/cjs/Channel/components/FileViewer.js.map +1 -1
- package/cjs/Channel/components/FrozenNotification.js +5 -5
- package/cjs/Channel/components/FrozenNotification.js.map +1 -1
- package/cjs/Channel/components/Message.js +110 -140
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +67 -87
- package/cjs/Channel/components/MessageInput.js.map +1 -1
- package/cjs/Channel/components/MessageList.js +95 -140
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +20 -21
- package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
- package/cjs/Channel/components/SuggestedMentionList.js +59 -90
- package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
- package/cjs/Channel/components/TypingIndicator.js +19 -33
- package/cjs/Channel/components/TypingIndicator.js.map +1 -1
- package/cjs/Channel/components/UnreadCount.js +9 -10
- package/cjs/Channel/components/UnreadCount.js.map +1 -1
- package/cjs/Channel/context.js +14 -14
- package/cjs/Channel.js +39 -38
- package/cjs/Channel.js.map +1 -1
- package/cjs/ChannelList/components/AddChannel.js +19 -23
- package/cjs/ChannelList/components/AddChannel.js.map +1 -1
- package/cjs/ChannelList/components/ChannelListHeader.js +14 -18
- package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -1
- package/cjs/ChannelList/components/ChannelListUI.js +49 -64
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +43 -49
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +19 -22
- package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
- package/cjs/ChannelList/context.js +8 -8
- package/cjs/ChannelList.js +29 -30
- package/cjs/ChannelList.js.map +1 -1
- package/cjs/{ChannelListProvider-d4f91fc4.js → ChannelListProvider-f74d4451.js} +77 -172
- package/cjs/ChannelListProvider-f74d4451.js.map +1 -0
- package/cjs/{ChannelProvider-af0b997c.js → ChannelProvider-fcb80591.js} +185 -340
- package/cjs/ChannelProvider-fcb80591.js.map +1 -0
- package/cjs/ChannelSettings/components/ChannelProfile.js +13 -21
- package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +24 -31
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
- package/cjs/ChannelSettings/components/EditDetailsModal.js +20 -29
- package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/cjs/ChannelSettings/components/LeaveChannel.js +18 -26
- package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
- package/cjs/ChannelSettings/components/ModerationPanel.js +66 -109
- package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
- package/cjs/ChannelSettings/components/UserListItem.js +21 -21
- package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
- package/cjs/ChannelSettings/components/UserPanel.js +16 -19
- package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
- package/cjs/ChannelSettings/context.js +22 -30
- package/cjs/ChannelSettings/context.js.map +1 -1
- package/cjs/ChannelSettings.js +17 -17
- package/cjs/ChannelSettings.js.map +1 -1
- package/cjs/CreateChannel/components/CreateChannelUI.js +17 -19
- package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
- package/cjs/CreateChannel/components/InviteUsers.js +35 -56
- package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
- package/cjs/CreateChannel/components/SelectChannelType.js +11 -17
- package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/cjs/CreateChannel/context.js +4 -4
- package/cjs/CreateChannel.js +18 -18
- package/cjs/CreateChannel.js.map +1 -1
- package/cjs/{CreateChannelProvider-c4ad28a8.js → CreateChannelProvider-1be5d0c0.js} +9 -16
- package/cjs/{CreateChannelProvider-c4ad28a8.js.map → CreateChannelProvider-1be5d0c0.js.map} +1 -1
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +17 -25
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
- package/cjs/CreateOpenChannel/context.js +7 -12
- package/cjs/CreateOpenChannel/context.js.map +1 -1
- package/cjs/CreateOpenChannel.js +14 -14
- package/cjs/CreateOpenChannel.js.map +1 -1
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +11 -12
- package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
- package/cjs/EditUserProfile/context.js +0 -2
- package/cjs/EditUserProfile/context.js.map +1 -1
- package/cjs/EditUserProfile.js +13 -14
- package/cjs/EditUserProfile.js.map +1 -1
- package/cjs/{LocalizationContext-01fceac0.js → LocalizationContext-9b216d02.js} +3 -5
- package/cjs/{LocalizationContext-01fceac0.js.map → LocalizationContext-9b216d02.js.map} +1 -1
- package/cjs/{MediaQueryContext-4978c777.js → MediaQueryContext-ea137add.js} +14 -24
- package/cjs/MediaQueryContext-ea137add.js.map +1 -0
- package/cjs/{MemberList-5c05b62f.js → MemberList-4f805690.js} +35 -68
- package/cjs/MemberList-4f805690.js.map +1 -0
- package/cjs/Message/context.js +3 -7
- package/cjs/Message/context.js.map +1 -1
- package/cjs/MessageSearch/components/MessageSearchUI.js +33 -47
- package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/cjs/MessageSearch/context.js +44 -79
- package/cjs/MessageSearch/context.js.map +1 -1
- package/cjs/MessageSearch.js +25 -35
- package/cjs/MessageSearch.js.map +1 -1
- package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelHeader.js +16 -18
- package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelInput.js +25 -28
- package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessage.js +46 -70
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +48 -94
- package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelUI.js +43 -47
- package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/cjs/OpenChannel/context.js +8 -8
- package/cjs/OpenChannel.js +32 -30
- package/cjs/OpenChannel.js.map +1 -1
- package/cjs/OpenChannelList/components/OpenChannelListUI.js +31 -45
- package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
- package/cjs/OpenChannelList/components/OpenChannelPreview.js +7 -7
- package/cjs/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
- package/cjs/OpenChannelList/context.js +3 -3
- package/cjs/OpenChannelList.js +24 -23
- package/cjs/OpenChannelList.js.map +1 -1
- package/cjs/{OpenChannelListProvider-3be4b8a5.js → OpenChannelListProvider-6883fa4a.js} +39 -66
- package/cjs/OpenChannelListProvider-6883fa4a.js.map +1 -0
- package/cjs/{OpenChannelProvider-56af9a0e.js → OpenChannelProvider-cb41bba9.js} +137 -293
- package/cjs/OpenChannelProvider-cb41bba9.js.map +1 -0
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +23 -31
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +14 -18
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -27
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OperatorUI.js +58 -110
- package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
- package/cjs/OpenChannelSettings/context.js +15 -26
- package/cjs/OpenChannelSettings/context.js.map +1 -1
- package/cjs/OpenChannelSettings.js +17 -17
- package/cjs/OpenChannelSettings.js.map +1 -1
- package/cjs/{RemoveMessageModal-31ff9edc.js → RemoveMessageModal-193a514d.js} +5 -6
- package/cjs/{RemoveMessageModal-31ff9edc.js.map → RemoveMessageModal-193a514d.js.map} +1 -1
- package/cjs/SendbirdProvider.js +264 -289
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfo.js +81 -109
- package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfoItem.js +34 -41
- package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
- package/cjs/Thread/components/ThreadHeader.js +10 -11
- package/cjs/Thread/components/ThreadHeader.js.map +1 -1
- package/cjs/Thread/components/ThreadList.js +45 -53
- package/cjs/Thread/components/ThreadList.js.map +1 -1
- package/cjs/Thread/components/ThreadListItem.js +120 -148
- package/cjs/Thread/components/ThreadListItem.js.map +1 -1
- package/cjs/Thread/components/ThreadMessageInput.js +65 -83
- package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
- package/cjs/Thread/components/ThreadUI.js +75 -94
- package/cjs/Thread/components/ThreadUI.js.map +1 -1
- package/cjs/Thread/context/types.js +0 -5
- package/cjs/Thread/context/types.js.map +1 -1
- package/cjs/Thread/context.js +8 -8
- package/cjs/Thread.js +56 -55
- package/cjs/Thread.js.map +1 -1
- package/cjs/{ThreadProvider-12784adf.js → ThreadProvider-c3623e5f.js} +164 -282
- package/cjs/ThreadProvider-c3623e5f.js.map +1 -0
- package/cjs/{UserProfileContext-c4642438.js → UserProfileContext-ad079e6d.js} +1 -4
- package/cjs/{UserProfileContext-c4642438.js.map → UserProfileContext-ad079e6d.js.map} +1 -1
- package/cjs/{VoiceMessageInputWrapper-3b5db880.js → VoiceMessageInputWrapper-1c4004d1.js} +47 -56
- package/cjs/VoiceMessageInputWrapper-1c4004d1.js.map +1 -0
- package/cjs/VoicePlayer/context.js +3 -3
- package/cjs/VoicePlayer/useVoicePlayer.js +14 -26
- package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -1
- package/cjs/VoiceRecorder/context.js +25 -171
- package/cjs/VoiceRecorder/context.js.map +1 -1
- package/cjs/VoiceRecorder/useVoiceRecorder.js +14 -26
- package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -1
- package/cjs/WebAudioUtils-33ee4d42.js +126 -0
- package/cjs/WebAudioUtils-33ee4d42.js.map +1 -0
- package/cjs/{_rollupPluginBabelHelpers-994cd1da.js → _rollupPluginBabelHelpers-440ec6e2.js} +16 -10
- package/cjs/_rollupPluginBabelHelpers-440ec6e2.js.map +1 -0
- package/cjs/{color-8f9fe57f.js → color-8b30623d.js} +1 -10
- package/cjs/color-8b30623d.js.map +1 -0
- package/cjs/{compareIds-b77b66f3.js → compareIds-3dbb4f79.js} +4 -5
- package/cjs/compareIds-3dbb4f79.js.map +1 -0
- package/cjs/{const-e03cb4c1.js → const-1e096998.js} +1 -2
- package/cjs/{const-e03cb4c1.js.map → const-1e096998.js.map} +1 -1
- package/cjs/{const-35f8be84.js → const-7bb85121.js} +1 -1
- package/cjs/{const-35f8be84.js.map → const-7bb85121.js.map} +1 -1
- package/cjs/{consts-69fc20be.js → consts-02c09d93.js} +8 -11
- package/cjs/{consts-69fc20be.js.map → consts-02c09d93.js.map} +1 -1
- package/cjs/{consts-aabb33e0.js → consts-3ebe6f94.js} +1 -1
- package/cjs/{consts-aabb33e0.js.map → consts-3ebe6f94.js.map} +1 -1
- package/cjs/{consts-b29bd4d5.js → consts-54b7b2b1.js} +1 -1
- package/cjs/{consts-b29bd4d5.js.map → consts-54b7b2b1.js.map} +1 -1
- package/cjs/{consts-956b1221.js → consts-d1f579c4.js} +1 -1
- package/cjs/{consts-956b1221.js.map → consts-d1f579c4.js.map} +1 -1
- package/cjs/{context-d9e248df.js → context-855dcb8e.js} +2 -2
- package/cjs/{context-d9e248df.js.map → context-855dcb8e.js.map} +1 -1
- package/cjs/dist/index.css +2 -1
- package/cjs/dist/index.css.map +1 -1
- package/cjs/handlers/OpenChannelHandler.js.map +1 -1
- package/cjs/handlers/SessionHandler.js.map +1 -1
- package/cjs/{index-7c5d21c4.js → index-02729806.js} +1 -1
- package/cjs/{index-7c5d21c4.js.map → index-02729806.js.map} +1 -1
- package/cjs/{index-b9fbe704.js → index-15a62d58.js} +18 -27
- package/cjs/index-15a62d58.js.map +1 -0
- package/cjs/{index-26a1e861.js → index-3d6159df.js} +2 -22
- package/cjs/{index-26a1e861.js.map → index-3d6159df.js.map} +1 -1
- package/cjs/index-5bba1fd5.js +41 -0
- package/cjs/index-5bba1fd5.js.map +1 -0
- package/cjs/{index-d41db9c1.js → index-6d24cef9.js} +30 -44
- package/cjs/index-6d24cef9.js.map +1 -0
- package/cjs/{index-aa908fcf.js → index-7f214e91.js} +13 -32
- package/cjs/index-7f214e91.js.map +1 -0
- package/cjs/{index-e3f00fd1.js → index-8a187344.js} +3 -3
- package/cjs/{index-e3f00fd1.js.map → index-8a187344.js.map} +1 -1
- package/cjs/{index-1e57cbdb.js → index-8a64de0e.js} +17 -33
- package/cjs/index-8a64de0e.js.map +1 -0
- package/cjs/{index-a7fa406f.js → index-8d42b734.js} +23 -27
- package/cjs/index-8d42b734.js.map +1 -0
- package/cjs/{index-603c2a7c.js → index-9e320445.js} +29 -33
- package/cjs/index-9e320445.js.map +1 -0
- package/cjs/{index-aeba3b06.js → index-a1141d68.js} +21 -22
- package/cjs/index-a1141d68.js.map +1 -0
- package/cjs/{index-1f02e60f.js → index-b95c8165.js} +2 -2
- package/cjs/{index-1f02e60f.js.map → index-b95c8165.js.map} +1 -1
- package/cjs/{index-72fd0294.js → index-d6f14382.js} +38 -142
- package/cjs/index-d6f14382.js.map +1 -0
- package/cjs/{index-36aaf992.js → index-d85616b2.js} +1 -1
- package/cjs/{index-36aaf992.js.map → index-d85616b2.js.map} +1 -1
- package/cjs/{index-959a4ab1.js → index-ecfe08c9.js} +2 -2
- package/cjs/{index-959a4ab1.js.map → index-ecfe08c9.js.map} +1 -1
- package/cjs/{index-c825cf5b.js → index-f8237241.js} +25 -52
- package/cjs/index-f8237241.js.map +1 -0
- package/cjs/index.js +49 -49
- package/cjs/lame.all.js.map +1 -1
- package/cjs/sendbirdSelectors.js +36 -94
- package/cjs/sendbirdSelectors.js.map +1 -1
- package/cjs/{stringSet-7330b627.js → stringSet-e52248ab.js} +2 -1
- package/cjs/stringSet-e52248ab.js.map +1 -0
- package/cjs/{tokenize-a5a20ef3.js → tokenize-c5dd544b.js} +30 -23
- package/cjs/tokenize-c5dd544b.js.map +1 -0
- package/cjs/{topics-7547922a.js → topics-09d72ec0.js} +1 -1
- package/cjs/topics-09d72ec0.js.map +1 -0
- package/cjs/{tslib.es6-ee1122c5.js → tslib.es6-957ba986.js} +2 -2
- package/cjs/tslib.es6-957ba986.js.map +1 -0
- package/cjs/{types-7daeb4a1.js → types-68cc0fcf.js} +1 -1
- package/cjs/types-68cc0fcf.js.map +1 -0
- package/cjs/ui/Accordion.js +12 -16
- package/cjs/ui/Accordion.js.map +1 -1
- package/cjs/ui/AccordionGroup.js +6 -8
- package/cjs/ui/AccordionGroup.js.map +1 -1
- package/cjs/ui/AdminMessage.js +5 -8
- package/cjs/ui/AdminMessage.js.map +1 -1
- package/cjs/ui/Avatar.js +23 -41
- package/cjs/ui/Avatar.js.map +1 -1
- package/cjs/ui/Badge.js +9 -9
- package/cjs/ui/Badge.js.map +1 -1
- package/cjs/ui/BottomSheet.js +5 -7
- package/cjs/ui/BottomSheet.js.map +1 -1
- package/cjs/ui/Button.js +13 -24
- package/cjs/ui/Button.js.map +1 -1
- package/cjs/ui/ChannelAvatar.js +9 -9
- package/cjs/ui/ChannelAvatar.js.map +1 -1
- package/cjs/ui/Checkbox.js +8 -10
- package/cjs/ui/Checkbox.js.map +1 -1
- package/cjs/ui/ConnectionStatus.js +4 -4
- package/cjs/ui/ConnectionStatus.js.map +1 -1
- package/cjs/ui/ContextMenu.js +40 -86
- package/cjs/ui/ContextMenu.js.map +1 -1
- package/cjs/ui/DateSeparator.js +9 -9
- package/cjs/ui/DateSeparator.js.map +1 -1
- package/cjs/ui/EmojiReactions.js +19 -24
- package/cjs/ui/EmojiReactions.js.map +1 -1
- package/cjs/ui/FileMessageItemBody.js +15 -16
- package/cjs/ui/FileMessageItemBody.js.map +1 -1
- package/cjs/ui/FileViewer.js +22 -23
- package/cjs/ui/FileViewer.js.map +1 -1
- package/cjs/ui/Icon.js +0 -241
- package/cjs/ui/Icon.js.map +1 -1
- package/cjs/ui/IconButton.js +19 -22
- package/cjs/ui/IconButton.js.map +1 -1
- package/cjs/ui/ImageRenderer.js +27 -30
- package/cjs/ui/ImageRenderer.js.map +1 -1
- package/cjs/ui/Input.js +8 -10
- package/cjs/ui/Input.js.map +1 -1
- package/cjs/ui/Label.js +2 -2
- package/cjs/ui/LinkLabel.js +4 -3
- package/cjs/ui/LinkLabel.js.map +1 -1
- package/cjs/ui/Loader.js +7 -7
- package/cjs/ui/Loader.js.map +1 -1
- package/cjs/ui/MentionLabel.js +16 -22
- package/cjs/ui/MentionLabel.js.map +1 -1
- package/cjs/ui/MentionUserLabel.js +7 -7
- package/cjs/ui/MentionUserLabel.js.map +1 -1
- package/cjs/ui/MessageContent.js +118 -137
- package/cjs/ui/MessageContent.js.map +1 -1
- package/cjs/ui/MessageInput.js +82 -134
- package/cjs/ui/MessageInput.js.map +1 -1
- package/cjs/ui/MessageItemMenu.js +25 -31
- package/cjs/ui/MessageItemMenu.js.map +1 -1
- package/cjs/ui/MessageItemReactionMenu.js +12 -16
- package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
- package/cjs/ui/MessageSearchFileItem.js +22 -30
- package/cjs/ui/MessageSearchFileItem.js.map +1 -1
- package/cjs/ui/MessageSearchItem.js +18 -24
- package/cjs/ui/MessageSearchItem.js.map +1 -1
- package/cjs/ui/MessageStatus.js +10 -10
- package/cjs/ui/Modal.js +33 -34
- package/cjs/ui/Modal.js.map +1 -1
- package/cjs/ui/MutedAvatarOverlay.js +3 -3
- package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
- package/cjs/ui/OGMessageItemBody.js +27 -30
- package/cjs/ui/OGMessageItemBody.js.map +1 -1
- package/cjs/ui/OpenChannelAdminMessage.js +4 -4
- package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
- package/cjs/ui/OpenChannelAvatar.js +11 -11
- package/cjs/ui/OpenChannelAvatar.js.map +1 -1
- package/cjs/ui/OpenchannelConversationHeader.js +10 -10
- package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
- package/cjs/ui/OpenchannelFileMessage.js +31 -44
- package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
- package/cjs/ui/OpenchannelOGMessage.js +39 -53
- package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
- package/cjs/ui/OpenchannelThumbnailMessage.js +36 -46
- package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/cjs/ui/OpenchannelUserMessage.js +39 -49
- package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
- package/cjs/ui/PlaceHolder.js +6 -6
- package/cjs/ui/PlaybackTime.js +8 -8
- package/cjs/ui/PlaybackTime.js.map +1 -1
- package/cjs/ui/ProgressBar.js +8 -8
- package/cjs/ui/ProgressBar.js.map +1 -1
- package/cjs/ui/QuoteMessage.js +16 -20
- package/cjs/ui/QuoteMessage.js.map +1 -1
- package/cjs/ui/QuoteMessageInput.js +8 -11
- package/cjs/ui/QuoteMessageInput.js.map +1 -1
- package/cjs/ui/ReactionBadge.js +13 -17
- package/cjs/ui/ReactionBadge.js.map +1 -1
- package/cjs/ui/ReactionButton.js +8 -8
- package/cjs/ui/ReactionButton.js.map +1 -1
- package/cjs/ui/SortByRow.js +7 -11
- package/cjs/ui/SortByRow.js.map +1 -1
- package/cjs/ui/TextButton.js +12 -12
- package/cjs/ui/TextButton.js.map +1 -1
- package/cjs/ui/TextMessageItemBody.js +23 -24
- package/cjs/ui/TextMessageItemBody.js.map +1 -1
- package/cjs/ui/ThreadReplies.js +10 -11
- package/cjs/ui/ThreadReplies.js.map +1 -1
- package/cjs/ui/ThumbnailMessageItemBody.js +17 -20
- package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/cjs/ui/Tooltip.js +6 -6
- package/cjs/ui/Tooltip.js.map +1 -1
- package/cjs/ui/TooltipWrapper.js +6 -8
- package/cjs/ui/TooltipWrapper.js.map +1 -1
- package/cjs/ui/UnknownMessageItemBody.js +13 -14
- package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
- package/cjs/ui/UserListItem.js +28 -27
- package/cjs/ui/UserListItem.js.map +1 -1
- package/cjs/ui/UserProfile.js +15 -17
- package/cjs/ui/UserProfile.js.map +1 -1
- package/cjs/ui/VoiceMessageItemBody.js +24 -32
- package/cjs/ui/VoiceMessageItemBody.js.map +1 -1
- package/cjs/ui/VoiceMessgeInput.js +8 -8
- package/cjs/ui/Word.js +19 -30
- package/cjs/ui/Word.js.map +1 -1
- package/cjs/{useLongPress-3e3b1188.js → useLongPress-640ea281.js} +13 -31
- package/cjs/useLongPress-640ea281.js.map +1 -0
- package/cjs/useSendbirdStateContext.js +1 -2
- package/cjs/useSendbirdStateContext.js.map +1 -1
- package/cjs/utils/message/getOutgoingMessageState.js +0 -7
- package/cjs/utils/message/getOutgoingMessageState.js.map +1 -1
- package/cjs/utils/message/isVoiceMessage.js +2 -2
- package/cjs/utils/message/isVoiceMessage.js.map +1 -1
- package/cjs/{utils-e4cd6a0c.js → utils-7346a672.js} +1 -5
- package/cjs/{utils-e4cd6a0c.js.map → utils-7346a672.js.map} +1 -1
- package/cjs/{utils-de779857.js → utils-93739833.js} +2 -7
- package/cjs/utils-93739833.js.map +1 -0
- package/cjs/{utils-5ca88bb6.js → utils-a82eaed9.js} +1 -1
- package/cjs/{utils-5ca88bb6.js.map → utils-a82eaed9.js.map} +1 -1
- package/cjs/{utils-5905fc1a.js → utils-dd55b959.js} +1 -4
- package/cjs/utils-dd55b959.js.map +1 -0
- package/cjs/{uuid-26b61f16.js → uuid-a8af0c03.js} +1 -3
- package/cjs/{uuid-26b61f16.js.map → uuid-a8af0c03.js.map} +1 -1
- package/cjs/withSendbird.js +5 -7
- package/cjs/withSendbird.js.map +1 -1
- package/{color-f6e2214f.js → color-2037c3b8.js} +1 -10
- package/{color-f6e2214f.js.map → color-2037c3b8.js.map} +1 -1
- package/{compareIds-d958887d.js → compareIds-b858e41a.js} +4 -5
- package/compareIds-b858e41a.js.map +1 -0
- package/{const-735bcf5b.js → const-10a01327.js} +1 -2
- package/{const-735bcf5b.js.map → const-10a01327.js.map} +1 -1
- package/{const-c7334190.js → const-85ec8faf.js} +1 -1
- package/{const-c7334190.js.map → const-85ec8faf.js.map} +1 -1
- package/{consts-ddb92249.js → consts-3fe926ac.js} +1 -1
- package/{consts-ddb92249.js.map → consts-3fe926ac.js.map} +1 -1
- package/{consts-8f50899e.js → consts-89b1e965.js} +1 -1
- package/{consts-8f50899e.js.map → consts-89b1e965.js.map} +1 -1
- package/{consts-12512664.js → consts-ef58410d.js} +1 -1
- package/{consts-12512664.js.map → consts-ef58410d.js.map} +1 -1
- package/{consts-9422accf.js → consts-f3b2a046.js} +8 -11
- package/{consts-9422accf.js.map → consts-f3b2a046.js.map} +1 -1
- package/{context-7465b898.js → context-8436b333.js} +2 -2
- package/{context-7465b898.js.map → context-8436b333.js.map} +1 -1
- package/dist/index.css +2 -1
- package/dist/index.css.map +1 -1
- package/handlers/OpenChannelHandler.js.map +1 -1
- package/handlers/SessionHandler.js.map +1 -1
- package/{index-0ecbda20.js → index-10da4b99.js} +21 -22
- package/index-10da4b99.js.map +1 -0
- package/index-23251a75.js +39 -0
- package/index-23251a75.js.map +1 -0
- package/{index-4c3eaeb7.js → index-2f83ba2a.js} +2 -2
- package/{index-4c3eaeb7.js.map → index-2f83ba2a.js.map} +1 -1
- package/index-390c0bba.js +53 -0
- package/index-390c0bba.js.map +1 -0
- package/{index-a52a0b76.js → index-4a1325ab.js} +13 -32
- package/index-4a1325ab.js.map +1 -0
- package/{index-437c0f3c.js → index-5cbdbcf9.js} +30 -44
- package/index-5cbdbcf9.js.map +1 -0
- package/{index-63e7b57b.js → index-84b28e71.js} +18 -27
- package/index-84b28e71.js.map +1 -0
- package/{index-cf141ad7.js → index-8b3cd0b6.js} +1 -1
- package/{index-cf141ad7.js.map → index-8b3cd0b6.js.map} +1 -1
- package/{index-aced8439.js → index-8d6fa44a.js} +2 -2
- package/{index-aced8439.js.map → index-8d6fa44a.js.map} +1 -1
- package/{index-8e901b57.js → index-8efe881f.js} +2 -22
- package/{index-8e901b57.js.map → index-8efe881f.js.map} +1 -1
- package/{index-6e33b2e0.js → index-b41d07df.js} +3 -3
- package/{index-6e33b2e0.js.map → index-b41d07df.js.map} +1 -1
- package/{index-12c44496.js → index-d5a761b9.js} +1 -1
- package/{index-12c44496.js.map → index-d5a761b9.js.map} +1 -1
- package/{index-9626a87e.js → index-e01f2743.js} +25 -52
- package/index-e01f2743.js.map +1 -0
- package/{index-47d179f2.js → index-e0325c33.js} +23 -27
- package/index-e0325c33.js.map +1 -0
- package/{index-7b8ea67e.js → index-f0fa0260.js} +17 -33
- package/index-f0fa0260.js.map +1 -0
- package/{index-83ae3ffe.js → index-f87c5aab.js} +38 -142
- package/index-f87c5aab.js.map +1 -0
- package/index.d.ts +1 -1
- package/index.js +49 -49
- package/lame.all.js.map +1 -1
- package/package.json +4 -2
- package/sendbirdSelectors.js +36 -94
- package/sendbirdSelectors.js.map +1 -1
- package/{stringSet-7c7d84fc.js → stringSet-fa7e0d83.js} +2 -1
- package/stringSet-fa7e0d83.js.map +1 -0
- package/{tokenize-8f238f49.js → tokenize-7bcc2072.js} +30 -24
- package/tokenize-7bcc2072.js.map +1 -0
- package/{topics-4697c2b3.js → topics-2647294d.js} +1 -1
- package/topics-2647294d.js.map +1 -0
- package/{tslib.es6-209c9f08.js → tslib.es6-debac48c.js} +2 -2
- package/tslib.es6-debac48c.js.map +1 -0
- package/{types-41ea68c8.js → types-abb04b7a.js} +1 -1
- package/types-abb04b7a.js.map +1 -0
- package/ui/Accordion.js +12 -16
- package/ui/Accordion.js.map +1 -1
- package/ui/AccordionGroup.js +6 -8
- package/ui/AccordionGroup.js.map +1 -1
- package/ui/AdminMessage.js +5 -8
- package/ui/AdminMessage.js.map +1 -1
- package/ui/Avatar.js +23 -41
- package/ui/Avatar.js.map +1 -1
- package/ui/Badge.js +9 -9
- package/ui/Badge.js.map +1 -1
- package/ui/BottomSheet.js +5 -7
- package/ui/BottomSheet.js.map +1 -1
- package/ui/Button.js +13 -24
- package/ui/Button.js.map +1 -1
- package/ui/ChannelAvatar.js +9 -9
- package/ui/ChannelAvatar.js.map +1 -1
- package/ui/Checkbox.js +8 -10
- package/ui/Checkbox.js.map +1 -1
- package/ui/ConnectionStatus.js +4 -4
- package/ui/ConnectionStatus.js.map +1 -1
- package/ui/ContextMenu.js +40 -86
- package/ui/ContextMenu.js.map +1 -1
- package/ui/DateSeparator.js +9 -9
- package/ui/DateSeparator.js.map +1 -1
- package/ui/EmojiReactions.js +19 -24
- package/ui/EmojiReactions.js.map +1 -1
- package/ui/FileMessageItemBody.js +15 -16
- package/ui/FileMessageItemBody.js.map +1 -1
- package/ui/FileViewer.js +22 -23
- package/ui/FileViewer.js.map +1 -1
- package/ui/Icon.js +0 -241
- package/ui/Icon.js.map +1 -1
- package/ui/IconButton.js +19 -22
- package/ui/IconButton.js.map +1 -1
- package/ui/ImageRenderer.js +27 -30
- package/ui/ImageRenderer.js.map +1 -1
- package/ui/Input.js +8 -10
- package/ui/Input.js.map +1 -1
- package/ui/Label.js +2 -2
- package/ui/LinkLabel.js +4 -3
- package/ui/LinkLabel.js.map +1 -1
- package/ui/Loader.js +7 -7
- package/ui/Loader.js.map +1 -1
- package/ui/MentionLabel.js +16 -22
- package/ui/MentionLabel.js.map +1 -1
- package/ui/MentionUserLabel.js +7 -7
- package/ui/MentionUserLabel.js.map +1 -1
- package/ui/MessageContent.js +118 -137
- package/ui/MessageContent.js.map +1 -1
- package/ui/MessageInput.js +82 -134
- package/ui/MessageInput.js.map +1 -1
- package/ui/MessageItemMenu.js +25 -31
- package/ui/MessageItemMenu.js.map +1 -1
- package/ui/MessageItemReactionMenu.js +12 -16
- package/ui/MessageItemReactionMenu.js.map +1 -1
- package/ui/MessageSearchFileItem.js +22 -30
- package/ui/MessageSearchFileItem.js.map +1 -1
- package/ui/MessageSearchItem.js +18 -24
- package/ui/MessageSearchItem.js.map +1 -1
- package/ui/MessageStatus.js +10 -10
- package/ui/Modal.js +33 -34
- package/ui/Modal.js.map +1 -1
- package/ui/MutedAvatarOverlay.js +3 -3
- package/ui/MutedAvatarOverlay.js.map +1 -1
- package/ui/OGMessageItemBody.js +27 -30
- package/ui/OGMessageItemBody.js.map +1 -1
- package/ui/OpenChannelAdminMessage.js +4 -4
- package/ui/OpenChannelAdminMessage.js.map +1 -1
- package/ui/OpenChannelAvatar.js +11 -11
- package/ui/OpenChannelAvatar.js.map +1 -1
- package/ui/OpenchannelConversationHeader.js +10 -10
- package/ui/OpenchannelConversationHeader.js.map +1 -1
- package/ui/OpenchannelFileMessage.js +31 -44
- package/ui/OpenchannelFileMessage.js.map +1 -1
- package/ui/OpenchannelOGMessage.js +39 -53
- package/ui/OpenchannelOGMessage.js.map +1 -1
- package/ui/OpenchannelThumbnailMessage.js +36 -46
- package/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/ui/OpenchannelUserMessage.js +39 -49
- package/ui/OpenchannelUserMessage.js.map +1 -1
- package/ui/PlaceHolder.js +6 -6
- package/ui/PlaybackTime.js +8 -8
- package/ui/PlaybackTime.js.map +1 -1
- package/ui/ProgressBar.js +8 -8
- package/ui/ProgressBar.js.map +1 -1
- package/ui/QuoteMessage.js +16 -20
- package/ui/QuoteMessage.js.map +1 -1
- package/ui/QuoteMessageInput.js +8 -11
- package/ui/QuoteMessageInput.js.map +1 -1
- package/ui/ReactionBadge.js +13 -17
- package/ui/ReactionBadge.js.map +1 -1
- package/ui/ReactionButton.js +8 -8
- package/ui/ReactionButton.js.map +1 -1
- package/ui/SortByRow.js +7 -11
- package/ui/SortByRow.js.map +1 -1
- package/ui/TextButton.js +12 -12
- package/ui/TextButton.js.map +1 -1
- package/ui/TextMessageItemBody.js +23 -24
- package/ui/TextMessageItemBody.js.map +1 -1
- package/ui/ThreadReplies.js +10 -11
- package/ui/ThreadReplies.js.map +1 -1
- package/ui/ThumbnailMessageItemBody.js +17 -20
- package/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/ui/Tooltip.js +6 -6
- package/ui/Tooltip.js.map +1 -1
- package/ui/TooltipWrapper.js +6 -8
- package/ui/TooltipWrapper.js.map +1 -1
- package/ui/UnknownMessageItemBody.js +13 -14
- package/ui/UnknownMessageItemBody.js.map +1 -1
- package/ui/UserListItem.js +28 -27
- package/ui/UserListItem.js.map +1 -1
- package/ui/UserProfile.js +15 -17
- package/ui/UserProfile.js.map +1 -1
- package/ui/VoiceMessageItemBody.js +24 -32
- package/ui/VoiceMessageItemBody.js.map +1 -1
- package/ui/VoiceMessgeInput.js +8 -8
- package/ui/Word.js +19 -30
- package/ui/Word.js.map +1 -1
- package/{useLongPress-e2570976.js → useLongPress-42dc7c5d.js} +13 -31
- package/useLongPress-42dc7c5d.js.map +1 -0
- package/useSendbirdStateContext.js +1 -2
- package/useSendbirdStateContext.js.map +1 -1
- package/utils/message/getOutgoingMessageState.js +0 -7
- package/utils/message/getOutgoingMessageState.js.map +1 -1
- package/utils/message/isVoiceMessage.js +2 -2
- package/utils/message/isVoiceMessage.js.map +1 -1
- package/{utils-4942106c.js → utils-1905e84d.js} +2 -7
- package/utils-1905e84d.js.map +1 -0
- package/{utils-3d03001e.js → utils-19ce54ee.js} +1 -5
- package/{utils-3d03001e.js.map → utils-19ce54ee.js.map} +1 -1
- package/{utils-04bd857d.js → utils-87be98af.js} +1 -1
- package/{utils-04bd857d.js.map → utils-87be98af.js.map} +1 -1
- package/{utils-12a3467f.js → utils-b568cd44.js} +1 -4
- package/utils-b568cd44.js.map +1 -0
- package/{uuid-31c6ecb2.js → uuid-e979d613.js} +1 -3
- package/{uuid-31c6ecb2.js.map → uuid-e979d613.js.map} +1 -1
- package/withSendbird.js +5 -7
- package/withSendbird.js.map +1 -1
- package/ChannelListProvider-10fe7340.js.map +0 -1
- package/ChannelProvider-4ac82784.js.map +0 -1
- package/MediaQueryContext-e791a4d1.js.map +0 -1
- package/MemberList-6f3c8288.js.map +0 -1
- package/OpenChannelListProvider-eb189b41.js.map +0 -1
- package/OpenChannelProvider-e418b369.js.map +0 -1
- package/ThreadProvider-faf3df5d.js.map +0 -1
- package/VoiceMessageInputWrapper-59373f20.js.map +0 -1
- package/_rollupPluginBabelHelpers-e908c50d.js.map +0 -1
- package/actionTypes-ee7f96a9.js +0 -6
- package/actionTypes-ee7f96a9.js.map +0 -1
- package/cjs/ChannelListProvider-d4f91fc4.js.map +0 -1
- package/cjs/ChannelProvider-af0b997c.js.map +0 -1
- package/cjs/MediaQueryContext-4978c777.js.map +0 -1
- package/cjs/MemberList-5c05b62f.js.map +0 -1
- package/cjs/OpenChannelListProvider-3be4b8a5.js.map +0 -1
- package/cjs/OpenChannelProvider-56af9a0e.js.map +0 -1
- package/cjs/ThreadProvider-12784adf.js.map +0 -1
- package/cjs/VoiceMessageInputWrapper-3b5db880.js.map +0 -1
- package/cjs/_rollupPluginBabelHelpers-994cd1da.js.map +0 -1
- package/cjs/actionTypes-38d53eaf.js +0 -10
- package/cjs/actionTypes-38d53eaf.js.map +0 -1
- package/cjs/color-8f9fe57f.js.map +0 -1
- package/cjs/compareIds-b77b66f3.js.map +0 -1
- package/cjs/index-1e57cbdb.js.map +0 -1
- package/cjs/index-603c2a7c.js.map +0 -1
- package/cjs/index-72fd0294.js.map +0 -1
- package/cjs/index-a7fa406f.js.map +0 -1
- package/cjs/index-aa908fcf.js.map +0 -1
- package/cjs/index-aeba3b06.js.map +0 -1
- package/cjs/index-b9fbe704.js.map +0 -1
- package/cjs/index-c825cf5b.js.map +0 -1
- package/cjs/index-d41db9c1.js.map +0 -1
- package/cjs/stringSet-7330b627.js.map +0 -1
- package/cjs/tokenize-a5a20ef3.js.map +0 -1
- package/cjs/topics-7547922a.js.map +0 -1
- package/cjs/tslib.es6-ee1122c5.js.map +0 -1
- package/cjs/types-7daeb4a1.js.map +0 -1
- package/cjs/useLongPress-3e3b1188.js.map +0 -1
- package/cjs/utils-5905fc1a.js.map +0 -1
- package/cjs/utils-de779857.js.map +0 -1
- package/compareIds-d958887d.js.map +0 -1
- package/index-0ecbda20.js.map +0 -1
- package/index-437c0f3c.js.map +0 -1
- package/index-47d179f2.js.map +0 -1
- package/index-63e7b57b.js.map +0 -1
- package/index-7b8ea67e.js.map +0 -1
- package/index-83ae3ffe.js.map +0 -1
- package/index-9626a87e.js.map +0 -1
- package/index-a52a0b76.js.map +0 -1
- package/index-ace292c2.js +0 -57
- package/index-ace292c2.js.map +0 -1
- package/stringSet-7c7d84fc.js.map +0 -1
- package/tokenize-8f238f49.js.map +0 -1
- package/topics-4697c2b3.js.map +0 -1
- package/tslib.es6-209c9f08.js.map +0 -1
- package/types-41ea68c8.js.map +0 -1
- package/useLongPress-e2570976.js.map +0 -1
- package/utils-12a3467f.js.map +0 -1
- package/utils-4942106c.js.map +0 -1
package/SendbirdProvider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SendbirdProvider.js","sources":["../src/lib/dux/sdk/actionTypes.js","../src/lib/dux/sdk/thunks.js","../src/lib/hooks/useTheme.ts","../src/lib/dux/sdk/initialState.js","../src/lib/dux/sdk/reducers.js","../src/lib/dux/user/initialState.js","../src/lib/dux/user/reducers.js","../src/lib/hooks/useOnlineStatus.js","../src/lib/Logger/index.ts","../src/lib/pubSub/index.ts","../src/hooks/useAppendDomNode.js","../src/lib/VoiceMessageProvider.tsx","../src/lib/hooks/useMarkAsReadScheduler.ts","../src/lib/Sendbird.tsx"],"sourcesContent":["export const INIT_SDK = 'INIT_SDK';\nexport const SET_SDK_LOADING = 'SET_SDK_LOADING';\nexport const RESET_SDK = 'RESET_SDK';\nexport const SDK_ERROR = 'SDK_ERROR';\n","import SendbirdChat from '@sendbird/chat';\nimport { OpenChannelModule } from '@sendbird/chat/openChannel';\nimport { GroupChannelModule } from '@sendbird/chat/groupChannel';\n\nimport {\n INIT_SDK,\n SET_SDK_LOADING,\n RESET_SDK,\n SDK_ERROR,\n} from './actionTypes';\nimport { INIT_USER, UPDATE_USER_INFO, RESET_USER } from '../user/actionTypes';\nimport { isTextuallyNull } from '../../../utils';\n\nconst APP_VERSION_STRING = '__uikit_app_version__';\nconst IS_ROLLUP = '__is_rollup__';\nconst IS_ROLLUP_REPLACE = '__is_rollup_replace__';\n\nexport const disconnectSdk = ({\n sdkDispatcher,\n userDispatcher,\n sdk,\n onDisconnect,\n}) => {\n sdkDispatcher({ type: SET_SDK_LOADING, payload: true });\n if (sdk && sdk.disconnect) {\n sdk.disconnect()\n .then(() => {\n sdkDispatcher({ type: RESET_SDK });\n userDispatcher({ type: RESET_USER });\n })\n .finally(() => {\n onDisconnect();\n });\n } else {\n onDisconnect();\n }\n};\n\nexport const handleConnection = ({\n userId,\n appId,\n nickname,\n profileUrl,\n accessToken,\n configureSession,\n customApiHost,\n customWebSocketHost,\n sdk,\n logger,\n}, dispatchers) => {\n const {\n sdkDispatcher,\n userDispatcher,\n } = dispatchers;\n disconnectSdk({\n sdkDispatcher,\n userDispatcher,\n sdk,\n logger,\n onDisconnect: () => {\n logger.info('Setup connection');\n let sessionHandler = null;\n sdkDispatcher({ type: SET_SDK_LOADING, payload: true });\n if (userId && appId) {\n const params = {\n appId,\n modules: [\n new GroupChannelModule(),\n new OpenChannelModule(),\n ],\n };\n if (customApiHost) {\n params.customApiHost = customApiHost;\n }\n if (customWebSocketHost) {\n params.customWebSocketHost = customWebSocketHost;\n }\n const newSdk = SendbirdChat.init(params);\n if (configureSession && typeof configureSession === 'function') {\n sessionHandler = configureSession(newSdk);\n newSdk.setSessionHandler(sessionHandler);\n }\n // to check if code is released version from rollup and *not from storybook*\n // see rollup config file\n if (IS_ROLLUP === IS_ROLLUP_REPLACE) {\n newSdk.addExtension('sb_uikit', APP_VERSION_STRING);\n }\n const connectCbSucess = (user) => {\n sdkDispatcher({ type: INIT_SDK, payload: newSdk });\n userDispatcher({ type: INIT_USER, payload: user });\n // use nickname/profileUrl if provided\n // or set userID as nickname\n if ((nickname !== user.nickname || profileUrl !== user.profileUrl)\n && !(isTextuallyNull(nickname) && isTextuallyNull(profileUrl))\n ) {\n newSdk.updateCurrentUserInfo({\n nickname: nickname || user.nickname,\n profileUrl: profileUrl || user.profileUrl,\n }).then((namedUser) => {\n userDispatcher({ type: UPDATE_USER_INFO, payload: namedUser });\n });\n }\n };\n\n const connectCbError = (e) => {\n logger.error('Connection failed', `${e}`);\n sdkDispatcher({ type: RESET_SDK });\n sdkDispatcher({ type: RESET_USER });\n sdkDispatcher({ type: SDK_ERROR });\n };\n\n if (accessToken) {\n newSdk.connect(userId, accessToken)\n .then((res) => connectCbSucess(res))\n .catch((err) => connectCbError(err));\n } else {\n newSdk.connect(userId)\n .then((res) => connectCbSucess(res))\n .catch((err) => connectCbError(err));\n }\n } else {\n sdkDispatcher({ type: SDK_ERROR });\n logger.warning('Connection failed', 'UserId or appId missing');\n }\n },\n });\n};\n","import { useLayoutEffect } from 'react';\nimport cssVars from 'css-vars-ponyfill';\n\nconst isEmpty = (obj) => {\n if (obj === null || obj === undefined) {\n return true;\n }\n\n for (const prop in obj) {\n if (obj.hasOwnProperty(prop)) {\n return false;\n }\n }\n return JSON.stringify(obj) === JSON.stringify({});\n}\n\nconst useTheme = (overrides: Record<string, string>): void => {\n useLayoutEffect(() => {\n if (!isEmpty(overrides)) {\n cssVars({\n variables: {\n ...{\n '--sendbird-dark-primary-500': '#4d2aa6',\n '--sendbird-dark-primary-400': '#6440C4',\n '--sendbird-dark-primary-300': '#7B53EF',\n '--sendbird-dark-primary-200': '#9E8CF5',\n '--sendbird-dark-primary-100': '#E2DFFF',\n\n '--sendbird-dark-secondary-500': '#007A7A',\n '--sendbird-dark-secondary-400': '#189A8D',\n '--sendbird-dark-secondary-300': '#2EBA9F',\n '--sendbird-dark-secondary-200': '#6FD6BE',\n '--sendbird-dark-secondary-100': '#AEF2DC',\n\n '--sendbird-dark-information-100': '#b2d9ff',\n\n '--sendbird-dark-error-500': '#A30E2D',\n '--sendbird-dark-error-400': '#C11F41',\n '--sendbird-dark-error-300': '#E53157',\n '--sendbird-dark-error-200': '#FF6183',\n '--sendbird-dark-error-100': '#FFABBD',\n\n '--sendbird-dark-background-700': '#000000',\n '--sendbird-dark-background-600': '#161616',\n '--sendbird-dark-background-500': '#2C2C2C',\n '--sendbird-dark-background-400': '#393939',\n '--sendbird-dark-background-300': '#A8A8A8',\n '--sendbird-dark-background-200': '#D9D9D9',\n '--sendbird-dark-background-100': '#F0F0F0',\n '--sendbird-dark-background-50': '#FFFFFF',\n\n '--sendbird-dark-overlay': 'rgba(0, 0, 0, 0.32)',\n\n '--sendbird-dark-onlight-01': 'rgba(0, 0, 0, 0.88)',\n '--sendbird-dark-onlight-02': 'rgba(0, 0, 0, 0.50)',\n '--sendbird-dark-onlight-03': 'rgba(0, 0, 0, 0.38)',\n '--sendbird-dark-onlight-04': 'rgba(0, 0, 0, 0.12)',\n\n '--sendbird-dark-ondark-01': 'rgba(255, 255, 255, 0.88)',\n '--sendbird-dark-ondark-02': 'rgba(255, 255, 255, 0.50)',\n '--sendbird-dark-ondark-03': 'rgba(255, 255, 255, 0.38)',\n '--sendbird-dark-ondark-04': 'rgba(255, 255, 255, 0.12)',\n\n '--sendbird-dark-shadow-01': '0 1px 5px 0 rgba(33, 34, 66, 0.04), 0 0 3px 0 rgba(0, 0, 0, 0.08), 0 2px 1px 0 rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-02': '0 3px 5px -3px rgba(33, 34, 66, 0.04), 0 3px 14px 2px rgba(0, 0, 0, 0.08), 0 8px 10px 1px rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-03': '0 6px 10px -5px rgba(0, 0, 0, 0.04), 0 6px 30px 5px rgba(0, 0, 0, 0.08), 0 16px 24px 2px rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-04': '0 9px 15px -7px rgba(0, 0, 0, 0.04), 0 9px 46px 8px rgba(0, 0, 0, 0.08), 0 24px 38px 3px rgba(0, 0, 0, 0.12)',\n\n '--sendbird-dark-shadow-message-input': '0 1px 5px 0 rgba(33, 34, 66, 0.12), 0 0 1px 0 rgba(33, 34, 66, 0.16), 0 2px 1px 0 rgba(33, 34, 66, 0.08), 0 1px 5px 0 rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-primary-500': '#4d2aa6',\n '--sendbird-light-primary-400': '#6440C4',\n '--sendbird-light-primary-300': '#7B53EF',\n '--sendbird-light-primary-200': '#9E8CF5',\n '--sendbird-light-primary-100': '#E2DFFF',\n\n '--sendbird-light-secondary-500': '#007A7A',\n '--sendbird-light-secondary-400': '#189A8D',\n '--sendbird-light-secondary-300': '#2EBA9F',\n '--sendbird-light-secondary-200': '#6FD6BE',\n '--sendbird-light-secondary-100': '#AEF2DC',\n\n '--sendbird-light-information-100': '#b2d9ff',\n\n '--sendbird-light-error-500': '#A30E2D',\n '--sendbird-light-error-400': '#C11F41',\n '--sendbird-light-error-300': '#E53157',\n '--sendbird-light-error-200': '#FF6183',\n '--sendbird-light-error-100': '#FFABBD',\n\n '--sendbird-light-background-700': '#000000',\n '--sendbird-light-background-600': '#161616',\n '--sendbird-light-background-500': '#2C2C2C',\n '--sendbird-light-background-400': '#393939',\n '--sendbird-light-background-300': '#A8A8A8',\n '--sendbird-light-background-200': '#D9D9D9',\n '--sendbird-light-background-100': '#F0F0F0',\n '--sendbird-light-background-50': ' #FFFFFF',\n\n '--sendbird-light-overlay': 'rgba(0, 0, 0, 0.32)',\n\n '--sendbird-light-onlight-01': 'rgba(0, 0, 0, 0.88)',\n '--sendbird-light-onlight-02': 'rgba(0, 0, 0, 0.50)',\n '--sendbird-light-onlight-03': 'rgba(0, 0, 0, 0.38)',\n '--sendbird-light-onlight-04': 'rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-ondark-01': 'rgba(255, 255, 255, 0.88)',\n '--sendbird-light-ondark-02': 'rgba(255, 255, 255, 0.50)',\n '--sendbird-light-ondark-03': 'rgba(255, 255, 255, 0.38)',\n '--sendbird-light-ondark-04': 'rgba(255, 255, 255, 0.12)',\n\n '--sendbird-light-shadow-01': '0 1px 5px 0 rgba(33, 34, 66, 0.04), 0 0 3px 0 rgba(0, 0, 0, 0.08), 0 2px 1px 0 rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-02': '0 3px 5px -3px rgba(33, 34, 66, 0.04), 0 3px 14px 2px rgba(0, 0, 0, 0.08), 0 8px 10px 1px rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-03': '0 6px 10px -5px rgba(0, 0, 0, 0.04), 0 6px 30px 5px rgba(0, 0, 0, 0.08), 0 16px 24px 2px rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-04': '0 9px 15px -7px rgba(0, 0, 0, 0.04), 0 9px 46px 8px rgba(0, 0, 0, 0.08), 0 24px 38px 3px rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-shadow-message-input': '0 1px 5px 0 rgba(33, 34, 66, 0.12), 0 0 1px 0 rgba(33, 34, 66, 0.16), 0 2px 1px 0 rgba(33, 34, 66, 0.08), 0 1px 5px 0 rgba(0, 0, 0, 0.12)',\n },\n ...overrides,\n },\n });\n }\n }, [overrides]);\n};\n\nexport default useTheme;\n","export default {\n initialized: false,\n loading: false,\n sdk: {},\n error: false,\n};\n","import * as sdkActions from './actionTypes';\nimport initialState from './initialState';\n\nexport default function reducer(state, action) {\n switch (action.type) {\n case sdkActions.SET_SDK_LOADING:\n return {\n ...state,\n initialized: false,\n loading: action.payload,\n };\n case sdkActions.SDK_ERROR:\n return {\n ...state,\n initialized: false,\n loading: false,\n error: true,\n };\n case sdkActions.INIT_SDK:\n return {\n sdk: action.payload,\n initialized: true,\n loading: false,\n error: false,\n };\n case sdkActions.RESET_SDK:\n return initialState;\n default:\n return state;\n }\n}\n","export default {\n initialized: false,\n loading: false,\n user: {},\n};\n","import * as actions from './actionTypes';\nimport initialState from './initialState';\n\nexport default function reducer(state, action) {\n switch (action.type) {\n case actions.INIT_USER:\n return {\n initialized: true,\n loading: false,\n user: action.payload,\n };\n case actions.RESET_USER:\n return initialState;\n case actions.UPDATE_USER_INFO:\n return {\n ...state,\n user: action.payload,\n };\n default:\n return state;\n }\n}\n","import { ConnectionHandler } from '@sendbird/chat';\nimport { useState, useEffect } from 'react';\n\nimport { uuidv4 } from '../../utils/uuid';\n\nfunction useConnectionStatus(sdk, logger) {\n const [isOnline, setIsOnline] = useState(true);\n\n useEffect(() => {\n const uniqueHandlerId = uuidv4();\n try {\n logger.warning('sdk changed', uniqueHandlerId);\n const handler = new ConnectionHandler();\n handler.onDisconnected = () => {\n logger.warning('onDisconnected', { isOnline });\n };\n handler.onReconnectStarted = () => {\n setIsOnline(false);\n logger.warning('onReconnectStarted', { isOnline });\n };\n handler.onReconnectSucceeded = () => {\n setIsOnline(true);\n logger.warning('onReconnectSucceeded', { isOnline });\n };\n handler.onReconnectFailed = () => {\n sdk.reconnect();\n logger.warning('onReconnectFailed');\n };\n logger.info('Added ConnectionHandler', uniqueHandlerId);\n // workaround -> addConnectionHandler invalidates session handler\n // provided through configureSession\n if (sdk?.addConnectionHandler) {\n sdk.addConnectionHandler(uniqueHandlerId, handler);\n }\n } catch {\n //\n }\n return () => {\n try {\n sdk.removeConnectionHandler(uniqueHandlerId);\n logger.info('Removed ConnectionHandler', uniqueHandlerId);\n } catch {\n //\n }\n };\n }, [sdk]);\n\n useEffect(() => {\n const tryReconnect = () => {\n try {\n logger.warning('Try reconnecting SDK');\n if (sdk.connectionState !== 'OPEN') { // connection is not broken yet\n sdk.reconnect();\n }\n } catch {\n //\n }\n };\n // addEventListener version\n window.addEventListener('online', tryReconnect);\n return () => {\n window.removeEventListener('online', tryReconnect);\n };\n }, [sdk]);\n\n // add offline-class to body\n useEffect(() => {\n const body = document.querySelector('body');\n if (!isOnline) {\n try {\n body.classList.add('sendbird__offline');\n logger.info('Added class sendbird__offline to body');\n } catch (e) {\n //\n }\n } else {\n try {\n body.classList.remove('sendbird__offline');\n logger.info('Removed class sendbird__offline from body');\n } catch (e) {\n //\n }\n }\n }, [isOnline]);\n\n return isOnline;\n}\n\nexport default useConnectionStatus;\n","// Logger, pretty much explains it\n// in SendbirdProvider\n\nimport { ObjectValues } from \"../../utils/typeHelpers/objectValues\";\n\n// const [logger, setLogger] = useState(LoggerFactory(logLevel));\nexport const LOG_LEVELS = {\n DEBUG: 'debug',\n WARNING: 'warning',\n ERROR: 'error',\n INFO: 'info',\n ALL: 'all',\n} as const;\nexport type LogLevel = ObjectValues<typeof LOG_LEVELS>;\n\nconst colorLog = (level: LogLevel): string => {\n switch (level) {\n case LOG_LEVELS.WARNING:\n return ('color: Orange');\n case LOG_LEVELS.ERROR:\n return ('color: Red');\n default:\n return ('color: Gray');\n }\n};\n\ninterface PrintLogProps {\n level: LogLevel;\n title: string;\n description?: string;\n}\nexport const printLog = ({\n level,\n title,\n description = '',\n}: PrintLogProps): void => {\n // eslint-disable-next-line no-console\n console.log(\n `%c SendbirdUIKit | ${level} | ${new Date().toISOString()} | ${title} ${description && '|'}`, colorLog(level),\n description,\n );\n};\n\ntype LoggerLogType = (title?: string, description?: string) => void;\ninterface LoggerInterface {\n info: LoggerLogType;\n error: LoggerLogType;\n warning: LoggerLogType;\n}\n\nconst noop = () => {/* noop */};\nexport const getDefaultLogger = (): LoggerInterface => ({\n info: noop,\n error: noop,\n warning: noop,\n});\n\nexport const LoggerFactory = (\n lvl: LogLevel,\n customInterface?: () => void,\n): LoggerInterface => {\n const logInterface = customInterface || printLog;\n const lvlArray: Array<LogLevel> = Array.isArray(lvl) ? lvl : [lvl];\n\n const applyLog = (lgLvl: LogLevel) => (title?: string, description?: string) => logInterface({\n level: lgLvl,\n title,\n description,\n });\n\n const logger = lvlArray.reduce((accumulator, currentLvl) => {\n if (currentLvl === LOG_LEVELS.DEBUG || currentLvl === LOG_LEVELS.ALL) {\n return ({\n ...accumulator,\n info: applyLog(LOG_LEVELS.INFO),\n error: applyLog(LOG_LEVELS.ERROR),\n warning: applyLog(LOG_LEVELS.WARNING),\n });\n }\n\n if (currentLvl === LOG_LEVELS.INFO) {\n return ({\n ...accumulator,\n info: applyLog(LOG_LEVELS.INFO),\n });\n }\n\n if (currentLvl === LOG_LEVELS.ERROR) {\n return ({\n ...accumulator,\n error: applyLog(LOG_LEVELS.ERROR),\n });\n }\n\n if (currentLvl === LOG_LEVELS.WARNING) {\n return ({\n ...accumulator,\n warning: applyLog(LOG_LEVELS.WARNING),\n });\n }\n\n return { ...accumulator };\n }, getDefaultLogger());\n return logger;\n};\n\n// TODO: Make this to hook, useLogger\n","// https://davidwalsh.name/pubsub-javascript\n// we use pubsub to sync events between multiple components(example - ChannelList, Channel)\n// for example, if customer sends a message from their custom component\n// without pubsub,we would not be able to listen to it\n// in our ChannelList or Conversation\n\ninterface PubSubTypes {\n __getTopics: () => Record<string, string>;\n subscribe: (topic: string, listener: unknown) => { remove: () => void };\n publish: (topic: string, info: unknown) => void;\n}\n\nconst pubSubFactory = (): PubSubTypes => {\n const topics = {};\n const hOP = topics.hasOwnProperty;\n\n return {\n __getTopics: () => topics,\n subscribe: (topic, listener) => {\n // Create the topic's object if not yet created\n if (!hOP.call(topics, topic)) { topics[topic] = []; }\n\n // Add the listener to queue\n const index = topics[topic].push(listener) - 1;\n\n // Provide handle back for removal of topic\n return {\n remove: () => {\n delete topics[topic][index];\n },\n };\n },\n publish: (topic, info) => {\n // If the topic doesn't exist, or there's no listeners in queue, just leave\n if (!hOP.call(topics, topic)) { return; }\n\n // Cycle through topics queue, fire!\n topics[topic].forEach((item) => {\n item(info !== undefined ? info : {});\n });\n },\n };\n};\n\nexport default pubSubFactory;\n","import { useEffect } from 'react';\n\nfunction useAppendDomNode(ids = [], rootSelector) {\n useEffect(() => {\n const root = document.querySelector(rootSelector);\n ids.forEach((id) => {\n const elem = document.createElement('div');\n elem.setAttribute('id', id);\n root.appendChild(elem);\n });\n return () => {\n ids.forEach((id) => {\n const target = document.getElementById(id);\n if (target) {\n root.removeChild(target);\n }\n });\n };\n }, []);\n}\n\nexport default useAppendDomNode;\n","import React from 'react';\nimport { VoicePlayerProvider } from '../hooks/VoicePlayer';\nimport { VoiceRecorderProvider } from '../hooks/VoiceRecorder';\n\nexport interface VoiceMessageProviderProps {\n children: React.ReactElement;\n isVoiceMessageEnabled?: boolean;\n}\n\nexport const VoiceMessageProvider = ({\n children,\n isVoiceMessageEnabled = true,\n}: VoiceMessageProviderProps): React.ReactElement => {\n if (!isVoiceMessageEnabled) {\n return (\n <VoicePlayerProvider>\n {children}\n </VoicePlayerProvider>\n );\n }\n return (\n <VoiceRecorderProvider>\n <VoicePlayerProvider>\n {children}\n </VoicePlayerProvider>\n </VoiceRecorderProvider>\n );\n};\n\nexport default VoiceMessageProvider;\n","import { GroupChannel } from \"@sendbird/chat/groupChannel\";\nimport { useEffect, useMemo } from \"react\";\nimport { Logger } from \"../SendbirdState\";\n\nexport type MarkAsReadSchedulerType = {\n push: (channel: GroupChannel) => void;\n clear: () => void;\n getQueue: () => GroupChannel[];\n};\n\nconst TIMEOUT = 5000;\n\nexport const schedulerFactory = (logger: Logger, timeout?: number): MarkAsReadSchedulerType => {\n let queue: GroupChannel[] = [];\n let interval = null;\n const push = (channel: GroupChannel) => {\n const channelPresent = queue.find((c) => c.url === channel.url);\n if (!channelPresent) {\n queue.push(channel)\n } else {\n logger.info('Channel: Mark as read already in queue', channel);\n }\n // start the interval if it's not already running\n if (interval) {\n return;\n }\n interval = setInterval(() => {\n if (queue.length === 0) {\n clearInterval(interval);\n interval = null;\n return;\n }\n const channel = queue.shift();\n if (channel) {\n try {\n channel.markAsRead();\n } catch (error) {\n logger.error('Channel: Mark as read failed', error);\n }\n }\n }, (timeout || TIMEOUT));\n };\n const clear = () => {\n queue = [];\n if (interval) {\n clearInterval(interval);\n interval = null;\n }\n };\n return {\n push,\n clear,\n getQueue: () => queue,\n };\n}\n\ninterface DynamicParams {\n isConnected: boolean;\n}\n\ninterface StaticParams {\n logger: Logger;\n}\n\nexport function useMarkAsReadScheduler({\n isConnected,\n}: DynamicParams, {\n logger,\n}: StaticParams): MarkAsReadSchedulerType {\n const markAsReadScheduler = useMemo(() => schedulerFactory(logger), []);\n\n useEffect(() => {\n // for simplicity, we clear the queue when the connection is lost\n if (!isConnected) {\n markAsReadScheduler.clear()\n return;\n }\n }, [isConnected]);\n\n return markAsReadScheduler;\n}\n","import './index.scss';\nimport './__experimental__typography.scss';\n\nimport React, { useEffect, useReducer, useState } from 'react';\nimport { User } from '@sendbird/chat';\n\nimport { SendbirdSdkContext } from './SendbirdSdkContext';\nimport { handleConnection } from './dux/sdk/thunks';\n\nimport useTheme from './hooks/useTheme';\n\nimport sdkReducers from './dux/sdk/reducers';\nimport userReducers from './dux/user/reducers';\nimport sdkInitialState from './dux/sdk/initialState';\nimport userInitialState from './dux/user/initialState';\n\nimport useOnlineStatus from './hooks/useOnlineStatus';\n\nimport { LoggerFactory } from './Logger';\nimport pubSubFactory from './pubSub/index';\nimport useAppendDomNode from '../hooks/useAppendDomNode';\n\nimport { VoiceMessageProvider } from './VoiceMessageProvider';\nimport { LocalizationProvider } from './LocalizationContext';\nimport { MediaQueryProvider } from './MediaQueryContext';\nimport getStringSet from '../ui/Label/stringSet';\nimport { VOICE_RECORDER_DEFAULT_MAX, VOICE_RECORDER_DEFAULT_MIN } from '../utils/consts';\nimport { useMarkAsReadScheduler } from './hooks/useMarkAsReadScheduler';\n\nexport type UserListQueryType = {\n hasNext?: boolean;\n next: () => Promise<Array<User>>;\n}\n\ninterface VoiceRecordOptions {\n maxRecordingTime?: number;\n minRecordingTime?: number;\n}\n\nexport interface ImageCompressionOptions {\n compressionRate?: number;\n resizingWidth?: number | string;\n resizingHeight?: number | string;\n}\n\nexport interface SendbirdConfig {\n logLevel?: string | Array<string>;\n pubSub?: () => void;// TODO: Define pubSub type and apply it here\n userMention?: {\n maxMentionCount?: number;\n maxSuggestionCount?: number;\n };\n isREMUnitEnabled?: boolean;\n}\n\nexport interface SendbirdProviderProps {\n appId: string;\n userId: string;\n children: React.ReactElement;\n accessToken?: string;\n customApiHost?: string;\n customWebSocketHost?: string;\n configureSession?: () => void;\n theme?: 'light' | 'dark';\n config?: SendbirdConfig;\n nickname?: string;\n colorSet?: Record<string, string>;\n stringSet?: Record<string, string>;\n replyType?: 'NONE' | 'QUOTE_REPLY' | 'THREAD';\n dateLocale?: Locale;\n profileUrl?: string;\n voiceRecord?: VoiceRecordOptions;\n userListQuery?: UserListQueryType;\n imageCompression?: ImageCompressionOptions;\n allowProfileEdit?: boolean;\n isMentionEnabled?: boolean;\n isReactionEnabled?: boolean;\n disableUserProfile?: boolean;\n isVoiceMessageEnabled?: boolean;\n disableMarkAsDelivered?: boolean;\n isTypingIndicatorEnabledOnChannelList?: boolean;\n isMessageReceiptStatusEnabledOnChannelList?: boolean;\n renderUserProfile?: () => React.ReactElement;\n onUserProfileMessage?: () => void;\n}\n\nconst Sendbird = ({\n appId,\n userId,\n children,\n accessToken = '',\n customApiHost = '',\n customWebSocketHost = '',\n configureSession = null,\n theme = 'light',\n config = {},\n nickname = '',\n colorSet = null,\n stringSet = null,\n replyType = 'NONE',\n dateLocale = null,\n profileUrl = '',\n voiceRecord = { maxRecordingTime: VOICE_RECORDER_DEFAULT_MAX, minRecordingTime: VOICE_RECORDER_DEFAULT_MIN },\n userListQuery = null,\n imageCompression = {},\n allowProfileEdit = false,\n isMentionEnabled = false,\n isReactionEnabled = true,\n disableUserProfile = false,\n isVoiceMessageEnabled = true,\n disableMarkAsDelivered = false,\n isTypingIndicatorEnabledOnChannelList = false,\n isMessageReceiptStatusEnabledOnChannelList = false,\n renderUserProfile = null,\n onUserProfileMessage = null,\n}: SendbirdProviderProps): React.ReactElement => {\n const mediaQueryBreakPoint = false;\n\n const {\n logLevel = '',\n userMention = {},\n isREMUnitEnabled = false,\n } = config;\n const [logger, setLogger] = useState(LoggerFactory(logLevel));\n const [pubSub] = useState(pubSubFactory());\n const [sdkStore, sdkDispatcher] = useReducer(sdkReducers, sdkInitialState);\n const [userStore, userDispatcher] = useReducer(userReducers, userInitialState);\n\n useTheme(colorSet);\n\n useEffect(() => {\n logger.info('App Init');\n // dispatch action\n handleConnection({\n userId,\n appId,\n accessToken,\n sdkStore,\n nickname,\n profileUrl,\n configureSession,\n customApiHost,\n customWebSocketHost,\n sdk: sdkStore.sdk,\n logger,\n }, {\n sdkDispatcher,\n userDispatcher,\n });\n }, [userId, appId, accessToken]);\n\n // to create a pubsub to communicate between parent and child\n useEffect(() => {\n setLogger(LoggerFactory(logLevel));\n }, [logLevel]);\n\n useAppendDomNode([\n 'sendbird-modal-root',\n 'sendbird-dropdown-portal',\n 'sendbird-emoji-list-portal',\n ], 'body');\n\n // should move to reducer\n const [currenttheme, setCurrenttheme] = useState(theme);\n useEffect(() => {\n setCurrenttheme(theme);\n }, [theme]);\n\n useEffect(() => {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-experimental__rem__units');\n if (isREMUnitEnabled) {\n body.classList.add('sendbird-experimental__rem__units');\n }\n }, [isREMUnitEnabled]);\n // add-remove theme from body\n useEffect(() => {\n logger.info('Setup theme', `Theme: ${currenttheme}`);\n try {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-theme--light');\n body.classList.remove('sendbird-theme--dark');\n body.classList.add(`sendbird-theme--${currenttheme || 'light'}`);\n logger.info('Finish setup theme');\n // eslint-disable-next-line no-empty\n } catch (e) {\n logger.warning('Setup theme failed', `${e}`);\n }\n return () => {\n try {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-theme--light');\n body.classList.remove('sendbird-theme--dark');\n // eslint-disable-next-line no-empty\n } catch { }\n };\n }, [currenttheme]);\n\n const isOnline = useOnlineStatus(sdkStore.sdk, logger);\n\n const markAsReadScheduler = useMarkAsReadScheduler({ isConnected: isOnline }, { logger });\n\n const localeStringSet = React.useMemo(() => {\n if (!stringSet) {\n return getStringSet('en');\n }\n return {\n ...getStringSet('en'),\n ...stringSet,\n };\n }, [stringSet]);\n\n return (\n <SendbirdSdkContext.Provider\n value={{\n stores: {\n sdkStore,\n userStore,\n },\n dispatchers: {\n sdkDispatcher,\n userDispatcher,\n reconnect: () => {\n handleConnection({\n userId,\n appId,\n accessToken,\n sdkStore,\n nickname,\n profileUrl,\n logger,\n sdk: sdkStore.sdk,\n }, {\n sdkDispatcher,\n userDispatcher,\n });\n },\n },\n config: {\n disableUserProfile,\n disableMarkAsDelivered,\n renderUserProfile,\n onUserProfileMessage,\n allowProfileEdit,\n isOnline,\n userId,\n appId,\n accessToken,\n theme: currenttheme,\n setCurrenttheme,\n userListQuery,\n logger,\n pubSub,\n imageCompression: {\n compressionRate: 0.7,\n ...imageCompression,\n },\n isReactionEnabled,\n isMentionEnabled: isMentionEnabled || false,\n isVoiceMessageEnabled,\n voiceRecord,\n userMention: {\n maxMentionCount: userMention?.maxMentionCount || 10,\n maxSuggestionCount: userMention?.maxSuggestionCount || 15,\n },\n isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabledOnChannelList,\n replyType,\n markAsReadScheduler,\n },\n }}\n >\n <MediaQueryProvider logger={logger} mediaQueryBreakPoint={mediaQueryBreakPoint}>\n <LocalizationProvider stringSet={localeStringSet} dateLocale={dateLocale}>\n <VoiceMessageProvider isVoiceMessageEnabled={isVoiceMessageEnabled}>\n {children}\n </VoiceMessageProvider>\n </LocalizationProvider>\n </MediaQueryProvider>\n </SendbirdSdkContext.Provider>\n );\n}\n\nexport default Sendbird;\n"],"names":["INIT_SDK","SET_SDK_LOADING","RESET_SDK","SDK_ERROR","APP_VERSION_STRING","disconnectSdk","sdkDispatcher","userDispatcher","sdk","onDisconnect","type","payload","disconnect","then","RESET_USER","finally","handleConnection","dispatchers","userId","appId","nickname","profileUrl","accessToken","configureSession","customApiHost","customWebSocketHost","logger","info","sessionHandler","params","modules","GroupChannelModule","OpenChannelModule","newSdk","SendbirdChat","init","setSessionHandler","addExtension","connectCbSucess","user","INIT_USER","isTextuallyNull","updateCurrentUserInfo","namedUser","UPDATE_USER_INFO","connectCbError","e","error","connect","res","catch","err","warning","isEmpty","obj","undefined","prop","hasOwnProperty","JSON","stringify","useTheme","overrides","useLayoutEffect","cssVars","variables","__assign","initialized","loading","reducer","state","action","sdkActions","_objectSpread","initialState","actions","useConnectionStatus","isOnline","setIsOnline","useState","useEffect","uniqueHandlerId","uuidv4","handler","ConnectionHandler","onDisconnected","onReconnectStarted","onReconnectSucceeded","onReconnectFailed","reconnect","addConnectionHandler","removeConnectionHandler","tryReconnect","connectionState","window","addEventListener","removeEventListener","body","document","querySelector","classList","add","remove","LOG_LEVELS","DEBUG","WARNING","ERROR","INFO","ALL","colorLog","level","printLog","_a","title","_b","description","console","log","concat","Date","toISOString","noop","getDefaultLogger","LoggerFactory","lvl","customInterface","logInterface","lvlArray","Array","isArray","applyLog","lgLvl","reduce","accumulator","currentLvl","pubSubFactory","topics","hOP","__getTopics","subscribe","topic","listener","call","index","push","publish","forEach","item","useAppendDomNode","ids","rootSelector","root","id","elem","createElement","setAttribute","appendChild","target","getElementById","removeChild","VoiceMessageProvider","children","isVoiceMessageEnabled","React","TIMEOUT","schedulerFactory","timeout","queue","interval","channel","channelPresent","find","c","url","setInterval","length","clearInterval","shift","markAsRead","clear","getQueue","useMarkAsReadScheduler","isConnected","markAsReadScheduler","useMemo","Sendbird","_c","_d","_e","_f","theme","_g","config","_h","_j","colorSet","_k","stringSet","_l","replyType","_m","dateLocale","_o","_p","voiceRecord","maxRecordingTime","VOICE_RECORDER_DEFAULT_MAX","minRecordingTime","VOICE_RECORDER_DEFAULT_MIN","_q","userListQuery","_r","imageCompression","_s","allowProfileEdit","_t","isMentionEnabled","_u","isReactionEnabled","_v","disableUserProfile","_w","_x","disableMarkAsDelivered","_y","isTypingIndicatorEnabledOnChannelList","_z","isMessageReceiptStatusEnabledOnChannelList","_0","renderUserProfile","_1","onUserProfileMessage","mediaQueryBreakPoint","_2","logLevel","_3","userMention","_4","isREMUnitEnabled","_5","setLogger","pubSub","_6","useReducer","sdkReducers","sdkInitialState","sdkStore","_7","userReducers","userInitialState","userStore","_8","currenttheme","setCurrenttheme","useOnlineStatus","localeStringSet","getStringSet","stores","compressionRate","maxMentionCount","maxSuggestionCount"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SendbirdProvider.js","sources":["../src/lib/dux/sdk/actionTypes.ts","../src/lib/dux/user/actionTypes.ts","../src/lib/dux/sdk/thunks.ts","../src/lib/hooks/useTheme.ts","../src/lib/dux/sdk/initialState.ts","../src/lib/dux/sdk/reducers.ts","../src/lib/dux/user/initialState.ts","../src/lib/dux/user/reducers.ts","../src/lib/hooks/useOnlineStatus.js","../src/lib/Logger/index.ts","../src/lib/pubSub/index.ts","../src/hooks/useAppendDomNode.js","../src/lib/VoiceMessageProvider.tsx","../src/lib/hooks/useMarkAsReadScheduler.ts","../src/lib/Sendbird.tsx"],"sourcesContent":["import SendbirdChat from '@sendbird/chat';\nimport { CreateAction } from '../../../utils/typeHelpers/reducers/CreateAction';\n\nexport const SDK_ACTIONS = {\n INIT_SDK: 'INIT_SDK',\n SET_SDK_LOADING: 'SET_SDK_LOADING',\n RESET_SDK: 'RESET_SDK',\n SDK_ERROR: 'SDK_ERROR',\n} as const;\n\ntype SDK_PAYLOAD_TYPES = {\n [SDK_ACTIONS.SET_SDK_LOADING]: boolean,\n [SDK_ACTIONS.INIT_SDK]: SendbirdChat,\n [SDK_ACTIONS.SDK_ERROR]: null,\n [SDK_ACTIONS.RESET_SDK]: null,\n};\n\nexport type SdkActionTypes = CreateAction<SDK_PAYLOAD_TYPES>;\n","import { User } from '@sendbird/chat';\nimport { CreateAction } from '../../../utils/typeHelpers/reducers/CreateAction';\n\nexport const USER_ACTIONS = {\n INIT_USER: 'INIT_USER',\n RESET_USER: 'RESET_USER',\n UPDATE_USER_INFO: 'UPDATE_USER_INFO',\n} as const;\n\ntype USER_PAYLOAD_TYPES = {\n [USER_ACTIONS.INIT_USER]: User,\n [USER_ACTIONS.RESET_USER]: null,\n [USER_ACTIONS.UPDATE_USER_INFO]: User,\n};\n\nexport type UserActionTypes = CreateAction<USER_PAYLOAD_TYPES>;\n","import React from 'react';\n\nimport SendbirdChat, { SessionHandler } from '@sendbird/chat';\nimport { OpenChannelModule } from '@sendbird/chat/openChannel';\nimport { GroupChannelModule } from '@sendbird/chat/groupChannel';\n\nimport { SDK_ACTIONS, SdkActionTypes } from './actionTypes';\nimport { USER_ACTIONS, UserActionTypes } from '../user/actionTypes';\nimport { isTextuallyNull } from '../../../utils';\nimport { Logger } from '../../SendbirdState';\n\nconst { INIT_SDK, SET_SDK_LOADING, RESET_SDK, SDK_ERROR } = SDK_ACTIONS;\nconst { INIT_USER, UPDATE_USER_INFO, RESET_USER } = USER_ACTIONS;\nconst APP_VERSION_STRING = '__uikit_app_version__';\nconst IS_ROLLUP = '__is_rollup__';\nconst IS_ROLLUP_REPLACE = '__is_rollup_replace__';\n\ntype SdkDispatcher = React.Dispatch<SdkActionTypes>;\ntype UserDispatcher = React.Dispatch<UserActionTypes>;\ntype Dispatchers = { sdkDispatcher: SdkDispatcher, userDispatcher: UserDispatcher };\n\ninterface DisconnectSdkProps {\n sdkDispatcher: SdkDispatcher;\n userDispatcher: UserDispatcher;\n sdk: SendbirdChat;\n logger: Logger;\n onDisconnect: () => void;\n}\n\nexport const disconnectSdk = ({\n sdkDispatcher,\n userDispatcher,\n sdk,\n onDisconnect,\n}: DisconnectSdkProps): void => {\n sdkDispatcher({ type: SET_SDK_LOADING, payload: true });\n if (sdk?.disconnect) {\n sdk.disconnect()\n .then(() => {\n sdkDispatcher({ type: RESET_SDK });\n userDispatcher({ type: RESET_USER });\n })\n .finally(() => {\n onDisconnect();\n });\n } else {\n onDisconnect();\n }\n};\n\ninterface HandleConnectionProps {\n userId: string;\n appId: string;\n nickname: string;\n profileUrl: string;\n accessToken: string;\n configureSession?: (sdk: SendbirdChat) => SessionHandler;\n customApiHost?: string;\n customWebSocketHost?: string;\n sdk: SendbirdChat;\n logger: Logger;\n}\n\nexport const handleConnection = ({\n userId,\n appId,\n nickname,\n profileUrl,\n accessToken,\n configureSession,\n customApiHost,\n customWebSocketHost,\n sdk,\n logger,\n}: HandleConnectionProps, dispatchers: Dispatchers): void => {\n const {\n sdkDispatcher,\n userDispatcher,\n } = dispatchers;\n disconnectSdk({\n sdkDispatcher,\n userDispatcher,\n sdk,\n logger,\n onDisconnect: () => {\n logger.info('Setup connection');\n let sessionHandler = null;\n sdkDispatcher({ type: SET_SDK_LOADING, payload: true });\n if (userId && appId) {\n const params = {\n appId,\n modules: [\n new GroupChannelModule(),\n new OpenChannelModule(),\n ],\n };\n if (customApiHost) {\n params['customApiHost'] = customApiHost;\n }\n if (customWebSocketHost) {\n params['customWebSocketHost'] = customWebSocketHost;\n }\n const newSdk = SendbirdChat.init(params);\n if (configureSession && typeof configureSession === 'function') {\n sessionHandler = configureSession(newSdk);\n newSdk.setSessionHandler(sessionHandler);\n }\n // to check if code is released version from rollup and *not from storybook*\n // see rollup config file\n // @ts-ignore\n if (IS_ROLLUP === IS_ROLLUP_REPLACE) {\n newSdk.addExtension('sb_uikit', APP_VERSION_STRING);\n }\n const connectCbSucess = (user) => {\n sdkDispatcher({ type: INIT_SDK, payload: newSdk });\n userDispatcher({ type: INIT_USER, payload: user });\n // use nickname/profileUrl if provided\n // or set userID as nickname\n if ((nickname !== user.nickname || profileUrl !== user.profileUrl)\n && !(isTextuallyNull(nickname) && isTextuallyNull(profileUrl))\n ) {\n newSdk.updateCurrentUserInfo({\n nickname: nickname || user.nickname,\n profileUrl: profileUrl || user.profileUrl,\n }).then((namedUser) => {\n userDispatcher({ type: UPDATE_USER_INFO, payload: namedUser });\n });\n }\n };\n\n const connectCbError = (e) => {\n logger.error('Connection failed', `${e}`);\n sdkDispatcher({ type: RESET_SDK });\n userDispatcher({ type: RESET_USER });\n sdkDispatcher({ type: SDK_ERROR });\n };\n\n if (accessToken) {\n newSdk.connect(userId, accessToken)\n .then((res) => connectCbSucess(res))\n .catch((err) => connectCbError(err));\n } else {\n newSdk.connect(userId)\n .then((res) => connectCbSucess(res))\n .catch((err) => connectCbError(err));\n }\n } else {\n sdkDispatcher({ type: SDK_ERROR });\n logger.warning('Connection failed', 'UserId or appId missing');\n }\n },\n });\n};\n","import { useLayoutEffect } from 'react';\nimport cssVars from 'css-vars-ponyfill';\n\nconst isEmpty = (obj) => {\n if (obj === null || obj === undefined) {\n return true;\n }\n\n for (const prop in obj) {\n if (obj.hasOwnProperty(prop)) {\n return false;\n }\n }\n return JSON.stringify(obj) === JSON.stringify({});\n}\n\nconst useTheme = (overrides: Record<string, string>): void => {\n useLayoutEffect(() => {\n if (!isEmpty(overrides)) {\n cssVars({\n variables: {\n ...{\n '--sendbird-dark-primary-500': '#4d2aa6',\n '--sendbird-dark-primary-400': '#6440C4',\n '--sendbird-dark-primary-300': '#7B53EF',\n '--sendbird-dark-primary-200': '#9E8CF5',\n '--sendbird-dark-primary-100': '#E2DFFF',\n\n '--sendbird-dark-secondary-500': '#007A7A',\n '--sendbird-dark-secondary-400': '#189A8D',\n '--sendbird-dark-secondary-300': '#2EBA9F',\n '--sendbird-dark-secondary-200': '#6FD6BE',\n '--sendbird-dark-secondary-100': '#AEF2DC',\n\n '--sendbird-dark-information-100': '#b2d9ff',\n\n '--sendbird-dark-error-500': '#A30E2D',\n '--sendbird-dark-error-400': '#C11F41',\n '--sendbird-dark-error-300': '#E53157',\n '--sendbird-dark-error-200': '#FF6183',\n '--sendbird-dark-error-100': '#FFABBD',\n\n '--sendbird-dark-background-700': '#000000',\n '--sendbird-dark-background-600': '#161616',\n '--sendbird-dark-background-500': '#2C2C2C',\n '--sendbird-dark-background-400': '#393939',\n '--sendbird-dark-background-300': '#A8A8A8',\n '--sendbird-dark-background-200': '#D9D9D9',\n '--sendbird-dark-background-100': '#F0F0F0',\n '--sendbird-dark-background-50': '#FFFFFF',\n\n '--sendbird-dark-overlay': 'rgba(0, 0, 0, 0.32)',\n\n '--sendbird-dark-onlight-01': 'rgba(0, 0, 0, 0.88)',\n '--sendbird-dark-onlight-02': 'rgba(0, 0, 0, 0.50)',\n '--sendbird-dark-onlight-03': 'rgba(0, 0, 0, 0.38)',\n '--sendbird-dark-onlight-04': 'rgba(0, 0, 0, 0.12)',\n\n '--sendbird-dark-ondark-01': 'rgba(255, 255, 255, 0.88)',\n '--sendbird-dark-ondark-02': 'rgba(255, 255, 255, 0.50)',\n '--sendbird-dark-ondark-03': 'rgba(255, 255, 255, 0.38)',\n '--sendbird-dark-ondark-04': 'rgba(255, 255, 255, 0.12)',\n\n '--sendbird-dark-shadow-01': '0 1px 5px 0 rgba(33, 34, 66, 0.04), 0 0 3px 0 rgba(0, 0, 0, 0.08), 0 2px 1px 0 rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-02': '0 3px 5px -3px rgba(33, 34, 66, 0.04), 0 3px 14px 2px rgba(0, 0, 0, 0.08), 0 8px 10px 1px rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-03': '0 6px 10px -5px rgba(0, 0, 0, 0.04), 0 6px 30px 5px rgba(0, 0, 0, 0.08), 0 16px 24px 2px rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-04': '0 9px 15px -7px rgba(0, 0, 0, 0.04), 0 9px 46px 8px rgba(0, 0, 0, 0.08), 0 24px 38px 3px rgba(0, 0, 0, 0.12)',\n\n '--sendbird-dark-shadow-message-input': '0 1px 5px 0 rgba(33, 34, 66, 0.12), 0 0 1px 0 rgba(33, 34, 66, 0.16), 0 2px 1px 0 rgba(33, 34, 66, 0.08), 0 1px 5px 0 rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-primary-500': '#4d2aa6',\n '--sendbird-light-primary-400': '#6440C4',\n '--sendbird-light-primary-300': '#7B53EF',\n '--sendbird-light-primary-200': '#9E8CF5',\n '--sendbird-light-primary-100': '#E2DFFF',\n\n '--sendbird-light-secondary-500': '#007A7A',\n '--sendbird-light-secondary-400': '#189A8D',\n '--sendbird-light-secondary-300': '#2EBA9F',\n '--sendbird-light-secondary-200': '#6FD6BE',\n '--sendbird-light-secondary-100': '#AEF2DC',\n\n '--sendbird-light-information-100': '#b2d9ff',\n\n '--sendbird-light-error-500': '#A30E2D',\n '--sendbird-light-error-400': '#C11F41',\n '--sendbird-light-error-300': '#E53157',\n '--sendbird-light-error-200': '#FF6183',\n '--sendbird-light-error-100': '#FFABBD',\n\n '--sendbird-light-background-700': '#000000',\n '--sendbird-light-background-600': '#161616',\n '--sendbird-light-background-500': '#2C2C2C',\n '--sendbird-light-background-400': '#393939',\n '--sendbird-light-background-300': '#A8A8A8',\n '--sendbird-light-background-200': '#D9D9D9',\n '--sendbird-light-background-100': '#F0F0F0',\n '--sendbird-light-background-50': ' #FFFFFF',\n\n '--sendbird-light-overlay': 'rgba(0, 0, 0, 0.32)',\n\n '--sendbird-light-onlight-01': 'rgba(0, 0, 0, 0.88)',\n '--sendbird-light-onlight-02': 'rgba(0, 0, 0, 0.50)',\n '--sendbird-light-onlight-03': 'rgba(0, 0, 0, 0.38)',\n '--sendbird-light-onlight-04': 'rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-ondark-01': 'rgba(255, 255, 255, 0.88)',\n '--sendbird-light-ondark-02': 'rgba(255, 255, 255, 0.50)',\n '--sendbird-light-ondark-03': 'rgba(255, 255, 255, 0.38)',\n '--sendbird-light-ondark-04': 'rgba(255, 255, 255, 0.12)',\n\n '--sendbird-light-shadow-01': '0 1px 5px 0 rgba(33, 34, 66, 0.04), 0 0 3px 0 rgba(0, 0, 0, 0.08), 0 2px 1px 0 rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-02': '0 3px 5px -3px rgba(33, 34, 66, 0.04), 0 3px 14px 2px rgba(0, 0, 0, 0.08), 0 8px 10px 1px rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-03': '0 6px 10px -5px rgba(0, 0, 0, 0.04), 0 6px 30px 5px rgba(0, 0, 0, 0.08), 0 16px 24px 2px rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-04': '0 9px 15px -7px rgba(0, 0, 0, 0.04), 0 9px 46px 8px rgba(0, 0, 0, 0.08), 0 24px 38px 3px rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-shadow-message-input': '0 1px 5px 0 rgba(33, 34, 66, 0.12), 0 0 1px 0 rgba(33, 34, 66, 0.16), 0 2px 1px 0 rgba(33, 34, 66, 0.08), 0 1px 5px 0 rgba(0, 0, 0, 0.12)',\n },\n ...overrides,\n },\n });\n }\n }, [overrides]);\n};\n\nexport default useTheme;\n","import SendbirdChat from '@sendbird/chat';\n\nexport interface SdkStoreStateType {\n initialized: boolean;\n loading: boolean;\n sdk: SendbirdChat,\n error: boolean;\n}\n\nconst initialState: SdkStoreStateType = {\n initialized: false,\n loading: false,\n sdk: {} as SendbirdChat,\n error: false,\n};\n\nexport default initialState;\n","import { match } from 'ts-pattern';\nimport { SdkActionTypes, SDK_ACTIONS } from './actionTypes';\nimport initialState, { SdkStoreStateType } from './initialState';\n\nexport default function reducer(state: SdkStoreStateType, action: SdkActionTypes): SdkStoreStateType {\n return match(action)\n .with({ type: SDK_ACTIONS.SET_SDK_LOADING }, ({ payload }) => {\n return {\n ...state,\n initialized: false,\n loading: payload,\n };\n })\n .with({ type: SDK_ACTIONS.SDK_ERROR }, () => {\n return {\n ...state,\n initialized: false,\n loading: false,\n error: true,\n };\n })\n .with({ type: SDK_ACTIONS.INIT_SDK }, ({ payload }) => {\n return {\n sdk: payload,\n initialized: true,\n loading: false,\n error: false,\n };\n })\n .with({ type: SDK_ACTIONS.RESET_SDK }, () => {\n return initialState;\n })\n .otherwise(() => {\n return state;\n });\n}\n","import { User } from '@sendbird/chat';\n\nexport interface UserStoreStateType {\n initialized: boolean;\n loading: boolean;\n user: User;\n}\n\nconst initialState: UserStoreStateType = {\n initialized: false,\n loading: false,\n user: {} as User,\n};\n\nexport default initialState;\n","import { match } from 'ts-pattern';\nimport { UserActionTypes, USER_ACTIONS } from './actionTypes';\nimport initialState, { UserStoreStateType } from './initialState';\n\nexport default function reducer(state: UserStoreStateType, action: UserActionTypes): UserStoreStateType {\n return match(action)\n .with({ type: USER_ACTIONS.INIT_USER }, ({ payload }) => {\n return {\n initialized: true,\n loading: false,\n user: payload,\n };\n })\n .with({ type: USER_ACTIONS.RESET_USER }, () => {\n return initialState;\n })\n .with({ type: USER_ACTIONS.UPDATE_USER_INFO }, ({ payload }) => {\n return {\n ...state,\n user: payload,\n };\n })\n .otherwise(() => {\n return state;\n });\n}\n","import { ConnectionHandler } from '@sendbird/chat';\nimport { useState, useEffect } from 'react';\n\nimport { uuidv4 } from '../../utils/uuid';\n\nfunction useConnectionStatus(sdk, logger) {\n const [isOnline, setIsOnline] = useState(true);\n\n useEffect(() => {\n const uniqueHandlerId = uuidv4();\n try {\n logger.warning('sdk changed', uniqueHandlerId);\n const handler = new ConnectionHandler();\n handler.onDisconnected = () => {\n logger.warning('onDisconnected', { isOnline });\n };\n handler.onReconnectStarted = () => {\n setIsOnline(false);\n logger.warning('onReconnectStarted', { isOnline });\n };\n handler.onReconnectSucceeded = () => {\n setIsOnline(true);\n logger.warning('onReconnectSucceeded', { isOnline });\n };\n handler.onReconnectFailed = () => {\n sdk.reconnect();\n logger.warning('onReconnectFailed');\n };\n logger.info('Added ConnectionHandler', uniqueHandlerId);\n // workaround -> addConnectionHandler invalidates session handler\n // provided through configureSession\n if (sdk?.addConnectionHandler) {\n sdk.addConnectionHandler(uniqueHandlerId, handler);\n }\n } catch {\n //\n }\n return () => {\n try {\n sdk.removeConnectionHandler(uniqueHandlerId);\n logger.info('Removed ConnectionHandler', uniqueHandlerId);\n } catch {\n //\n }\n };\n }, [sdk]);\n\n useEffect(() => {\n const tryReconnect = () => {\n try {\n logger.warning('Try reconnecting SDK');\n if (sdk.connectionState !== 'OPEN') { // connection is not broken yet\n sdk.reconnect();\n }\n } catch {\n //\n }\n };\n // addEventListener version\n window.addEventListener('online', tryReconnect);\n return () => {\n window.removeEventListener('online', tryReconnect);\n };\n }, [sdk]);\n\n // add offline-class to body\n useEffect(() => {\n const body = document.querySelector('body');\n if (!isOnline) {\n try {\n body.classList.add('sendbird__offline');\n logger.info('Added class sendbird__offline to body');\n } catch (e) {\n //\n }\n } else {\n try {\n body.classList.remove('sendbird__offline');\n logger.info('Removed class sendbird__offline from body');\n } catch (e) {\n //\n }\n }\n }, [isOnline]);\n\n return isOnline;\n}\n\nexport default useConnectionStatus;\n","// Logger, pretty much explains it\n// in SendbirdProvider\n\nimport { ObjectValues } from '../../utils/typeHelpers/objectValues';\n\n// const [logger, setLogger] = useState(LoggerFactory(logLevel));\nexport const LOG_LEVELS = {\n DEBUG: 'debug',\n WARNING: 'warning',\n ERROR: 'error',\n INFO: 'info',\n ALL: 'all',\n} as const;\nexport type LogLevel = ObjectValues<typeof LOG_LEVELS>;\n\nconst colorLog = (level: LogLevel): string => {\n switch (level) {\n case LOG_LEVELS.WARNING:\n return ('color: Orange');\n case LOG_LEVELS.ERROR:\n return ('color: Red');\n default:\n return ('color: Gray');\n }\n};\n\ninterface PrintLogProps {\n level: LogLevel;\n title: string;\n description?: string;\n}\nexport const printLog = ({\n level,\n title,\n description = '',\n}: PrintLogProps): void => {\n // eslint-disable-next-line no-console\n console.log(\n `%c SendbirdUIKit | ${level} | ${new Date().toISOString()} | ${title} ${description && '|'}`, colorLog(level),\n description,\n );\n};\n\ntype LoggerLogType = (title?: string, description?: string) => void;\ninterface LoggerInterface {\n info: LoggerLogType;\n error: LoggerLogType;\n warning: LoggerLogType;\n}\n\nconst noop = () => { /* noop */ };\nexport const getDefaultLogger = (): LoggerInterface => ({\n info: noop,\n error: noop,\n warning: noop,\n});\n\nexport const LoggerFactory = (\n lvl: LogLevel,\n customInterface?: () => void,\n): LoggerInterface => {\n const logInterface = customInterface || printLog;\n const lvlArray: Array<LogLevel> = Array.isArray(lvl) ? lvl : [lvl];\n\n const applyLog = (lgLvl: LogLevel) => (title?: string, description?: string) => logInterface({\n level: lgLvl,\n title,\n description,\n });\n\n const logger = lvlArray.reduce((accumulator, currentLvl) => {\n if (currentLvl === LOG_LEVELS.DEBUG || currentLvl === LOG_LEVELS.ALL) {\n return ({\n ...accumulator,\n info: applyLog(LOG_LEVELS.INFO),\n error: applyLog(LOG_LEVELS.ERROR),\n warning: applyLog(LOG_LEVELS.WARNING),\n });\n }\n\n if (currentLvl === LOG_LEVELS.INFO) {\n return ({\n ...accumulator,\n info: applyLog(LOG_LEVELS.INFO),\n });\n }\n\n if (currentLvl === LOG_LEVELS.ERROR) {\n return ({\n ...accumulator,\n error: applyLog(LOG_LEVELS.ERROR),\n });\n }\n\n if (currentLvl === LOG_LEVELS.WARNING) {\n return ({\n ...accumulator,\n warning: applyLog(LOG_LEVELS.WARNING),\n });\n }\n\n return { ...accumulator };\n }, getDefaultLogger());\n return logger;\n};\n\n// TODO: Make this to hook, useLogger\n","// https://davidwalsh.name/pubsub-javascript\n// we use pubsub to sync events between multiple components(example - ChannelList, Channel)\n// for example, if customer sends a message from their custom component\n// without pubsub,we would not be able to listen to it\n// in our ChannelList or Conversation\n\ninterface PubSubTypes {\n __getTopics: () => Record<string, string>;\n subscribe: (topic: string, listener: unknown) => { remove: () => void };\n publish: (topic: string, info: unknown) => void;\n}\n\nconst pubSubFactory = (): PubSubTypes => {\n const topics = {};\n const hOP = topics.hasOwnProperty;\n\n return {\n __getTopics: () => topics,\n subscribe: (topic, listener) => {\n // Create the topic's object if not yet created\n if (!hOP.call(topics, topic)) { topics[topic] = []; }\n\n // Add the listener to queue\n const index = topics[topic].push(listener) - 1;\n\n // Provide handle back for removal of topic\n return {\n remove: () => {\n delete topics[topic][index];\n },\n };\n },\n publish: (topic, info) => {\n // If the topic doesn't exist, or there's no listeners in queue, just leave\n if (!hOP.call(topics, topic)) { return; }\n\n // Cycle through topics queue, fire!\n topics[topic].forEach((item) => {\n item(info !== undefined ? info : {});\n });\n },\n };\n};\n\nexport default pubSubFactory;\n","import { useEffect } from 'react';\n\nfunction useAppendDomNode(ids = [], rootSelector) {\n useEffect(() => {\n const root = document.querySelector(rootSelector);\n ids.forEach((id) => {\n const elem = document.createElement('div');\n elem.setAttribute('id', id);\n root.appendChild(elem);\n });\n return () => {\n ids.forEach((id) => {\n const target = document.getElementById(id);\n if (target) {\n root.removeChild(target);\n }\n });\n };\n }, []);\n}\n\nexport default useAppendDomNode;\n","import React from 'react';\nimport { VoicePlayerProvider } from '../hooks/VoicePlayer';\nimport { VoiceRecorderProvider } from '../hooks/VoiceRecorder';\n\nexport interface VoiceMessageProviderProps {\n children: React.ReactElement;\n isVoiceMessageEnabled?: boolean;\n}\n\nexport const VoiceMessageProvider = ({\n children,\n isVoiceMessageEnabled = true,\n}: VoiceMessageProviderProps): React.ReactElement => {\n if (!isVoiceMessageEnabled) {\n return (\n <VoicePlayerProvider>\n {children}\n </VoicePlayerProvider>\n );\n }\n return (\n <VoiceRecorderProvider>\n <VoicePlayerProvider>\n {children}\n </VoicePlayerProvider>\n </VoiceRecorderProvider>\n );\n};\n\nexport default VoiceMessageProvider;\n","import { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { useEffect, useMemo } from 'react';\nimport { Logger } from '../SendbirdState';\n\nexport type MarkAsReadSchedulerType = {\n push: (channel: GroupChannel) => void;\n clear: () => void;\n getQueue: () => GroupChannel[];\n};\n\nconst TIMEOUT = 5000;\n\nexport const schedulerFactory = (logger: Logger, timeout?: number): MarkAsReadSchedulerType => {\n let queue: GroupChannel[] = [];\n let interval = null;\n const push = (channel: GroupChannel) => {\n const channelPresent = queue.find((c) => c.url === channel.url);\n if (!channelPresent) {\n queue.push(channel)\n } else {\n logger.info('Channel: Mark as read already in queue', channel);\n }\n // start the interval if it's not already running\n if (interval) {\n return;\n }\n interval = setInterval(() => {\n if (queue.length === 0) {\n clearInterval(interval);\n interval = null;\n return;\n }\n const channel = queue.shift();\n if (channel) {\n try {\n channel.markAsRead();\n } catch (error) {\n logger.error('Channel: Mark as read failed', error);\n }\n }\n }, (timeout || TIMEOUT));\n };\n const clear = () => {\n queue = [];\n if (interval) {\n clearInterval(interval);\n interval = null;\n }\n };\n return {\n push,\n clear,\n getQueue: () => queue,\n };\n}\n\ninterface DynamicParams {\n isConnected: boolean;\n}\n\ninterface StaticParams {\n logger: Logger;\n}\n\nexport function useMarkAsReadScheduler({\n isConnected,\n}: DynamicParams, {\n logger,\n}: StaticParams): MarkAsReadSchedulerType {\n const markAsReadScheduler = useMemo(() => schedulerFactory(logger), []);\n\n useEffect(() => {\n // for simplicity, we clear the queue when the connection is lost\n if (!isConnected) {\n markAsReadScheduler.clear()\n return;\n }\n }, [isConnected]);\n\n return markAsReadScheduler;\n}\n","import './index.scss';\nimport './__experimental__typography.scss';\n\nimport React, { useEffect, useReducer, useState } from 'react';\nimport { User } from '@sendbird/chat';\n\nimport { SendbirdSdkContext } from './SendbirdSdkContext';\nimport { handleConnection } from './dux/sdk/thunks';\n\nimport useTheme from './hooks/useTheme';\n\nimport sdkReducers from './dux/sdk/reducers';\nimport userReducers from './dux/user/reducers';\nimport sdkInitialState from './dux/sdk/initialState';\nimport userInitialState from './dux/user/initialState';\n\nimport useOnlineStatus from './hooks/useOnlineStatus';\n\nimport { LoggerFactory } from './Logger';\nimport pubSubFactory from './pubSub/index';\nimport useAppendDomNode from '../hooks/useAppendDomNode';\n\nimport { VoiceMessageProvider } from './VoiceMessageProvider';\nimport { LocalizationProvider } from './LocalizationContext';\nimport { MediaQueryProvider } from './MediaQueryContext';\nimport getStringSet from '../ui/Label/stringSet';\nimport { VOICE_RECORDER_DEFAULT_MAX, VOICE_RECORDER_DEFAULT_MIN } from '../utils/consts';\nimport { useMarkAsReadScheduler } from './hooks/useMarkAsReadScheduler';\n\nexport type UserListQueryType = {\n hasNext?: boolean;\n next: () => Promise<Array<User>>;\n}\n\ninterface VoiceRecordOptions {\n maxRecordingTime?: number;\n minRecordingTime?: number;\n}\n\nexport interface ImageCompressionOptions {\n compressionRate?: number;\n resizingWidth?: number | string;\n resizingHeight?: number | string;\n}\n\nexport interface SendbirdConfig {\n logLevel?: string | Array<string>;\n pubSub?: () => void;// TODO: Define pubSub type and apply it here\n userMention?: {\n maxMentionCount?: number;\n maxSuggestionCount?: number;\n };\n isREMUnitEnabled?: boolean;\n}\n\nexport interface SendbirdProviderProps {\n appId: string;\n userId: string;\n children: React.ReactElement;\n accessToken?: string;\n customApiHost?: string;\n customWebSocketHost?: string;\n configureSession?: () => void;\n theme?: 'light' | 'dark';\n config?: SendbirdConfig;\n nickname?: string;\n colorSet?: Record<string, string>;\n stringSet?: Record<string, string>;\n replyType?: 'NONE' | 'QUOTE_REPLY' | 'THREAD';\n dateLocale?: Locale;\n profileUrl?: string;\n voiceRecord?: VoiceRecordOptions;\n userListQuery?: UserListQueryType;\n imageCompression?: ImageCompressionOptions;\n allowProfileEdit?: boolean;\n isMentionEnabled?: boolean;\n isReactionEnabled?: boolean;\n disableUserProfile?: boolean;\n isVoiceMessageEnabled?: boolean;\n disableMarkAsDelivered?: boolean;\n isTypingIndicatorEnabledOnChannelList?: boolean;\n isMessageReceiptStatusEnabledOnChannelList?: boolean;\n renderUserProfile?: () => React.ReactElement;\n onUserProfileMessage?: () => void;\n}\n\nconst Sendbird = ({\n appId,\n userId,\n children,\n accessToken = '',\n customApiHost = '',\n customWebSocketHost = '',\n configureSession = null,\n theme = 'light',\n config = {},\n nickname = '',\n colorSet = null,\n stringSet = null,\n replyType = 'NONE',\n dateLocale = null,\n profileUrl = '',\n voiceRecord = { maxRecordingTime: VOICE_RECORDER_DEFAULT_MAX, minRecordingTime: VOICE_RECORDER_DEFAULT_MIN },\n userListQuery = null,\n imageCompression = {},\n allowProfileEdit = false,\n isMentionEnabled = false,\n isReactionEnabled = true,\n disableUserProfile = false,\n isVoiceMessageEnabled = true,\n disableMarkAsDelivered = false,\n isTypingIndicatorEnabledOnChannelList = false,\n isMessageReceiptStatusEnabledOnChannelList = false,\n renderUserProfile = null,\n onUserProfileMessage = null,\n}: SendbirdProviderProps): React.ReactElement => {\n const mediaQueryBreakPoint = false;\n\n const {\n logLevel = '',\n userMention = {},\n isREMUnitEnabled = false,\n } = config;\n const [logger, setLogger] = useState(LoggerFactory(logLevel));\n const [pubSub] = useState(pubSubFactory());\n const [sdkStore, sdkDispatcher] = useReducer(sdkReducers, sdkInitialState);\n const [userStore, userDispatcher] = useReducer(userReducers, userInitialState);\n\n useTheme(colorSet);\n\n useEffect(() => {\n logger.info('App Init');\n // dispatch action\n handleConnection({\n userId,\n appId,\n accessToken,\n sdkStore,\n nickname,\n profileUrl,\n configureSession,\n customApiHost,\n customWebSocketHost,\n sdk: sdkStore.sdk,\n logger,\n }, {\n sdkDispatcher,\n userDispatcher,\n });\n }, [userId, appId, accessToken]);\n\n // to create a pubsub to communicate between parent and child\n useEffect(() => {\n setLogger(LoggerFactory(logLevel));\n }, [logLevel]);\n\n useAppendDomNode([\n 'sendbird-modal-root',\n 'sendbird-dropdown-portal',\n 'sendbird-emoji-list-portal',\n ], 'body');\n\n // should move to reducer\n const [currenttheme, setCurrenttheme] = useState(theme);\n useEffect(() => {\n setCurrenttheme(theme);\n }, [theme]);\n\n useEffect(() => {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-experimental__rem__units');\n if (isREMUnitEnabled) {\n body.classList.add('sendbird-experimental__rem__units');\n }\n }, [isREMUnitEnabled]);\n // add-remove theme from body\n useEffect(() => {\n logger.info('Setup theme', `Theme: ${currenttheme}`);\n try {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-theme--light');\n body.classList.remove('sendbird-theme--dark');\n body.classList.add(`sendbird-theme--${currenttheme || 'light'}`);\n logger.info('Finish setup theme');\n // eslint-disable-next-line no-empty\n } catch (e) {\n logger.warning('Setup theme failed', `${e}`);\n }\n return () => {\n try {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-theme--light');\n body.classList.remove('sendbird-theme--dark');\n // eslint-disable-next-line no-empty\n } catch { }\n };\n }, [currenttheme]);\n\n const isOnline = useOnlineStatus(sdkStore.sdk, logger);\n\n const markAsReadScheduler = useMarkAsReadScheduler({ isConnected: isOnline }, { logger });\n\n const localeStringSet = React.useMemo(() => {\n if (!stringSet) {\n return getStringSet('en');\n }\n return {\n ...getStringSet('en'),\n ...stringSet,\n };\n }, [stringSet]);\n\n return (\n <SendbirdSdkContext.Provider\n value={{\n stores: {\n sdkStore,\n userStore,\n },\n dispatchers: {\n sdkDispatcher,\n userDispatcher,\n reconnect: () => {\n handleConnection({\n userId,\n appId,\n accessToken,\n sdkStore,\n nickname,\n profileUrl,\n logger,\n sdk: sdkStore.sdk,\n }, {\n sdkDispatcher,\n userDispatcher,\n });\n },\n },\n config: {\n disableUserProfile,\n disableMarkAsDelivered,\n renderUserProfile,\n onUserProfileMessage,\n allowProfileEdit,\n isOnline,\n userId,\n appId,\n accessToken,\n theme: currenttheme,\n setCurrenttheme,\n userListQuery,\n logger,\n pubSub,\n imageCompression: {\n compressionRate: 0.7,\n ...imageCompression,\n },\n isReactionEnabled,\n isMentionEnabled: isMentionEnabled || false,\n isVoiceMessageEnabled,\n voiceRecord,\n userMention: {\n maxMentionCount: userMention?.maxMentionCount || 10,\n maxSuggestionCount: userMention?.maxSuggestionCount || 15,\n },\n isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabledOnChannelList,\n replyType,\n markAsReadScheduler,\n },\n }}\n >\n <MediaQueryProvider logger={logger} mediaQueryBreakPoint={mediaQueryBreakPoint}>\n <LocalizationProvider stringSet={localeStringSet} dateLocale={dateLocale}>\n <VoiceMessageProvider isVoiceMessageEnabled={isVoiceMessageEnabled}>\n {children}\n </VoiceMessageProvider>\n </LocalizationProvider>\n </MediaQueryProvider>\n </SendbirdSdkContext.Provider>\n );\n}\n\nexport default Sendbird;\n"],"names":["SDK_ACTIONS","INIT_SDK","SET_SDK_LOADING","RESET_SDK","SDK_ERROR","USER_ACTIONS","INIT_USER","RESET_USER","UPDATE_USER_INFO","APP_VERSION_STRING","disconnectSdk","_a","sdkDispatcher","userDispatcher","sdk","onDisconnect","type","payload","disconnect","then","finally","handleConnection","dispatchers","userId","appId","nickname","profileUrl","accessToken","configureSession","customApiHost","customWebSocketHost","logger","info","sessionHandler","params","modules","GroupChannelModule","OpenChannelModule","newSdk_1","SendbirdChat","init","setSessionHandler","addExtension","connectCbSucess_1","user","isTextuallyNull","updateCurrentUserInfo","namedUser","connectCbError_1","e","error","concat","connect","res","catch","err","warning","isEmpty","obj","undefined","prop","hasOwnProperty","JSON","stringify","useTheme","overrides","useLayoutEffect","cssVars","variables","__assign","initialState","initialized","loading","reducer","state","action","match","with","otherwise","useConnectionStatus","isOnline","setIsOnline","useState","useEffect","uniqueHandlerId","uuidv4","handler","ConnectionHandler","onDisconnected","onReconnectStarted","onReconnectSucceeded","onReconnectFailed","reconnect","addConnectionHandler","_unused","removeConnectionHandler","_unused2","tryReconnect","connectionState","_unused3","window","addEventListener","removeEventListener","body","document","querySelector","classList","add","remove","LOG_LEVELS","DEBUG","WARNING","ERROR","INFO","ALL","colorLog","level","printLog","title","_b","description","console","log","Date","toISOString","noop","getDefaultLogger","LoggerFactory","lvl","customInterface","logInterface","lvlArray","Array","isArray","applyLog","lgLvl","reduce","accumulator","currentLvl","pubSubFactory","topics","hOP","__getTopics","subscribe","topic","listener","call","index","push","publish","forEach","item","useAppendDomNode","ids","arguments","length","rootSelector","root","id","elem","createElement","setAttribute","appendChild","target","getElementById","removeChild","VoiceMessageProvider","children","isVoiceMessageEnabled","React","VoicePlayerProvider","VoiceRecorderProvider","TIMEOUT","schedulerFactory","timeout","queue","interval","channel","channelPresent","find","c","url","setInterval","clearInterval","shift","markAsRead","clear","getQueue","useMarkAsReadScheduler","isConnected","markAsReadScheduler","useMemo","Sendbird","_c","_d","_e","_f","theme","_g","config","_h","_j","colorSet","_k","stringSet","_l","replyType","_m","dateLocale","_o","_p","voiceRecord","maxRecordingTime","VOICE_RECORDER_DEFAULT_MAX","minRecordingTime","VOICE_RECORDER_DEFAULT_MIN","_q","userListQuery","_r","imageCompression","_s","allowProfileEdit","_t","isMentionEnabled","_u","isReactionEnabled","_v","disableUserProfile","_w","_x","disableMarkAsDelivered","_y","isTypingIndicatorEnabledOnChannelList","_z","isMessageReceiptStatusEnabledOnChannelList","_0","renderUserProfile","_1","onUserProfileMessage","mediaQueryBreakPoint","_2","logLevel","_3","userMention","_4","isREMUnitEnabled","_5","setLogger","pubSub","_6","useReducer","sdkReducers","sdkInitialState","sdkStore","_7","userReducers","userInitialState","userStore","_8","currenttheme","setCurrenttheme","useOnlineStatus","localeStringSet","getStringSet","SendbirdSdkContext","Provider","value","stores","compressionRate","maxMentionCount","maxSuggestionCount","MediaQueryProvider","LocalizationProvider"],"mappings":"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"}
|