@sendbird/uikit-react 3.6.8 → 3.6.9-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 +66 -57
- package/App.js.map +1 -1
- package/CHANGELOG.md +167 -0
- package/Channel/components/ChannelHeader.js +22 -20
- package/Channel/components/ChannelHeader.js.map +1 -1
- package/Channel/components/ChannelUI.js +48 -42
- package/Channel/components/ChannelUI.js.map +1 -1
- package/Channel/components/FileViewer.js +18 -16
- package/Channel/components/FileViewer.js.map +1 -1
- package/Channel/components/FrozenNotification.js +4 -4
- package/Channel/components/Message.js +42 -37
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +48 -35
- package/Channel/components/MessageInput.js.map +1 -1
- package/Channel/components/MessageList.js +44 -38
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +25 -21
- package/Channel/components/RemoveMessageModal.js.map +1 -1
- package/Channel/components/SuggestedMentionList.js +20 -18
- package/Channel/components/SuggestedMentionList.js.map +1 -1
- package/Channel/components/TypingIndicator.js +18 -16
- package/Channel/components/TypingIndicator.js.map +1 -1
- package/Channel/components/UnreadCount.js +4 -4
- package/Channel/context.js +15 -13
- package/Channel/context.js.map +1 -1
- package/Channel/utils/compareMessagesForGrouping.js +7 -6
- package/Channel/utils/compareMessagesForGrouping.js.map +1 -1
- package/Channel/utils/getMessagePartsInfo.js +8 -7
- package/Channel/utils/getMessagePartsInfo.js.map +1 -1
- package/Channel.js +50 -42
- package/Channel.js.map +1 -1
- package/ChannelList/components/AddChannel.js +16 -15
- package/ChannelList/components/AddChannel.js.map +1 -1
- package/ChannelList/components/ChannelListHeader.js +6 -6
- package/ChannelList/components/ChannelListUI.js +33 -31
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +31 -29
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +16 -15
- package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
- package/ChannelList/context.js +9 -8
- package/ChannelList/context.js.map +1 -1
- package/ChannelList.js +33 -31
- package/ChannelList.js.map +1 -1
- package/{ChannelListProvider-63f3007c.js → ChannelListProvider-779a4c3d.js} +8 -8
- package/{ChannelListProvider-63f3007c.js.map → ChannelListProvider-779a4c3d.js.map} +1 -1
- package/{ChannelProvider-d6dedff9.js → ChannelProvider-f6fbfb1a.js} +67 -24
- package/ChannelProvider-f6fbfb1a.js.map +1 -0
- package/ChannelSettings/components/ChannelProfile.js +14 -12
- package/ChannelSettings/components/ChannelProfile.js.map +1 -1
- package/ChannelSettings/components/ChannelSettingsUI.js +18 -17
- package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
- package/ChannelSettings/components/EditDetailsModal.js +15 -13
- package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/ChannelSettings/components/LeaveChannel.js +14 -13
- package/ChannelSettings/components/LeaveChannel.js.map +1 -1
- package/ChannelSettings/components/ModerationPanel.js +16 -15
- package/ChannelSettings/components/ModerationPanel.js.map +1 -1
- package/ChannelSettings/components/UserListItem.js +11 -10
- package/ChannelSettings/components/UserListItem.js.map +1 -1
- package/ChannelSettings/components/UserPanel.js +14 -13
- package/ChannelSettings/components/UserPanel.js.map +1 -1
- package/ChannelSettings/context.js +3 -3
- package/ChannelSettings.js +18 -17
- package/ChannelSettings.js.map +1 -1
- package/CreateChannel/components/CreateChannelUI.js +15 -14
- package/CreateChannel/components/CreateChannelUI.js.map +1 -1
- package/CreateChannel/components/InviteUsers.js +16 -15
- package/CreateChannel/components/InviteUsers.js.map +1 -1
- package/CreateChannel/components/SelectChannelType.js +13 -12
- package/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/CreateChannel/context.js +4 -4
- package/CreateChannel.js +15 -14
- package/CreateChannel.js.map +1 -1
- package/{CreateChannelProvider-32ceb13a.js → CreateChannelProvider-e6c8290a.js} +1 -1
- package/{CreateChannelProvider-32ceb13a.js.map → CreateChannelProvider-e6c8290a.js.map} +1 -1
- package/CreateOpenChannel/components/CreateOpenChannelUI.js +12 -10
- package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
- package/CreateOpenChannel/context.js +1 -1
- package/CreateOpenChannel.js +11 -9
- package/CreateOpenChannel.js.map +1 -1
- package/EditUserProfile/components/EditUserProfileUI.js +13 -12
- package/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
- package/EditUserProfile.js +14 -13
- package/EditUserProfile.js.map +1 -1
- package/{LocalizationContext-9a9a0064.js → LocalizationContext-2a6ef338.js} +3 -3
- package/{LocalizationContext-9a9a0064.js.map → LocalizationContext-2a6ef338.js.map} +1 -1
- package/{MediaQueryContext-aebb709a.js → MediaQueryContext-5a34332e.js} +1 -1
- package/{MediaQueryContext-aebb709a.js.map → MediaQueryContext-5a34332e.js.map} +1 -1
- package/{MemberList-54496842.js → MemberList-5c9b9650.js} +7 -6
- package/{MemberList-54496842.js.map → MemberList-5c9b9650.js.map} +1 -1
- package/Message/hooks/useDirtyGetMentions.js +1 -1
- package/Message/hooks/useDirtyGetMentions.js.map +1 -1
- package/MessageSearch/components/MessageSearchUI.js +13 -11
- package/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/MessageSearch/context.js +1 -1
- package/MessageSearch.js +13 -11
- package/MessageSearch.js.map +1 -1
- package/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/OpenChannel/components/OpenChannelHeader.js +12 -12
- package/OpenChannel/components/OpenChannelInput.js +20 -20
- package/OpenChannel/components/OpenChannelMessage.js +35 -32
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +34 -33
- package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/OpenChannel/components/OpenChannelUI.js +34 -33
- package/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/OpenChannel/context.js +8 -8
- package/OpenChannel.js +34 -33
- package/OpenChannel.js.map +1 -1
- package/OpenChannelList/components/OpenChannelListUI.js +15 -13
- package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
- package/OpenChannelList/components/OpenChannelPreview.js +3 -3
- package/OpenChannelList/context.js +3 -3
- package/OpenChannelList.js +15 -13
- package/OpenChannelList.js.map +1 -1
- package/{OpenChannelListProvider-6f1599b7.js → OpenChannelListProvider-1ced6f18.js} +3 -3
- package/{OpenChannelListProvider-6f1599b7.js.map → OpenChannelListProvider-1ced6f18.js.map} +1 -1
- package/{OpenChannelProvider-8fdab056.js → OpenChannelProvider-4c64bb03.js} +13 -8
- package/OpenChannelProvider-4c64bb03.js.map +1 -0
- package/OpenChannelSettings/components/EditDetailsModal.js +16 -14
- package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/OpenChannelSettings/components/OpenChannelProfile.js +15 -13
- package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +19 -18
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
- package/OpenChannelSettings/components/OperatorUI.js +18 -17
- package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/OpenChannelSettings/components/ParticipantUI.js +15 -14
- package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
- package/OpenChannelSettings/context.js +3 -3
- package/OpenChannelSettings.js +19 -18
- package/OpenChannelSettings.js.map +1 -1
- package/README.md +7 -0
- package/{RemoveMessageModal-715f4bd6.js → RemoveMessageModal-1f71ab21.js} +7 -5
- package/RemoveMessageModal-1f71ab21.js.map +1 -0
- package/SendbirdProvider.js +43 -24
- package/SendbirdProvider.js.map +1 -1
- package/Thread/components/ParentMessageInfo.js +39 -36
- package/Thread/components/ParentMessageInfo.js.map +1 -1
- package/Thread/components/ParentMessageInfoItem.js +33 -23
- package/Thread/components/ParentMessageInfoItem.js.map +1 -1
- package/Thread/components/ThreadHeader.js +6 -6
- package/Thread/components/ThreadList.js +43 -39
- package/Thread/components/ThreadList.js.map +1 -1
- package/Thread/components/ThreadListItem.js +50 -40
- package/Thread/components/ThreadListItem.js.map +1 -1
- package/Thread/components/ThreadMessageInput.js +48 -35
- package/Thread/components/ThreadMessageInput.js.map +1 -1
- package/Thread/components/ThreadUI.js +48 -43
- package/Thread/components/ThreadUI.js.map +1 -1
- package/Thread/context.js +12 -8
- package/Thread/context.js.map +1 -1
- package/Thread.js +58 -44
- package/Thread.js.map +1 -1
- package/{ThreadProvider-696e3a32.js → ThreadProvider-505e55a5.js} +61 -15
- package/ThreadProvider-505e55a5.js.map +1 -0
- package/{UserProfileContext-9fba7a03.js → UserProfileContext-ca5fc057.js} +1 -1
- package/{UserProfileContext-9fba7a03.js.map → UserProfileContext-ca5fc057.js.map} +1 -1
- package/VoicePlayer/context.js +3 -3
- package/VoicePlayer/useVoicePlayer.js +12 -10
- package/VoicePlayer/useVoicePlayer.js.map +1 -1
- package/VoiceRecorder/context.js +13 -11
- package/VoiceRecorder/context.js.map +1 -1
- package/VoiceRecorder/useVoiceRecorder.js +11 -9
- package/VoiceRecorder/useVoiceRecorder.js.map +1 -1
- package/{WebAudioUtils-ba28e2b0.js → WebAudioUtils-070519e4.js} +2 -2
- package/{WebAudioUtils-ba28e2b0.js.map → WebAudioUtils-070519e4.js.map} +1 -1
- package/{_rollupPluginBabelHelpers-0f2ee8c1.js → _rollupPluginBabelHelpers-50696833.js} +1 -1
- package/_rollupPluginBabelHelpers-50696833.js.map +1 -0
- package/{actionTypes-670a9a48.js → actionTypes-a7ddf06a.js} +1 -1
- package/{actionTypes-670a9a48.js.map → actionTypes-a7ddf06a.js.map} +1 -1
- package/cjs/App.js +66 -57
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +22 -20
- package/cjs/Channel/components/ChannelHeader.js.map +1 -1
- package/cjs/Channel/components/ChannelUI.js +48 -42
- package/cjs/Channel/components/ChannelUI.js.map +1 -1
- package/cjs/Channel/components/FileViewer.js +18 -16
- package/cjs/Channel/components/FileViewer.js.map +1 -1
- package/cjs/Channel/components/FrozenNotification.js +4 -4
- package/cjs/Channel/components/Message.js +42 -37
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +49 -36
- package/cjs/Channel/components/MessageInput.js.map +1 -1
- package/cjs/Channel/components/MessageList.js +44 -38
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +25 -21
- package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
- package/cjs/Channel/components/SuggestedMentionList.js +20 -18
- package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
- package/cjs/Channel/components/TypingIndicator.js +18 -16
- package/cjs/Channel/components/TypingIndicator.js.map +1 -1
- package/cjs/Channel/components/UnreadCount.js +4 -4
- package/cjs/Channel/context.js +15 -13
- package/cjs/Channel/context.js.map +1 -1
- package/cjs/Channel/utils/compareMessagesForGrouping.js +7 -6
- package/cjs/Channel/utils/compareMessagesForGrouping.js.map +1 -1
- package/cjs/Channel/utils/getMessagePartsInfo.js +8 -7
- package/cjs/Channel/utils/getMessagePartsInfo.js.map +1 -1
- package/cjs/Channel.js +50 -42
- package/cjs/Channel.js.map +1 -1
- package/cjs/ChannelList/components/AddChannel.js +16 -15
- package/cjs/ChannelList/components/AddChannel.js.map +1 -1
- package/cjs/ChannelList/components/ChannelListHeader.js +6 -6
- package/cjs/ChannelList/components/ChannelListUI.js +33 -31
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +31 -29
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +16 -15
- package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
- package/cjs/ChannelList/context.js +9 -8
- package/cjs/ChannelList/context.js.map +1 -1
- package/cjs/ChannelList.js +33 -31
- package/cjs/ChannelList.js.map +1 -1
- package/cjs/{ChannelListProvider-1506b1fa.js → ChannelListProvider-6ab7d534.js} +8 -8
- package/cjs/{ChannelListProvider-1506b1fa.js.map → ChannelListProvider-6ab7d534.js.map} +1 -1
- package/cjs/{ChannelProvider-c8bc29d3.js → ChannelProvider-5dab910c.js} +67 -24
- package/cjs/ChannelProvider-5dab910c.js.map +1 -0
- package/cjs/ChannelSettings/components/ChannelProfile.js +14 -12
- package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -17
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
- package/cjs/ChannelSettings/components/EditDetailsModal.js +15 -13
- package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/cjs/ChannelSettings/components/LeaveChannel.js +15 -14
- package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
- package/cjs/ChannelSettings/components/ModerationPanel.js +19 -18
- package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
- package/cjs/ChannelSettings/components/UserListItem.js +11 -10
- package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
- package/cjs/ChannelSettings/components/UserPanel.js +14 -13
- package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
- package/cjs/ChannelSettings/context.js +3 -3
- package/cjs/ChannelSettings.js +18 -17
- package/cjs/ChannelSettings.js.map +1 -1
- package/cjs/CreateChannel/components/CreateChannelUI.js +15 -14
- package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
- package/cjs/CreateChannel/components/InviteUsers.js +16 -15
- package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
- package/cjs/CreateChannel/components/SelectChannelType.js +13 -12
- package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/cjs/CreateChannel/context.js +4 -4
- package/cjs/CreateChannel.js +15 -14
- package/cjs/CreateChannel.js.map +1 -1
- package/cjs/{CreateChannelProvider-f30302a5.js → CreateChannelProvider-87b5a870.js} +1 -1
- package/cjs/{CreateChannelProvider-f30302a5.js.map → CreateChannelProvider-87b5a870.js.map} +1 -1
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +12 -10
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
- package/cjs/CreateOpenChannel/context.js +1 -1
- package/cjs/CreateOpenChannel.js +11 -9
- package/cjs/CreateOpenChannel.js.map +1 -1
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -12
- package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
- package/cjs/EditUserProfile.js +14 -13
- package/cjs/EditUserProfile.js.map +1 -1
- package/cjs/{LocalizationContext-9c99457f.js → LocalizationContext-01462759.js} +3 -3
- package/cjs/{LocalizationContext-9c99457f.js.map → LocalizationContext-01462759.js.map} +1 -1
- package/cjs/{MediaQueryContext-a5c77095.js → MediaQueryContext-550a1a76.js} +1 -1
- package/cjs/{MediaQueryContext-a5c77095.js.map → MediaQueryContext-550a1a76.js.map} +1 -1
- package/cjs/{MemberList-166dd7de.js → MemberList-446c4808.js} +8 -7
- package/cjs/{MemberList-166dd7de.js.map → MemberList-446c4808.js.map} +1 -1
- package/cjs/Message/hooks/useDirtyGetMentions.js +1 -1
- package/cjs/Message/hooks/useDirtyGetMentions.js.map +1 -1
- package/cjs/MessageSearch/components/MessageSearchUI.js +13 -11
- package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/cjs/MessageSearch/context.js +1 -1
- package/cjs/MessageSearch.js +13 -11
- package/cjs/MessageSearch.js.map +1 -1
- package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
- package/cjs/OpenChannel/components/OpenChannelInput.js +20 -20
- package/cjs/OpenChannel/components/OpenChannelMessage.js +35 -32
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +34 -33
- package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelUI.js +34 -33
- package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/cjs/OpenChannel/context.js +8 -8
- package/cjs/OpenChannel.js +34 -33
- package/cjs/OpenChannel.js.map +1 -1
- package/cjs/OpenChannelList/components/OpenChannelListUI.js +15 -13
- package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
- package/cjs/OpenChannelList/components/OpenChannelPreview.js +3 -3
- package/cjs/OpenChannelList/context.js +3 -3
- package/cjs/OpenChannelList.js +15 -13
- package/cjs/OpenChannelList.js.map +1 -1
- package/cjs/{OpenChannelListProvider-74ae7138.js → OpenChannelListProvider-ca0abdf0.js} +3 -3
- package/cjs/{OpenChannelListProvider-74ae7138.js.map → OpenChannelListProvider-ca0abdf0.js.map} +1 -1
- package/cjs/{OpenChannelProvider-57c10c09.js → OpenChannelProvider-77ce94f4.js} +13 -8
- package/cjs/OpenChannelProvider-77ce94f4.js.map +1 -0
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +16 -14
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +15 -13
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +19 -18
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/OperatorUI.js +22 -21
- package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -14
- package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
- package/cjs/OpenChannelSettings/context.js +3 -3
- package/cjs/OpenChannelSettings.js +19 -18
- package/cjs/OpenChannelSettings.js.map +1 -1
- package/cjs/{RemoveMessageModal-029b1c86.js → RemoveMessageModal-c97607e4.js} +7 -5
- package/cjs/RemoveMessageModal-c97607e4.js.map +1 -0
- package/cjs/SendbirdProvider.js +43 -24
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfo.js +39 -36
- package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfoItem.js +33 -23
- package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
- package/cjs/Thread/components/ThreadHeader.js +6 -6
- package/cjs/Thread/components/ThreadList.js +43 -39
- package/cjs/Thread/components/ThreadList.js.map +1 -1
- package/cjs/Thread/components/ThreadListItem.js +53 -43
- package/cjs/Thread/components/ThreadListItem.js.map +1 -1
- package/cjs/Thread/components/ThreadMessageInput.js +49 -36
- package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
- package/cjs/Thread/components/ThreadUI.js +48 -43
- package/cjs/Thread/components/ThreadUI.js.map +1 -1
- package/cjs/Thread/context.js +12 -8
- package/cjs/Thread/context.js.map +1 -1
- package/cjs/Thread.js +58 -44
- package/cjs/Thread.js.map +1 -1
- package/cjs/{ThreadProvider-9dfc3ad5.js → ThreadProvider-e33ab585.js} +61 -15
- package/cjs/ThreadProvider-e33ab585.js.map +1 -0
- package/cjs/{UserProfileContext-1f226141.js → UserProfileContext-a871377d.js} +1 -1
- package/cjs/{UserProfileContext-1f226141.js.map → UserProfileContext-a871377d.js.map} +1 -1
- package/cjs/VoicePlayer/context.js +3 -3
- package/cjs/VoicePlayer/useVoicePlayer.js +12 -10
- package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -1
- package/cjs/VoiceRecorder/context.js +13 -11
- package/cjs/VoiceRecorder/context.js.map +1 -1
- package/cjs/VoiceRecorder/useVoiceRecorder.js +11 -9
- package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -1
- package/cjs/{WebAudioUtils-250f7398.js → WebAudioUtils-9110f2c8.js} +2 -2
- package/cjs/{WebAudioUtils-250f7398.js.map → WebAudioUtils-9110f2c8.js.map} +1 -1
- package/cjs/{_rollupPluginBabelHelpers-117c3ffb.js → _rollupPluginBabelHelpers-c6220b54.js} +1 -1
- package/cjs/_rollupPluginBabelHelpers-c6220b54.js.map +1 -0
- package/cjs/{actionTypes-01de4d11.js → actionTypes-e50d3f49.js} +1 -1
- package/cjs/{actionTypes-01de4d11.js.map → actionTypes-e50d3f49.js.map} +1 -1
- package/cjs/{color-a057a4c2.js → color-437027bf.js} +1 -1
- package/cjs/{color-a057a4c2.js.map → color-437027bf.js.map} +1 -1
- package/cjs/{compareIds-49d9aea6.js → compareIds-6d5c4c39.js} +1 -1
- package/cjs/{compareIds-49d9aea6.js.map → compareIds-6d5c4c39.js.map} +1 -1
- package/cjs/{const-cd9b71c8.js → const-2c58fa8c.js} +1 -1
- package/cjs/{const-cd9b71c8.js.map → const-2c58fa8c.js.map} +1 -1
- package/cjs/{const-8e4d382d.js → const-7cb82662.js} +1 -1
- package/cjs/{const-8e4d382d.js.map → const-7cb82662.js.map} +1 -1
- package/cjs/{consts-fb9dd3a0.js → consts-50006df9.js} +5 -1
- package/cjs/{consts-fb9dd3a0.js.map → consts-50006df9.js.map} +1 -1
- package/cjs/{consts-4a51c64b.js → consts-58a1099d.js} +1 -1
- package/cjs/{consts-4a51c64b.js.map → consts-58a1099d.js.map} +1 -1
- package/cjs/{consts-d866b64a.js → consts-85acfb7f.js} +1 -1
- package/cjs/{consts-d866b64a.js.map → consts-85acfb7f.js.map} +1 -1
- package/cjs/{consts-3afe4fa8.js → consts-de5a3115.js} +1 -1
- package/cjs/{consts-3afe4fa8.js.map → consts-de5a3115.js.map} +1 -1
- package/cjs/{context-d7bb15b5.js → context-57928814.js} +2 -2
- package/cjs/{context-d7bb15b5.js.map → context-57928814.js.map} +1 -1
- package/cjs/dist/index.css +371 -280
- package/cjs/dist/index.css.map +1 -1
- package/cjs/{index-2413bae4.js → index-0e23b304.js} +1 -1
- package/cjs/index-0e23b304.js.map +1 -0
- package/cjs/index-13b55ebd.js +139 -0
- package/cjs/index-13b55ebd.js.map +1 -0
- package/cjs/{index-0599b6f2.js → index-3888ca97.js} +36 -4
- package/cjs/index-3888ca97.js.map +1 -0
- package/cjs/{index-df172622.js → index-43271226.js} +2 -2
- package/cjs/{index-df172622.js.map → index-43271226.js.map} +1 -1
- package/cjs/{index-15e4fb71.js → index-4f568909.js} +4 -4
- package/cjs/{index-15e4fb71.js.map → index-4f568909.js.map} +1 -1
- package/cjs/{index-ba4dea0c.js → index-63eb5ff7.js} +1 -1
- package/cjs/{index-ba4dea0c.js.map → index-63eb5ff7.js.map} +1 -1
- package/cjs/{index-fe1b738f.js → index-64dc3492.js} +3 -3
- package/cjs/{index-fe1b738f.js.map → index-64dc3492.js.map} +1 -1
- package/cjs/{index-a5aa0a9b.js → index-6bfc2f69.js} +8 -7
- package/cjs/{index-a5aa0a9b.js.map → index-6bfc2f69.js.map} +1 -1
- package/cjs/{index-913491a1.js → index-71366fc1.js} +2 -2
- package/cjs/{index-913491a1.js.map → index-71366fc1.js.map} +1 -1
- package/cjs/{index-d5522aef.js → index-85aa0eb6.js} +2 -2
- package/cjs/{index-d5522aef.js.map → index-85aa0eb6.js.map} +1 -1
- package/cjs/{index-0d4c4adf.js → index-8633e84b.js} +3 -3
- package/cjs/{index-0d4c4adf.js.map → index-8633e84b.js.map} +1 -1
- package/cjs/index-8d04d6f8.js +58 -0
- package/cjs/index-8d04d6f8.js.map +1 -0
- package/cjs/{index-c59af641.js → index-8fca1595.js} +2 -2
- package/cjs/{index-c59af641.js.map → index-8fca1595.js.map} +1 -1
- package/cjs/{index-464461c9.js → index-957f62e0.js} +20 -12
- package/cjs/index-957f62e0.js.map +1 -0
- package/cjs/{index-9cffff55.js → index-9c68a768.js} +3 -3
- package/cjs/{index-9cffff55.js.map → index-9c68a768.js.map} +1 -1
- package/cjs/{index-dc15cf44.js → index-9ff45780.js} +4 -4
- package/cjs/{index-dc15cf44.js.map → index-9ff45780.js.map} +1 -1
- package/cjs/{index-5b3bc2e9.js → index-a734f18b.js} +4 -4
- package/cjs/{index-5b3bc2e9.js.map → index-a734f18b.js.map} +1 -1
- package/cjs/{index-5359bc78.js → index-aabf3cd7.js} +6 -6
- package/cjs/{index-5359bc78.js.map → index-aabf3cd7.js.map} +1 -1
- package/cjs/{index-4eb2a000.js → index-b5b8572e.js} +2 -2
- package/cjs/{index-4eb2a000.js.map → index-b5b8572e.js.map} +1 -1
- package/cjs/{index-2d4ea9ad.js → index-c36eec86.js} +4 -4
- package/cjs/index-c36eec86.js.map +1 -0
- package/cjs/{index-b64ce51a.js → index-cd217acb.js} +10 -9
- package/cjs/index-cd217acb.js.map +1 -0
- package/cjs/index.js +60 -55
- package/cjs/index.js.map +1 -1
- package/cjs/{index.module-2c2cf337.js → index.module-cd5fee9a.js} +1 -1
- package/cjs/{index.module-2c2cf337.js.map → index.module-cd5fee9a.js.map} +1 -1
- package/cjs/package.json +1 -1
- package/cjs/{resolvedReplyType-053d2dbc.js → resolvedReplyType-e6b60483.js} +1 -1
- package/cjs/{resolvedReplyType-053d2dbc.js.map → resolvedReplyType-e6b60483.js.map} +1 -1
- package/cjs/sendbirdSelectors.js +3 -3
- package/cjs/stringFormatterUtils-222bd4a1.js +16 -0
- package/cjs/stringFormatterUtils-222bd4a1.js.map +1 -0
- package/cjs/{stringSet-dbdeec9c.js → stringSet-569a20f9.js} +1 -1
- package/cjs/{stringSet-dbdeec9c.js.map → stringSet-569a20f9.js.map} +1 -1
- package/cjs/{tokenize-7204c391.js → tokenize-d84a3b40.js} +2 -2
- package/cjs/{tokenize-7204c391.js.map → tokenize-d84a3b40.js.map} +1 -1
- package/cjs/{topics-c495cb3a.js → topics-44c343a5.js} +1 -1
- package/cjs/{topics-c495cb3a.js.map → topics-44c343a5.js.map} +1 -1
- package/cjs/{types-79ca7893.js → types-065ea007.js} +1 -1
- package/cjs/types-065ea007.js.map +1 -0
- package/cjs/ui/Accordion.js +2 -2
- package/cjs/ui/AccordionGroup.js +2 -2
- package/cjs/ui/AdminMessage.js +2 -2
- package/cjs/ui/Avatar.js +1 -1
- package/cjs/ui/Badge.js +4 -4
- package/cjs/ui/BottomSheet.js +6 -1
- package/cjs/ui/BottomSheet.js.map +1 -1
- package/cjs/ui/Button.js +10 -12
- package/cjs/ui/Button.js.map +1 -1
- package/cjs/ui/ChannelAvatar.js +2 -2
- package/cjs/ui/ConnectionStatus.js +4 -4
- package/cjs/ui/ContextMenu.js +6 -5
- package/cjs/ui/ContextMenu.js.map +1 -1
- package/cjs/ui/DateSeparator.js +3 -3
- package/cjs/ui/EmojiReactions.js +14 -13
- package/cjs/ui/EmojiReactions.js.map +1 -1
- package/cjs/ui/FileMessageItemBody.js +7 -6
- package/cjs/ui/FileMessageItemBody.js.map +1 -1
- package/cjs/ui/FileViewer.js +14 -13
- package/cjs/ui/FileViewer.js.map +1 -1
- package/cjs/ui/Icon.js +3 -0
- package/cjs/ui/Icon.js.map +1 -1
- package/cjs/ui/IconButton.js +1 -1
- package/cjs/ui/ImageRenderer.js +58 -14
- package/cjs/ui/ImageRenderer.js.map +1 -1
- package/cjs/ui/Input.js +2 -2
- package/cjs/ui/Label.js +2 -2
- package/cjs/ui/LinkLabel.js +2 -2
- package/cjs/ui/MentionLabel.js +11 -10
- package/cjs/ui/MentionLabel.js.map +1 -1
- package/cjs/ui/MentionUserLabel.js +1 -1
- package/cjs/ui/MessageContent.js +43 -34
- package/cjs/ui/MessageContent.js.map +1 -1
- package/cjs/ui/MessageInput/hooks/usePaste.js +4 -4
- package/cjs/ui/MessageInput.js +54 -40
- package/cjs/ui/MessageInput.js.map +1 -1
- package/cjs/ui/MessageItemMenu.js +9 -8
- package/cjs/ui/MessageItemMenu.js.map +1 -1
- package/cjs/ui/MessageItemReactionMenu.js +9 -8
- package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
- package/cjs/ui/MessageSearchFileItem.js +18 -18
- package/cjs/ui/MessageSearchFileItem.js.map +1 -1
- package/cjs/ui/MessageSearchItem.js +8 -8
- package/cjs/ui/MessageStatus.js +11 -10
- package/cjs/ui/MessageStatus.js.map +1 -1
- package/cjs/ui/Modal.js +26 -17
- package/cjs/ui/Modal.js.map +1 -1
- package/cjs/ui/OGMessageItemBody.js +14 -14
- package/cjs/ui/OpenChannelAdminMessage.js +2 -2
- package/cjs/ui/OpenChannelAvatar.js +5 -5
- package/cjs/ui/OpenchannelConversationHeader.js +6 -6
- package/cjs/ui/OpenchannelFileMessage.js +16 -15
- package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
- package/cjs/ui/OpenchannelOGMessage.js +18 -18
- package/cjs/ui/OpenchannelThumbnailMessage.js +15 -14
- package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/cjs/ui/OpenchannelUserMessage.js +16 -15
- package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
- package/cjs/ui/PlaceHolder.js +5 -5
- package/cjs/ui/PlaybackTime.js +2 -2
- package/cjs/ui/QuoteMessage.js +15 -13
- package/cjs/ui/QuoteMessage.js.map +1 -1
- package/cjs/ui/QuoteMessageInput.js +14 -12
- package/cjs/ui/QuoteMessageInput.js.map +1 -1
- package/cjs/ui/ReactionBadge.js +2 -2
- package/cjs/ui/ReactionButton.js +4 -4
- package/cjs/ui/SortByRow.js +1 -1
- package/cjs/ui/TextButton.js +1 -1
- package/cjs/ui/TextMessageItemBody.js +14 -14
- package/cjs/ui/ThreadReplies.js +5 -5
- package/cjs/ui/ThumbnailMessageItemBody.js +16 -17
- package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/cjs/ui/Toggle.js +1 -1
- package/cjs/ui/Tooltip.js +2 -2
- package/cjs/ui/UnknownMessageItemBody.js +7 -6
- package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
- package/cjs/ui/UserListItem.js +11 -10
- package/cjs/ui/UserListItem.js.map +1 -1
- package/cjs/ui/UserProfile.js +9 -9
- package/cjs/ui/VoiceMessageItemBody.js +12 -10
- package/cjs/ui/VoiceMessageItemBody.js.map +1 -1
- package/cjs/ui/VoiceMessgeInput.js +7 -7
- package/cjs/ui/Word.js +11 -10
- package/cjs/ui/Word.js.map +1 -1
- package/cjs/{VoiceMessageInputWrapper-953affee.js → useHandleUploadFiles-cd2fcecd.js} +129 -8
- package/cjs/useHandleUploadFiles-cd2fcecd.js.map +1 -0
- package/cjs/{useLongPress-e7c92bb0.js → useLongPress-b3303d9c.js} +3 -3
- package/cjs/{useLongPress-e7c92bb0.js.map → useLongPress-b3303d9c.js.map} +1 -1
- package/cjs/useSendMultipleFilesMessage-1093a2d5.js +109 -0
- package/cjs/useSendMultipleFilesMessage-1093a2d5.js.map +1 -0
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/utils/message/isVoiceMessage.js +3 -2
- package/cjs/utils/message/isVoiceMessage.js.map +1 -1
- package/cjs/{utils-c2f38151.js → utils-025bf87c.js} +1 -1
- package/cjs/{utils-c2f38151.js.map → utils-025bf87c.js.map} +1 -1
- package/cjs/utils-3b3b18a3.js +62 -0
- package/cjs/utils-3b3b18a3.js.map +1 -0
- package/cjs/{utils-657ea6e9.js → utils-4040fa0e.js} +1 -1
- package/cjs/{utils-657ea6e9.js.map → utils-4040fa0e.js.map} +1 -1
- package/cjs/{utils-b6cca626.js → utils-91440270.js} +4 -4
- package/cjs/{utils-b6cca626.js.map → utils-91440270.js.map} +1 -1
- package/cjs/{utils-cc9de39b.js → utils-9ce6a1d4.js} +1 -1
- package/cjs/{utils-cc9de39b.js.map → utils-9ce6a1d4.js.map} +1 -1
- package/cjs/{utils-90a7cd20.js → utils-a1c39113.js} +2 -2
- package/cjs/{utils-90a7cd20.js.map → utils-a1c39113.js.map} +1 -1
- package/cjs/{uuid-b2882230.js → uuid-10da34d7.js} +1 -1
- package/cjs/{uuid-b2882230.js.map → uuid-10da34d7.js.map} +1 -1
- package/cjs/withSendbird.js +8 -1
- package/cjs/withSendbird.js.map +1 -1
- package/{color-65ef45d7.js → color-6b4d0a7b.js} +1 -1
- package/{color-65ef45d7.js.map → color-6b4d0a7b.js.map} +1 -1
- package/{compareIds-c0aa8024.js → compareIds-8bbfc531.js} +1 -1
- package/{compareIds-c0aa8024.js.map → compareIds-8bbfc531.js.map} +1 -1
- package/{const-537b3aa9.js → const-7a48f2f0.js} +1 -1
- package/{const-537b3aa9.js.map → const-7a48f2f0.js.map} +1 -1
- package/{const-2c36fe72.js → const-bd67ba4a.js} +1 -1
- package/{const-2c36fe72.js.map → const-bd67ba4a.js.map} +1 -1
- package/{consts-ee08d763.js → consts-087a1fb9.js} +1 -1
- package/{consts-ee08d763.js.map → consts-087a1fb9.js.map} +1 -1
- package/{consts-397a92f1.js → consts-2ddaffce.js} +5 -2
- package/{consts-397a92f1.js.map → consts-2ddaffce.js.map} +1 -1
- package/{consts-066d732d.js → consts-8b2a8d9c.js} +1 -1
- package/{consts-066d732d.js.map → consts-8b2a8d9c.js.map} +1 -1
- package/{consts-c105f2e8.js → consts-a27675df.js} +1 -1
- package/{consts-c105f2e8.js.map → consts-a27675df.js.map} +1 -1
- package/{context-524b02ab.js → context-731512f4.js} +2 -2
- package/{context-524b02ab.js.map → context-731512f4.js.map} +1 -1
- package/dist/index.css +371 -280
- package/dist/index.css.map +1 -1
- package/{index-f1d37762.js → index-0791839a.js} +4 -4
- package/{index-f1d37762.js.map → index-0791839a.js.map} +1 -1
- package/{index-d16a8084.js → index-134f97cd.js} +1 -1
- package/index-134f97cd.js.map +1 -0
- package/{index-d972c8e3.js → index-1e76921e.js} +4 -4
- package/{index-d972c8e3.js.map → index-1e76921e.js.map} +1 -1
- package/{index-40e8e312.js → index-2588389f.js} +2 -2
- package/{index-40e8e312.js.map → index-2588389f.js.map} +1 -1
- package/{index-91634369.js → index-31fae6a0.js} +1 -1
- package/{index-91634369.js.map → index-31fae6a0.js.map} +1 -1
- package/{index-4236c5c8.js → index-3bead442.js} +2 -2
- package/{index-4236c5c8.js.map → index-3bead442.js.map} +1 -1
- package/{index-3f6516a2.js → index-6233952f.js} +4 -4
- package/index-6233952f.js.map +1 -0
- package/{index-8017e2b5.js → index-62371bdd.js} +10 -9
- package/index-62371bdd.js.map +1 -0
- package/{index-2969a2df.js → index-62abd822.js} +20 -12
- package/index-62abd822.js.map +1 -0
- package/{index-aa87ac03.js → index-66948f26.js} +3 -3
- package/{index-aa87ac03.js.map → index-66948f26.js.map} +1 -1
- package/index-7ff60f7d.js +51 -0
- package/index-7ff60f7d.js.map +1 -0
- package/{index-da7bc750.js → index-9fca62f4.js} +3 -3
- package/{index-da7bc750.js.map → index-9fca62f4.js.map} +1 -1
- package/{index-4c4b34c9.js → index-a3ca9833.js} +3 -3
- package/{index-4c4b34c9.js.map → index-a3ca9833.js.map} +1 -1
- package/index-b038bbfd.js +132 -0
- package/index-b038bbfd.js.map +1 -0
- package/{index-72d247f7.js → index-c46d2bb8.js} +2 -2
- package/{index-72d247f7.js.map → index-c46d2bb8.js.map} +1 -1
- package/{index-d6ceb67a.js → index-c5f3ebb5.js} +2 -2
- package/{index-d6ceb67a.js.map → index-c5f3ebb5.js.map} +1 -1
- package/{index-39eeabbb.js → index-cd866969.js} +33 -5
- package/index-cd866969.js.map +1 -0
- package/{index-5ebb83a2.js → index-d004f5a9.js} +4 -4
- package/{index-5ebb83a2.js.map → index-d004f5a9.js.map} +1 -1
- package/{index-3e2f101e.js → index-d4d4f948.js} +6 -6
- package/{index-3e2f101e.js.map → index-d4d4f948.js.map} +1 -1
- package/{index-4c58b734.js → index-d6757790.js} +8 -7
- package/{index-4c58b734.js.map → index-d6757790.js.map} +1 -1
- package/{index-7c1266b5.js → index-ec9b8bb2.js} +2 -2
- package/{index-7c1266b5.js.map → index-ec9b8bb2.js.map} +1 -1
- package/index.d.ts +155 -31
- package/index.js +60 -55
- package/index.js.map +1 -1
- package/{index.module-b694546f.js → index.module-05a84007.js} +1 -1
- package/{index.module-b694546f.js.map → index.module-05a84007.js.map} +1 -1
- package/package.json +1 -1
- package/{resolvedReplyType-97610f1a.js → resolvedReplyType-7fa7b725.js} +1 -1
- package/{resolvedReplyType-97610f1a.js.map → resolvedReplyType-7fa7b725.js.map} +1 -1
- package/sendbirdSelectors.js +3 -3
- package/stringFormatterUtils-bae59a9b.js +14 -0
- package/stringFormatterUtils-bae59a9b.js.map +1 -0
- package/{stringSet-ed242956.js → stringSet-a3384f83.js} +1 -1
- package/{stringSet-ed242956.js.map → stringSet-a3384f83.js.map} +1 -1
- package/{tokenize-3c45100f.js → tokenize-7edff95a.js} +2 -2
- package/{tokenize-3c45100f.js.map → tokenize-7edff95a.js.map} +1 -1
- package/{topics-da8f3f42.js → topics-85213ccb.js} +1 -1
- package/{topics-da8f3f42.js.map → topics-85213ccb.js.map} +1 -1
- package/{types-3826bbff.js → types-6bc0cc06.js} +1 -1
- package/types-6bc0cc06.js.map +1 -0
- package/ui/Accordion.js +2 -2
- package/ui/AccordionGroup.js +2 -2
- package/ui/AdminMessage.js +2 -2
- package/ui/Avatar.js +1 -1
- package/ui/Badge.js +4 -4
- package/ui/BottomSheet.js +6 -1
- package/ui/BottomSheet.js.map +1 -1
- package/ui/Button.js +10 -12
- package/ui/Button.js.map +1 -1
- package/ui/ChannelAvatar.js +2 -2
- package/ui/ConnectionStatus.js +4 -4
- package/ui/ContextMenu.js +6 -5
- package/ui/ContextMenu.js.map +1 -1
- package/ui/DateSeparator.js +3 -3
- package/ui/EmojiReactions.js +14 -13
- package/ui/EmojiReactions.js.map +1 -1
- package/ui/FileMessageItemBody.js +7 -6
- package/ui/FileMessageItemBody.js.map +1 -1
- package/ui/FileViewer.js +14 -13
- package/ui/FileViewer.js.map +1 -1
- package/ui/Icon.js +3 -0
- package/ui/Icon.js.map +1 -1
- package/ui/IconButton.js +1 -1
- package/ui/ImageRenderer.js +59 -15
- package/ui/ImageRenderer.js.map +1 -1
- package/ui/Input.js +2 -2
- package/ui/Label.js +2 -2
- package/ui/LinkLabel.js +2 -2
- package/ui/MentionLabel.js +11 -10
- package/ui/MentionLabel.js.map +1 -1
- package/ui/MentionUserLabel.js +1 -1
- package/ui/MessageContent.js +42 -33
- package/ui/MessageContent.js.map +1 -1
- package/ui/MessageInput/hooks/usePaste.js +4 -4
- package/ui/MessageInput.js +54 -40
- package/ui/MessageInput.js.map +1 -1
- package/ui/MessageItemMenu.js +9 -8
- package/ui/MessageItemMenu.js.map +1 -1
- package/ui/MessageItemReactionMenu.js +9 -8
- package/ui/MessageItemReactionMenu.js.map +1 -1
- package/ui/MessageSearchFileItem.js +18 -18
- package/ui/MessageSearchFileItem.js.map +1 -1
- package/ui/MessageSearchItem.js +8 -8
- package/ui/MessageStatus.js +11 -10
- package/ui/MessageStatus.js.map +1 -1
- package/ui/Modal.js +26 -18
- package/ui/Modal.js.map +1 -1
- package/ui/OGMessageItemBody.js +14 -14
- package/ui/OpenChannelAdminMessage.js +2 -2
- package/ui/OpenChannelAvatar.js +5 -5
- package/ui/OpenchannelConversationHeader.js +6 -6
- package/ui/OpenchannelFileMessage.js +16 -15
- package/ui/OpenchannelFileMessage.js.map +1 -1
- package/ui/OpenchannelOGMessage.js +18 -18
- package/ui/OpenchannelThumbnailMessage.js +15 -14
- package/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/ui/OpenchannelUserMessage.js +16 -15
- package/ui/OpenchannelUserMessage.js.map +1 -1
- package/ui/PlaceHolder.js +5 -5
- package/ui/PlaybackTime.js +2 -2
- package/ui/QuoteMessage.js +15 -13
- package/ui/QuoteMessage.js.map +1 -1
- package/ui/QuoteMessageInput.js +14 -12
- package/ui/QuoteMessageInput.js.map +1 -1
- package/ui/ReactionBadge.js +2 -2
- package/ui/ReactionButton.js +4 -4
- package/ui/SortByRow.js +1 -1
- package/ui/TextButton.js +1 -1
- package/ui/TextMessageItemBody.js +14 -14
- package/ui/ThreadReplies.js +5 -5
- package/ui/ThumbnailMessageItemBody.js +14 -15
- package/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/ui/Toggle.js +1 -1
- package/ui/Tooltip.js +2 -2
- package/ui/UnknownMessageItemBody.js +7 -6
- package/ui/UnknownMessageItemBody.js.map +1 -1
- package/ui/UserListItem.js +11 -10
- package/ui/UserListItem.js.map +1 -1
- package/ui/UserProfile.js +9 -9
- package/ui/VoiceMessageItemBody.js +12 -10
- package/ui/VoiceMessageItemBody.js.map +1 -1
- package/ui/VoiceMessgeInput.js +7 -7
- package/ui/Word.js +11 -10
- package/ui/Word.js.map +1 -1
- package/{VoiceMessageInputWrapper-b074aec5.js → useHandleUploadFiles-15dc0c2d.js} +130 -10
- package/useHandleUploadFiles-15dc0c2d.js.map +1 -0
- package/{useLongPress-0189f9c3.js → useLongPress-11759804.js} +3 -3
- package/{useLongPress-0189f9c3.js.map → useLongPress-11759804.js.map} +1 -1
- package/useSendMultipleFilesMessage-3b16fa85.js +107 -0
- package/useSendMultipleFilesMessage-3b16fa85.js.map +1 -0
- package/useSendbirdStateContext.js +1 -1
- package/utils/message/isVoiceMessage.js +3 -2
- package/utils/message/isVoiceMessage.js.map +1 -1
- package/utils-11da9785.js +57 -0
- package/utils-11da9785.js.map +1 -0
- package/{utils-40781609.js → utils-1a4154f1.js} +1 -1
- package/{utils-40781609.js.map → utils-1a4154f1.js.map} +1 -1
- package/{utils-3bd17cc2.js → utils-4078c160.js} +1 -1
- package/{utils-3bd17cc2.js.map → utils-4078c160.js.map} +1 -1
- package/{utils-373b8143.js → utils-749b8812.js} +1 -1
- package/{utils-373b8143.js.map → utils-749b8812.js.map} +1 -1
- package/{utils-cae5adba.js → utils-e72dd1e0.js} +2 -2
- package/{utils-cae5adba.js.map → utils-e72dd1e0.js.map} +1 -1
- package/{utils-b7161189.js → utils-fc37f1e5.js} +4 -4
- package/{utils-b7161189.js.map → utils-fc37f1e5.js.map} +1 -1
- package/{uuid-6d982751.js → uuid-87e2df67.js} +1 -1
- package/{uuid-6d982751.js.map → uuid-87e2df67.js.map} +1 -1
- package/withSendbird.js +8 -1
- package/withSendbird.js.map +1 -1
- package/ChannelProvider-d6dedff9.js.map +0 -1
- package/OpenChannelProvider-8fdab056.js.map +0 -1
- package/RemoveMessageModal-715f4bd6.js.map +0 -1
- package/ThreadProvider-696e3a32.js.map +0 -1
- package/VoiceMessageInputWrapper-b074aec5.js.map +0 -1
- package/_rollupPluginBabelHelpers-0f2ee8c1.js.map +0 -1
- package/cjs/ChannelProvider-c8bc29d3.js.map +0 -1
- package/cjs/OpenChannelProvider-57c10c09.js.map +0 -1
- package/cjs/RemoveMessageModal-029b1c86.js.map +0 -1
- package/cjs/ThreadProvider-9dfc3ad5.js.map +0 -1
- package/cjs/VoiceMessageInputWrapper-953affee.js.map +0 -1
- package/cjs/_rollupPluginBabelHelpers-117c3ffb.js.map +0 -1
- package/cjs/index-0599b6f2.js.map +0 -1
- package/cjs/index-2413bae4.js.map +0 -1
- package/cjs/index-2d4ea9ad.js.map +0 -1
- package/cjs/index-464461c9.js.map +0 -1
- package/cjs/index-b64ce51a.js.map +0 -1
- package/cjs/types-79ca7893.js.map +0 -1
- package/index-2969a2df.js.map +0 -1
- package/index-39eeabbb.js.map +0 -1
- package/index-3f6516a2.js.map +0 -1
- package/index-8017e2b5.js.map +0 -1
- package/index-d16a8084.js.map +0 -1
- package/types-3826bbff.js.map +0 -1
package/ui/UserListItem.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserListItem.js","sources":["../../src/ui/UserListItem/index.tsx"],"sourcesContent":["import React, { ChangeEvent, MutableRefObject, ReactElement, useContext } from 'react';\nimport { User } from '@sendbird/chat';\nimport { Member } from '@sendbird/chat/groupChannel';\nimport './index.scss';\n\nimport { UserProfileContext } from '../../lib/UserProfileContext';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\nimport Avatar from '../Avatar/index';\nimport MutedAvatarOverlay from '../Avatar/MutedAvatarOverlay';\nimport Checkbox from '../Checkbox';\nimport UserProfile from '../UserProfile';\nimport ContextMenu, { MenuItems } from '../ContextMenu';\nimport Label, { LabelTypography, LabelColors } from '../Label';\n\nexport interface UserListItemProps {\n user: User;\n className?: string;\n checked?: boolean;\n checkBox?: boolean;\n isOperator?: boolean;\n disabled?: boolean;\n disableMessaging?: boolean;\n currentUser?: string;\n action?({ actionRef, parentRef }: {\n actionRef: MutableRefObject<any>,\n parentRef?: MutableRefObject<any>,\n }): ReactElement;\n onChange?(e: ChangeEvent<HTMLInputElement>): void;\n avatarSize?: string;\n}\n\nexport default function UserListItem({\n user,\n className,\n checked,\n checkBox,\n isOperator,\n disabled,\n disableMessaging,\n currentUser,\n action,\n onChange,\n avatarSize = '40px',\n}: UserListItemProps): ReactElement {\n const uniqueKey = user.userId;\n const actionRef = React.useRef(null);\n const parentRef = React.useRef(null);\n const avatarRef = React.useRef(null);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext<UserProfileContext>(UserProfileContext);\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-user-list-item',\n ].join(' ')}\n ref={parentRef}\n >\n {\n (user as Member)?.isMuted && (\n <MutedAvatarOverlay height={40} width={40} />\n )\n }\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-user-list-item__avatar\"\n ref={avatarRef}\n src={user.profileUrl}\n width={avatarSize}\n height={avatarSize}\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown();\n }\n }}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n openLeft\n parentRef={avatarRef}\n // for catching location(x, y) of MenuItems\n parentContainRef={avatarRef}\n // for toggling more options(menus & reactions)\n closeDropdown={closeDropdown}\n style={{ paddingTop: '0px', paddingBottom: '0px' }}\n >\n {\n renderUserProfile\n ? renderUserProfile({\n user,\n currentUserId: currentUser,\n close: closeDropdown,\n })\n : (\n <UserProfile\n disableMessaging={disableMessaging}\n user={user}\n currentUserId={currentUser}\n onSuccess={closeDropdown}\n />\n )\n }\n </MenuItems>\n )}\n />\n <Label\n className=\"sendbird-user-list-item__title\"\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {user.nickname || stringSet.NO_NAME}\n {\n (currentUser === user.userId) && (\n ' (You)'\n )\n }\n </Label>\n { // if there is now nickname, display userId\n !user.nickname && (\n <Label\n className=\"sendbird-user-list-item__subtitle\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {user.userId}\n </Label>\n )\n }\n {\n checkBox && (\n <label\n className=\"sendbird-user-list-item__checkbox\"\n htmlFor={uniqueKey}\n >\n <Checkbox\n id={uniqueKey}\n checked={checked}\n disabled={disabled}\n onChange={(event) => onChange(event)}\n />\n </label>\n )\n }\n {\n isOperator && (\n <Label\n className={[\n 'sendbird-user-list-item__operator',\n checkBox ? 'checkbox' : '',\n ].join(' ')}\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n Operator\n </Label>\n )\n }\n {\n action && (\n <div\n className=\"sendbird-user-list-item__action\"\n ref={actionRef}\n >\n {action({ actionRef, parentRef })}\n </div>\n )\n }\n </div>\n );\n}\n"],"names":["UserListItem","_ref","user","className","checked","checkBox","isOperator","disabled","disableMessaging","currentUser","action","onChange","avatarSize","uniqueKey","userId","actionRef","React","useRef","parentRef","avatarRef","disableUserProfile","renderUserProfile","useContext","UserProfileContext","stringSet","LocalizationContext","createElement","Array","isArray","join","ref","isMuted","MutedAvatarOverlay","height","width","ContextMenu","menuTrigger","toggleDropdown","Avatar","src","profileUrl","onClick","menuItems","closeDropdown","MenuItems","openLeft","parentContainRef","style","paddingTop","paddingBottom","currentUserId","close","UserProfile","onSuccess","Label","type","LabelTypography","SUBTITLE_1","color","LabelColors","ONBACKGROUND_1","nickname","NO_NAME","CAPTION_3","ONBACKGROUND_2","htmlFor","Checkbox","id","event","SUBTITLE_2"],"mappings":"
|
|
1
|
+
{"version":3,"file":"UserListItem.js","sources":["../../src/ui/UserListItem/index.tsx"],"sourcesContent":["import React, { ChangeEvent, MutableRefObject, ReactElement, useContext } from 'react';\nimport { User } from '@sendbird/chat';\nimport { Member } from '@sendbird/chat/groupChannel';\nimport './index.scss';\n\nimport { UserProfileContext } from '../../lib/UserProfileContext';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\nimport Avatar from '../Avatar/index';\nimport MutedAvatarOverlay from '../Avatar/MutedAvatarOverlay';\nimport Checkbox from '../Checkbox';\nimport UserProfile from '../UserProfile';\nimport ContextMenu, { MenuItems } from '../ContextMenu';\nimport Label, { LabelTypography, LabelColors } from '../Label';\n\nexport interface UserListItemProps {\n user: User;\n className?: string;\n checked?: boolean;\n checkBox?: boolean;\n isOperator?: boolean;\n disabled?: boolean;\n disableMessaging?: boolean;\n currentUser?: string;\n action?({ actionRef, parentRef }: {\n actionRef: MutableRefObject<any>,\n parentRef?: MutableRefObject<any>,\n }): ReactElement;\n onChange?(e: ChangeEvent<HTMLInputElement>): void;\n avatarSize?: string;\n}\n\nexport default function UserListItem({\n user,\n className,\n checked,\n checkBox,\n isOperator,\n disabled,\n disableMessaging,\n currentUser,\n action,\n onChange,\n avatarSize = '40px',\n}: UserListItemProps): ReactElement {\n const uniqueKey = user.userId;\n const actionRef = React.useRef(null);\n const parentRef = React.useRef(null);\n const avatarRef = React.useRef(null);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext<UserProfileContext>(UserProfileContext);\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-user-list-item',\n ].join(' ')}\n ref={parentRef}\n >\n {\n (user as Member)?.isMuted && (\n <MutedAvatarOverlay height={40} width={40} />\n )\n }\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-user-list-item__avatar\"\n ref={avatarRef}\n src={user.profileUrl}\n width={avatarSize}\n height={avatarSize}\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown();\n }\n }}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n openLeft\n parentRef={avatarRef}\n // for catching location(x, y) of MenuItems\n parentContainRef={avatarRef}\n // for toggling more options(menus & reactions)\n closeDropdown={closeDropdown}\n style={{ paddingTop: '0px', paddingBottom: '0px' }}\n >\n {\n renderUserProfile\n ? renderUserProfile({\n user,\n currentUserId: currentUser,\n close: closeDropdown,\n })\n : (\n <UserProfile\n disableMessaging={disableMessaging}\n user={user}\n currentUserId={currentUser}\n onSuccess={closeDropdown}\n />\n )\n }\n </MenuItems>\n )}\n />\n <Label\n className=\"sendbird-user-list-item__title\"\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {user.nickname || stringSet.NO_NAME}\n {\n (currentUser === user.userId) && (\n ' (You)'\n )\n }\n </Label>\n { // if there is now nickname, display userId\n !user.nickname && (\n <Label\n className=\"sendbird-user-list-item__subtitle\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {user.userId}\n </Label>\n )\n }\n {\n checkBox && (\n <label\n className=\"sendbird-user-list-item__checkbox\"\n htmlFor={uniqueKey}\n >\n <Checkbox\n id={uniqueKey}\n checked={checked}\n disabled={disabled}\n onChange={(event) => onChange(event)}\n />\n </label>\n )\n }\n {\n isOperator && (\n <Label\n className={[\n 'sendbird-user-list-item__operator',\n checkBox ? 'checkbox' : '',\n ].join(' ')}\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n Operator\n </Label>\n )\n }\n {\n action && (\n <div\n className=\"sendbird-user-list-item__action\"\n ref={actionRef}\n >\n {action({ actionRef, parentRef })}\n </div>\n )\n }\n </div>\n );\n}\n"],"names":["UserListItem","_ref","user","className","checked","checkBox","isOperator","disabled","disableMessaging","currentUser","action","onChange","avatarSize","uniqueKey","userId","actionRef","React","useRef","parentRef","avatarRef","disableUserProfile","renderUserProfile","useContext","UserProfileContext","stringSet","LocalizationContext","createElement","Array","isArray","join","ref","isMuted","MutedAvatarOverlay","height","width","ContextMenu","menuTrigger","toggleDropdown","Avatar","src","profileUrl","onClick","menuItems","closeDropdown","MenuItems","openLeft","parentContainRef","style","paddingTop","paddingBottom","currentUserId","close","UserProfile","onSuccess","Label","type","LabelTypography","SUBTITLE_1","color","LabelColors","ONBACKGROUND_1","nickname","NO_NAME","CAPTION_3","ONBACKGROUND_2","htmlFor","Checkbox","id","event","SUBTITLE_2"],"mappings":"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"}
|
package/ui/UserProfile.js
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import React__default, { useContext } from 'react';
|
|
2
|
-
import { a as LocalizationContext } from '../LocalizationContext-
|
|
3
|
-
import { a as UserProfileContext } from '../UserProfileContext-
|
|
2
|
+
import { a as LocalizationContext } from '../LocalizationContext-2a6ef338.js';
|
|
3
|
+
import { a as UserProfileContext } from '../UserProfileContext-ca5fc057.js';
|
|
4
4
|
import { getCreateGroupChannel } from '../sendbirdSelectors.js';
|
|
5
5
|
import Avatar from './Avatar.js';
|
|
6
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-
|
|
6
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../index-ec9b8bb2.js';
|
|
7
7
|
import Button, { ButtonTypes } from './Button.js';
|
|
8
8
|
import useSendbirdStateContext from '../useSendbirdStateContext.js';
|
|
9
|
-
import '../stringSet-
|
|
10
|
-
import '../index-
|
|
9
|
+
import '../stringSet-a3384f83.js';
|
|
10
|
+
import '../index-31fae6a0.js';
|
|
11
11
|
import 'prop-types';
|
|
12
|
-
import '../_rollupPluginBabelHelpers-
|
|
13
|
-
import '../topics-
|
|
14
|
-
import '../utils-
|
|
12
|
+
import '../_rollupPluginBabelHelpers-50696833.js';
|
|
13
|
+
import '../topics-85213ccb.js';
|
|
14
|
+
import '../utils-1a4154f1.js';
|
|
15
15
|
import './ImageRenderer.js';
|
|
16
16
|
import './Icon.js';
|
|
17
|
-
import '../uuid-
|
|
17
|
+
import '../uuid-87e2df67.js';
|
|
18
18
|
import '../withSendbird.js';
|
|
19
19
|
|
|
20
20
|
function UserProfile(_ref) {
|
|
@@ -4,21 +4,23 @@ import { useVoicePlayer } from '../VoicePlayer/useVoicePlayer.js';
|
|
|
4
4
|
import { PlaybackTime } from './PlaybackTime.js';
|
|
5
5
|
import Loader from './Loader.js';
|
|
6
6
|
import Icon, { IconTypes, IconColors } from './Icon.js';
|
|
7
|
-
import { a as LabelTypography, b as LabelColors } from '../index-
|
|
8
|
-
import { a as VOICE_PLAYER_STATUS } from '../index-
|
|
9
|
-
import '../consts-
|
|
7
|
+
import { a as LabelTypography, b as LabelColors } from '../index-ec9b8bb2.js';
|
|
8
|
+
import { a as VOICE_PLAYER_STATUS } from '../index-9fca62f4.js';
|
|
9
|
+
import '../consts-2ddaffce.js';
|
|
10
10
|
import '../VoiceRecorder/context.js';
|
|
11
|
-
import '../LocalizationContext-
|
|
12
|
-
import '../stringSet-
|
|
13
|
-
import '../index-
|
|
11
|
+
import '../LocalizationContext-2a6ef338.js';
|
|
12
|
+
import '../stringSet-a3384f83.js';
|
|
13
|
+
import '../index-31fae6a0.js';
|
|
14
14
|
import './Modal.js';
|
|
15
15
|
import 'react-dom';
|
|
16
|
-
import '../
|
|
16
|
+
import '../utils-1a4154f1.js';
|
|
17
|
+
import '../index.module-05a84007.js';
|
|
18
|
+
import '../index-134f97cd.js';
|
|
19
|
+
import '../MediaQueryContext-5a34332e.js';
|
|
20
|
+
import './IconButton.js';
|
|
21
|
+
import '../_rollupPluginBabelHelpers-50696833.js';
|
|
17
22
|
import './Button.js';
|
|
18
23
|
import 'prop-types';
|
|
19
|
-
import './IconButton.js';
|
|
20
|
-
import '../_rollupPluginBabelHelpers-0f2ee8c1.js';
|
|
21
|
-
import '../MediaQueryContext-aebb709a.js';
|
|
22
24
|
import '../useSendbirdStateContext.js';
|
|
23
25
|
import '../withSendbird.js';
|
|
24
26
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceMessageItemBody.js","sources":["../../src/ui/VoiceMessageItemBody/index.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from 'react';\nimport { FileMessage } from '@sendbird/chat/message';\n\nimport './index.scss';\n\nimport ProgressBar, { ProgressBarColorTypes } from '../ProgressBar';\nimport { useVoicePlayer } from '../../hooks/VoicePlayer/useVoicePlayer';\nimport PlaybackTime from '../PlaybackTime';\nimport Loader from '../Loader';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport { LabelTypography, LabelColors } from '../Label';\nimport { VOICE_PLAYER_STATUS } from '../../hooks/VoicePlayer/dux/initialState';\n\nexport interface VoiceMessageItemBodyProps {\n className?: string;\n message: FileMessage;\n channelUrl: string;\n isByMe?: boolean;\n isReactionEnabled?: boolean;\n}\n\nexport const VoiceMessageItemBody = ({\n className,\n message,\n channelUrl,\n isByMe = false,\n isReactionEnabled = false,\n}: VoiceMessageItemBodyProps): React.ReactElement => {\n const [usingReaction, setUsingReaction] = useState(false);\n const {\n play,\n // do not pause on unmount, because on desktop layout\n // the component can be paused when it is played from\n // channel and same message is unmounted from the thread\n pause,\n playbackTime = 0,\n duration,\n playingStatus = VOICE_PLAYER_STATUS.IDLE,\n } = useVoicePlayer({\n channelUrl,\n key: `${message?.messageId}`,\n audioFileUrl: message?.url,\n });\n\n useEffect(() => {\n if (isReactionEnabled && message?.reactions?.length > 0) {\n setUsingReaction(true);\n } else {\n setUsingReaction(false);\n }\n }, [isReactionEnabled, message?.reactions?.length]);\n const progresBarMaxSize = useMemo(() => {\n if (message?.metaArrays) {\n const duration = message?.metaArrays.find((metaArray) => metaArray.key === 'KEY_VOICE_MESSAGE_DURATION')?.value[0];\n return duration && parseInt(duration);\n }\n return 1;\n }, [message?.metaArrays]);\n\n return (\n <div className={`sendbird-voice-message-item-body ${className} ${usingReaction ? 'is-reactions-contained' : ''}`}>\n <ProgressBar\n className=\"sendbird-voice-message-item-body__progress-bar\"\n maxSize={duration || progresBarMaxSize}\n currentSize={playbackTime}\n colorType={isByMe ? ProgressBarColorTypes.PRIMARY : ProgressBarColorTypes.GRAY}\n />\n <div className=\"sendbird-voice-message-item-body__status-button\">\n {(playingStatus === VOICE_PLAYER_STATUS.IDLE || playingStatus === VOICE_PLAYER_STATUS.PAUSED) && (\n <div\n className=\"sendbird-voice-message-item-body__status-button__button\"\n onClick={play}\n >\n <Icon\n width=\"18px\"\n height=\"18px\"\n type={IconTypes.PLAY}\n fillColor={IconColors.PRIMARY}\n />\n </div>\n )}\n {playingStatus === VOICE_PLAYER_STATUS.PREPARING && (\n <Loader width=\"22.2px\" height=\"22.2px\">\n <Icon\n width=\"22.2px\"\n height=\"22.2px\"\n type={IconTypes.SPINNER}\n fillColor={IconColors.PRIMARY_2}\n />\n </Loader>\n )}\n {playingStatus === VOICE_PLAYER_STATUS.PLAYING && (\n <div\n className=\"sendbird-voice-message-item-body__status-button__button\"\n onClick={() => { pause(); }}\n >\n <div className=\"sendbird-voice-message-item-body__status-button__button__pause\">\n <div className=\"sendbird-voice-message-item-body__status-button__button__pause__inner\" />\n <div className=\"sendbird-voice-message-item-body__status-button__button__pause__inner\" />\n </div>\n </div>\n )}\n </div>\n <PlaybackTime\n className=\"sendbird-voice-message-item-body__playback-time\"\n time={progresBarMaxSize - playbackTime}\n labelType={LabelTypography.BODY_1}\n labelColor={isByMe ? LabelColors.ONCONTENT_1 : LabelColors.ONBACKGROUND_1}\n />\n </div>\n );\n};\n\nexport default VoiceMessageItemBody;\n"],"names":["VoiceMessageItemBody","_ref","_message$reactions2","className","message","channelUrl","isByMe","isReactionEnabled","usingReaction","setUsingReaction","useState","play","pause","playbackTime","duration","playingStatus","VOICE_PLAYER_STATUS","IDLE","useVoicePlayer","key","messageId","audioFileUrl","url","useEffect","_message$reactions","reactions","length","progresBarMaxSize","useMemo","metaArrays","_message$metaArrays$f","find","metaArray","value","parseInt","React","createElement","ProgressBar","maxSize","currentSize","colorType","ProgressBarColorTypes","PRIMARY","GRAY","PAUSED","onClick","Icon","width","height","type","IconTypes","PLAY","fillColor","IconColors","PREPARING","Loader","SPINNER","PRIMARY_2","PLAYING","PlaybackTime","time","labelType","LabelTypography","BODY_1","labelColor","LabelColors","ONCONTENT_1","ONBACKGROUND_1"],"mappings":"
|
|
1
|
+
{"version":3,"file":"VoiceMessageItemBody.js","sources":["../../src/ui/VoiceMessageItemBody/index.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from 'react';\nimport { FileMessage } from '@sendbird/chat/message';\n\nimport './index.scss';\n\nimport ProgressBar, { ProgressBarColorTypes } from '../ProgressBar';\nimport { useVoicePlayer } from '../../hooks/VoicePlayer/useVoicePlayer';\nimport PlaybackTime from '../PlaybackTime';\nimport Loader from '../Loader';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport { LabelTypography, LabelColors } from '../Label';\nimport { VOICE_PLAYER_STATUS } from '../../hooks/VoicePlayer/dux/initialState';\n\nexport interface VoiceMessageItemBodyProps {\n className?: string;\n message: FileMessage;\n channelUrl: string;\n isByMe?: boolean;\n isReactionEnabled?: boolean;\n}\n\nexport const VoiceMessageItemBody = ({\n className,\n message,\n channelUrl,\n isByMe = false,\n isReactionEnabled = false,\n}: VoiceMessageItemBodyProps): React.ReactElement => {\n const [usingReaction, setUsingReaction] = useState(false);\n const {\n play,\n // do not pause on unmount, because on desktop layout\n // the component can be paused when it is played from\n // channel and same message is unmounted from the thread\n pause,\n playbackTime = 0,\n duration,\n playingStatus = VOICE_PLAYER_STATUS.IDLE,\n } = useVoicePlayer({\n channelUrl,\n key: `${message?.messageId}`,\n audioFileUrl: message?.url,\n });\n\n useEffect(() => {\n if (isReactionEnabled && message?.reactions?.length > 0) {\n setUsingReaction(true);\n } else {\n setUsingReaction(false);\n }\n }, [isReactionEnabled, message?.reactions?.length]);\n const progresBarMaxSize = useMemo(() => {\n if (message?.metaArrays) {\n const duration = message?.metaArrays.find((metaArray) => metaArray.key === 'KEY_VOICE_MESSAGE_DURATION')?.value[0];\n return duration && parseInt(duration);\n }\n return 1;\n }, [message?.metaArrays]);\n\n return (\n <div className={`sendbird-voice-message-item-body ${className} ${usingReaction ? 'is-reactions-contained' : ''}`}>\n <ProgressBar\n className=\"sendbird-voice-message-item-body__progress-bar\"\n maxSize={duration || progresBarMaxSize}\n currentSize={playbackTime}\n colorType={isByMe ? ProgressBarColorTypes.PRIMARY : ProgressBarColorTypes.GRAY}\n />\n <div className=\"sendbird-voice-message-item-body__status-button\">\n {(playingStatus === VOICE_PLAYER_STATUS.IDLE || playingStatus === VOICE_PLAYER_STATUS.PAUSED) && (\n <div\n className=\"sendbird-voice-message-item-body__status-button__button\"\n onClick={play}\n >\n <Icon\n width=\"18px\"\n height=\"18px\"\n type={IconTypes.PLAY}\n fillColor={IconColors.PRIMARY}\n />\n </div>\n )}\n {playingStatus === VOICE_PLAYER_STATUS.PREPARING && (\n <Loader width=\"22.2px\" height=\"22.2px\">\n <Icon\n width=\"22.2px\"\n height=\"22.2px\"\n type={IconTypes.SPINNER}\n fillColor={IconColors.PRIMARY_2}\n />\n </Loader>\n )}\n {playingStatus === VOICE_PLAYER_STATUS.PLAYING && (\n <div\n className=\"sendbird-voice-message-item-body__status-button__button\"\n onClick={() => { pause(); }}\n >\n <div className=\"sendbird-voice-message-item-body__status-button__button__pause\">\n <div className=\"sendbird-voice-message-item-body__status-button__button__pause__inner\" />\n <div className=\"sendbird-voice-message-item-body__status-button__button__pause__inner\" />\n </div>\n </div>\n )}\n </div>\n <PlaybackTime\n className=\"sendbird-voice-message-item-body__playback-time\"\n time={progresBarMaxSize - playbackTime}\n labelType={LabelTypography.BODY_1}\n labelColor={isByMe ? LabelColors.ONCONTENT_1 : LabelColors.ONBACKGROUND_1}\n />\n </div>\n );\n};\n\nexport default VoiceMessageItemBody;\n"],"names":["VoiceMessageItemBody","_ref","_message$reactions2","className","message","channelUrl","isByMe","isReactionEnabled","usingReaction","setUsingReaction","useState","play","pause","playbackTime","duration","playingStatus","VOICE_PLAYER_STATUS","IDLE","useVoicePlayer","key","messageId","audioFileUrl","url","useEffect","_message$reactions","reactions","length","progresBarMaxSize","useMemo","metaArrays","_message$metaArrays$f","find","metaArray","value","parseInt","React","createElement","ProgressBar","maxSize","currentSize","colorType","ProgressBarColorTypes","PRIMARY","GRAY","PAUSED","onClick","Icon","width","height","type","IconTypes","PLAY","fillColor","IconColors","PREPARING","Loader","SPINNER","PRIMARY_2","PLAYING","PlaybackTime","time","labelType","LabelTypography","BODY_1","labelColor","LabelColors","ONCONTENT_1","ONBACKGROUND_1"],"mappings":"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"}
|
package/ui/VoiceMessgeInput.js
CHANGED
|
@@ -3,12 +3,12 @@ import './PlaybackTime.js';
|
|
|
3
3
|
import './ProgressBar.js';
|
|
4
4
|
import './TextButton.js';
|
|
5
5
|
import './Icon.js';
|
|
6
|
-
import '../index-
|
|
7
|
-
import '../LocalizationContext-
|
|
8
|
-
export { a as VoiceMessageInput } from '../index-
|
|
9
|
-
import '../consts-
|
|
6
|
+
import '../index-ec9b8bb2.js';
|
|
7
|
+
import '../LocalizationContext-2a6ef338.js';
|
|
8
|
+
export { a as VoiceMessageInput } from '../index-d004f5a9.js';
|
|
9
|
+
import '../consts-2ddaffce.js';
|
|
10
10
|
import 'prop-types';
|
|
11
|
-
import '../stringSet-
|
|
12
|
-
import '../color-
|
|
13
|
-
import '../index-
|
|
11
|
+
import '../stringSet-a3384f83.js';
|
|
12
|
+
import '../color-6b4d0a7b.js';
|
|
13
|
+
import '../index-31fae6a0.js';
|
|
14
14
|
//# sourceMappingURL=VoiceMessgeInput.js.map
|
package/ui/Word.js
CHANGED
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
import React__default from 'react';
|
|
2
|
-
import { a as LabelTypography } from '../index-
|
|
2
|
+
import { a as LabelTypography } from '../index-ec9b8bb2.js';
|
|
3
3
|
import LinkLabel from './LinkLabel.js';
|
|
4
|
-
import { u as uuidv4 } from '../uuid-
|
|
5
|
-
import {
|
|
4
|
+
import { u as uuidv4 } from '../uuid-87e2df67.js';
|
|
5
|
+
import { T as convertWordToStringObj, V as StringObjType } from '../index-cd866969.js';
|
|
6
6
|
import MentionLabel from './MentionLabel.js';
|
|
7
7
|
import 'prop-types';
|
|
8
|
-
import '../stringSet-
|
|
9
|
-
import '../_rollupPluginBabelHelpers-
|
|
8
|
+
import '../stringSet-a3384f83.js';
|
|
9
|
+
import '../_rollupPluginBabelHelpers-50696833.js';
|
|
10
10
|
import '../utils/message/getOutgoingMessageState.js';
|
|
11
|
+
import '../index.module-05a84007.js';
|
|
11
12
|
import './ContextMenu.js';
|
|
12
13
|
import 'react-dom';
|
|
13
14
|
import './SortByRow.js';
|
|
14
15
|
import './UserProfile.js';
|
|
15
|
-
import '../LocalizationContext-
|
|
16
|
-
import '../index-
|
|
17
|
-
import '../UserProfileContext-
|
|
16
|
+
import '../LocalizationContext-2a6ef338.js';
|
|
17
|
+
import '../index-31fae6a0.js';
|
|
18
|
+
import '../UserProfileContext-ca5fc057.js';
|
|
18
19
|
import '../sendbirdSelectors.js';
|
|
19
|
-
import '../topics-
|
|
20
|
-
import '../utils-
|
|
20
|
+
import '../topics-85213ccb.js';
|
|
21
|
+
import '../utils-1a4154f1.js';
|
|
21
22
|
import './Avatar.js';
|
|
22
23
|
import './ImageRenderer.js';
|
|
23
24
|
import './Icon.js';
|
package/ui/Word.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Word.js","sources":["../../src/ui/Word/index.tsx"],"sourcesContent":["/**\n * @deprecated This component is deprecated and will be removed in the next major version.\n * Use TextFragment instead.\n */\nimport './index.scss';\nimport React from 'react';\nimport type { UserMessage } from '@sendbird/chat/message';\n\nimport { LabelTypography } from '../Label';\nimport LinkLabel from '../LinkLabel';\nimport uuidv4 from '../../utils/uuid';\nimport { convertWordToStringObj, StringObjType, StringObj } from '../../utils';\nimport MentionLabel from '../MentionLabel';\n\ninterface WordProps {\n word: string;\n message: UserMessage;\n isByMe?: boolean;\n mentionTemplate?: string;\n renderString?: (stringObj: StringObj) => JSX.Element;\n}\n\n// Word and StringObj will include types: normal, mention, url\nexport default function Word(props: WordProps): JSX.Element {\n const {\n word,\n message,\n isByMe = false,\n mentionTemplate = '@',\n renderString = null,\n } = props;\n if (word === '') {\n return null;\n }\n return (\n <span className=\"sendbird-word\">\n {\n convertWordToStringObj(word, message?.mentionedUsers).map((stringObj) => {\n const type = stringObj?.type || '';\n const value = stringObj?.value || '';\n const userId = stringObj?.userId || '';\n if (renderString && typeof renderString === 'function') {\n return renderString(stringObj);\n }\n if (type === StringObjType.mention) {\n return (\n <MentionLabel\n mentionTemplate={mentionTemplate}\n mentionedUserId={userId}\n mentionedUserNickname={value}\n key={uuidv4()}\n isByMe={isByMe}\n />\n );\n } else if (type === StringObjType.url) {\n const urlRegex = /([a-zA-Z0-9]+:\\/\\/)?([a-zA-Z0-9_]+:[a-zA-Z0-9_]+@)?([a-zA-Z0-9.-]+\\.[A-Za-z]{2,4})(:[0-9]+)?(\\/.*)?/;\n const targetUrl = value.match(urlRegex)?.[0];\n const stringUrl = { front: '', url: '', back: '' };\n if (targetUrl) {\n const targetUrlIndex = value.indexOf(targetUrl);\n if (targetUrlIndex > 0) {\n stringUrl.front = value.slice(0, targetUrlIndex);\n }\n stringUrl.url = value.slice(targetUrlIndex, targetUrlIndex + targetUrl.length);\n if (targetUrlIndex + targetUrl.length < value.length) {\n stringUrl.back = value.slice(targetUrlIndex + targetUrl.length);\n }\n }\n if (targetUrl) {\n return [\n stringUrl.front ? stringUrl.front : '',\n stringUrl.url ? (\n <LinkLabel\n className=\"sendbird-word__url\"\n key={uuidv4()}\n src={stringUrl.url}\n type={LabelTypography.BODY_1}\n >\n {stringUrl.url}\n </LinkLabel>\n ) : null,\n stringUrl.back ? stringUrl.back : '',\n ];\n }\n return (\n <LinkLabel\n className=\"sendbird-word__url\"\n key={uuidv4()}\n src={word}\n type={LabelTypography.BODY_1}\n >\n {value}\n </LinkLabel>\n );\n } else {\n return value;\n }\n })\n }\n </span>\n );\n}\n"],"names":["Word","props","word","message","isByMe","mentionTemplate","renderString","React","createElement","className","convertWordToStringObj","mentionedUsers","map","stringObj","type","value","userId","StringObjType","mention","MentionLabel","mentionedUserId","mentionedUserNickname","key","uuidv4","url","_value$match","urlRegex","targetUrl","match","stringUrl","front","back","targetUrlIndex","indexOf","slice","length","LinkLabel","src","LabelTypography","BODY_1"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Word.js","sources":["../../src/ui/Word/index.tsx"],"sourcesContent":["/**\n * @deprecated This component is deprecated and will be removed in the next major version.\n * Use TextFragment instead.\n */\nimport './index.scss';\nimport React from 'react';\nimport type { UserMessage } from '@sendbird/chat/message';\n\nimport { LabelTypography } from '../Label';\nimport LinkLabel from '../LinkLabel';\nimport uuidv4 from '../../utils/uuid';\nimport { convertWordToStringObj, StringObjType, StringObj } from '../../utils';\nimport MentionLabel from '../MentionLabel';\n\ninterface WordProps {\n word: string;\n message: UserMessage;\n isByMe?: boolean;\n mentionTemplate?: string;\n renderString?: (stringObj: StringObj) => JSX.Element;\n}\n\n// Word and StringObj will include types: normal, mention, url\nexport default function Word(props: WordProps): JSX.Element {\n const {\n word,\n message,\n isByMe = false,\n mentionTemplate = '@',\n renderString = null,\n } = props;\n if (word === '') {\n return null;\n }\n return (\n <span className=\"sendbird-word\">\n {\n convertWordToStringObj(word, message?.mentionedUsers).map((stringObj) => {\n const type = stringObj?.type || '';\n const value = stringObj?.value || '';\n const userId = stringObj?.userId || '';\n if (renderString && typeof renderString === 'function') {\n return renderString(stringObj);\n }\n if (type === StringObjType.mention) {\n return (\n <MentionLabel\n mentionTemplate={mentionTemplate}\n mentionedUserId={userId}\n mentionedUserNickname={value}\n key={uuidv4()}\n isByMe={isByMe}\n />\n );\n } else if (type === StringObjType.url) {\n const urlRegex = /([a-zA-Z0-9]+:\\/\\/)?([a-zA-Z0-9_]+:[a-zA-Z0-9_]+@)?([a-zA-Z0-9.-]+\\.[A-Za-z]{2,4})(:[0-9]+)?(\\/.*)?/;\n const targetUrl = value.match(urlRegex)?.[0];\n const stringUrl = { front: '', url: '', back: '' };\n if (targetUrl) {\n const targetUrlIndex = value.indexOf(targetUrl);\n if (targetUrlIndex > 0) {\n stringUrl.front = value.slice(0, targetUrlIndex);\n }\n stringUrl.url = value.slice(targetUrlIndex, targetUrlIndex + targetUrl.length);\n if (targetUrlIndex + targetUrl.length < value.length) {\n stringUrl.back = value.slice(targetUrlIndex + targetUrl.length);\n }\n }\n if (targetUrl) {\n return [\n stringUrl.front ? stringUrl.front : '',\n stringUrl.url ? (\n <LinkLabel\n className=\"sendbird-word__url\"\n key={uuidv4()}\n src={stringUrl.url}\n type={LabelTypography.BODY_1}\n >\n {stringUrl.url}\n </LinkLabel>\n ) : null,\n stringUrl.back ? stringUrl.back : '',\n ];\n }\n return (\n <LinkLabel\n className=\"sendbird-word__url\"\n key={uuidv4()}\n src={word}\n type={LabelTypography.BODY_1}\n >\n {value}\n </LinkLabel>\n );\n } else {\n return value;\n }\n })\n }\n </span>\n );\n}\n"],"names":["Word","props","word","message","isByMe","mentionTemplate","renderString","React","createElement","className","convertWordToStringObj","mentionedUsers","map","stringObj","type","value","userId","StringObjType","mention","MentionLabel","mentionedUserId","mentionedUserNickname","key","uuidv4","url","_value$match","urlRegex","targetUrl","match","stringUrl","front","back","targetUrlIndex","indexOf","slice","length","LinkLabel","src","LabelTypography","BODY_1"],"mappings":"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"}
|
|
@@ -1,15 +1,18 @@
|
|
|
1
|
-
import React__default, { useRef, useState, useEffect } from 'react';
|
|
2
|
-
import { u as useLocalization } from './LocalizationContext-
|
|
1
|
+
import React__default, { useRef, useState, useEffect, useCallback } from 'react';
|
|
2
|
+
import { u as useLocalization } from './LocalizationContext-2a6ef338.js';
|
|
3
3
|
import { useVoicePlayer } from './VoicePlayer/useVoicePlayer.js';
|
|
4
4
|
import { useVoiceRecorder, VoiceRecorderStatus } from './VoiceRecorder/useVoiceRecorder.js';
|
|
5
|
-
import { D as isDisabledBecauseFrozen, E as isDisabledBecauseMuted } from './utils-
|
|
6
|
-
import { V as VoiceMessageInputStatus, a as VoiceMessageInput } from './index-
|
|
7
|
-
import Modal from './ui/Modal.js';
|
|
5
|
+
import { D as isDisabledBecauseFrozen, E as isDisabledBecauseMuted } from './utils-fc37f1e5.js';
|
|
6
|
+
import { V as VoiceMessageInputStatus, a as VoiceMessageInput } from './index-d004f5a9.js';
|
|
7
|
+
import { Modal, ModalFooter } from './ui/Modal.js';
|
|
8
8
|
import Button, { ButtonTypes, ButtonSizes } from './ui/Button.js';
|
|
9
9
|
import useSendbirdStateContext from './useSendbirdStateContext.js';
|
|
10
|
-
import { a as VOICE_RECORDER_DEFAULT_MIN } from './consts-
|
|
11
|
-
import { a as VOICE_PLAYER_STATUS } from './index-
|
|
12
|
-
import { u as uuidv4 } from './uuid-
|
|
10
|
+
import { a as VOICE_RECORDER_DEFAULT_MIN } from './consts-2ddaffce.js';
|
|
11
|
+
import { a as VOICE_PLAYER_STATUS } from './index-9fca62f4.js';
|
|
12
|
+
import { u as uuidv4 } from './uuid-87e2df67.js';
|
|
13
|
+
import { j as isImage } from './index-cd866969.js';
|
|
14
|
+
import { u as useGlobalModalContext } from './index-7ff60f7d.js';
|
|
15
|
+
import './index-ec9b8bb2.js';
|
|
13
16
|
|
|
14
17
|
const VoiceMessageInputWrapper = _ref => {
|
|
15
18
|
var _config$voiceRecord;
|
|
@@ -166,5 +169,122 @@ const VoiceMessageInputWrapper = _ref => {
|
|
|
166
169
|
}, stringSet.BUTTON__OK))));
|
|
167
170
|
};
|
|
168
171
|
|
|
169
|
-
|
|
170
|
-
|
|
172
|
+
/**
|
|
173
|
+
* The handleUploadFiles is a function sending a FileMessage and MultipleFilesMessage
|
|
174
|
+
* by the received FileList from the ChangeEvent of MessageInput component.
|
|
175
|
+
*/
|
|
176
|
+
|
|
177
|
+
const useHandleUploadFiles = (_ref, _ref2) => {
|
|
178
|
+
let {
|
|
179
|
+
sendFileMessage,
|
|
180
|
+
sendMultipleFilesMessage,
|
|
181
|
+
quoteMessage
|
|
182
|
+
} = _ref;
|
|
183
|
+
let {
|
|
184
|
+
logger
|
|
185
|
+
} = _ref2;
|
|
186
|
+
const {
|
|
187
|
+
stringSet
|
|
188
|
+
} = useLocalization();
|
|
189
|
+
const {
|
|
190
|
+
config
|
|
191
|
+
} = useSendbirdStateContext();
|
|
192
|
+
const uikitUploadSizeLimit = config === null || config === void 0 ? void 0 : config.uikitUploadSizeLimit;
|
|
193
|
+
const uikitMultipleFilesMessageLimit = config === null || config === void 0 ? void 0 : config.uikitMultipleFilesMessageLimit;
|
|
194
|
+
const {
|
|
195
|
+
openModal
|
|
196
|
+
} = useGlobalModalContext();
|
|
197
|
+
const handleUploadFiles = useCallback(fileList => {
|
|
198
|
+
const files = Array.from(fileList);
|
|
199
|
+
|
|
200
|
+
// Validate Paremeters
|
|
201
|
+
if (!sendFileMessage || !sendMultipleFilesMessage) {
|
|
202
|
+
logger.warning('Channel|useHandleUploadFiles: required functions are undefined', {
|
|
203
|
+
sendFileMessage,
|
|
204
|
+
sendMultipleFilesMessage
|
|
205
|
+
});
|
|
206
|
+
return;
|
|
207
|
+
}
|
|
208
|
+
if (files.length === 0) {
|
|
209
|
+
logger.warning('Channel|useHandleUploadFiles: given file list is empty.', {
|
|
210
|
+
files
|
|
211
|
+
});
|
|
212
|
+
return;
|
|
213
|
+
}
|
|
214
|
+
if (files.length > uikitMultipleFilesMessageLimit) {
|
|
215
|
+
logger.info(`Channel|useHandleUploadFiles: Cannot upload files more than ${uikitMultipleFilesMessageLimit}`);
|
|
216
|
+
openModal({
|
|
217
|
+
modalProps: {
|
|
218
|
+
titleText: `Up to ${uikitMultipleFilesMessageLimit} files can be attached.`,
|
|
219
|
+
hideFooter: true
|
|
220
|
+
},
|
|
221
|
+
childElement: _ref3 => {
|
|
222
|
+
let {
|
|
223
|
+
closeModal
|
|
224
|
+
} = _ref3;
|
|
225
|
+
return /*#__PURE__*/React__default.createElement(ModalFooter, {
|
|
226
|
+
type: ButtonTypes.PRIMARY,
|
|
227
|
+
submitText: stringSet.BUTTON__OK,
|
|
228
|
+
hideCancelButton: true,
|
|
229
|
+
onCancel: closeModal,
|
|
230
|
+
onSubmit: closeModal
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
});
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
if (files.some(file => file.size > uikitUploadSizeLimit)) {
|
|
237
|
+
// The default value of uikitUploadSizeLimit is 26MB
|
|
238
|
+
logger.info(`Channel|useHandleUploadFiles: Cannot upload file size exceeding ${uikitUploadSizeLimit}`);
|
|
239
|
+
openModal({
|
|
240
|
+
modalProps: {
|
|
241
|
+
titleText: `The maximum size per file is ${Math.floor(uikitUploadSizeLimit / 1000000)} MB.`,
|
|
242
|
+
hideFooter: true
|
|
243
|
+
},
|
|
244
|
+
childElement: _ref4 => {
|
|
245
|
+
let {
|
|
246
|
+
closeModal
|
|
247
|
+
} = _ref4;
|
|
248
|
+
return /*#__PURE__*/React__default.createElement(ModalFooter, {
|
|
249
|
+
type: ButtonTypes.PRIMARY,
|
|
250
|
+
submitText: stringSet.BUTTON__OK,
|
|
251
|
+
hideCancelButton: true,
|
|
252
|
+
onCancel: closeModal,
|
|
253
|
+
onSubmit: closeModal
|
|
254
|
+
});
|
|
255
|
+
}
|
|
256
|
+
});
|
|
257
|
+
return;
|
|
258
|
+
}
|
|
259
|
+
if (files.length === 1) {
|
|
260
|
+
logger.info('Channel|useHandleUploadFiles: sending one file.');
|
|
261
|
+
const [file] = files;
|
|
262
|
+
sendFileMessage(file, quoteMessage);
|
|
263
|
+
} else if (files.length > 1) {
|
|
264
|
+
logger.info('Channel|useHandleUploadFiles: sending multiple files.');
|
|
265
|
+
const imageFiles = [];
|
|
266
|
+
const otherFiles = [];
|
|
267
|
+
files.forEach(file => {
|
|
268
|
+
if (isImage(file.type)) {
|
|
269
|
+
imageFiles.push(file);
|
|
270
|
+
} else {
|
|
271
|
+
otherFiles.push(file);
|
|
272
|
+
}
|
|
273
|
+
});
|
|
274
|
+
if (imageFiles.length > 1) {
|
|
275
|
+
sendMultipleFilesMessage(imageFiles, quoteMessage);
|
|
276
|
+
} else if (imageFiles.length === 1) {
|
|
277
|
+
sendFileMessage(imageFiles[0], quoteMessage);
|
|
278
|
+
}
|
|
279
|
+
if (otherFiles.length > 0) {
|
|
280
|
+
otherFiles.forEach(file => {
|
|
281
|
+
sendFileMessage(file, quoteMessage);
|
|
282
|
+
});
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
}, [sendFileMessage, sendMultipleFilesMessage, quoteMessage]);
|
|
286
|
+
return [handleUploadFiles];
|
|
287
|
+
};
|
|
288
|
+
|
|
289
|
+
export { VoiceMessageInputWrapper as V, useHandleUploadFiles as u };
|
|
290
|
+
//# sourceMappingURL=useHandleUploadFiles-15dc0c2d.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useHandleUploadFiles-15dc0c2d.js","sources":["../src/modules/Channel/components/MessageInput/VoiceMessageInputWrapper.tsx","../src/modules/Channel/components/MessageInput/useHandleUploadFiles.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\nimport './voice-message-wrapper.scss';\n\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport { useVoicePlayer } from '../../../../hooks/VoicePlayer/useVoicePlayer';\nimport { useVoiceRecorder, VoiceRecorderStatus } from '../../../../hooks/VoiceRecorder/useVoiceRecorder';\nimport { isDisabledBecauseFrozen, isDisabledBecauseMuted } from '../../context/utils';\n\nimport { VoiceMessageInput } from '../../../../ui/VoiceMessageInput';\nimport { VoiceMessageInputStatus } from '../../../../ui/VoiceMessageInput/types';\nimport Modal from '../../../../ui/Modal';\nimport Button, { ButtonSizes, ButtonTypes } from '../../../../ui/Button';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { VOICE_RECORDER_DEFAULT_MIN } from '../../../../utils/consts';\nimport { VOICE_PLAYER_STATUS } from '../../../../hooks/VoicePlayer/dux/initialState';\nimport uuidv4 from '../../../../utils/uuid';\n\nexport interface VoiceMessageInputWrapperProps {\n channel?: GroupChannel;\n onCancelClick?: () => void;\n onSubmitClick?: (file: File, duration: number) => void;\n}\n\nexport const VoiceMessageInputWrapper = ({\n channel,\n onCancelClick,\n onSubmitClick,\n}: VoiceMessageInputWrapperProps): React.ReactElement => {\n const uuid = useRef<string>(uuidv4()).current;\n const [audioFile, setAudioFile] = useState<File>(null);\n const [voiceInputState, setVoiceInputState] = useState<VoiceMessageInputStatus>(VoiceMessageInputStatus.READY_TO_RECORD);\n const [isSubmitted, setSubmit] = useState(false);\n const [isDisabled, setDisabled] = useState(false);\n const [showModal, setShowModal] = useState(false);\n const { stringSet } = useLocalization();\n const { config } = useSendbirdStateContext();\n const minRecordingTime = config?.voiceRecord?.minRecordingTime || VOICE_RECORDER_DEFAULT_MIN;\n const {\n start,\n stop,\n cancel,\n recordingTime,\n recordingStatus,\n recordingLimit,\n } = useVoiceRecorder({\n onRecordingStarted: () => {\n setVoiceInputState(VoiceMessageInputStatus.RECORDING);\n },\n onRecordingEnded: (audioFile) => {\n setAudioFile(audioFile);\n },\n });\n const voicePlayer = useVoicePlayer({\n channelUrl: channel?.url,\n key: uuid,\n audioFile: audioFile,\n });\n const {\n play,\n pause,\n playbackTime,\n playingStatus,\n } = voicePlayer;\n const stopVoicePlayer = voicePlayer.stop;\n\n // disabled state: muted & frozen\n useEffect(() => {\n if (isDisabledBecauseFrozen(channel) || isDisabledBecauseMuted(channel)) {\n setDisabled(true);\n } else {\n setDisabled(false);\n }\n }, [channel?.myRole, channel?.isFrozen, channel?.myMutedState]);\n\n // call onSubmitClick when submit button is clicked and recorded audio file is created\n useEffect(() => {\n if (isSubmitted && audioFile) {\n onSubmitClick(audioFile, recordingTime);\n setSubmit(false);\n setAudioFile(null);\n }\n }, [isSubmitted, audioFile, recordingTime]);\n // operate which control button should be displayed\n useEffect(() => {\n if (audioFile) {\n if (recordingTime < minRecordingTime) {\n setVoiceInputState(VoiceMessageInputStatus.READY_TO_RECORD);\n setAudioFile(null);\n } else if (playingStatus === VOICE_PLAYER_STATUS.PLAYING) {\n setVoiceInputState(VoiceMessageInputStatus.PLAYING);\n } else {\n setVoiceInputState(VoiceMessageInputStatus.READY_TO_PLAY);\n }\n }\n }, [audioFile, recordingTime, playingStatus]);\n\n return (\n <div className=\"sendbird-voice-message-input-wrapper\">\n <VoiceMessageInput\n currentValue={recordingStatus === VoiceRecorderStatus.COMPLETED ? playbackTime : recordingTime}\n maximumValue={recordingStatus === VoiceRecorderStatus.COMPLETED ? recordingTime : recordingLimit}\n currentType={voiceInputState}\n onCancelClick={() => {\n onCancelClick();\n cancel();\n stopVoicePlayer();\n }}\n onSubmitClick={() => {\n if (isDisabled) {\n setShowModal(true);\n setVoiceInputState(VoiceMessageInputStatus.READY_TO_RECORD);\n } else {\n stop();\n pause();\n setSubmit(true);\n }\n }}\n onControlClick={(type) => {\n switch (type) {\n case VoiceMessageInputStatus.READY_TO_RECORD: {\n stopVoicePlayer();\n start();\n break;\n }\n case VoiceMessageInputStatus.RECORDING: {\n if (recordingTime >= minRecordingTime && !isDisabled) {\n stop();\n } else if (isDisabled) {\n cancel();\n setShowModal(true);\n setVoiceInputState(VoiceMessageInputStatus.READY_TO_RECORD);\n } else {\n cancel();\n setVoiceInputState(VoiceMessageInputStatus.READY_TO_RECORD);\n }\n break;\n }\n case VoiceMessageInputStatus.READY_TO_PLAY: {\n play();\n break;\n }\n case VoiceMessageInputStatus.PLAYING: {\n pause();\n break;\n }\n }\n }}\n />\n {\n showModal && (\n <Modal\n className=\"sendbird-voice-message-input-wrapper-alert\"\n titleText={isDisabledBecauseMuted(channel)\n ? stringSet.MODAL__VOICE_MESSAGE_INPUT_DISABLED__TITLE_MUTED\n : stringSet.MODAL__VOICE_MESSAGE_INPUT_DISABLED__TITLE_FROZEN\n }\n hideFooter\n isCloseOnClickOutside\n onCancel={() => {\n setShowModal(false);\n onCancelClick();\n }}\n >\n <div className=\"sendbird-voice-message-input-wrapper-alert__body\">\n <Button\n className=\"sendbird-voice-message-input-wrapper-alert__body__ok-button\"\n type={ButtonTypes.PRIMARY}\n size={ButtonSizes.BIG}\n onClick={() => {\n setShowModal(false);\n onCancelClick();\n }}\n >\n {stringSet.BUTTON__OK}\n </Button>\n </div>\n </Modal>\n )\n }\n </div>\n );\n};\n\nexport default VoiceMessageInputWrapper;\n","import React, { useCallback } from 'react';\n\nimport { Logger } from '../../../../lib/SendbirdState';\nimport { SendMFMFunctionType } from '../../context/hooks/useSendMultipleFilesMessage';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { SendableMessageType, isImage } from '../../../../utils';\n// TODO: get SendFileMessageFunctionType from Channel\nimport { SendFileMessageFunctionType } from '../../../Thread/context/hooks/useSendFileMessage';\nimport { useGlobalModalContext } from '../../../../hooks/useModal';\nimport { ButtonTypes } from '../../../../ui/Button';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport { ModalFooter } from '../../../../ui/Modal';\n\n/**\n * The handleUploadFiles is a function sending a FileMessage and MultipleFilesMessage\n * by the received FileList from the ChangeEvent of MessageInput component.\n */\n\ninterface useHandleUploadFilesDynamicProps {\n sendFileMessage: SendFileMessageFunctionType;\n sendMultipleFilesMessage: SendMFMFunctionType;\n quoteMessage?: SendableMessageType;\n}\ninterface useHandleUploadFilesStaticProps {\n logger: Logger;\n}\nexport type HandleUploadFunctionType = (files: FileList) => void;\n\nexport const useHandleUploadFiles = ({\n sendFileMessage,\n sendMultipleFilesMessage,\n quoteMessage,\n}: useHandleUploadFilesDynamicProps, {\n logger,\n}: useHandleUploadFilesStaticProps): Array<HandleUploadFunctionType> => {\n const { stringSet } = useLocalization();\n const { config } = useSendbirdStateContext();\n const uikitUploadSizeLimit = config?.uikitUploadSizeLimit;\n const uikitMultipleFilesMessageLimit = config?.uikitMultipleFilesMessageLimit;\n const { openModal } = useGlobalModalContext();\n\n const handleUploadFiles = useCallback((fileList: FileList) => {\n const files: File[] = Array.from(fileList);\n\n // Validate Paremeters\n if (!sendFileMessage || !sendMultipleFilesMessage) {\n logger.warning('Channel|useHandleUploadFiles: required functions are undefined', { sendFileMessage, sendMultipleFilesMessage });\n return;\n }\n if (files.length === 0) {\n logger.warning('Channel|useHandleUploadFiles: given file list is empty.', { files });\n return;\n }\n if (files.length > uikitMultipleFilesMessageLimit) {\n logger.info(`Channel|useHandleUploadFiles: Cannot upload files more than ${uikitMultipleFilesMessageLimit}`);\n openModal({\n modalProps: {\n titleText: `Up to ${uikitMultipleFilesMessageLimit} files can be attached.`,\n hideFooter: true,\n },\n childElement: ({ closeModal }) => (\n <ModalFooter\n type={ButtonTypes.PRIMARY}\n submitText={stringSet.BUTTON__OK}\n hideCancelButton\n onCancel={closeModal}\n onSubmit={closeModal}\n />\n ),\n });\n return;\n }\n if (files.some((file: File) => file.size > uikitUploadSizeLimit)) {\n // The default value of uikitUploadSizeLimit is 26MB\n logger.info(`Channel|useHandleUploadFiles: Cannot upload file size exceeding ${uikitUploadSizeLimit}`);\n openModal({\n modalProps: {\n titleText: `The maximum size per file is ${Math.floor(uikitUploadSizeLimit / 1000000)} MB.`,\n hideFooter: true,\n },\n childElement: ({ closeModal }) => (\n <ModalFooter\n type={ButtonTypes.PRIMARY}\n submitText={stringSet.BUTTON__OK}\n hideCancelButton\n onCancel={closeModal}\n onSubmit={closeModal}\n />\n ),\n });\n return;\n }\n\n if (files.length === 1) {\n logger.info('Channel|useHandleUploadFiles: sending one file.');\n const [file] = files;\n sendFileMessage(file, quoteMessage);\n } else if (files.length > 1) {\n logger.info('Channel|useHandleUploadFiles: sending multiple files.');\n const imageFiles: Array<File> = [];\n const otherFiles: Array<File> = [];\n files.forEach((file: File) => {\n if (isImage(file.type)) {\n imageFiles.push(file);\n } else {\n otherFiles.push(file);\n }\n });\n\n if (imageFiles.length > 1) {\n sendMultipleFilesMessage(imageFiles, quoteMessage);\n } else if (imageFiles.length === 1) {\n sendFileMessage(imageFiles[0], quoteMessage);\n }\n if (otherFiles.length > 0) {\n otherFiles.forEach((file: File) => {\n sendFileMessage(file, quoteMessage);\n });\n }\n }\n }, [\n sendFileMessage,\n sendMultipleFilesMessage,\n quoteMessage,\n ]);\n\n return [handleUploadFiles];\n};\n"],"names":["VoiceMessageInputWrapper","_ref","_config$voiceRecord","channel","onCancelClick","onSubmitClick","uuid","useRef","uuidv4","current","audioFile","setAudioFile","useState","voiceInputState","setVoiceInputState","VoiceMessageInputStatus","READY_TO_RECORD","isSubmitted","setSubmit","isDisabled","setDisabled","showModal","setShowModal","stringSet","useLocalization","config","useSendbirdStateContext","minRecordingTime","voiceRecord","VOICE_RECORDER_DEFAULT_MIN","start","stop","cancel","recordingTime","recordingStatus","recordingLimit","useVoiceRecorder","onRecordingStarted","RECORDING","onRecordingEnded","voicePlayer","useVoicePlayer","channelUrl","url","key","play","pause","playbackTime","playingStatus","stopVoicePlayer","useEffect","isDisabledBecauseFrozen","isDisabledBecauseMuted","myRole","isFrozen","myMutedState","VOICE_PLAYER_STATUS","PLAYING","READY_TO_PLAY","React","createElement","className","VoiceMessageInput","currentValue","VoiceRecorderStatus","COMPLETED","maximumValue","currentType","onControlClick","type","Modal","titleText","MODAL__VOICE_MESSAGE_INPUT_DISABLED__TITLE_MUTED","MODAL__VOICE_MESSAGE_INPUT_DISABLED__TITLE_FROZEN","hideFooter","isCloseOnClickOutside","onCancel","Button","ButtonTypes","PRIMARY","size","ButtonSizes","BIG","onClick","BUTTON__OK","useHandleUploadFiles","_ref2","sendFileMessage","sendMultipleFilesMessage","quoteMessage","logger","uikitUploadSizeLimit","uikitMultipleFilesMessageLimit","openModal","useGlobalModalContext","handleUploadFiles","useCallback","fileList","files","Array","from","warning","length","info","modalProps","childElement","_ref3","closeModal","ModalFooter","submitText","hideCancelButton","onSubmit","some","file","Math","floor","_ref4","imageFiles","otherFiles","forEach","isImage","push"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-
|
|
1
|
+
import { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-50696833.js';
|
|
2
2
|
import { useState, useRef, useCallback } from 'react';
|
|
3
|
-
import { u as useMediaQueryContext } from './MediaQueryContext-
|
|
3
|
+
import { u as useMediaQueryContext } from './MediaQueryContext-5a34332e.js';
|
|
4
4
|
|
|
5
5
|
const DEFAULT_DURATION = 300;
|
|
6
6
|
function preventDefault(e) {
|
|
@@ -82,4 +82,4 @@ function useLongPress(_ref) {
|
|
|
82
82
|
}
|
|
83
83
|
|
|
84
84
|
export { useLongPress as u };
|
|
85
|
-
//# sourceMappingURL=useLongPress-
|
|
85
|
+
//# sourceMappingURL=useLongPress-11759804.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLongPress-
|
|
1
|
+
{"version":3,"file":"useLongPress-11759804.js","sources":["../src/hooks/useLongPress.tsx"],"sourcesContent":["// thanks to: https://stackoverflow.com/questions/48048957/react-long-press-event\n/* example:\n const Component = ({ onClick }) => {\n const onLongPress = useLongPress({\n onClick: onClick,\n onLongPress: () => {\n alert('longpress');\n }\n }, {\n delay: 500,\n shouldPreventDefault: true,\n });\n return (\n <button {...onLongPress}>\n hello\n </button>\n )\n }\n*/\nimport React, {\n useState,\n useRef,\n useCallback,\n} from 'react';\nimport {\n useMediaQueryContext,\n} from '../lib/MediaQueryContext';\n\nconst DEFAULT_DURATION = 300;\n\nfunction preventDefault(e: Event) {\n if (!isTouchEvent(e)) {\n return;\n }\n\n if (e.touches.length < 2 && e.preventDefault) {\n e.preventDefault();\n }\n}\n\nexport function isTouchEvent(e: Event): e is TouchEvent {\n return e && 'touches' in e;\n}\n\ninterface PressHandlers<T> {\n onLongPress: (e: React.MouseEvent<T> | React.TouchEvent<T>) => void;\n onClick?: (e: React.MouseEvent<T> | React.TouchEvent<T>) => void;\n}\n\ninterface Options {\n delay?: number;\n shouldPreventDefault?: boolean;\n shouldStopPropagation?: boolean;\n}\n\ninterface UseLongPressType<T> {\n onTouchMove: (e: React.TouchEvent<T>) => void;\n onMouseDown: (e: React.MouseEvent<T>) => void;\n onTouchStart: (e: React.TouchEvent<T>) => void;\n onMouseUp: (e: React.MouseEvent<T>) => void;\n onMouseLeave: (e: React.MouseEvent<T>) => void;\n onTouchEnd: (e: React.TouchEvent<T>) => void;\n}\n\nexport default function useLongPress<T>({\n onLongPress,\n onClick,\n}: PressHandlers<T>, {\n delay = DEFAULT_DURATION,\n shouldPreventDefault = true,\n shouldStopPropagation = false,\n}: Options = {}): UseLongPressType<T> {\n const { isMobile } = useMediaQueryContext();\n const [longPressTriggered, setLongPressTriggered] = useState(false);\n const [dragTriggered, setDragTriggered] = useState(false);\n // https://www.typescriptlang.org/docs/handbook/utility-types.html#returntypetype\n const timeout = useRef<ReturnType<typeof setTimeout>>();\n const target = useRef<EventTarget>();\n\n const start = useCallback((e: React.MouseEvent<T> | React.TouchEvent<T>) => {\n e.persist();\n const clonedEvent = {\n ...e,\n };\n setDragTriggered(false);\n if (shouldStopPropagation) {\n e.stopPropagation();\n }\n if (shouldPreventDefault && e.target) {\n e.target.addEventListener(\n 'touchend',\n preventDefault,\n {\n passive: false,\n },\n );\n target.current = e.target;\n }\n\n timeout.current = setTimeout(() => {\n onLongPress(clonedEvent);\n setLongPressTriggered(true);\n }, delay);\n }, [onLongPress, delay, shouldPreventDefault, shouldStopPropagation, isMobile]);\n\n const clear = useCallback((\n e: React.MouseEvent<T> | React.TouchEvent<T>,\n shouldTriggerClick = true,\n onDrag = false,\n ) => {\n if (onDrag) {\n setDragTriggered(true);\n } else {\n setDragTriggered(false);\n }\n if (timeout?.current) {\n clearTimeout(timeout.current);\n }\n if (shouldTriggerClick && !longPressTriggered && !dragTriggered) {\n onClick?.(e);\n }\n setLongPressTriggered(false);\n if (shouldPreventDefault && target.current) {\n target.current.removeEventListener('touchend', preventDefault);\n }\n }, [shouldPreventDefault, onClick, longPressTriggered, dragTriggered]);\n\n return {\n onMouseDown: (e: React.MouseEvent<T>) => start(e),\n onMouseUp: (e: React.MouseEvent<T>) => clear(e),\n onMouseLeave: (e: React.MouseEvent<T>) => clear(e, false),\n onTouchStart: (e: React.TouchEvent<T>) => start(e),\n // setDragTriggered as true on touchmove, so that next onTouchEnd is ignored\n // if we dont do it, onClick?.(e) will be triggred, see inside clear()\n onTouchMove: (e: React.TouchEvent<T>) => clear(e, false, true),\n onTouchEnd: (e: React.TouchEvent<T>) => clear(e),\n };\n}\n"],"names":["DEFAULT_DURATION","preventDefault","e","isTouchEvent","touches","length","useLongPress","_ref","onLongPress","onClick","delay","shouldPreventDefault","shouldStopPropagation","arguments","undefined","isMobile","useMediaQueryContext","longPressTriggered","setLongPressTriggered","useState","dragTriggered","setDragTriggered","timeout","useRef","target","start","useCallback","persist","clonedEvent","_objectSpread","stopPropagation","addEventListener","passive","current","setTimeout","clear","shouldTriggerClick","onDrag","clearTimeout","removeEventListener","onMouseDown","onMouseUp","onMouseLeave","onTouchStart","onTouchMove","onTouchEnd"],"mappings":"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"}
|