@sendbird/uikit-react 3.3.7 → 3.4.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/App.js +60 -34
- package/App.js.map +1 -1
- package/CHANGELOG.md +150 -0
- package/Channel/components/ChannelHeader.js +20 -18
- package/Channel/components/ChannelHeader.js.map +1 -1
- package/Channel/components/ChannelUI.js +48 -29
- package/Channel/components/ChannelUI.js.map +1 -1
- package/Channel/components/FileViewer.js +15 -14
- package/Channel/components/FileViewer.js.map +1 -1
- package/Channel/components/FrozenNotification.js +4 -4
- package/Channel/components/Message.js +33 -24
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +62 -20
- package/Channel/components/MessageInput.js.map +1 -1
- package/Channel/components/MessageList.js +36 -27
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +21 -17
- package/Channel/components/RemoveMessageModal.js.map +1 -1
- package/Channel/components/SuggestedMentionList.js +17 -16
- package/Channel/components/SuggestedMentionList.js.map +1 -1
- package/Channel/components/TypingIndicator.js +15 -14
- package/Channel/components/TypingIndicator.js.map +1 -1
- package/Channel/components/UnreadCount.js +4 -4
- package/Channel/context.js +14 -13
- package/Channel/context.js.map +1 -1
- package/Channel.js +43 -28
- package/Channel.js.map +1 -1
- package/ChannelList/components/AddChannel.js +15 -15
- package/ChannelList/components/ChannelListHeader.js +7 -7
- package/ChannelList/components/ChannelListUI.js +29 -28
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +26 -25
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/ChannelList/context.js +8 -8
- package/ChannelList.js +29 -28
- package/ChannelList.js.map +1 -1
- package/{ChannelListProvider-eb4708a3.js → ChannelListProvider-3c78429f.js} +8 -8
- package/{ChannelListProvider-eb4708a3.js.map → ChannelListProvider-3c78429f.js.map} +1 -1
- package/{ChannelProvider-1e540c0e.js → ChannelProvider-1d70b8a0.js} +88 -13
- package/ChannelProvider-1d70b8a0.js.map +1 -0
- package/ChannelSettings/components/ChannelProfile.js +12 -12
- package/ChannelSettings/components/ChannelSettingsUI.js +18 -18
- package/ChannelSettings/components/EditDetailsModal.js +12 -12
- package/ChannelSettings/components/LeaveChannel.js +12 -12
- package/ChannelSettings/components/ModerationPanel.js +15 -15
- package/ChannelSettings/components/UserListItem.js +11 -11
- package/ChannelSettings/components/UserPanel.js +18 -15
- package/ChannelSettings/components/UserPanel.js.map +1 -1
- package/ChannelSettings/context.js +3 -3
- package/ChannelSettings.js +18 -18
- package/CreateChannel/components/CreateChannelUI.js +14 -14
- package/CreateChannel/components/InviteUsers.js +14 -14
- package/CreateChannel/components/SelectChannelType.js +11 -11
- package/CreateChannel/context.js +4 -4
- package/CreateChannel.js +14 -14
- package/{CreateChannelProvider-ed2e3cb4.js → CreateChannelProvider-946fb371.js} +1 -1
- package/{CreateChannelProvider-ed2e3cb4.js.map → CreateChannelProvider-946fb371.js.map} +1 -1
- package/CreateOpenChannel/components/CreateOpenChannelUI.js +10 -10
- package/CreateOpenChannel/context.js +1 -1
- package/CreateOpenChannel.js +10 -10
- package/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/EditUserProfile.js +13 -13
- package/{LocalizationContext-4c2faa9a.js → LocalizationContext-539093a9.js} +3 -3
- package/{LocalizationContext-4c2faa9a.js.map → LocalizationContext-539093a9.js.map} +1 -1
- package/{MediaQueryContext-97a21b7e.js → MediaQueryContext-79c8ad08.js} +1 -1
- package/{MediaQueryContext-97a21b7e.js.map → MediaQueryContext-79c8ad08.js.map} +1 -1
- package/{MemberList-6483a7db.js → MemberList-1350e670.js} +10 -7
- package/MemberList-1350e670.js.map +1 -0
- package/MessageSearch/components/MessageSearchUI.js +13 -11
- package/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/MessageSearch/context.js +2 -2
- package/MessageSearch.js +13 -11
- package/MessageSearch.js.map +1 -1
- package/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/OpenChannel/components/OpenChannelHeader.js +13 -13
- package/OpenChannel/components/OpenChannelInput.js +16 -15
- package/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessage.js +22 -22
- package/OpenChannel/components/OpenChannelMessageList.js +24 -24
- package/OpenChannel/components/OpenChannelUI.js +24 -24
- package/OpenChannel/context.js +9 -9
- package/OpenChannel.js +24 -24
- package/OpenChannelList/components/OpenChannelListUI.js +13 -13
- package/OpenChannelList/components/OpenChannelPreview.js +4 -4
- package/OpenChannelList/context.js +4 -4
- package/OpenChannelList.js +13 -13
- package/{OpenChannelListProvider-95808e48.js → OpenChannelListProvider-64e2ca27.js} +3 -3
- package/{OpenChannelListProvider-95808e48.js.map → OpenChannelListProvider-64e2ca27.js.map} +1 -1
- package/{OpenChannelProvider-e3137432.js → OpenChannelProvider-5a54a791.js} +7 -7
- package/{OpenChannelProvider-e3137432.js.map → OpenChannelProvider-5a54a791.js.map} +1 -1
- package/OpenChannelSettings/components/EditDetailsModal.js +13 -13
- package/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
- package/OpenChannelSettings/components/OperatorUI.js +17 -17
- package/OpenChannelSettings/components/ParticipantUI.js +15 -15
- package/OpenChannelSettings/context.js +3 -3
- package/OpenChannelSettings.js +18 -18
- package/README.md +8 -0
- package/{RemoveMessageModal-0baf3553.js → RemoveMessageModal-cd536405.js} +3 -3
- package/{RemoveMessageModal-0baf3553.js.map → RemoveMessageModal-cd536405.js.map} +1 -1
- package/SendbirdProvider.js +29 -11
- package/SendbirdProvider.js.map +1 -1
- package/Thread/components/ParentMessageInfo.js +32 -22
- package/Thread/components/ParentMessageInfo.js.map +1 -1
- package/Thread/components/ParentMessageInfoItem.js +33 -16
- package/Thread/components/ParentMessageInfoItem.js.map +1 -1
- package/Thread/components/ThreadHeader.js +6 -6
- package/Thread/components/ThreadList.js +33 -24
- package/Thread/components/ThreadList.js.map +1 -1
- package/Thread/components/ThreadListItem.js +40 -25
- package/Thread/components/ThreadListItem.js.map +1 -1
- package/Thread/components/ThreadMessageInput.js +71 -21
- package/Thread/components/ThreadMessageInput.js.map +1 -1
- package/Thread/components/ThreadUI.js +49 -31
- package/Thread/components/ThreadUI.js.map +1 -1
- package/Thread/context.js +9 -8
- package/Thread/context.js.map +1 -1
- package/Thread.js +47 -29
- package/Thread.js.map +1 -1
- package/{ThreadProvider-a1413f01.js → ThreadProvider-9f8652df.js} +91 -11
- package/ThreadProvider-9f8652df.js.map +1 -0
- package/{UserProfileContext-e5d90f15.js → UserProfileContext-bd8525b7.js} +1 -1
- package/{UserProfileContext-e5d90f15.js.map → UserProfileContext-bd8525b7.js.map} +1 -1
- package/VoiceMessageInputWrapper-b149ff89.js +173 -0
- package/VoiceMessageInputWrapper-b149ff89.js.map +1 -0
- package/VoicePlayer/context.js +5 -0
- package/VoicePlayer/context.js.map +1 -0
- package/VoicePlayer/useVoicePlayer.js +87 -0
- package/VoicePlayer/useVoicePlayer.js.map +1 -0
- package/VoiceRecorder/context.js +243 -0
- package/VoiceRecorder/context.js.map +1 -0
- package/VoiceRecorder/useVoiceRecorder.js +117 -0
- package/VoiceRecorder/useVoiceRecorder.js.map +1 -0
- package/{_rollupPluginBabelHelpers-b45d3824.js → _rollupPluginBabelHelpers-09618dc3.js} +1 -1
- package/_rollupPluginBabelHelpers-09618dc3.js.map +1 -0
- package/{actionTypes-c69daac1.js → actionTypes-0dd0c34b.js} +1 -1
- package/{actionTypes-c69daac1.js.map → actionTypes-0dd0c34b.js.map} +1 -1
- package/cjs/App.js +60 -34
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +20 -18
- package/cjs/Channel/components/ChannelHeader.js.map +1 -1
- package/cjs/Channel/components/ChannelUI.js +48 -29
- package/cjs/Channel/components/ChannelUI.js.map +1 -1
- package/cjs/Channel/components/FileViewer.js +15 -14
- package/cjs/Channel/components/FileViewer.js.map +1 -1
- package/cjs/Channel/components/FrozenNotification.js +4 -4
- package/cjs/Channel/components/Message.js +33 -24
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +62 -20
- package/cjs/Channel/components/MessageInput.js.map +1 -1
- package/cjs/Channel/components/MessageList.js +36 -27
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +21 -17
- package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
- package/cjs/Channel/components/SuggestedMentionList.js +17 -16
- package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
- package/cjs/Channel/components/TypingIndicator.js +15 -14
- package/cjs/Channel/components/TypingIndicator.js.map +1 -1
- package/cjs/Channel/components/UnreadCount.js +4 -4
- package/cjs/Channel/context.js +14 -13
- package/cjs/Channel/context.js.map +1 -1
- package/cjs/Channel.js +43 -28
- package/cjs/Channel.js.map +1 -1
- package/cjs/ChannelList/components/AddChannel.js +15 -15
- package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
- package/cjs/ChannelList/components/ChannelListUI.js +29 -28
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +26 -25
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/cjs/ChannelList/context.js +8 -8
- package/cjs/ChannelList.js +29 -28
- package/cjs/ChannelList.js.map +1 -1
- package/cjs/{ChannelListProvider-94df9f01.js → ChannelListProvider-7df03e2a.js} +8 -8
- package/cjs/{ChannelListProvider-94df9f01.js.map → ChannelListProvider-7df03e2a.js.map} +1 -1
- package/cjs/{ChannelProvider-3fbf7c5e.js → ChannelProvider-56b10dd6.js} +87 -12
- package/cjs/ChannelProvider-56b10dd6.js.map +1 -0
- package/cjs/ChannelSettings/components/ChannelProfile.js +12 -12
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -18
- package/cjs/ChannelSettings/components/EditDetailsModal.js +12 -12
- package/cjs/ChannelSettings/components/LeaveChannel.js +12 -12
- package/cjs/ChannelSettings/components/ModerationPanel.js +15 -15
- package/cjs/ChannelSettings/components/UserListItem.js +11 -11
- package/cjs/ChannelSettings/components/UserPanel.js +18 -15
- package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
- package/cjs/ChannelSettings/context.js +3 -3
- package/cjs/ChannelSettings.js +18 -18
- package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
- package/cjs/CreateChannel/components/InviteUsers.js +14 -14
- package/cjs/CreateChannel/components/SelectChannelType.js +11 -11
- package/cjs/CreateChannel/context.js +4 -4
- package/cjs/CreateChannel.js +14 -14
- package/cjs/{CreateChannelProvider-70422add.js → CreateChannelProvider-359f35d1.js} +1 -1
- package/cjs/{CreateChannelProvider-70422add.js.map → CreateChannelProvider-359f35d1.js.map} +1 -1
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +10 -10
- package/cjs/CreateOpenChannel/context.js +1 -1
- package/cjs/CreateOpenChannel.js +10 -10
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
- package/cjs/EditUserProfile.js +13 -13
- package/cjs/{LocalizationContext-a0f833e9.js → LocalizationContext-7d2c13ee.js} +3 -3
- package/cjs/{LocalizationContext-a0f833e9.js.map → LocalizationContext-7d2c13ee.js.map} +1 -1
- package/cjs/{MediaQueryContext-770ae8bc.js → MediaQueryContext-36855cf6.js} +1 -1
- package/cjs/{MediaQueryContext-770ae8bc.js.map → MediaQueryContext-36855cf6.js.map} +1 -1
- package/cjs/{MemberList-4a0910dd.js → MemberList-cf4488bc.js} +10 -7
- package/cjs/MemberList-cf4488bc.js.map +1 -0
- package/cjs/MessageSearch/components/MessageSearchUI.js +13 -11
- package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/cjs/MessageSearch/context.js +2 -2
- 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 +13 -13
- package/cjs/OpenChannel/components/OpenChannelInput.js +16 -15
- package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessage.js +22 -22
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +24 -24
- package/cjs/OpenChannel/components/OpenChannelUI.js +24 -24
- package/cjs/OpenChannel/context.js +9 -9
- package/cjs/OpenChannel.js +24 -24
- package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
- package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
- package/cjs/OpenChannelList/context.js +4 -4
- package/cjs/OpenChannelList.js +13 -13
- package/cjs/{OpenChannelListProvider-e97c8ed9.js → OpenChannelListProvider-d0e494e8.js} +3 -3
- package/cjs/{OpenChannelListProvider-e97c8ed9.js.map → OpenChannelListProvider-d0e494e8.js.map} +1 -1
- package/cjs/{OpenChannelProvider-9b453ac0.js → OpenChannelProvider-84d45a52.js} +7 -7
- package/cjs/{OpenChannelProvider-9b453ac0.js.map → OpenChannelProvider-84d45a52.js.map} +1 -1
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +13 -13
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
- package/cjs/OpenChannelSettings/components/OperatorUI.js +17 -17
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -15
- package/cjs/OpenChannelSettings/context.js +3 -3
- package/cjs/OpenChannelSettings.js +18 -18
- package/cjs/{RemoveMessageModal-7bde69be.js → RemoveMessageModal-44018509.js} +3 -3
- package/cjs/{RemoveMessageModal-7bde69be.js.map → RemoveMessageModal-44018509.js.map} +1 -1
- package/cjs/SendbirdProvider.js +29 -11
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfo.js +34 -24
- package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfoItem.js +33 -16
- package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
- package/cjs/Thread/components/ThreadHeader.js +6 -6
- package/cjs/Thread/components/ThreadList.js +33 -24
- package/cjs/Thread/components/ThreadList.js.map +1 -1
- package/cjs/Thread/components/ThreadListItem.js +41 -26
- package/cjs/Thread/components/ThreadListItem.js.map +1 -1
- package/cjs/Thread/components/ThreadMessageInput.js +73 -23
- package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
- package/cjs/Thread/components/ThreadUI.js +49 -31
- package/cjs/Thread/components/ThreadUI.js.map +1 -1
- package/cjs/Thread/context.js +9 -8
- package/cjs/Thread/context.js.map +1 -1
- package/cjs/Thread.js +47 -29
- package/cjs/Thread.js.map +1 -1
- package/cjs/{ThreadProvider-71441c16.js → ThreadProvider-e8591a61.js} +90 -10
- package/cjs/ThreadProvider-e8591a61.js.map +1 -0
- package/cjs/{UserProfileContext-74e6409b.js → UserProfileContext-89b8a98d.js} +1 -1
- package/cjs/{UserProfileContext-74e6409b.js.map → UserProfileContext-89b8a98d.js.map} +1 -1
- package/cjs/VoiceMessageInputWrapper-6d309e8c.js +179 -0
- package/cjs/VoiceMessageInputWrapper-6d309e8c.js.map +1 -0
- package/cjs/VoicePlayer/context.js +14 -0
- package/cjs/VoicePlayer/context.js.map +1 -0
- package/cjs/VoicePlayer/useVoicePlayer.js +91 -0
- package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -0
- package/cjs/VoiceRecorder/context.js +253 -0
- package/cjs/VoiceRecorder/context.js.map +1 -0
- package/cjs/VoiceRecorder/useVoiceRecorder.js +122 -0
- package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -0
- package/cjs/{_rollupPluginBabelHelpers-25763ef8.js → _rollupPluginBabelHelpers-9807f0cb.js} +1 -1
- package/cjs/_rollupPluginBabelHelpers-9807f0cb.js.map +1 -0
- package/cjs/{actionTypes-85a652e4.js → actionTypes-64f969d0.js} +1 -1
- package/cjs/{actionTypes-85a652e4.js.map → actionTypes-64f969d0.js.map} +1 -1
- package/cjs/{color-51fd9a0c.js → color-ae15b40e.js} +1 -1
- package/cjs/{color-51fd9a0c.js.map → color-ae15b40e.js.map} +1 -1
- package/cjs/{compareIds-44844f10.js → compareIds-88a3abee.js} +1 -1
- package/cjs/{compareIds-44844f10.js.map → compareIds-88a3abee.js.map} +1 -1
- package/cjs/{const-4761421a.js → const-6d993a66.js} +1 -1
- package/cjs/{const-4761421a.js.map → const-6d993a66.js.map} +1 -1
- package/cjs/{const-618dd4f4.js → const-98ae036e.js} +1 -1
- package/cjs/{const-618dd4f4.js.map → const-98ae036e.js.map} +1 -1
- package/cjs/consts-7142bdfe.js +36 -0
- package/cjs/consts-7142bdfe.js.map +1 -0
- package/cjs/{context-4b1de73e.js → context-9f945182.js} +2 -2
- package/cjs/{context-4b1de73e.js.map → context-9f945182.js.map} +1 -1
- package/cjs/dist/index.css +413 -16
- package/cjs/dist/index.css.map +1 -1
- package/cjs/{index-32b39be6.js → index-1f2ac00b.js} +5 -5
- package/cjs/{index-32b39be6.js.map → index-1f2ac00b.js.map} +1 -1
- package/cjs/{index-4dc29990.js → index-31135e46.js} +1 -1
- package/cjs/{index-4dc29990.js.map → index-31135e46.js.map} +1 -1
- package/cjs/{index-9f6a474c.js → index-318ca5bb.js} +2 -2
- package/cjs/{index-9f6a474c.js.map → index-318ca5bb.js.map} +1 -1
- package/cjs/{index-0e76934f.js → index-45c199d5.js} +8 -8
- package/cjs/index-45c199d5.js.map +1 -0
- package/cjs/{index-bfe8bdde.js → index-6691da2c.js} +49 -3
- package/cjs/index-6691da2c.js.map +1 -0
- package/cjs/{index-97532335.js → index-80ec94b9.js} +2 -2
- package/cjs/{index-97532335.js.map → index-80ec94b9.js.map} +1 -1
- package/cjs/{index-2c095d94.js → index-86b55059.js} +2 -2
- package/cjs/{index-2c095d94.js.map → index-86b55059.js.map} +1 -1
- package/cjs/{index-c4738d8b.js → index-9d2d5d23.js} +3 -3
- package/cjs/{index-c4738d8b.js.map → index-9d2d5d23.js.map} +1 -1
- package/cjs/{index-756baf20.js → index-9f074bb0.js} +7 -7
- package/cjs/{index-756baf20.js.map → index-9f074bb0.js.map} +1 -1
- package/cjs/{index-4d6f2a4e.js → index-a34a53d3.js} +4 -4
- package/cjs/{index-4d6f2a4e.js.map → index-a34a53d3.js.map} +1 -1
- package/cjs/{index-67134275.js → index-c34f34a2.js} +2 -2
- package/cjs/{index-67134275.js.map → index-c34f34a2.js.map} +1 -1
- package/cjs/index-e0971532.js +280 -0
- package/cjs/index-e0971532.js.map +1 -0
- package/cjs/index-fa531baa.js +175 -0
- package/cjs/index-fa531baa.js.map +1 -0
- package/cjs/{index-7d4e7ad9.js → index-fb42d34c.js} +1 -1
- package/cjs/{index-7d4e7ad9.js.map → index-fb42d34c.js.map} +1 -1
- package/cjs/index.js +51 -39
- package/cjs/index.js.map +1 -1
- package/cjs/lame.all.js +14498 -0
- package/cjs/lame.all.js.map +1 -0
- package/cjs/sendbirdSelectors.js +2 -2
- package/cjs/{stringSet-87e51d08.js → stringSet-d4071e23.js} +5 -1
- package/cjs/stringSet-d4071e23.js.map +1 -0
- package/cjs/{topics-d9091126.js → topics-7108f68f.js} +1 -1
- package/cjs/{topics-d9091126.js.map → topics-7108f68f.js.map} +1 -1
- package/cjs/{tslib.es6-0b4c49f8.js → tslib.es6-23b4ef32.js} +1 -1
- package/cjs/{tslib.es6-0b4c49f8.js.map → tslib.es6-23b4ef32.js.map} +1 -1
- package/cjs/types-8f7bbb00.js +11 -0
- package/cjs/types-8f7bbb00.js.map +1 -0
- package/cjs/ui/Accordion.js +3 -3
- package/cjs/ui/AccordionGroup.js +2 -2
- package/cjs/ui/AdminMessage.js +3 -3
- package/cjs/ui/Avatar.js +2 -2
- package/cjs/ui/Badge.js +5 -5
- package/cjs/ui/BottomSheet.js +1 -1
- package/cjs/ui/Button.js +3 -3
- package/cjs/ui/ChannelAvatar.js +3 -3
- package/cjs/ui/ConnectionStatus.js +4 -4
- package/cjs/ui/ContextMenu.js +5 -5
- package/cjs/ui/DateSeparator.js +4 -4
- package/cjs/ui/EmojiReactions.js +7 -7
- package/cjs/ui/FileMessageItemBody.js +6 -6
- package/cjs/ui/FileViewer.js +8 -8
- package/cjs/ui/Icon.js +354 -314
- package/cjs/ui/Icon.js.map +1 -1
- package/cjs/ui/IconButton.js +1 -1
- package/cjs/ui/ImageRenderer.js +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/Loader.js +1 -1
- package/cjs/ui/MentionLabel.js +11 -11
- package/cjs/ui/MessageContent.js +35 -20
- package/cjs/ui/MessageContent.js.map +1 -1
- package/cjs/ui/MessageInput.js +35 -16
- 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 +5 -5
- package/cjs/ui/MessageSearchFileItem.js +17 -14
- package/cjs/ui/MessageSearchFileItem.js.map +1 -1
- package/cjs/ui/MessageSearchItem.js +9 -9
- package/cjs/ui/MessageStatus.js +10 -10
- package/cjs/ui/Modal.js +7 -7
- package/cjs/ui/OGMessageItemBody.js +36 -26
- package/cjs/ui/OGMessageItemBody.js.map +1 -1
- package/cjs/ui/OpenChannelAdminMessage.js +3 -3
- package/cjs/ui/OpenChannelAvatar.js +6 -6
- package/cjs/ui/OpenchannelConversationHeader.js +6 -6
- package/cjs/ui/OpenchannelFileMessage.js +16 -16
- package/cjs/ui/OpenchannelOGMessage.js +16 -16
- package/cjs/ui/OpenchannelThumbnailMessage.js +15 -15
- package/cjs/ui/OpenchannelUserMessage.js +16 -16
- package/cjs/ui/PlaceHolder.js +6 -6
- package/cjs/ui/PlaybackTime.js +36 -0
- package/cjs/ui/PlaybackTime.js.map +1 -0
- package/cjs/ui/ProgressBar.js +41 -0
- package/cjs/ui/ProgressBar.js.map +1 -0
- package/cjs/ui/QuoteMessage.js +14 -8
- package/cjs/ui/QuoteMessage.js.map +1 -1
- package/cjs/ui/QuoteMessageInput.js +12 -11
- package/cjs/ui/QuoteMessageInput.js.map +1 -1
- package/cjs/ui/ReactionBadge.js +3 -3
- package/cjs/ui/ReactionButton.js +1 -1
- package/cjs/ui/SortByRow.js +2 -2
- package/cjs/ui/TextButton.js +2 -2
- package/cjs/ui/TextMessageItemBody.js +11 -11
- package/cjs/ui/ThreadReplies.js +6 -6
- package/cjs/ui/ThumbnailMessageItemBody.js +2 -2
- package/cjs/ui/Tooltip.js +3 -3
- package/cjs/ui/TooltipWrapper.js +1 -1
- package/cjs/ui/UnknownMessageItemBody.js +6 -6
- package/cjs/ui/UserListItem.js +11 -11
- package/cjs/ui/UserProfile.js +10 -10
- package/cjs/ui/VoiceMessageItemBody.js +119 -0
- package/cjs/ui/VoiceMessageItemBody.js.map +1 -0
- package/cjs/ui/VoiceMessgeInput.js +23 -0
- package/cjs/ui/VoiceMessgeInput.js.map +1 -0
- package/cjs/ui/Word.js +11 -11
- package/cjs/{useLongPress-ff6353a1.js → useLongPress-62a89444.js} +3 -3
- package/cjs/{useLongPress-ff6353a1.js.map → useLongPress-62a89444.js.map} +1 -1
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/utils/message/isVoiceMessage.js +10 -0
- package/cjs/utils/message/isVoiceMessage.js.map +1 -0
- package/cjs/{utils-aa1597cc.js → utils-178ccede.js} +1 -1
- package/cjs/{utils-aa1597cc.js.map → utils-178ccede.js.map} +1 -1
- package/cjs/{utils-edb40a10.js → utils-41fef560.js} +2 -2
- package/cjs/{utils-edb40a10.js.map → utils-41fef560.js.map} +1 -1
- package/cjs/{utils-c948ddfe.js → utils-7bec6eaa.js} +1 -1
- package/cjs/{utils-c948ddfe.js.map → utils-7bec6eaa.js.map} +1 -1
- package/cjs/{utils-72ab488f.js → utils-b691a058.js} +1 -1
- package/cjs/{utils-72ab488f.js.map → utils-b691a058.js.map} +1 -1
- package/cjs/{uuid-0b5f4e5e.js → uuid-42040a5c.js} +1 -1
- package/cjs/{uuid-0b5f4e5e.js.map → uuid-42040a5c.js.map} +1 -1
- package/cjs/withSendbird.js +1 -1
- package/{color-1b42e49d.js → color-f2370c85.js} +1 -1
- package/{color-1b42e49d.js.map → color-f2370c85.js.map} +1 -1
- package/{compareIds-df760ae2.js → compareIds-a4557492.js} +1 -1
- package/{compareIds-df760ae2.js.map → compareIds-a4557492.js.map} +1 -1
- package/{const-c269fd32.js → const-593595f5.js} +1 -1
- package/{const-c269fd32.js.map → const-593595f5.js.map} +1 -1
- package/{const-11ae0dd9.js → const-ce447fcf.js} +1 -1
- package/{const-11ae0dd9.js.map → const-ce447fcf.js.map} +1 -1
- package/consts-d2d25dac.js +23 -0
- package/consts-d2d25dac.js.map +1 -0
- package/{context-2c35a852.js → context-95839b09.js} +2 -2
- package/{context-2c35a852.js.map → context-95839b09.js.map} +1 -1
- package/dist/index.css +413 -16
- package/dist/index.css.map +1 -1
- package/{index-6a8be188.js → index-2aaa784a.js} +7 -7
- package/{index-6a8be188.js.map → index-2aaa784a.js.map} +1 -1
- package/{index-e2994193.js → index-4a977e7d.js} +2 -2
- package/{index-e2994193.js.map → index-4a977e7d.js.map} +1 -1
- package/{index-6491c190.js → index-4b51e7af.js} +5 -5
- package/{index-6491c190.js.map → index-4b51e7af.js.map} +1 -1
- package/{index-30726ee1.js → index-4c6a2064.js} +2 -2
- package/{index-30726ee1.js.map → index-4c6a2064.js.map} +1 -1
- package/index-60d3992b.js +271 -0
- package/index-60d3992b.js.map +1 -0
- package/{index-8c38f9d0.js → index-620331eb.js} +2 -2
- package/{index-8c38f9d0.js.map → index-620331eb.js.map} +1 -1
- package/index-7b5efb26.js +168 -0
- package/index-7b5efb26.js.map +1 -0
- package/{index-a53d78b6.js → index-999fdb64.js} +1 -1
- package/{index-a53d78b6.js.map → index-999fdb64.js.map} +1 -1
- package/{index-1f0b91f3.js → index-9c2d0ccd.js} +2 -2
- package/{index-1f0b91f3.js.map → index-9c2d0ccd.js.map} +1 -1
- package/{index-fd5a03a3.js → index-b8e990b4.js} +1 -1
- package/{index-fd5a03a3.js.map → index-b8e990b4.js.map} +1 -1
- package/{index-425e5f17.js → index-bbab31f0.js} +48 -4
- package/index-bbab31f0.js.map +1 -0
- package/{index-aa4edbe2.js → index-daccde5e.js} +8 -8
- package/index-daccde5e.js.map +1 -0
- package/{index-6d541758.js → index-ed1f765b.js} +3 -3
- package/{index-6d541758.js.map → index-ed1f765b.js.map} +1 -1
- package/{index-aecdd02c.js → index-eefaf935.js} +4 -4
- package/{index-aecdd02c.js.map → index-eefaf935.js.map} +1 -1
- package/index.d.ts +16 -1
- package/index.js +51 -39
- package/index.js.map +1 -1
- package/lame.all.js +14492 -0
- package/lame.all.js.map +1 -0
- package/package.json +1 -1
- package/sendbirdSelectors.js +2 -2
- package/{stringSet-c2443946.js → stringSet-f9763488.js} +5 -1
- package/stringSet-f9763488.js.map +1 -0
- package/{topics-0ba43ee8.js → topics-1ec669f0.js} +1 -1
- package/{topics-0ba43ee8.js.map → topics-1ec669f0.js.map} +1 -1
- package/{tslib.es6-13412863.js → tslib.es6-fc4a2658.js} +1 -1
- package/{tslib.es6-13412863.js.map → tslib.es6-fc4a2658.js.map} +1 -1
- package/types-e86f9fca.js +9 -0
- package/types-e86f9fca.js.map +1 -0
- package/ui/Accordion.js +3 -3
- package/ui/AccordionGroup.js +2 -2
- package/ui/AdminMessage.js +3 -3
- package/ui/Avatar.js +2 -2
- package/ui/Badge.js +5 -5
- package/ui/BottomSheet.js +1 -1
- package/ui/Button.js +3 -3
- package/ui/ChannelAvatar.js +3 -3
- package/ui/ConnectionStatus.js +4 -4
- package/ui/ContextMenu.js +5 -5
- package/ui/DateSeparator.js +4 -4
- package/ui/EmojiReactions.js +7 -7
- package/ui/FileMessageItemBody.js +6 -6
- package/ui/FileViewer.js +8 -8
- package/ui/Icon.js +341 -299
- package/ui/Icon.js.map +1 -1
- package/ui/IconButton.js +1 -1
- package/ui/ImageRenderer.js +1 -1
- package/ui/Input.js +2 -2
- package/ui/Label.js +2 -2
- package/ui/LinkLabel.js +2 -2
- package/ui/Loader.js +1 -1
- package/ui/MentionLabel.js +11 -11
- package/ui/MessageContent.js +35 -20
- package/ui/MessageContent.js.map +1 -1
- package/ui/MessageInput.js +35 -16
- package/ui/MessageInput.js.map +1 -1
- package/ui/MessageItemMenu.js +9 -8
- package/ui/MessageItemMenu.js.map +1 -1
- package/ui/MessageItemReactionMenu.js +5 -5
- package/ui/MessageSearchFileItem.js +17 -14
- package/ui/MessageSearchFileItem.js.map +1 -1
- package/ui/MessageSearchItem.js +9 -9
- package/ui/MessageStatus.js +10 -10
- package/ui/Modal.js +7 -7
- package/ui/OGMessageItemBody.js +37 -27
- package/ui/OGMessageItemBody.js.map +1 -1
- package/ui/OpenChannelAdminMessage.js +3 -3
- package/ui/OpenChannelAvatar.js +6 -6
- package/ui/OpenchannelConversationHeader.js +6 -6
- package/ui/OpenchannelFileMessage.js +16 -16
- package/ui/OpenchannelOGMessage.js +16 -16
- package/ui/OpenchannelThumbnailMessage.js +15 -15
- package/ui/OpenchannelUserMessage.js +16 -16
- package/ui/PlaceHolder.js +6 -6
- package/ui/PlaybackTime.js +27 -0
- package/ui/PlaybackTime.js.map +1 -0
- package/ui/ProgressBar.js +31 -0
- package/ui/ProgressBar.js.map +1 -0
- package/ui/QuoteMessage.js +14 -8
- package/ui/QuoteMessage.js.map +1 -1
- package/ui/QuoteMessageInput.js +12 -11
- package/ui/QuoteMessageInput.js.map +1 -1
- package/ui/ReactionBadge.js +3 -3
- package/ui/ReactionButton.js +1 -1
- package/ui/SortByRow.js +2 -2
- package/ui/TextButton.js +2 -2
- package/ui/TextMessageItemBody.js +11 -11
- package/ui/ThreadReplies.js +6 -6
- package/ui/ThumbnailMessageItemBody.js +2 -2
- package/ui/Tooltip.js +3 -3
- package/ui/TooltipWrapper.js +1 -1
- package/ui/UnknownMessageItemBody.js +6 -6
- package/ui/UserListItem.js +11 -11
- package/ui/UserProfile.js +10 -10
- package/ui/VoiceMessageItemBody.js +110 -0
- package/ui/VoiceMessageItemBody.js.map +1 -0
- package/ui/VoiceMessgeInput.js +15 -0
- package/ui/VoiceMessgeInput.js.map +1 -0
- package/ui/Word.js +11 -11
- package/{useLongPress-fbe83e54.js → useLongPress-6fc8312a.js} +3 -3
- package/{useLongPress-fbe83e54.js.map → useLongPress-6fc8312a.js.map} +1 -1
- package/useSendbirdStateContext.js +1 -1
- package/utils/message/isVoiceMessage.js +7 -0
- package/utils/message/isVoiceMessage.js.map +1 -0
- package/{utils-87d19647.js → utils-2570c397.js} +1 -1
- package/{utils-87d19647.js.map → utils-2570c397.js.map} +1 -1
- package/{utils-dd13f89e.js → utils-6c7dd397.js} +1 -1
- package/{utils-dd13f89e.js.map → utils-6c7dd397.js.map} +1 -1
- package/{utils-9c95a786.js → utils-8c242c8c.js} +2 -2
- package/{utils-9c95a786.js.map → utils-8c242c8c.js.map} +1 -1
- package/{utils-87dce5dd.js → utils-c1d219fa.js} +1 -1
- package/{utils-87dce5dd.js.map → utils-c1d219fa.js.map} +1 -1
- package/{uuid-7a5e68ed.js → uuid-6ca64623.js} +1 -1
- package/{uuid-7a5e68ed.js.map → uuid-6ca64623.js.map} +1 -1
- package/withSendbird.js +1 -1
- package/ChannelProvider-1e540c0e.js.map +0 -1
- package/MemberList-6483a7db.js.map +0 -1
- package/ThreadProvider-a1413f01.js.map +0 -1
- package/_rollupPluginBabelHelpers-b45d3824.js.map +0 -1
- package/cjs/ChannelProvider-3fbf7c5e.js.map +0 -1
- package/cjs/MemberList-4a0910dd.js.map +0 -1
- package/cjs/ThreadProvider-71441c16.js.map +0 -1
- package/cjs/_rollupPluginBabelHelpers-25763ef8.js.map +0 -1
- package/cjs/index-0e76934f.js.map +0 -1
- package/cjs/index-bfe8bdde.js.map +0 -1
- package/cjs/stringSet-87e51d08.js.map +0 -1
- package/index-425e5f17.js.map +0 -1
- package/index-aa4edbe2.js.map +0 -1
- package/stringSet-c2443946.js.map +0 -1
package/App.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React__default, { useState, useEffect } from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import Sendbird from './SendbirdProvider.js';
|
|
4
|
-
import { u as useMediaQueryContext } from './MediaQueryContext-
|
|
4
|
+
import { u as useMediaQueryContext } from './MediaQueryContext-79c8ad08.js';
|
|
5
5
|
import ChannelList from './ChannelList.js';
|
|
6
6
|
import Channel from './Channel.js';
|
|
7
7
|
import ChannelSettings from './ChannelSettings.js';
|
|
@@ -9,26 +9,30 @@ import MessageSearchPannel from './MessageSearch.js';
|
|
|
9
9
|
import Thread from './Thread.js';
|
|
10
10
|
import { GroupChannelHandler } from '@sendbird/chat/groupChannel';
|
|
11
11
|
import useSendbirdStateContext from './useSendbirdStateContext.js';
|
|
12
|
-
import { u as uuidv4 } from './uuid-
|
|
13
|
-
import './
|
|
12
|
+
import { u as uuidv4 } from './uuid-6ca64623.js';
|
|
13
|
+
import { V as VOICE_RECORDER_DEFAULT_MAX, a as VOICE_RECORDER_DEFAULT_MIN } from './consts-d2d25dac.js';
|
|
14
|
+
import './_rollupPluginBabelHelpers-09618dc3.js';
|
|
14
15
|
import './withSendbird.js';
|
|
15
16
|
import '@sendbird/chat';
|
|
16
17
|
import '@sendbird/chat/openChannel';
|
|
17
|
-
import './actionTypes-
|
|
18
|
-
import './index-
|
|
19
|
-
import './tslib.es6-
|
|
18
|
+
import './actionTypes-0dd0c34b.js';
|
|
19
|
+
import './index-bbab31f0.js';
|
|
20
|
+
import './tslib.es6-fc4a2658.js';
|
|
20
21
|
import './utils/message/getOutgoingMessageState.js';
|
|
21
22
|
import 'css-vars-ponyfill';
|
|
22
|
-
import './
|
|
23
|
-
import './
|
|
24
|
-
import './index-
|
|
25
|
-
import './
|
|
26
|
-
import './
|
|
27
|
-
import './
|
|
28
|
-
import './
|
|
23
|
+
import './VoiceRecorder/context.js';
|
|
24
|
+
import './lame.all.js';
|
|
25
|
+
import './index-60d3992b.js';
|
|
26
|
+
import './LocalizationContext-539093a9.js';
|
|
27
|
+
import './stringSet-f9763488.js';
|
|
28
|
+
import './index-999fdb64.js';
|
|
29
|
+
import './ChannelListProvider-3c78429f.js';
|
|
30
|
+
import './topics-1ec669f0.js';
|
|
31
|
+
import './utils-c1d219fa.js';
|
|
32
|
+
import './UserProfileContext-bd8525b7.js';
|
|
29
33
|
import './ChannelList/components/ChannelListUI.js';
|
|
30
34
|
import './ChannelList/components/ChannelListHeader.js';
|
|
31
|
-
import './index-
|
|
35
|
+
import './index-4a977e7d.js';
|
|
32
36
|
import './ui/Avatar.js';
|
|
33
37
|
import './ui/ImageRenderer.js';
|
|
34
38
|
import './ui/Icon.js';
|
|
@@ -36,12 +40,12 @@ import './ChannelList/components/AddChannel.js';
|
|
|
36
40
|
import './ui/IconButton.js';
|
|
37
41
|
import './CreateChannel.js';
|
|
38
42
|
import './CreateChannel/components/CreateChannelUI.js';
|
|
39
|
-
import './CreateChannelProvider-
|
|
43
|
+
import './CreateChannelProvider-946fb371.js';
|
|
40
44
|
import './sendbirdSelectors.js';
|
|
41
45
|
import './CreateChannel/components/InviteUsers.js';
|
|
42
46
|
import './ui/Modal.js';
|
|
43
47
|
import 'react-dom';
|
|
44
|
-
import './index-
|
|
48
|
+
import './index-b8e990b4.js';
|
|
45
49
|
import './ui/Button.js';
|
|
46
50
|
import './ui/UserListItem.js';
|
|
47
51
|
import './ui/MutedAvatarOverlay.js';
|
|
@@ -52,43 +56,44 @@ import './ui/SortByRow.js';
|
|
|
52
56
|
import './CreateChannel/components/SelectChannelType.js';
|
|
53
57
|
import './ChannelList/components/ChannelPreview.js';
|
|
54
58
|
import './ui/ChannelAvatar.js';
|
|
55
|
-
import './utils-
|
|
59
|
+
import './utils-2570c397.js';
|
|
56
60
|
import './ui/Badge.js';
|
|
57
|
-
import './index-
|
|
58
|
-
import './index-
|
|
61
|
+
import './index-daccde5e.js';
|
|
62
|
+
import './index-620331eb.js';
|
|
59
63
|
import './ui/Loader.js';
|
|
60
|
-
import './index-
|
|
61
|
-
import './index-
|
|
64
|
+
import './index-ed1f765b.js';
|
|
65
|
+
import './index-4c6a2064.js';
|
|
62
66
|
import './ui/MentionUserLabel.js';
|
|
63
67
|
import './ui/TextButton.js';
|
|
64
|
-
import './color-
|
|
68
|
+
import './color-f2370c85.js';
|
|
65
69
|
import './Channel/components/TypingIndicator.js';
|
|
66
|
-
import './ChannelProvider-
|
|
67
|
-
import './compareIds-
|
|
68
|
-
import './const-
|
|
70
|
+
import './ChannelProvider-1d70b8a0.js';
|
|
71
|
+
import './compareIds-a4557492.js';
|
|
72
|
+
import './const-593595f5.js';
|
|
69
73
|
import '@sendbird/chat/message';
|
|
70
74
|
import './ui/ReactionButton.js';
|
|
71
|
-
import './useLongPress-
|
|
75
|
+
import './useLongPress-6fc8312a.js';
|
|
72
76
|
import './ChannelList/components/ChannelPreviewAction.js';
|
|
73
77
|
import './EditUserProfile.js';
|
|
74
|
-
import './index-
|
|
78
|
+
import './index-4b51e7af.js';
|
|
75
79
|
import './ui/Input.js';
|
|
76
|
-
import './index-
|
|
80
|
+
import './index-eefaf935.js';
|
|
77
81
|
import './Channel/components/ChannelUI.js';
|
|
78
82
|
import './ui/ConnectionStatus.js';
|
|
79
83
|
import './Channel/components/ChannelHeader.js';
|
|
80
|
-
import './utils-
|
|
84
|
+
import './utils-8c242c8c.js';
|
|
81
85
|
import './Channel/components/MessageList.js';
|
|
82
86
|
import './Channel/components/Message.js';
|
|
83
87
|
import './Channel/components/SuggestedMentionList.js';
|
|
84
|
-
import './const-
|
|
85
|
-
import './ThreadProvider-
|
|
88
|
+
import './const-ce447fcf.js';
|
|
89
|
+
import './ThreadProvider-9f8652df.js';
|
|
86
90
|
import './Thread/context/types.js';
|
|
87
91
|
import './ui/DateSeparator.js';
|
|
88
92
|
import './ui/MessageInput.js';
|
|
89
93
|
import 'react-dom/server';
|
|
90
94
|
import './ui/MessageContent.js';
|
|
91
95
|
import './ui/MessageItemMenu.js';
|
|
96
|
+
import './types-e86f9fca.js';
|
|
92
97
|
import './ui/MessageItemReactionMenu.js';
|
|
93
98
|
import './ui/EmojiReactions.js';
|
|
94
99
|
import './ui/Tooltip.js';
|
|
@@ -106,12 +111,19 @@ import './ui/UnknownMessageItemBody.js';
|
|
|
106
111
|
import './ui/QuoteMessage.js';
|
|
107
112
|
import './ui/BottomSheet.js';
|
|
108
113
|
import './ui/ThreadReplies.js';
|
|
114
|
+
import './ui/VoiceMessageItemBody.js';
|
|
115
|
+
import './ui/ProgressBar.js';
|
|
116
|
+
import './VoicePlayer/useVoicePlayer.js';
|
|
117
|
+
import './ui/PlaybackTime.js';
|
|
109
118
|
import './Channel/components/FileViewer.js';
|
|
110
119
|
import './Channel/components/RemoveMessageModal.js';
|
|
111
120
|
import './Channel/components/FrozenNotification.js';
|
|
112
121
|
import './Channel/components/UnreadCount.js';
|
|
113
122
|
import './Channel/components/MessageInput.js';
|
|
114
123
|
import './ui/QuoteMessageInput.js';
|
|
124
|
+
import './VoiceMessageInputWrapper-b149ff89.js';
|
|
125
|
+
import './VoiceRecorder/useVoiceRecorder.js';
|
|
126
|
+
import './index-7b5efb26.js';
|
|
115
127
|
import './ChannelSettings/components/ChannelSettingsUI.js';
|
|
116
128
|
import './ChannelSettings/context.js';
|
|
117
129
|
import './ChannelSettings/components/ChannelProfile.js';
|
|
@@ -119,9 +131,9 @@ import './ChannelSettings/components/EditDetailsModal.js';
|
|
|
119
131
|
import './ChannelSettings/components/ModerationPanel.js';
|
|
120
132
|
import './ui/Accordion.js';
|
|
121
133
|
import './ui/AccordionGroup.js';
|
|
122
|
-
import './context-
|
|
134
|
+
import './context-95839b09.js';
|
|
123
135
|
import './ChannelSettings/components/UserListItem.js';
|
|
124
|
-
import './MemberList-
|
|
136
|
+
import './MemberList-1350e670.js';
|
|
125
137
|
import './ChannelSettings/components/LeaveChannel.js';
|
|
126
138
|
import './ChannelSettings/components/UserPanel.js';
|
|
127
139
|
import './MessageSearch/components/MessageSearchUI.js';
|
|
@@ -130,7 +142,7 @@ import './ui/MessageSearchItem.js';
|
|
|
130
142
|
import './ui/MessageSearchFileItem.js';
|
|
131
143
|
import './Thread/components/ThreadUI.js';
|
|
132
144
|
import './Thread/components/ParentMessageInfo.js';
|
|
133
|
-
import './RemoveMessageModal-
|
|
145
|
+
import './RemoveMessageModal-cd536405.js';
|
|
134
146
|
import './Thread/components/ParentMessageInfoItem.js';
|
|
135
147
|
import './ui/FileViewer.js';
|
|
136
148
|
import './Thread/components/ThreadHeader.js';
|
|
@@ -512,6 +524,8 @@ function App(props) {
|
|
|
512
524
|
config = {},
|
|
513
525
|
isReactionEnabled,
|
|
514
526
|
isMentionEnabled,
|
|
527
|
+
isVoiceMessageEnabled,
|
|
528
|
+
voiceRecord,
|
|
515
529
|
replyType,
|
|
516
530
|
isMessageGroupingEnabled,
|
|
517
531
|
colorSet,
|
|
@@ -549,6 +563,8 @@ function App(props) {
|
|
|
549
563
|
imageCompression: imageCompression,
|
|
550
564
|
isReactionEnabled: isReactionEnabled,
|
|
551
565
|
isMentionEnabled: isMentionEnabled,
|
|
566
|
+
isVoiceMessageEnabled: isVoiceMessageEnabled,
|
|
567
|
+
voiceRecord: voiceRecord,
|
|
552
568
|
onUserProfileMessage: channel => {
|
|
553
569
|
setCurrentChannel(channel);
|
|
554
570
|
},
|
|
@@ -602,6 +618,11 @@ App.propTypes = {
|
|
|
602
618
|
}),
|
|
603
619
|
disableAutoSelect: PropTypes.bool,
|
|
604
620
|
isMentionEnabled: PropTypes.bool,
|
|
621
|
+
isVoiceMessageEnabled: PropTypes.bool,
|
|
622
|
+
voiceRecord: PropTypes.shape({
|
|
623
|
+
maxRecordingTime: PropTypes.number,
|
|
624
|
+
minRecordingTime: PropTypes.number
|
|
625
|
+
}),
|
|
605
626
|
isTypingIndicatorEnabledOnChannelList: PropTypes.bool,
|
|
606
627
|
isMessageReceiptStatusEnabledOnChannelList: PropTypes.bool
|
|
607
628
|
};
|
|
@@ -624,6 +645,11 @@ App.defaultProps = {
|
|
|
624
645
|
config: {},
|
|
625
646
|
isReactionEnabled: true,
|
|
626
647
|
isMentionEnabled: false,
|
|
648
|
+
isVoiceMessageEnabled: true,
|
|
649
|
+
voiceRecord: {
|
|
650
|
+
maxRecordingTime: VOICE_RECORDER_DEFAULT_MAX,
|
|
651
|
+
minRecordingTime: VOICE_RECORDER_DEFAULT_MIN
|
|
652
|
+
},
|
|
627
653
|
replyType: 'NONE',
|
|
628
654
|
isMessageGroupingEnabled: true,
|
|
629
655
|
stringSet: null,
|
package/App.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.js","sources":["../src/smart-components/App/DesktopLayout.tsx","../src/smart-components/App/MobileLayout.tsx","../src/smart-components/App/AppLayout.tsx","../src/smart-components/App/index.jsx"],"sourcesContent":["import React, { useState } from 'react';\n\nimport type { DesktopLayoutProps } from './types';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearchPannel from '../MessageSearch';\nimport Thread from '../Thread';\nimport { BaseMessage, UserMessage } from '@sendbird/chat/message';\n\nexport const DesktopLayout: React.FC<DesktopLayoutProps> = (\n props: DesktopLayoutProps,\n) => {\n const {\n isReactionEnabled,\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n showSearchIcon,\n onProfileEditSuccess,\n disableAutoSelect,\n currentChannel,\n setCurrentChannel,\n showSettings,\n setShowSettings,\n showSearch,\n setShowSearch,\n highlightedMessage,\n setHighlightedMessage,\n startingPoint,\n setStartingPoint,\n showThread,\n setShowThread,\n threadTargetMessage,\n setThreadTargetMessage,\n } = props;\n const [animatedMessageId, setAnimatedMessageId] = useState(null);\n return (\n <div className=\"sendbird-app__wrap\">\n <div className=\"sendbird-app__channellist-wrap\">\n <ChannelList\n allowProfileEdit={allowProfileEdit}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n onChannelSelect={(channel) => {\n setStartingPoint(null);\n setHighlightedMessage(null);\n if (channel) {\n setCurrentChannel(channel);\n } else {\n setCurrentChannel(null);\n }\n }}\n />\n </div>\n <div\n className={`\n ${showSettings ? 'sendbird-app__conversation--settings-open' : ''}\n ${showSearch ? 'sendbird-app__conversation--search-open' : ''}\n sendbird-app__conversation-wrap\n `}\n >\n <Channel\n channelUrl={currentChannel?.url || ''}\n onChatHeaderActionClick={() => {\n setShowSearch(false);\n setShowThread(false);\n setShowSettings(!showSettings);\n }}\n onSearchClick={() => {\n setShowSettings(false);\n setShowThread(false);\n setShowSearch(!showSearch);\n }}\n onReplyInThread={({ message }) => { // parent message\n setShowSettings(false);\n setShowSearch(false);\n if (replyType === 'THREAD') {\n setThreadTargetMessage({\n parentMessage: message as BaseMessage,\n parentMessageId: message?.messageId,\n } as UserMessage);\n setShowThread(true);\n }\n }}\n onQuoteMessageClick={({ message }) => { // thread message\n setShowSettings(false);\n setShowSearch(false);\n if (replyType === 'THREAD') {\n setThreadTargetMessage(message);\n setShowThread(true);\n }\n }}\n onMessageAnimated={() => {\n setAnimatedMessageId(null);\n }}\n onMessageHighlighted={() => {\n setHighlightedMessage(null);\n }}\n showSearchIcon={showSearchIcon}\n startingPoint={startingPoint}\n animatedMessage={animatedMessageId}\n highlightedMessage={highlightedMessage}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n />\n </div>\n {showSettings && (\n <div className=\"sendbird-app__settingspanel-wrap\">\n <ChannelSettings\n className=\"sendbird-channel-settings\"\n channelUrl={currentChannel?.url || ''}\n onCloseClick={() => {\n setShowSettings(false);\n }}\n />\n </div>\n )}\n {showSearch && (\n <div className=\"sendbird-app__searchpanel-wrap\">\n <MessageSearchPannel\n channelUrl={currentChannel?.url || ''}\n onResultClick={(message) => {\n if (message.messageId === highlightedMessage) {\n setHighlightedMessage(null);\n setTimeout(() => {\n setHighlightedMessage(message.messageId);\n });\n } else {\n setStartingPoint(message.createdAt);\n setHighlightedMessage(message.messageId);\n }\n }}\n onCloseClick={() => {\n setShowSearch(false);\n }}\n />\n </div>\n )}\n {showThread && (\n <Thread\n className=\"sendbird-app__thread\"\n channelUrl={currentChannel?.url || ''}\n message={threadTargetMessage}\n onHeaderActionClick={() => {\n setShowThread(false);\n }}\n onMoveToParentMessage={({ message, channel }) => {\n if (channel?.url !== currentChannel?.url) {\n setCurrentChannel(channel);\n }\n if (message?.messageId !== animatedMessageId) {\n setStartingPoint(message?.createdAt);\n }\n setTimeout(() => {\n setAnimatedMessageId(message?.messageId);\n }, 500);\n }}\n />\n )}\n </div>\n )\n};\n","import './mobile.scss';\n\nimport React, { useState, useEffect } from 'react';\nimport type { BaseMessage } from '@sendbird/chat/message';\nimport type { SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport { GroupChannelHandler } from '@sendbird/chat/groupChannel';\n\nimport type { MobileLayoutProps } from './types';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearch from '../MessageSearch';\nimport useSendbirdStateContext from '../../hooks/useSendbirdStateContext';\nimport uuidv4 from '../../utils/uuid';\n\nenum PANELS {\n CHANNEL_LIST = 'CHANNEL_LIST',\n CHANNEL = 'CHANNEL',\n CHANNEL_SETTINGS = 'CHANNEL_SETTINGS',\n MESSAGE_SEARCH = 'MESSAGE_SEARCH',\n}\n\nexport const MobileLayout: React.FC<MobileLayoutProps> = (\n props: MobileLayoutProps,\n) => {\n const {\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n isReactionEnabled,\n showSearchIcon,\n onProfileEditSuccess,\n currentChannel,\n setCurrentChannel,\n highlightedMessage,\n setHighlightedMessage,\n startingPoint,\n setStartingPoint,\n } = props;\n const [panel, setPanel] = useState(PANELS?.CHANNEL_LIST);\n\n const store = useSendbirdStateContext();\n const sdk = store?.stores?.sdkStore?.sdk as SendbirdGroupChat;\n const userId = store?.config?.userId;\n\n const goToMessage = (message?: BaseMessage | null) => {\n setStartingPoint(message?.createdAt);\n setTimeout(() => {\n setHighlightedMessage(message?.messageId);\n });\n };\n\n useEffect(() => {\n if (panel !== PANELS?.CHANNEL) {\n goToMessage();\n }\n }, [panel]);\n\n useEffect(() => {\n const handlerId = uuidv4();\n if (sdk?.groupChannel?.addGroupChannelHandler) {\n const handler = new GroupChannelHandler({\n onUserBanned: (groupChannel, user) => {\n if (groupChannel.url === currentChannel?.url && user?.userId === userId) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n onChannelDeleted: (channelUrl) => {\n if (channelUrl === currentChannel?.url) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n onUserLeft: (groupChannel, user) => {\n if (groupChannel.url === currentChannel?.url && user?.userId === userId) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n });\n sdk?.groupChannel?.addGroupChannelHandler(handlerId, handler)\n }\n return () => {\n sdk?.groupChannel?.removeGroupChannelHandler?.(handlerId);\n }\n }, [sdk]);\n\n return (\n <div>\n {\n panel === PANELS?.CHANNEL_LIST && (\n <div className='sb_mobile__panelwrap'>\n <ChannelList\n onProfileEditSuccess={onProfileEditSuccess}\n onChannelSelect={(channel) => {\n setCurrentChannel(channel);\n setPanel(PANELS.CHANNEL);\n }}\n allowProfileEdit={allowProfileEdit}\n // this condition must be true for mobile\n disableAutoSelect\n />\n </div>\n )\n }\n {\n panel === PANELS?.CHANNEL && (\n <div className='sb_mobile__panelwrap'>\n <Channel\n replyType={replyType}\n channelUrl={currentChannel?.url}\n onSearchClick={() => {\n setPanel(PANELS.MESSAGE_SEARCH);\n }}\n onBackClick={() => {\n setPanel(PANELS.CHANNEL_LIST);\n }}\n isReactionEnabled={isReactionEnabled}\n showSearchIcon={showSearchIcon}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n startingPoint={startingPoint}\n highlightedMessage={highlightedMessage}\n onChatHeaderActionClick={() => {\n setPanel(PANELS.CHANNEL_SETTINGS);\n }}\n />\n </div>\n )\n }\n {\n panel === PANELS?.CHANNEL_SETTINGS && (\n <div className='sb_mobile__panelwrap'>\n <ChannelSettings\n channelUrl={currentChannel?.url}\n onCloseClick={() => {\n setPanel(PANELS.CHANNEL);\n }}\n onLeaveChannel={() => {\n setPanel(PANELS.CHANNEL_LIST);\n }}\n />\n </div>\n )\n }\n {\n panel === PANELS?.MESSAGE_SEARCH && (\n <div className='sb_mobile__panelwrap'>\n <MessageSearch\n channelUrl={currentChannel?.url}\n onCloseClick={() => {\n setPanel(PANELS.CHANNEL);\n }}\n onResultClick={(message) => {\n setPanel(PANELS.CHANNEL);\n goToMessage(message);\n }}\n />\n </div>\n )\n }\n </div>\n );\n};\n","import React, { useState } from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport type { AppLayoutProps } from './types';\n\nimport { useMediaQueryContext } from '../../lib/MediaQueryContext';\nimport { DesktopLayout } from './DesktopLayout';\nimport { MobileLayout } from './MobileLayout';\n\nexport const AppLayout: React.FC<AppLayoutProps> = (\n props: AppLayoutProps,\n) => {\n const {\n isReactionEnabled,\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n showSearchIcon,\n onProfileEditSuccess,\n disableAutoSelect,\n currentChannel,\n setCurrentChannel,\n } = props;\n const [showThread, setShowThread] = useState(false);\n const [threadTargetMessage, setThreadTargetMessage] = useState<UserMessage | FileMessage>(null);\n const [showSettings, setShowSettings] = useState(false);\n const [showSearch, setShowSearch] = useState(false);\n const [highlightedMessage, setHighlightedMessage] = useState<number>(null);\n const [startingPoint, setStartingPoint] = useState<number>(null);\n const { isMobile } = useMediaQueryContext();\n return (\n <>\n {\n isMobile\n ? (\n <MobileLayout\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n isReactionEnabled={isReactionEnabled}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n currentChannel={currentChannel}\n setCurrentChannel={setCurrentChannel}\n highlightedMessage={highlightedMessage}\n setHighlightedMessage={setHighlightedMessage}\n startingPoint={startingPoint}\n setStartingPoint={setStartingPoint}\n />\n )\n : (\n <DesktopLayout\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n currentChannel={currentChannel}\n setCurrentChannel={setCurrentChannel}\n showThread={showThread}\n setShowThread={setShowThread}\n threadTargetMessage={threadTargetMessage}\n setThreadTargetMessage={setThreadTargetMessage}\n showSettings={showSettings}\n setShowSettings={setShowSettings}\n showSearch={showSearch}\n setShowSearch={setShowSearch}\n highlightedMessage={highlightedMessage}\n setHighlightedMessage={setHighlightedMessage}\n startingPoint={startingPoint}\n setStartingPoint={setStartingPoint}\n />\n )\n }\n </>\n )\n}\n","/**\n * This is a drop in Chat solution\n * Can also be used as an example for creating\n * default chat apps\n */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Sendbird from '../../lib/Sendbird';\n\nimport { AppLayout } from './AppLayout';\n\nimport './index.scss';\n\nexport default function App(props) {\n const {\n appId,\n userId,\n accessToken,\n customApiHost,\n customWebSocketHost,\n mediaQueryBreakPoint,\n theme,\n userListQuery,\n nickname,\n profileUrl,\n dateLocale,\n config = {},\n isReactionEnabled,\n isMentionEnabled,\n replyType,\n isMessageGroupingEnabled,\n colorSet,\n stringSet,\n allowProfileEdit,\n disableUserProfile,\n disableMarkAsDelivered,\n renderUserProfile,\n showSearchIcon,\n onProfileEditSuccess,\n imageCompression,\n disableAutoSelect,\n isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabledOnChannelList,\n } = props;\n const [currentChannel, setCurrentChannel] = useState(null);\n return (\n <Sendbird\n stringSet={stringSet}\n appId={appId}\n userId={userId}\n accessToken={accessToken}\n customApiHost={customApiHost}\n customWebSocketHost={customWebSocketHost}\n mediaQueryBreakPoint={mediaQueryBreakPoint}\n theme={theme}\n nickname={nickname}\n profileUrl={profileUrl}\n dateLocale={dateLocale}\n userListQuery={userListQuery}\n config={config}\n colorSet={colorSet}\n disableUserProfile={disableUserProfile}\n disableMarkAsDelivered={disableMarkAsDelivered}\n renderUserProfile={renderUserProfile}\n imageCompression={imageCompression}\n isReactionEnabled={isReactionEnabled}\n isMentionEnabled={isMentionEnabled}\n onUserProfileMessage={(channel) => {\n setCurrentChannel(channel);\n }}\n isTypingIndicatorEnabledOnChannelList={isTypingIndicatorEnabledOnChannelList}\n isMessageReceiptStatusEnabledOnChannelList={isMessageReceiptStatusEnabledOnChannelList}\n replyType={replyType}\n >\n <AppLayout\n currentChannel={currentChannel}\n setCurrentChannel={setCurrentChannel}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n />\n </Sendbird>\n );\n}\n\nApp.propTypes = {\n appId: PropTypes.string.isRequired,\n userId: PropTypes.string.isRequired,\n accessToken: PropTypes.string,\n customApiHost: PropTypes.string,\n customWebSocketHost: PropTypes.string,\n theme: PropTypes.string,\n userListQuery: PropTypes.func,\n nickname: PropTypes.string,\n profileUrl: PropTypes.string,\n mediaQueryBreakPoint: PropTypes.string,\n allowProfileEdit: PropTypes.bool,\n disableUserProfile: PropTypes.bool,\n disableMarkAsDelivered: PropTypes.bool,\n renderUserProfile: PropTypes.func,\n onProfileEditSuccess: PropTypes.func,\n dateLocale: PropTypes.shape({}),\n config: PropTypes.shape({\n // None Error Warning Info 'All/Debug'\n logLevel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n isREMUnitEnabled: PropTypes.bool,\n }),\n isReactionEnabled: PropTypes.bool,\n replyType: PropTypes.oneOf(['NONE', 'QUOTE_REPLY', 'THREAD']),\n showSearchIcon: PropTypes.bool,\n isMessageGroupingEnabled: PropTypes.bool,\n stringSet: PropTypes.objectOf(PropTypes.string),\n colorSet: PropTypes.objectOf(PropTypes.string),\n imageCompression: PropTypes.shape({\n compressionRate: PropTypes.number,\n resizingWidth: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n resizingHeight: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n disableAutoSelect: PropTypes.bool,\n isMentionEnabled: PropTypes.bool,\n isTypingIndicatorEnabledOnChannelList: PropTypes.bool,\n isMessageReceiptStatusEnabledOnChannelList: PropTypes.bool,\n};\n\nApp.defaultProps = {\n accessToken: '',\n customApiHost: '',\n customWebSocketHost: '',\n theme: 'light',\n nickname: '',\n profileUrl: '',\n userListQuery: null,\n mediaQueryBreakPoint: null,\n dateLocale: null,\n allowProfileEdit: false,\n onProfileEditSuccess: null,\n disableUserProfile: false,\n disableMarkAsDelivered: false,\n showSearchIcon: false,\n renderUserProfile: null,\n config: {},\n isReactionEnabled: true,\n isMentionEnabled: false,\n replyType: 'NONE',\n isMessageGroupingEnabled: true,\n stringSet: null,\n colorSet: null,\n imageCompression: {},\n disableAutoSelect: false,\n isTypingIndicatorEnabledOnChannelList: false,\n isMessageReceiptStatusEnabledOnChannelList: false,\n};\n"],"names":["DesktopLayout","props","isReactionEnabled","replyType","isMessageGroupingEnabled","allowProfileEdit","showSearchIcon","onProfileEditSuccess","disableAutoSelect","currentChannel","setCurrentChannel","showSettings","setShowSettings","showSearch","setShowSearch","highlightedMessage","setHighlightedMessage","startingPoint","setStartingPoint","showThread","setShowThread","threadTargetMessage","setThreadTargetMessage","_a","useState","animatedMessageId","setAnimatedMessageId","React","channel","concat","url","message","parentMessage","parentMessageId","messageId","setTimeout","createdAt","PANELS","MobileLayout","_d","CHANNEL_LIST","panel","setPanel","store","useSendbirdStateContext","sdk","_b","stores","sdkStore","userId","_c","config","goToMessage","useEffect","CHANNEL","handlerId","uuidv4","groupChannel","addGroupChannelHandler","handler","GroupChannelHandler","onUserBanned","user","onChannelDeleted","channelUrl","onUserLeft","removeGroupChannelHandler","call","MESSAGE_SEARCH","CHANNEL_SETTINGS","MessageSearch","AppLayout","_e","_f","isMobile","useMediaQueryContext","App","appId","accessToken","customApiHost","customWebSocketHost","mediaQueryBreakPoint","theme","userListQuery","nickname","profileUrl","dateLocale","isMentionEnabled","colorSet","stringSet","disableUserProfile","disableMarkAsDelivered","renderUserProfile","imageCompression","isTypingIndicatorEnabledOnChannelList","isMessageReceiptStatusEnabledOnChannelList","propTypes","PropTypes","string","isRequired","func","bool","shape","logLevel","oneOfType","arrayOf","isREMUnitEnabled","oneOf","objectOf","compressionRate","number","resizingWidth","resizingHeight","defaultProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"App.js","sources":["../src/smart-components/App/DesktopLayout.tsx","../src/smart-components/App/MobileLayout.tsx","../src/smart-components/App/AppLayout.tsx","../src/smart-components/App/index.jsx"],"sourcesContent":["import React, { useState } from 'react';\n\nimport type { DesktopLayoutProps } from './types';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearchPannel from '../MessageSearch';\nimport Thread from '../Thread';\nimport { BaseMessage, UserMessage } from '@sendbird/chat/message';\n\nexport const DesktopLayout: React.FC<DesktopLayoutProps> = (\n props: DesktopLayoutProps,\n) => {\n const {\n isReactionEnabled,\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n showSearchIcon,\n onProfileEditSuccess,\n disableAutoSelect,\n currentChannel,\n setCurrentChannel,\n showSettings,\n setShowSettings,\n showSearch,\n setShowSearch,\n highlightedMessage,\n setHighlightedMessage,\n startingPoint,\n setStartingPoint,\n showThread,\n setShowThread,\n threadTargetMessage,\n setThreadTargetMessage,\n } = props;\n const [animatedMessageId, setAnimatedMessageId] = useState(null);\n return (\n <div className=\"sendbird-app__wrap\">\n <div className=\"sendbird-app__channellist-wrap\">\n <ChannelList\n allowProfileEdit={allowProfileEdit}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n onChannelSelect={(channel) => {\n setStartingPoint(null);\n setHighlightedMessage(null);\n if (channel) {\n setCurrentChannel(channel);\n } else {\n setCurrentChannel(null);\n }\n }}\n />\n </div>\n <div\n className={`\n ${showSettings ? 'sendbird-app__conversation--settings-open' : ''}\n ${showSearch ? 'sendbird-app__conversation--search-open' : ''}\n sendbird-app__conversation-wrap\n `}\n >\n <Channel\n channelUrl={currentChannel?.url || ''}\n onChatHeaderActionClick={() => {\n setShowSearch(false);\n setShowThread(false);\n setShowSettings(!showSettings);\n }}\n onSearchClick={() => {\n setShowSettings(false);\n setShowThread(false);\n setShowSearch(!showSearch);\n }}\n onReplyInThread={({ message }) => { // parent message\n setShowSettings(false);\n setShowSearch(false);\n if (replyType === 'THREAD') {\n setThreadTargetMessage({\n parentMessage: message as BaseMessage,\n parentMessageId: message?.messageId,\n } as UserMessage);\n setShowThread(true);\n }\n }}\n onQuoteMessageClick={({ message }) => { // thread message\n setShowSettings(false);\n setShowSearch(false);\n if (replyType === 'THREAD') {\n setThreadTargetMessage(message);\n setShowThread(true);\n }\n }}\n onMessageAnimated={() => {\n setAnimatedMessageId(null);\n }}\n onMessageHighlighted={() => {\n setHighlightedMessage(null);\n }}\n showSearchIcon={showSearchIcon}\n startingPoint={startingPoint}\n animatedMessage={animatedMessageId}\n highlightedMessage={highlightedMessage}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n />\n </div>\n {showSettings && (\n <div className=\"sendbird-app__settingspanel-wrap\">\n <ChannelSettings\n className=\"sendbird-channel-settings\"\n channelUrl={currentChannel?.url || ''}\n onCloseClick={() => {\n setShowSettings(false);\n }}\n />\n </div>\n )}\n {showSearch && (\n <div className=\"sendbird-app__searchpanel-wrap\">\n <MessageSearchPannel\n channelUrl={currentChannel?.url || ''}\n onResultClick={(message) => {\n if (message.messageId === highlightedMessage) {\n setHighlightedMessage(null);\n setTimeout(() => {\n setHighlightedMessage(message.messageId);\n });\n } else {\n setStartingPoint(message.createdAt);\n setHighlightedMessage(message.messageId);\n }\n }}\n onCloseClick={() => {\n setShowSearch(false);\n }}\n />\n </div>\n )}\n {showThread && (\n <Thread\n className=\"sendbird-app__thread\"\n channelUrl={currentChannel?.url || ''}\n message={threadTargetMessage}\n onHeaderActionClick={() => {\n setShowThread(false);\n }}\n onMoveToParentMessage={({ message, channel }) => {\n if (channel?.url !== currentChannel?.url) {\n setCurrentChannel(channel);\n }\n if (message?.messageId !== animatedMessageId) {\n setStartingPoint(message?.createdAt);\n }\n setTimeout(() => {\n setAnimatedMessageId(message?.messageId);\n }, 500);\n }}\n />\n )}\n </div>\n )\n};\n","import './mobile.scss';\n\nimport React, { useState, useEffect } from 'react';\nimport type { BaseMessage } from '@sendbird/chat/message';\nimport type { SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport { GroupChannelHandler } from '@sendbird/chat/groupChannel';\n\nimport type { MobileLayoutProps } from './types';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearch from '../MessageSearch';\nimport useSendbirdStateContext from '../../hooks/useSendbirdStateContext';\nimport uuidv4 from '../../utils/uuid';\n\nenum PANELS {\n CHANNEL_LIST = 'CHANNEL_LIST',\n CHANNEL = 'CHANNEL',\n CHANNEL_SETTINGS = 'CHANNEL_SETTINGS',\n MESSAGE_SEARCH = 'MESSAGE_SEARCH',\n}\n\nexport const MobileLayout: React.FC<MobileLayoutProps> = (\n props: MobileLayoutProps,\n) => {\n const {\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n isReactionEnabled,\n showSearchIcon,\n onProfileEditSuccess,\n currentChannel,\n setCurrentChannel,\n highlightedMessage,\n setHighlightedMessage,\n startingPoint,\n setStartingPoint,\n } = props;\n const [panel, setPanel] = useState(PANELS?.CHANNEL_LIST);\n\n const store = useSendbirdStateContext();\n const sdk = store?.stores?.sdkStore?.sdk as SendbirdGroupChat;\n const userId = store?.config?.userId;\n\n const goToMessage = (message?: BaseMessage | null) => {\n setStartingPoint(message?.createdAt);\n setTimeout(() => {\n setHighlightedMessage(message?.messageId);\n });\n };\n\n useEffect(() => {\n if (panel !== PANELS?.CHANNEL) {\n goToMessage();\n }\n }, [panel]);\n\n useEffect(() => {\n const handlerId = uuidv4();\n if (sdk?.groupChannel?.addGroupChannelHandler) {\n const handler = new GroupChannelHandler({\n onUserBanned: (groupChannel, user) => {\n if (groupChannel.url === currentChannel?.url && user?.userId === userId) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n onChannelDeleted: (channelUrl) => {\n if (channelUrl === currentChannel?.url) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n onUserLeft: (groupChannel, user) => {\n if (groupChannel.url === currentChannel?.url && user?.userId === userId) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n });\n sdk?.groupChannel?.addGroupChannelHandler(handlerId, handler)\n }\n return () => {\n sdk?.groupChannel?.removeGroupChannelHandler?.(handlerId);\n }\n }, [sdk]);\n\n return (\n <div>\n {\n panel === PANELS?.CHANNEL_LIST && (\n <div className='sb_mobile__panelwrap'>\n <ChannelList\n onProfileEditSuccess={onProfileEditSuccess}\n onChannelSelect={(channel) => {\n setCurrentChannel(channel);\n setPanel(PANELS.CHANNEL);\n }}\n allowProfileEdit={allowProfileEdit}\n // this condition must be true for mobile\n disableAutoSelect\n />\n </div>\n )\n }\n {\n panel === PANELS?.CHANNEL && (\n <div className='sb_mobile__panelwrap'>\n <Channel\n replyType={replyType}\n channelUrl={currentChannel?.url}\n onSearchClick={() => {\n setPanel(PANELS.MESSAGE_SEARCH);\n }}\n onBackClick={() => {\n setPanel(PANELS.CHANNEL_LIST);\n }}\n isReactionEnabled={isReactionEnabled}\n showSearchIcon={showSearchIcon}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n startingPoint={startingPoint}\n highlightedMessage={highlightedMessage}\n onChatHeaderActionClick={() => {\n setPanel(PANELS.CHANNEL_SETTINGS);\n }}\n />\n </div>\n )\n }\n {\n panel === PANELS?.CHANNEL_SETTINGS && (\n <div className='sb_mobile__panelwrap'>\n <ChannelSettings\n channelUrl={currentChannel?.url}\n onCloseClick={() => {\n setPanel(PANELS.CHANNEL);\n }}\n onLeaveChannel={() => {\n setPanel(PANELS.CHANNEL_LIST);\n }}\n />\n </div>\n )\n }\n {\n panel === PANELS?.MESSAGE_SEARCH && (\n <div className='sb_mobile__panelwrap'>\n <MessageSearch\n channelUrl={currentChannel?.url}\n onCloseClick={() => {\n setPanel(PANELS.CHANNEL);\n }}\n onResultClick={(message) => {\n setPanel(PANELS.CHANNEL);\n goToMessage(message);\n }}\n />\n </div>\n )\n }\n </div>\n );\n};\n","import React, { useState } from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport type { AppLayoutProps } from './types';\n\nimport { useMediaQueryContext } from '../../lib/MediaQueryContext';\nimport { DesktopLayout } from './DesktopLayout';\nimport { MobileLayout } from './MobileLayout';\n\nexport const AppLayout: React.FC<AppLayoutProps> = (\n props: AppLayoutProps,\n) => {\n const {\n isReactionEnabled,\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n showSearchIcon,\n onProfileEditSuccess,\n disableAutoSelect,\n currentChannel,\n setCurrentChannel,\n } = props;\n const [showThread, setShowThread] = useState(false);\n const [threadTargetMessage, setThreadTargetMessage] = useState<UserMessage | FileMessage>(null);\n const [showSettings, setShowSettings] = useState(false);\n const [showSearch, setShowSearch] = useState(false);\n const [highlightedMessage, setHighlightedMessage] = useState<number>(null);\n const [startingPoint, setStartingPoint] = useState<number>(null);\n const { isMobile } = useMediaQueryContext();\n return (\n <>\n {\n isMobile\n ? (\n <MobileLayout\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n isReactionEnabled={isReactionEnabled}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n currentChannel={currentChannel}\n setCurrentChannel={setCurrentChannel}\n highlightedMessage={highlightedMessage}\n setHighlightedMessage={setHighlightedMessage}\n startingPoint={startingPoint}\n setStartingPoint={setStartingPoint}\n />\n )\n : (\n <DesktopLayout\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n currentChannel={currentChannel}\n setCurrentChannel={setCurrentChannel}\n showThread={showThread}\n setShowThread={setShowThread}\n threadTargetMessage={threadTargetMessage}\n setThreadTargetMessage={setThreadTargetMessage}\n showSettings={showSettings}\n setShowSettings={setShowSettings}\n showSearch={showSearch}\n setShowSearch={setShowSearch}\n highlightedMessage={highlightedMessage}\n setHighlightedMessage={setHighlightedMessage}\n startingPoint={startingPoint}\n setStartingPoint={setStartingPoint}\n />\n )\n }\n </>\n )\n}\n","/**\n * This is a drop in Chat solution\n * Can also be used as an example for creating\n * default chat apps\n */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Sendbird from '../../lib/Sendbird';\n\nimport { AppLayout } from './AppLayout';\n\nimport './index.scss';\nimport { VOICE_RECORDER_DEFAULT_MAX, VOICE_RECORDER_DEFAULT_MIN } from '../../utils/consts';\n\nexport default function App(props) {\n const {\n appId,\n userId,\n accessToken,\n customApiHost,\n customWebSocketHost,\n mediaQueryBreakPoint,\n theme,\n userListQuery,\n nickname,\n profileUrl,\n dateLocale,\n config = {},\n isReactionEnabled,\n isMentionEnabled,\n isVoiceMessageEnabled,\n voiceRecord,\n replyType,\n isMessageGroupingEnabled,\n colorSet,\n stringSet,\n allowProfileEdit,\n disableUserProfile,\n disableMarkAsDelivered,\n renderUserProfile,\n showSearchIcon,\n onProfileEditSuccess,\n imageCompression,\n disableAutoSelect,\n isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabledOnChannelList,\n } = props;\n const [currentChannel, setCurrentChannel] = useState(null);\n return (\n <Sendbird\n stringSet={stringSet}\n appId={appId}\n userId={userId}\n accessToken={accessToken}\n customApiHost={customApiHost}\n customWebSocketHost={customWebSocketHost}\n mediaQueryBreakPoint={mediaQueryBreakPoint}\n theme={theme}\n nickname={nickname}\n profileUrl={profileUrl}\n dateLocale={dateLocale}\n userListQuery={userListQuery}\n config={config}\n colorSet={colorSet}\n disableUserProfile={disableUserProfile}\n disableMarkAsDelivered={disableMarkAsDelivered}\n renderUserProfile={renderUserProfile}\n imageCompression={imageCompression}\n isReactionEnabled={isReactionEnabled}\n isMentionEnabled={isMentionEnabled}\n isVoiceMessageEnabled={isVoiceMessageEnabled}\n voiceRecord={voiceRecord}\n onUserProfileMessage={(channel) => {\n setCurrentChannel(channel);\n }}\n isTypingIndicatorEnabledOnChannelList={isTypingIndicatorEnabledOnChannelList}\n isMessageReceiptStatusEnabledOnChannelList={isMessageReceiptStatusEnabledOnChannelList}\n replyType={replyType}\n >\n <AppLayout\n currentChannel={currentChannel}\n setCurrentChannel={setCurrentChannel}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n />\n </Sendbird>\n );\n}\n\nApp.propTypes = {\n appId: PropTypes.string.isRequired,\n userId: PropTypes.string.isRequired,\n accessToken: PropTypes.string,\n customApiHost: PropTypes.string,\n customWebSocketHost: PropTypes.string,\n theme: PropTypes.string,\n userListQuery: PropTypes.func,\n nickname: PropTypes.string,\n profileUrl: PropTypes.string,\n mediaQueryBreakPoint: PropTypes.string,\n allowProfileEdit: PropTypes.bool,\n disableUserProfile: PropTypes.bool,\n disableMarkAsDelivered: PropTypes.bool,\n renderUserProfile: PropTypes.func,\n onProfileEditSuccess: PropTypes.func,\n dateLocale: PropTypes.shape({}),\n config: PropTypes.shape({\n // None Error Warning Info 'All/Debug'\n logLevel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n isREMUnitEnabled: PropTypes.bool,\n }),\n isReactionEnabled: PropTypes.bool,\n replyType: PropTypes.oneOf(['NONE', 'QUOTE_REPLY', 'THREAD']),\n showSearchIcon: PropTypes.bool,\n isMessageGroupingEnabled: PropTypes.bool,\n stringSet: PropTypes.objectOf(PropTypes.string),\n colorSet: PropTypes.objectOf(PropTypes.string),\n imageCompression: PropTypes.shape({\n compressionRate: PropTypes.number,\n resizingWidth: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n resizingHeight: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n disableAutoSelect: PropTypes.bool,\n isMentionEnabled: PropTypes.bool,\n isVoiceMessageEnabled: PropTypes.bool,\n voiceRecord: PropTypes.shape({\n maxRecordingTime: PropTypes.number,\n minRecordingTime: PropTypes.number,\n }),\n isTypingIndicatorEnabledOnChannelList: PropTypes.bool,\n isMessageReceiptStatusEnabledOnChannelList: PropTypes.bool,\n};\n\nApp.defaultProps = {\n accessToken: '',\n customApiHost: '',\n customWebSocketHost: '',\n theme: 'light',\n nickname: '',\n profileUrl: '',\n userListQuery: null,\n mediaQueryBreakPoint: null,\n dateLocale: null,\n allowProfileEdit: false,\n onProfileEditSuccess: null,\n disableUserProfile: false,\n disableMarkAsDelivered: false,\n showSearchIcon: false,\n renderUserProfile: null,\n config: {},\n isReactionEnabled: true,\n isMentionEnabled: false,\n isVoiceMessageEnabled: true,\n voiceRecord: {\n maxRecordingTime: VOICE_RECORDER_DEFAULT_MAX,\n minRecordingTime: VOICE_RECORDER_DEFAULT_MIN,\n },\n replyType: 'NONE',\n isMessageGroupingEnabled: true,\n stringSet: null,\n colorSet: null,\n imageCompression: {},\n disableAutoSelect: false,\n isTypingIndicatorEnabledOnChannelList: false,\n isMessageReceiptStatusEnabledOnChannelList: false,\n};\n"],"names":["DesktopLayout","props","isReactionEnabled","replyType","isMessageGroupingEnabled","allowProfileEdit","showSearchIcon","onProfileEditSuccess","disableAutoSelect","currentChannel","setCurrentChannel","showSettings","setShowSettings","showSearch","setShowSearch","highlightedMessage","setHighlightedMessage","startingPoint","setStartingPoint","showThread","setShowThread","threadTargetMessage","setThreadTargetMessage","_a","useState","animatedMessageId","setAnimatedMessageId","React","channel","concat","url","message","parentMessage","parentMessageId","messageId","setTimeout","createdAt","PANELS","MobileLayout","_d","CHANNEL_LIST","panel","setPanel","store","useSendbirdStateContext","sdk","_b","stores","sdkStore","userId","_c","config","goToMessage","useEffect","CHANNEL","handlerId","uuidv4","groupChannel","addGroupChannelHandler","handler","GroupChannelHandler","onUserBanned","user","onChannelDeleted","channelUrl","onUserLeft","removeGroupChannelHandler","call","MESSAGE_SEARCH","CHANNEL_SETTINGS","MessageSearch","AppLayout","_e","_f","isMobile","useMediaQueryContext","App","appId","accessToken","customApiHost","customWebSocketHost","mediaQueryBreakPoint","theme","userListQuery","nickname","profileUrl","dateLocale","isMentionEnabled","isVoiceMessageEnabled","voiceRecord","colorSet","stringSet","disableUserProfile","disableMarkAsDelivered","renderUserProfile","imageCompression","isTypingIndicatorEnabledOnChannelList","isMessageReceiptStatusEnabledOnChannelList","propTypes","PropTypes","string","isRequired","func","bool","shape","logLevel","oneOfType","arrayOf","isREMUnitEnabled","oneOf","objectOf","compressionRate","number","resizingWidth","resizingHeight","maxRecordingTime","minRecordingTime","defaultProps","VOICE_RECORDER_DEFAULT_MAX","VOICE_RECORDER_DEFAULT_MIN"],"mappings":"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"}
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,155 @@
|
|
|
1
1
|
# Changelog - v3
|
|
2
2
|
|
|
3
|
+
## [v3.4.0] (Mar 3 2023)
|
|
4
|
+
|
|
5
|
+
### Voice Message
|
|
6
|
+
Voice message is a new type of message and feature that you can use in group channel. You can record your voice on the message input and send it to the channel. Also the messages will be displayed as a new design of the voice message. You are able to use this feature from this version.
|
|
7
|
+
|
|
8
|
+
#### How to turn on/off
|
|
9
|
+
* You can turn this feature on/off using the props `isVoiceMessageEnabled` on the <App /> and <SendbirdProvider /> components. Here is an example.
|
|
10
|
+
```javascript
|
|
11
|
+
import App from '@sendbird/uikit-react/App'
|
|
12
|
+
import SendbirdProvider from '@sendbird/uikit-react/SendbirdProvider'
|
|
13
|
+
import { useEffect } from 'react'
|
|
14
|
+
|
|
15
|
+
const QuickStart = () => (<App isVoiceMessageEnabled />)
|
|
16
|
+
const CustomApp = () => {
|
|
17
|
+
const [useVoiceMessage, setUseVoiceMessage] = useEffect(true)
|
|
18
|
+
return (
|
|
19
|
+
<SendbirdProvider
|
|
20
|
+
isVoiceMessageEnabled={useVoiceMessage}
|
|
21
|
+
>
|
|
22
|
+
{/* Implement your custom app here */}
|
|
23
|
+
</SendbirdProvider>
|
|
24
|
+
)
|
|
25
|
+
}
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
#### How to customize the voice message in Channel and Thread?
|
|
29
|
+
You can identify the voice message to check if `message.type` includes `sbu_type=voice`. But you can use `isVoiceMessage` util function to do that.
|
|
30
|
+
```javascript
|
|
31
|
+
import Channel from '@sendbird/uikit-react/Channel'
|
|
32
|
+
import isVoiceMessage from '@sendbird/uikit-react/utils/message/isVoiceMessage'
|
|
33
|
+
|
|
34
|
+
const CustomChannel = () => {
|
|
35
|
+
return (
|
|
36
|
+
<Channel
|
|
37
|
+
renderMessage={({ message }) => {
|
|
38
|
+
if (isVoiceMessage(message)) {
|
|
39
|
+
// Return your custom voice message item component
|
|
40
|
+
}
|
|
41
|
+
return null
|
|
42
|
+
}}
|
|
43
|
+
/>
|
|
44
|
+
)
|
|
45
|
+
}
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
#### Limitation & Next step
|
|
49
|
+
* For now, it's not able to customize the inner components of VoiceMessageInput. We are going to provide an interface to customize it in the future. Until that time, you can replace the VoiceMessageInput component using the `renderVoiceMessageIcon` props of MessageInput component.
|
|
50
|
+
|
|
51
|
+
#### What has been changed?
|
|
52
|
+
* Add props `isVoiceMessageEnabled` and `voiceRecord` props to the App, `SendbirdProvider`, and `MessageInput` components, to turn on/off the voice message recording feature
|
|
53
|
+
```javascript
|
|
54
|
+
import SendbirdProvider from '@sendbird/uikit-react/SendbirdProvider'
|
|
55
|
+
const CustomApp = () => {
|
|
56
|
+
return (
|
|
57
|
+
<SendbirdProvider
|
|
58
|
+
isVoiceMessageEnabled
|
|
59
|
+
voiceRecord={{
|
|
60
|
+
maxRecordingTime: 60000,
|
|
61
|
+
minRecordingTime: 1000,
|
|
62
|
+
}}
|
|
63
|
+
>
|
|
64
|
+
{/* implement custom application */}
|
|
65
|
+
</SendbirdProvider>
|
|
66
|
+
)
|
|
67
|
+
}
|
|
68
|
+
```
|
|
69
|
+
* Add props `onVoiceMessageIconClick` to the `MessageInput` component
|
|
70
|
+
* Add props `onBeforeSendVoiceMessage` to the `Channel` component
|
|
71
|
+
* Fetch message list including `MetaArray` in the `Channel` and `Thread` modules
|
|
72
|
+
* Provide new IconType `AudioOnLined` & new IconColor `Primary2` and `OnBackground4`
|
|
73
|
+
* Provide new string sets
|
|
74
|
+
```javascript
|
|
75
|
+
import SendbirdProvider from '@sendbird/uikit-react/SendbirdProvider'
|
|
76
|
+
const CustomApp = () => {
|
|
77
|
+
return (
|
|
78
|
+
<SendbirdProvider
|
|
79
|
+
stringSet={{
|
|
80
|
+
BUTTON__OK: 'OK',
|
|
81
|
+
VOICE_MESSAGE: 'Voice Message',
|
|
82
|
+
MODAL__VOICE_MESSAGE_INPUT_DISABLED__TITLE_MUTED: 'You\'re muted by the operator.',
|
|
83
|
+
MODAL__VOICE_MESSAGE_INPUT_DISABLED__TITLE_FROZEN: 'Channel is frozen.',
|
|
84
|
+
}}
|
|
85
|
+
>
|
|
86
|
+
{/* implement custom application */}
|
|
87
|
+
</SendbirdProvider>
|
|
88
|
+
)
|
|
89
|
+
}
|
|
90
|
+
```
|
|
91
|
+
* `BUTTON__OK`: 'OK' → Used on the submit button of pop up modal
|
|
92
|
+
* `MODAL__VOICE_MESSAGE_INPUT_DISABLED__TITLE_MUTED`: 'You\'re muted by the operator.' → Used in an alert pop-up modal
|
|
93
|
+
* `MODAL__VOICE_MESSAGE_INPUT_DISABLED__TITLE_FROZEN`: 'Channel is frozen.' → Used in an alert pop-up modal
|
|
94
|
+
* `VOICE_MESSAGE`: 'Voice Message' → Used in ChannelPreviewItem, QuoteMessage, and MessageSearch to appear that the message type is the voice## External Contributions
|
|
95
|
+
|
|
96
|
+
#### What has been added?
|
|
97
|
+
* Install `lamejs` to convert the audio file to mp3 (iOS support)
|
|
98
|
+
* UI components
|
|
99
|
+
```javascript
|
|
100
|
+
import PlaybackTime from "@sendbird/uikit-react/ui/PlaybackTime"
|
|
101
|
+
import ProgressBar from "@sendbird/uikit-react/ui/ProgressBar"
|
|
102
|
+
import VoiceMessageInput from "@sendbird/uikit-react/ui/VoiceMessageInput"
|
|
103
|
+
import VoiceMessageItemBody from "@sendbird/uikit-react/ui/VoiceMessageItemBody"
|
|
104
|
+
```
|
|
105
|
+
* PlaybackTime: Display the current time in 00:00 format with the received millisecond value
|
|
106
|
+
* ProgressBar: Display the current progress status with the received maxSize and currentSize of millisecond unit value
|
|
107
|
+
* VoiceMessageInput: UI component for recording and playing a voice message
|
|
108
|
+
* VoiceMessageItemBody: UI component for rendering a voice message also able to play voice message
|
|
109
|
+
* VoiceRecorder
|
|
110
|
+
```javascript
|
|
111
|
+
import { VoiceRecorderProvider, useVoiceRecorderContext } from '@sendbird/uikit-react/VoiceRecorder/context'
|
|
112
|
+
import useVoiceRecorder from '@sendbird/uikit-react/VoiceRecorder/useVoiceRecorder'
|
|
113
|
+
```
|
|
114
|
+
* VoiceRecorderProvider: A react context provider component providing `start`, and `stop` functions
|
|
115
|
+
* useVoiceRecorderContext: A react useContext hook of VoiceRecorderProvider
|
|
116
|
+
* useVoiceRecorder: A react hook that provides advanced context, `recordingLimit`, `recordingTime`, `recordingFile`, and `recordingStatus`. Recommend using this hook in the customized components.
|
|
117
|
+
* VoicePlayer
|
|
118
|
+
```javascript
|
|
119
|
+
import { VoicePlayerProvider, useVoicePlayerContext } from '@sendbird/uikit-react/VoicePlayer/context'
|
|
120
|
+
import useVoicePlayer from '@sendbird/uikit-react/VoicePlayer/useVoicePlayer'
|
|
121
|
+
```
|
|
122
|
+
* VoicePlayerProvider: A react context provider component providing `play`, and `pause` functions
|
|
123
|
+
* useVoicePlayerContext: A react useContext hook of VoicePlayerProvider
|
|
124
|
+
* useVoicePlayer: A react hook that provides advanced context, `playbackTime`, `duration`, and `playingStatus`. Recommend using this hook in the customized components.
|
|
125
|
+
* utils/isVoiceMessage: A function that you can check if the given message is a voice message
|
|
126
|
+
```javascript
|
|
127
|
+
import isVoiceMessage from '@sendbird/uikit-react/utils/message/isVoiceMessage'
|
|
128
|
+
const isVoiceMsg: boolean = isVoiceMessage(message);
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
Features:
|
|
132
|
+
* Add props `renderFileUploadIcon`, `renderVoiceMessageIcon`, and `renderSendMessageIcon` into the `Channel`, `ChannelUI`, and `MessageInput` component
|
|
133
|
+
```javascript
|
|
134
|
+
interface MessageInputProps {
|
|
135
|
+
renderFileUploadIcon?: () => React.ReactElement;
|
|
136
|
+
renderVoiceMessageIcon?: () => React.ReactElement;
|
|
137
|
+
renderSendMessageIcon?: () => React.ReactElement;
|
|
138
|
+
}
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
Fixes:
|
|
142
|
+
* Use ApplicationUserListQuery on ChannelSettings component
|
|
143
|
+
* Fix some visual issues on the normal User Panel of ChannelSettings
|
|
144
|
+
* Indentify faulty images in OG message
|
|
145
|
+
* Add classname: sendbird-og-message-item-body__og-thumbnail__empty to identify faulty images in OG message
|
|
146
|
+
Clients can use CSS to target this class~
|
|
147
|
+
```css
|
|
148
|
+
.sendbird-og-message-item-body__og-thumbnail__empty {
|
|
149
|
+
display: none;
|
|
150
|
+
}
|
|
151
|
+
```
|
|
152
|
+
|
|
3
153
|
## [v3.3.7] (Feb 24 2023)
|
|
4
154
|
|
|
5
155
|
Features:
|
|
@@ -1,37 +1,38 @@
|
|
|
1
1
|
import React__default, { useContext } from 'react';
|
|
2
|
-
import { g as getChannelTitle } from '../../utils-
|
|
3
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-
|
|
2
|
+
import { g as getChannelTitle } from '../../utils-8c242c8c.js';
|
|
3
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-4a977e7d.js';
|
|
4
4
|
import Icon, { IconColors, IconTypes } from '../../ui/Icon.js';
|
|
5
5
|
import IconButton from '../../ui/IconButton.js';
|
|
6
6
|
import ChannelAvatar from '../../ui/ChannelAvatar.js';
|
|
7
|
-
import { a as LocalizationContext } from '../../LocalizationContext-
|
|
7
|
+
import { a as LocalizationContext } from '../../LocalizationContext-539093a9.js';
|
|
8
8
|
import useSendbirdStateContext from '../../useSendbirdStateContext.js';
|
|
9
|
-
import { u as useChannelContext } from '../../ChannelProvider-
|
|
10
|
-
import { u as useMediaQueryContext } from '../../MediaQueryContext-
|
|
11
|
-
import { n as noop } from '../../utils-
|
|
9
|
+
import { u as useChannelContext } from '../../ChannelProvider-1d70b8a0.js';
|
|
10
|
+
import { u as useMediaQueryContext } from '../../MediaQueryContext-79c8ad08.js';
|
|
11
|
+
import { n as noop } from '../../utils-c1d219fa.js';
|
|
12
12
|
import 'prop-types';
|
|
13
|
-
import '../../stringSet-
|
|
14
|
-
import '../../tslib.es6-
|
|
13
|
+
import '../../stringSet-f9763488.js';
|
|
14
|
+
import '../../tslib.es6-fc4a2658.js';
|
|
15
15
|
import '../../ui/Avatar.js';
|
|
16
16
|
import '../../ui/ImageRenderer.js';
|
|
17
|
-
import '../../uuid-
|
|
18
|
-
import '../../utils-
|
|
19
|
-
import '../../index-
|
|
17
|
+
import '../../uuid-6ca64623.js';
|
|
18
|
+
import '../../utils-2570c397.js';
|
|
19
|
+
import '../../index-999fdb64.js';
|
|
20
20
|
import '../../withSendbird.js';
|
|
21
|
-
import '../../_rollupPluginBabelHelpers-
|
|
22
|
-
import '../../UserProfileContext-
|
|
23
|
-
import '../../index-
|
|
24
|
-
import '../../topics-
|
|
25
|
-
import '../../index-
|
|
21
|
+
import '../../_rollupPluginBabelHelpers-09618dc3.js';
|
|
22
|
+
import '../../UserProfileContext-bd8525b7.js';
|
|
23
|
+
import '../../index-620331eb.js';
|
|
24
|
+
import '../../topics-1ec669f0.js';
|
|
25
|
+
import '../../index-bbab31f0.js';
|
|
26
26
|
import '../../utils/message/getOutgoingMessageState.js';
|
|
27
|
-
import '../../compareIds-
|
|
28
|
-
import '../../const-
|
|
27
|
+
import '../../compareIds-a4557492.js';
|
|
28
|
+
import '../../const-593595f5.js';
|
|
29
29
|
import '@sendbird/chat/groupChannel';
|
|
30
30
|
import '@sendbird/chat/message';
|
|
31
31
|
import '../../ui/ContextMenu.js';
|
|
32
32
|
import 'react-dom';
|
|
33
33
|
import '../../ui/SortByRow.js';
|
|
34
34
|
import '../../ui/ReactionButton.js';
|
|
35
|
+
import '../../consts-d2d25dac.js';
|
|
35
36
|
|
|
36
37
|
var ChannelHeader = function () {
|
|
37
38
|
var _a, _b, _c;
|
|
@@ -80,6 +81,7 @@ var ChannelHeader = function () {
|
|
|
80
81
|
}, (typeof isMuted === 'string' && isMuted === 'true' || typeof isMuted === 'boolean' && isMuted) && /*#__PURE__*/React__default.createElement(Icon, {
|
|
81
82
|
className: "sendbird-chat-header__right__mute",
|
|
82
83
|
type: IconTypes.NOTIFICATIONS_OFF_FILLED,
|
|
84
|
+
fillColor: IconColors.ON_BACKGROUND_2,
|
|
83
85
|
width: "24px",
|
|
84
86
|
height: "24px"
|
|
85
87
|
}), showSearchIcon && /*#__PURE__*/React__default.createElement(IconButton, {
|