@sendbird/uikit-react 3.4.8 → 3.4.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 +123 -74
- package/App.js.map +1 -1
- package/CHANGELOG.md +43 -1
- package/Channel/components/ChannelHeader.js +18 -18
- package/Channel/components/ChannelUI.js +46 -41
- package/Channel/components/ChannelUI.js.map +1 -1
- package/Channel/components/FileViewer.js +14 -14
- package/Channel/components/FrozenNotification.js +4 -4
- package/Channel/components/Message.js +59 -45
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +40 -38
- package/Channel/components/MessageInput.js.map +1 -1
- package/Channel/components/MessageList.js +85 -46
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +16 -16
- package/Channel/components/SuggestedMentionList.js +16 -16
- package/Channel/components/TypingIndicator.js +14 -14
- package/Channel/components/UnreadCount.js +5 -5
- package/Channel/components/UnreadCount.js.map +1 -1
- package/Channel/context.js +11 -11
- package/Channel.js +46 -41
- package/Channel.js.map +1 -1
- package/ChannelList/components/AddChannel.js +14 -14
- package/ChannelList/components/ChannelListHeader.js +6 -6
- package/ChannelList/components/ChannelListUI.js +33 -32
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +26 -26
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +15 -14
- package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
- package/ChannelList/context.js +7 -7
- package/ChannelList.js +29 -29
- package/{ChannelListProvider-1d8f4d94.js → ChannelListProvider-b42f8a70.js} +19 -37
- package/ChannelListProvider-b42f8a70.js.map +1 -0
- package/{ChannelProvider-bba4a095.js → ChannelProvider-6c5b02f1.js} +81 -29
- package/ChannelProvider-6c5b02f1.js.map +1 -0
- package/ChannelSettings/components/ChannelProfile.js +11 -11
- package/ChannelSettings/components/ChannelSettingsUI.js +17 -17
- package/ChannelSettings/components/EditDetailsModal.js +11 -11
- package/ChannelSettings/components/LeaveChannel.js +11 -11
- package/ChannelSettings/components/ModerationPanel.js +27 -21
- package/ChannelSettings/components/ModerationPanel.js.map +1 -1
- package/ChannelSettings/components/UserListItem.js +10 -10
- package/ChannelSettings/components/UserPanel.js +13 -13
- package/ChannelSettings/context.js +3 -3
- package/ChannelSettings.js +17 -17
- package/CreateChannel/components/CreateChannelUI.js +13 -13
- package/CreateChannel/components/InviteUsers.js +15 -14
- package/CreateChannel/components/InviteUsers.js.map +1 -1
- package/CreateChannel/components/SelectChannelType.js +10 -10
- package/CreateChannel/context.js +4 -4
- package/CreateChannel.js +13 -13
- package/{CreateChannelProvider-1ba7a571.js → CreateChannelProvider-4a0190ed.js} +1 -1
- package/{CreateChannelProvider-1ba7a571.js.map → CreateChannelProvider-4a0190ed.js.map} +1 -1
- package/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
- package/CreateOpenChannel/context.js +1 -1
- package/CreateOpenChannel.js +9 -9
- package/EditUserProfile/components/EditUserProfileUI.js +12 -12
- package/EditUserProfile.js +12 -12
- package/{LocalizationContext-ae38446a.js → LocalizationContext-8b7b48ec.js} +3 -3
- package/{LocalizationContext-ae38446a.js.map → LocalizationContext-8b7b48ec.js.map} +1 -1
- package/{MediaQueryContext-8d283dc2.js → MediaQueryContext-744e0eb4.js} +20 -15
- package/MediaQueryContext-744e0eb4.js.map +1 -0
- package/{MemberList-38971d43.js → MemberList-6e52b1b1.js} +17 -11
- package/MemberList-6e52b1b1.js.map +1 -0
- package/Message/context.js +5 -1
- package/Message/context.js.map +1 -1
- package/MessageSearch/components/MessageSearchUI.js +11 -11
- package/MessageSearch/context.js +1 -1
- package/MessageSearch.js +11 -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 +33 -25
- package/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessage.js +27 -27
- package/OpenChannel/components/OpenChannelMessageList.js +31 -31
- package/OpenChannel/components/OpenChannelUI.js +31 -31
- package/OpenChannel/context.js +8 -8
- package/OpenChannel.js +31 -31
- package/OpenChannelList/components/OpenChannelListUI.js +13 -13
- package/OpenChannelList/components/OpenChannelPreview.js +3 -3
- package/OpenChannelList/context.js +3 -3
- package/OpenChannelList.js +13 -13
- package/{OpenChannelListProvider-e0add710.js → OpenChannelListProvider-d99e3cd2.js} +3 -3
- package/{OpenChannelListProvider-e0add710.js.map → OpenChannelListProvider-d99e3cd2.js.map} +1 -1
- package/{OpenChannelProvider-49db4c6c.js → OpenChannelProvider-4857158c.js} +7 -7
- package/{OpenChannelProvider-49db4c6c.js.map → OpenChannelProvider-4857158c.js.map} +1 -1
- package/OpenChannelSettings/components/EditDetailsModal.js +12 -12
- package/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
- package/OpenChannelSettings/components/OperatorUI.js +32 -24
- package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/OpenChannelSettings/components/ParticipantUI.js +14 -14
- package/OpenChannelSettings/context.js +3 -3
- package/OpenChannelSettings.js +17 -17
- package/{RemoveMessageModal-10f50eae.js → RemoveMessageModal-38fef9c4.js} +3 -3
- package/{RemoveMessageModal-10f50eae.js.map → RemoveMessageModal-38fef9c4.js.map} +1 -1
- package/SendbirdProvider.js +378 -76
- package/SendbirdProvider.js.map +1 -1
- package/Thread/components/ParentMessageInfo.js +97 -52
- package/Thread/components/ParentMessageInfo.js.map +1 -1
- package/Thread/components/ParentMessageInfoItem.js +33 -25
- package/Thread/components/ParentMessageInfoItem.js.map +1 -1
- package/Thread/components/ThreadHeader.js +7 -7
- package/Thread/components/ThreadHeader.js.map +1 -1
- package/Thread/components/ThreadList.js +40 -33
- package/Thread/components/ThreadList.js.map +1 -1
- package/Thread/components/ThreadListItem.js +94 -50
- package/Thread/components/ThreadListItem.js.map +1 -1
- package/Thread/components/ThreadMessageInput.js +37 -39
- package/Thread/components/ThreadMessageInput.js.map +1 -1
- package/Thread/components/ThreadUI.js +56 -46
- package/Thread/components/ThreadUI.js.map +1 -1
- package/Thread/context.js +8 -8
- package/Thread.js +49 -42
- package/Thread.js.map +1 -1
- package/{ThreadProvider-128d5041.js → ThreadProvider-637aa7f0.js} +11 -8
- package/ThreadProvider-637aa7f0.js.map +1 -0
- package/{UserProfileContext-91e3b3f2.js → UserProfileContext-9040499b.js} +1 -1
- package/{UserProfileContext-91e3b3f2.js.map → UserProfileContext-9040499b.js.map} +1 -1
- package/{VoiceMessageInputWrapper-cbfa4f2b.js → VoiceMessageInputWrapper-f593346c.js} +7 -7
- package/{VoiceMessageInputWrapper-cbfa4f2b.js.map → VoiceMessageInputWrapper-f593346c.js.map} +1 -1
- package/VoicePlayer/context.js +3 -3
- package/VoicePlayer/useVoicePlayer.js +3 -3
- package/VoiceRecorder/context.js +11 -4
- package/VoiceRecorder/context.js.map +1 -1
- package/VoiceRecorder/useVoiceRecorder.js +2 -2
- package/{WebAudioUtils-5f47139c.js → WebAudioUtils-904afd00.js} +1 -1
- package/{WebAudioUtils-5f47139c.js.map → WebAudioUtils-904afd00.js.map} +1 -1
- package/{_rollupPluginBabelHelpers-eaf55eff.js → _rollupPluginBabelHelpers-8c286a7c.js} +1 -1
- package/_rollupPluginBabelHelpers-8c286a7c.js.map +1 -0
- package/{actionTypes-98eee9f4.js → actionTypes-bd8af98d.js} +1 -1
- package/{actionTypes-98eee9f4.js.map → actionTypes-bd8af98d.js.map} +1 -1
- package/cjs/App.js +123 -74
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +18 -18
- package/cjs/Channel/components/ChannelUI.js +46 -41
- package/cjs/Channel/components/ChannelUI.js.map +1 -1
- package/cjs/Channel/components/FileViewer.js +14 -14
- package/cjs/Channel/components/FrozenNotification.js +4 -4
- package/cjs/Channel/components/Message.js +59 -45
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +40 -38
- package/cjs/Channel/components/MessageInput.js.map +1 -1
- package/cjs/Channel/components/MessageList.js +85 -46
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +16 -16
- package/cjs/Channel/components/SuggestedMentionList.js +16 -16
- package/cjs/Channel/components/TypingIndicator.js +14 -14
- package/cjs/Channel/components/UnreadCount.js +5 -5
- package/cjs/Channel/components/UnreadCount.js.map +1 -1
- package/cjs/Channel/context.js +11 -11
- package/cjs/Channel.js +46 -41
- package/cjs/Channel.js.map +1 -1
- package/cjs/ChannelList/components/AddChannel.js +14 -14
- package/cjs/ChannelList/components/ChannelListHeader.js +6 -6
- package/cjs/ChannelList/components/ChannelListUI.js +33 -32
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +26 -26
- package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreviewAction.js +15 -14
- package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
- package/cjs/ChannelList/context.js +7 -7
- package/cjs/ChannelList.js +29 -29
- package/cjs/{ChannelListProvider-634b78f3.js → ChannelListProvider-2ea52e8f.js} +19 -37
- package/cjs/ChannelListProvider-2ea52e8f.js.map +1 -0
- package/cjs/{ChannelProvider-5366f030.js → ChannelProvider-4057a4e6.js} +81 -28
- package/cjs/ChannelProvider-4057a4e6.js.map +1 -0
- package/cjs/ChannelSettings/components/ChannelProfile.js +11 -11
- package/cjs/ChannelSettings/components/ChannelSettingsUI.js +17 -17
- package/cjs/ChannelSettings/components/EditDetailsModal.js +11 -11
- package/cjs/ChannelSettings/components/LeaveChannel.js +11 -11
- package/cjs/ChannelSettings/components/ModerationPanel.js +27 -21
- package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
- package/cjs/ChannelSettings/components/UserListItem.js +10 -10
- package/cjs/ChannelSettings/components/UserPanel.js +13 -13
- package/cjs/ChannelSettings/context.js +3 -3
- package/cjs/ChannelSettings.js +17 -17
- package/cjs/CreateChannel/components/CreateChannelUI.js +13 -13
- package/cjs/CreateChannel/components/InviteUsers.js +15 -14
- package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
- package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
- package/cjs/CreateChannel/context.js +4 -4
- package/cjs/CreateChannel.js +13 -13
- package/cjs/{CreateChannelProvider-65dcc450.js → CreateChannelProvider-83cd1b9a.js} +1 -1
- package/cjs/{CreateChannelProvider-65dcc450.js.map → CreateChannelProvider-83cd1b9a.js.map} +1 -1
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
- package/cjs/CreateOpenChannel/context.js +1 -1
- package/cjs/CreateOpenChannel.js +9 -9
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
- package/cjs/EditUserProfile.js +12 -12
- package/cjs/{LocalizationContext-4fa55e6b.js → LocalizationContext-a7ac3575.js} +3 -3
- package/cjs/{LocalizationContext-4fa55e6b.js.map → LocalizationContext-a7ac3575.js.map} +1 -1
- package/cjs/{MediaQueryContext-e443379e.js → MediaQueryContext-f0b22fae.js} +20 -15
- package/cjs/MediaQueryContext-f0b22fae.js.map +1 -0
- package/cjs/{MemberList-3736f22c.js → MemberList-d02103a5.js} +17 -11
- package/cjs/MemberList-d02103a5.js.map +1 -0
- package/cjs/Message/context.js +5 -1
- package/cjs/Message/context.js.map +1 -1
- package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
- package/cjs/MessageSearch/context.js +1 -1
- package/cjs/MessageSearch.js +11 -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 +33 -25
- package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessage.js +27 -27
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +31 -31
- package/cjs/OpenChannel/components/OpenChannelUI.js +31 -31
- package/cjs/OpenChannel/context.js +8 -8
- package/cjs/OpenChannel.js +31 -31
- package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
- package/cjs/OpenChannelList/components/OpenChannelPreview.js +3 -3
- package/cjs/OpenChannelList/context.js +3 -3
- package/cjs/OpenChannelList.js +13 -13
- package/cjs/{OpenChannelListProvider-458abc0e.js → OpenChannelListProvider-8c304b22.js} +3 -3
- package/cjs/{OpenChannelListProvider-458abc0e.js.map → OpenChannelListProvider-8c304b22.js.map} +1 -1
- package/cjs/{OpenChannelProvider-84f42ba8.js → OpenChannelProvider-ea1d6825.js} +7 -7
- package/cjs/{OpenChannelProvider-84f42ba8.js.map → OpenChannelProvider-ea1d6825.js.map} +1 -1
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +12 -12
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
- package/cjs/OpenChannelSettings/components/OperatorUI.js +32 -24
- package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
- package/cjs/OpenChannelSettings/context.js +3 -3
- package/cjs/OpenChannelSettings.js +17 -17
- package/cjs/{RemoveMessageModal-3535563a.js → RemoveMessageModal-95aeddfe.js} +3 -3
- package/cjs/{RemoveMessageModal-3535563a.js.map → RemoveMessageModal-95aeddfe.js.map} +1 -1
- package/cjs/SendbirdProvider.js +377 -75
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfo.js +97 -52
- package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfoItem.js +33 -25
- package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
- package/cjs/Thread/components/ThreadHeader.js +7 -7
- package/cjs/Thread/components/ThreadHeader.js.map +1 -1
- package/cjs/Thread/components/ThreadList.js +40 -33
- package/cjs/Thread/components/ThreadList.js.map +1 -1
- package/cjs/Thread/components/ThreadListItem.js +94 -50
- package/cjs/Thread/components/ThreadListItem.js.map +1 -1
- package/cjs/Thread/components/ThreadMessageInput.js +37 -39
- package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
- package/cjs/Thread/components/ThreadUI.js +56 -46
- package/cjs/Thread/components/ThreadUI.js.map +1 -1
- package/cjs/Thread/context.js +8 -8
- package/cjs/Thread.js +49 -42
- package/cjs/Thread.js.map +1 -1
- package/cjs/{ThreadProvider-d38505b4.js → ThreadProvider-6a39fc92.js} +11 -8
- package/cjs/ThreadProvider-6a39fc92.js.map +1 -0
- package/cjs/{UserProfileContext-83eaf6e8.js → UserProfileContext-a026a307.js} +1 -1
- package/cjs/{UserProfileContext-83eaf6e8.js.map → UserProfileContext-a026a307.js.map} +1 -1
- package/cjs/{VoiceMessageInputWrapper-68c8b8cb.js → VoiceMessageInputWrapper-ab392692.js} +7 -7
- package/cjs/{VoiceMessageInputWrapper-68c8b8cb.js.map → VoiceMessageInputWrapper-ab392692.js.map} +1 -1
- package/cjs/VoicePlayer/context.js +3 -3
- package/cjs/VoicePlayer/useVoicePlayer.js +3 -3
- package/cjs/VoiceRecorder/context.js +11 -4
- package/cjs/VoiceRecorder/context.js.map +1 -1
- package/cjs/VoiceRecorder/useVoiceRecorder.js +2 -2
- package/cjs/{WebAudioUtils-00b9890d.js → WebAudioUtils-2196360d.js} +1 -1
- package/cjs/{WebAudioUtils-00b9890d.js.map → WebAudioUtils-2196360d.js.map} +1 -1
- package/cjs/{_rollupPluginBabelHelpers-2c0fc9c3.js → _rollupPluginBabelHelpers-af66a654.js} +1 -1
- package/cjs/_rollupPluginBabelHelpers-af66a654.js.map +1 -0
- package/cjs/{actionTypes-fb3f6a66.js → actionTypes-8348f508.js} +1 -1
- package/cjs/{actionTypes-fb3f6a66.js.map → actionTypes-8348f508.js.map} +1 -1
- package/cjs/{color-83cbca20.js → color-2ebe48ee.js} +1 -1
- package/cjs/{color-83cbca20.js.map → color-2ebe48ee.js.map} +1 -1
- package/cjs/{compareIds-c2907ec8.js → compareIds-d863dd50.js} +1 -1
- package/cjs/{compareIds-c2907ec8.js.map → compareIds-d863dd50.js.map} +1 -1
- package/cjs/{const-75153738.js → const-08ab2fdd.js} +1 -1
- package/cjs/{const-75153738.js.map → const-08ab2fdd.js.map} +1 -1
- package/cjs/{const-17970c49.js → const-6414a39e.js} +1 -1
- package/cjs/{const-17970c49.js.map → const-6414a39e.js.map} +1 -1
- package/cjs/{consts-5ead6f3b.js → consts-083ada31.js} +1 -1
- package/cjs/{consts-5ead6f3b.js.map → consts-083ada31.js.map} +1 -1
- package/cjs/{consts-d2103ed5.js → consts-3cb3a988.js} +1 -1
- package/cjs/{consts-d2103ed5.js.map → consts-3cb3a988.js.map} +1 -1
- package/cjs/{consts-0db2bedc.js → consts-78795eea.js} +3 -3
- package/cjs/consts-78795eea.js.map +1 -0
- package/cjs/{consts-aaf1208c.js → consts-eadce101.js} +1 -1
- package/cjs/{consts-aaf1208c.js.map → consts-eadce101.js.map} +1 -1
- package/cjs/{context-d9a84cb9.js → context-717f3cfa.js} +2 -2
- package/cjs/{context-d9a84cb9.js.map → context-717f3cfa.js.map} +1 -1
- package/cjs/dist/index.css +253 -181
- package/cjs/dist/index.css.map +1 -1
- package/cjs/{index-56735815.js → index-00cb06de.js} +5 -5
- package/cjs/{index-56735815.js.map → index-00cb06de.js.map} +1 -1
- package/cjs/{index-265937df.js → index-05291303.js} +18 -2
- package/cjs/index-05291303.js.map +1 -0
- package/cjs/{index-47e4bdbc.js → index-0dad3b72.js} +1 -1
- package/cjs/{index-47e4bdbc.js.map → index-0dad3b72.js.map} +1 -1
- package/cjs/{index-41ce4c44.js → index-148f38a8.js} +2 -2
- package/cjs/{index-41ce4c44.js.map → index-148f38a8.js.map} +1 -1
- package/cjs/{index-1737cbae.js → index-33b26fc7.js} +4 -4
- package/cjs/{index-1737cbae.js.map → index-33b26fc7.js.map} +1 -1
- package/cjs/{index-01768a5e.js → index-4bfecbd3.js} +6 -6
- package/cjs/{index-01768a5e.js.map → index-4bfecbd3.js.map} +1 -1
- package/cjs/index-564380b1.js +441 -0
- package/cjs/index-564380b1.js.map +1 -0
- package/cjs/{index-61c3208b.js → index-5d3946d1.js} +4 -4
- package/cjs/{index-61c3208b.js.map → index-5d3946d1.js.map} +1 -1
- package/cjs/{index-fcd2f4ff.js → index-73f2b1ce.js} +3 -2
- package/cjs/{index-fcd2f4ff.js.map → index-73f2b1ce.js.map} +1 -1
- package/cjs/{index-6ac703ea.js → index-77d2b6d3.js} +18 -12
- package/cjs/index-77d2b6d3.js.map +1 -0
- package/cjs/{index-c8c25288.js → index-793e52a7.js} +3 -3
- package/cjs/{index-c8c25288.js.map → index-793e52a7.js.map} +1 -1
- package/cjs/{index-552eb819.js → index-8fb98e2d.js} +3 -3
- package/cjs/{index-552eb819.js.map → index-8fb98e2d.js.map} +1 -1
- package/cjs/{index-5307f6c1.js → index-9b389aa4.js} +12 -7
- package/cjs/index-9b389aa4.js.map +1 -0
- package/cjs/{index-22bdf04e.js → index-b6443976.js} +2 -2
- package/cjs/{index-22bdf04e.js.map → index-b6443976.js.map} +1 -1
- package/cjs/{index-09f8f2a4.js → index-b8d7e1e9.js} +3 -3
- package/cjs/{index-09f8f2a4.js.map → index-b8d7e1e9.js.map} +1 -1
- package/cjs/{index-be9c5a7d.js → index-c2afb27d.js} +2 -2
- package/cjs/{index-be9c5a7d.js.map → index-c2afb27d.js.map} +1 -1
- package/cjs/{index-10d8f30f.js → index-f70fcb3a.js} +1 -1
- package/cjs/{index-10d8f30f.js.map → index-f70fcb3a.js.map} +1 -1
- package/cjs/index.js +60 -58
- package/cjs/index.js.map +1 -1
- package/cjs/{index.module-3e7701ca.js → index.module-045566c2.js} +1 -1
- package/cjs/{index.module-3e7701ca.js.map → index.module-045566c2.js.map} +1 -1
- package/cjs/sendbirdSelectors.js +3 -3
- package/cjs/{stringSet-c24927d9.js → stringSet-12caaa90.js} +1 -1
- package/cjs/{stringSet-c24927d9.js.map → stringSet-12caaa90.js.map} +1 -1
- package/cjs/{tokenize-1441f448.js → tokenize-6d05ba0a.js} +7 -3
- package/cjs/tokenize-6d05ba0a.js.map +1 -0
- package/cjs/{topics-0df2f6f9.js → topics-d00505e4.js} +1 -1
- package/cjs/{topics-0df2f6f9.js.map → topics-d00505e4.js.map} +1 -1
- package/cjs/{types-df20b895.js → types-0d699a7d.js} +1 -1
- package/cjs/types-0d699a7d.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 +1 -1
- package/cjs/ui/Button.js +2 -2
- package/cjs/ui/ChannelAvatar.js +2 -2
- package/cjs/ui/ConnectionStatus.js +4 -4
- package/cjs/ui/ContextMenu.js +39 -26
- package/cjs/ui/ContextMenu.js.map +1 -1
- package/cjs/ui/DateSeparator.js +3 -3
- package/cjs/ui/EmojiReactions.js +252 -47
- package/cjs/ui/EmojiReactions.js.map +1 -1
- package/cjs/ui/FileMessageItemBody.js +6 -6
- package/cjs/ui/FileViewer.js +8 -8
- package/cjs/ui/Icon.js +190 -167
- package/cjs/ui/Icon.js.map +1 -1
- package/cjs/ui/IconButton.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/MentionLabel.js +10 -10
- package/cjs/ui/MentionUserLabel.js +1 -1
- package/cjs/ui/MessageContent.js +60 -401
- package/cjs/ui/MessageContent.js.map +1 -1
- package/cjs/ui/MessageInput.js +12 -12
- package/cjs/ui/MessageItemMenu.js +22 -15
- package/cjs/ui/MessageItemMenu.js.map +1 -1
- package/cjs/ui/MessageItemReactionMenu.js +14 -7
- package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
- package/cjs/ui/MessageSearchFileItem.js +10 -10
- package/cjs/ui/MessageSearchItem.js +8 -8
- package/cjs/ui/MessageStatus.js +10 -10
- package/cjs/ui/Modal.js +7 -7
- 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 +19 -17
- package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
- package/cjs/ui/OpenchannelOGMessage.js +53 -55
- package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
- package/cjs/ui/OpenchannelThumbnailMessage.js +18 -16
- package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/cjs/ui/OpenchannelUserMessage.js +23 -19
- 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 +6 -6
- package/cjs/ui/QuoteMessageInput.js +6 -6
- package/cjs/ui/ReactionBadge.js +2 -2
- package/cjs/ui/ReactionButton.js +18 -12
- package/cjs/ui/ReactionButton.js.map +1 -1
- 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 +15 -9
- 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 +6 -6
- package/cjs/ui/UserListItem.js +14 -13
- package/cjs/ui/UserListItem.js.map +1 -1
- package/cjs/ui/UserProfile.js +9 -9
- package/cjs/ui/VoiceMessageItemBody.js +5 -5
- package/cjs/ui/VoiceMessgeInput.js +7 -7
- package/cjs/ui/Word.js +10 -10
- package/cjs/useDirtyGetMentions-ccb235e4.js +77 -0
- package/cjs/useDirtyGetMentions-ccb235e4.js.map +1 -0
- package/cjs/{useLongPress-8aa00a28.js → useLongPress-5df6f108.js} +9 -5
- package/cjs/useLongPress-5df6f108.js.map +1 -0
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/utils/message/isVoiceMessage.js +2 -2
- package/cjs/{utils-4717b83e.js → utils-6436fe9d.js} +2 -2
- package/cjs/{utils-4717b83e.js.map → utils-6436fe9d.js.map} +1 -1
- package/cjs/{utils-111f523c.js → utils-abf8a0cd.js} +1 -1
- package/cjs/{utils-111f523c.js.map → utils-abf8a0cd.js.map} +1 -1
- package/cjs/{utils-93abfb7c.js → utils-b812f859.js} +1 -1
- package/cjs/{utils-93abfb7c.js.map → utils-b812f859.js.map} +1 -1
- package/cjs/{utils-a1fead2f.js → utils-ddd1b029.js} +1 -1
- package/cjs/{utils-a1fead2f.js.map → utils-ddd1b029.js.map} +1 -1
- package/cjs/{uuid-c854e2a9.js → uuid-cd931d55.js} +1 -1
- package/cjs/{uuid-c854e2a9.js.map → uuid-cd931d55.js.map} +1 -1
- package/cjs/withSendbird.js +1 -1
- package/{color-c1b95a91.js → color-be032457.js} +1 -1
- package/{color-c1b95a91.js.map → color-be032457.js.map} +1 -1
- package/{compareIds-74cf4016.js → compareIds-fa21456c.js} +1 -1
- package/{compareIds-74cf4016.js.map → compareIds-fa21456c.js.map} +1 -1
- package/{const-3af04f0a.js → const-48b39769.js} +1 -1
- package/{const-3af04f0a.js.map → const-48b39769.js.map} +1 -1
- package/{const-befef81d.js → const-71be96fe.js} +1 -1
- package/{const-befef81d.js.map → const-71be96fe.js.map} +1 -1
- package/{consts-a8bc28bd.js → consts-5cbd0257.js} +1 -1
- package/{consts-a8bc28bd.js.map → consts-5cbd0257.js.map} +1 -1
- package/{consts-9ece4263.js → consts-63e52cd8.js} +3 -3
- package/consts-63e52cd8.js.map +1 -0
- package/{consts-354db0d9.js → consts-967162b2.js} +1 -1
- package/{consts-354db0d9.js.map → consts-967162b2.js.map} +1 -1
- package/{consts-bb6cbaee.js → consts-c4702413.js} +1 -1
- package/{consts-bb6cbaee.js.map → consts-c4702413.js.map} +1 -1
- package/{context-38bde7ff.js → context-70804470.js} +2 -2
- package/{context-38bde7ff.js.map → context-70804470.js.map} +1 -1
- package/dist/index.css +253 -181
- package/dist/index.css.map +1 -1
- package/{index-ecf3a793.js → index-01c17da3.js} +12 -7
- package/index-01c17da3.js.map +1 -0
- package/{index-db801708.js → index-02d5e1f7.js} +5 -5
- package/{index-db801708.js.map → index-02d5e1f7.js.map} +1 -1
- package/{index-8a4d2b6e.js → index-0872eca4.js} +2 -2
- package/{index-8a4d2b6e.js.map → index-0872eca4.js.map} +1 -1
- package/{index-4554e20e.js → index-29ec12d6.js} +4 -4
- package/{index-4554e20e.js.map → index-29ec12d6.js.map} +1 -1
- package/{index-d8fdbe6f.js → index-2d3d2283.js} +16 -3
- package/index-2d3d2283.js.map +1 -0
- package/{index-1556dc4a.js → index-2eaeb4c8.js} +3 -3
- package/{index-1556dc4a.js.map → index-2eaeb4c8.js.map} +1 -1
- package/{index-321e838f.js → index-617179bd.js} +1 -1
- package/{index-321e838f.js.map → index-617179bd.js.map} +1 -1
- package/{index-88ab67cc.js → index-6ba87b2d.js} +4 -4
- package/{index-88ab67cc.js.map → index-6ba87b2d.js.map} +1 -1
- package/{index-ae8e6fc3.js → index-8d2735b6.js} +3 -3
- package/{index-ae8e6fc3.js.map → index-8d2735b6.js.map} +1 -1
- package/{index-14bb6832.js → index-a62f231a.js} +1 -1
- package/{index-14bb6832.js.map → index-a62f231a.js.map} +1 -1
- package/{index-1be3f6d7.js → index-c281a87e.js} +3 -3
- package/{index-1be3f6d7.js.map → index-c281a87e.js.map} +1 -1
- package/{index-96f6e11b.js → index-c3176145.js} +6 -6
- package/{index-96f6e11b.js.map → index-c3176145.js.map} +1 -1
- package/{index-a900bd78.js → index-c4af409f.js} +2 -2
- package/{index-a900bd78.js.map → index-c4af409f.js.map} +1 -1
- package/index-de27e990.js +435 -0
- package/index-de27e990.js.map +1 -0
- package/{index-aa215b1c.js → index-e307d0c3.js} +3 -3
- package/{index-aa215b1c.js.map → index-e307d0c3.js.map} +1 -1
- package/{index-8bf82e3b.js → index-efb59270.js} +18 -12
- package/index-efb59270.js.map +1 -0
- package/{index-67dd0c26.js → index-f22b46c2.js} +2 -2
- package/{index-67dd0c26.js.map → index-f22b46c2.js.map} +1 -1
- package/index.d.ts +5 -2
- package/index.js +60 -58
- package/index.js.map +1 -1
- package/{index.module-1c75b4f5.js → index.module-3529d572.js} +1 -1
- package/{index.module-1c75b4f5.js.map → index.module-3529d572.js.map} +1 -1
- package/package.json +2 -2
- package/sendbirdSelectors.js +3 -3
- package/{stringSet-6d89212b.js → stringSet-387833a3.js} +1 -1
- package/{stringSet-6d89212b.js.map → stringSet-387833a3.js.map} +1 -1
- package/{tokenize-2e969273.js → tokenize-c2f4569f.js} +7 -3
- package/tokenize-c2f4569f.js.map +1 -0
- package/{topics-8f4016e9.js → topics-019712e5.js} +1 -1
- package/{topics-8f4016e9.js.map → topics-019712e5.js.map} +1 -1
- package/{types-ebbbec62.js → types-34b09dae.js} +1 -1
- package/types-34b09dae.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 +1 -1
- package/ui/Button.js +2 -2
- package/ui/ChannelAvatar.js +2 -2
- package/ui/ConnectionStatus.js +4 -4
- package/ui/ContextMenu.js +39 -26
- package/ui/ContextMenu.js.map +1 -1
- package/ui/DateSeparator.js +3 -3
- package/ui/EmojiReactions.js +253 -48
- package/ui/EmojiReactions.js.map +1 -1
- package/ui/FileMessageItemBody.js +6 -6
- package/ui/FileViewer.js +8 -8
- package/ui/Icon.js +190 -167
- package/ui/Icon.js.map +1 -1
- package/ui/IconButton.js +1 -1
- package/ui/Input.js +2 -2
- package/ui/Label.js +2 -2
- package/ui/LinkLabel.js +2 -2
- package/ui/MentionLabel.js +10 -10
- package/ui/MentionUserLabel.js +1 -1
- package/ui/MessageContent.js +61 -402
- package/ui/MessageContent.js.map +1 -1
- package/ui/MessageInput.js +12 -12
- package/ui/MessageItemMenu.js +22 -15
- package/ui/MessageItemMenu.js.map +1 -1
- package/ui/MessageItemReactionMenu.js +14 -7
- package/ui/MessageItemReactionMenu.js.map +1 -1
- package/ui/MessageSearchFileItem.js +10 -10
- package/ui/MessageSearchItem.js +8 -8
- package/ui/MessageStatus.js +10 -10
- package/ui/Modal.js +7 -7
- 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 +19 -17
- package/ui/OpenchannelFileMessage.js.map +1 -1
- package/ui/OpenchannelOGMessage.js +53 -55
- package/ui/OpenchannelOGMessage.js.map +1 -1
- package/ui/OpenchannelThumbnailMessage.js +18 -16
- package/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/ui/OpenchannelUserMessage.js +23 -19
- package/ui/OpenchannelUserMessage.js.map +1 -1
- package/ui/PlaceHolder.js +5 -5
- package/ui/PlaybackTime.js +2 -2
- package/ui/QuoteMessage.js +6 -6
- package/ui/QuoteMessageInput.js +6 -6
- package/ui/ReactionBadge.js +2 -2
- package/ui/ReactionButton.js +18 -12
- package/ui/ReactionButton.js.map +1 -1
- 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 +15 -9
- package/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/ui/Toggle.js +1 -1
- package/ui/Tooltip.js +2 -2
- package/ui/UnknownMessageItemBody.js +6 -6
- package/ui/UserListItem.js +14 -13
- package/ui/UserListItem.js.map +1 -1
- package/ui/UserProfile.js +9 -9
- package/ui/VoiceMessageItemBody.js +5 -5
- package/ui/VoiceMessgeInput.js +7 -7
- package/ui/Word.js +10 -10
- package/useDirtyGetMentions-a032c723.js +75 -0
- package/useDirtyGetMentions-a032c723.js.map +1 -0
- package/{useLongPress-8d44d259.js → useLongPress-b803e920.js} +9 -5
- package/useLongPress-b803e920.js.map +1 -0
- package/useSendbirdStateContext.js +1 -1
- package/utils/message/isVoiceMessage.js +2 -2
- package/{utils-b42f4fab.js → utils-1d8ffd91.js} +2 -2
- package/{utils-b42f4fab.js.map → utils-1d8ffd91.js.map} +1 -1
- package/{utils-c8b489c4.js → utils-28a3bfad.js} +1 -1
- package/{utils-c8b489c4.js.map → utils-28a3bfad.js.map} +1 -1
- package/{utils-7d781542.js → utils-43d93f46.js} +1 -1
- package/{utils-7d781542.js.map → utils-43d93f46.js.map} +1 -1
- package/{utils-8e039c1b.js → utils-cb06f177.js} +1 -1
- package/{utils-8e039c1b.js.map → utils-cb06f177.js.map} +1 -1
- package/{uuid-c94bd88b.js → uuid-295e6b8b.js} +1 -1
- package/{uuid-c94bd88b.js.map → uuid-295e6b8b.js.map} +1 -1
- package/withSendbird.js +1 -1
- package/ChannelListProvider-1d8f4d94.js.map +0 -1
- package/ChannelProvider-bba4a095.js.map +0 -1
- package/MediaQueryContext-8d283dc2.js.map +0 -1
- package/MemberList-38971d43.js.map +0 -1
- package/ThreadProvider-128d5041.js.map +0 -1
- package/_rollupPluginBabelHelpers-eaf55eff.js.map +0 -1
- package/cjs/ChannelListProvider-634b78f3.js.map +0 -1
- package/cjs/ChannelProvider-5366f030.js.map +0 -1
- package/cjs/MediaQueryContext-e443379e.js.map +0 -1
- package/cjs/MemberList-3736f22c.js.map +0 -1
- package/cjs/ThreadProvider-d38505b4.js.map +0 -1
- package/cjs/_rollupPluginBabelHelpers-2c0fc9c3.js.map +0 -1
- package/cjs/consts-0db2bedc.js.map +0 -1
- package/cjs/index-265937df.js.map +0 -1
- package/cjs/index-5307f6c1.js.map +0 -1
- package/cjs/index-6ac703ea.js.map +0 -1
- package/cjs/tokenize-1441f448.js.map +0 -1
- package/cjs/types-df20b895.js.map +0 -1
- package/cjs/useLongPress-8aa00a28.js.map +0 -1
- package/consts-9ece4263.js.map +0 -1
- package/index-8bf82e3b.js.map +0 -1
- package/index-d8fdbe6f.js.map +0 -1
- package/index-ecf3a793.js.map +0 -1
- package/tokenize-2e969273.js.map +0 -1
- package/types-ebbbec62.js.map +0 -1
- package/useLongPress-8d44d259.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-1737cbae.js","sources":["../../src/ui/VoiceMessageInput/types.ts","../../src/ui/VoiceMessageInput/controlerIcons.tsx","../../src/ui/VoiceMessageInput/index.tsx"],"sourcesContent":["/* eslint-disable no-redeclare */\nexport const VoiceMessageInputStatus = {\n READY_TO_RECORD: 'READY_TO_RECORD',\n RECORDING: 'RECORDING',\n READY_TO_PLAY: 'READY_TO_PLAY',\n PLAYING: 'PLAYING',\n} as const;\nexport type VoiceMessageInputStatus = typeof VoiceMessageInputStatus[keyof typeof VoiceMessageInputStatus];\n","import React from 'react';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport { VoiceMessageInputStatus } from './types';\n\nexport interface ControlerIconProps {\n inputState?: VoiceMessageInputStatus;\n}\n\nexport const ControlerIcon = ({\n inputState,\n}: ControlerIconProps): React.ReactElement => {\n switch (inputState) {\n case VoiceMessageInputStatus.READY_TO_RECORD: {\n return (\n <div className=\"sendbird-controler-icon record-icon\" />\n );\n }\n case VoiceMessageInputStatus.RECORDING: {\n return (\n <div className=\"sendbird-controler-icon stop-icon\" />\n );\n }\n case VoiceMessageInputStatus.READY_TO_PLAY: {\n return (\n <Icon\n className=\"sendbird-controler-icon play-icon\"\n width=\"20px\"\n height=\"20px\"\n type={IconTypes.PLAY}\n fillColor={IconColors.ON_BACKGROUND_1}\n />\n );\n }\n case VoiceMessageInputStatus.PLAYING: {\n return (\n <div className=\"sendbird-controler-icon pause-icon\">\n <div className=\"sendbird-controler-icon pause-icon-inner\"/>\n <div className=\"sendbird-controler-icon pause-icon-inner\"/>\n </div>\n );\n }\n default:\n return null;\n }\n};\n\nexport default ControlerIcon;\n","import React, { useCallback, useMemo, useState } from 'react';\nimport './index.scss';\n\nimport PlaybackTime from '../PlaybackTime';\nimport ProgressBar from '../ProgressBar';\nimport TextButton from '../TextButton';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport ControlerIcon from './controlerIcons';\nimport { VOICE_RECORDER_CLICK_BUFFER_TIME, VOICE_RECORDER_DEFAULT_MIN } from '../../utils/consts';\nimport { VoiceMessageInputStatus } from './types';\n\nexport interface VoiceMessageInputProps {\n minRecordTime?: number;\n maximumValue: number;\n currentValue?: number;\n currentType: VoiceMessageInputStatus;\n onCancelClick?: () => void;\n onControlClick?: (type: VoiceMessageInputStatus) => void;\n onSubmitClick?: () => void;\n renderCancelButton?: () => React.ReactElement;\n renderControlButton?: (type: VoiceMessageInputStatus) => React.ReactElement;\n renderSubmitButton?: () => React.ReactElement;\n}\n\nexport const VoiceMessageInput = ({\n minRecordTime = VOICE_RECORDER_DEFAULT_MIN,\n maximumValue,\n currentValue = 0,\n currentType,\n onCancelClick,\n onControlClick,\n onSubmitClick,\n renderCancelButton,\n renderControlButton,\n renderSubmitButton,\n}: VoiceMessageInputProps): React.ReactElement => {\n const [lastClickTime, setLastClickTime] = useState<number>(0);\n const isReadyToRecord = useMemo(() => currentType === VoiceMessageInputStatus.READY_TO_RECORD, [currentType]);\n const isRecording = useMemo(() => currentType === VoiceMessageInputStatus.RECORDING, [currentType]);\n const isSendButtonDisabled = useMemo(() => {\n if (currentType === VoiceMessageInputStatus.READY_TO_RECORD\n || currentType === VoiceMessageInputStatus.RECORDING\n ) {\n return minRecordTime > currentValue;\n }\n return false;\n }, [currentType, minRecordTime, currentValue]);\n const isPlayMode = useMemo(() => {\n return (\n currentType === VoiceMessageInputStatus.READY_TO_PLAY\n || currentType === VoiceMessageInputStatus.PLAYING\n );\n }, [currentType]);\n const { stringSet } = useLocalization();\n\n const handleOnCancelClick = () => {\n const currentTime = Date.now();\n if (currentTime - lastClickTime > VOICE_RECORDER_CLICK_BUFFER_TIME) {\n onCancelClick();\n setLastClickTime(currentTime);\n }\n };\n const handleOnControlClick = useCallback(() => {\n const currentTime = Date.now();\n if (currentTime - lastClickTime > VOICE_RECORDER_CLICK_BUFFER_TIME) {\n onControlClick(currentType);\n setLastClickTime(currentTime);\n }\n }, [currentType]);\n const handleOnSubmitClick = () => {\n const currentTime = Date.now();\n if (currentTime - lastClickTime > VOICE_RECORDER_CLICK_BUFFER_TIME) {\n if (!isSendButtonDisabled) {\n onSubmitClick();\n }\n setLastClickTime(currentTime);\n }\n };\n\n return (\n <div className=\"sendbird-voice-message-input\">\n <div className=\"sendbird-voice-message-input__indicator\">\n <div className=\"sendbird-voice-message-input__indicator__progress-bar\">\n <ProgressBar\n className=\"sendbird-voice-message-input__indicator__progress-bar__bar\"\n disabled={isReadyToRecord}\n maxSize={maximumValue}\n currentSize={currentValue}\n />\n </div>\n {(isRecording) ? (<div className=\"sendbird-voice-message-input__indicator__on-rec\" />) : null}\n <PlaybackTime\n className=\"sendbird-voice-message-input__indicator__playback-time\"\n time={isPlayMode ? maximumValue - currentValue : currentValue}\n labelColor={isReadyToRecord ? LabelColors.ONBACKGROUND_4 : LabelColors.ONCONTENT_1}\n />\n </div>\n <div className=\"sendbird-voice-message-input__controler\">\n {\n renderCancelButton?.() || (\n <TextButton\n className=\"sendbird-voice-message-input__controler__cancel\"\n onClick={handleOnCancelClick}\n disableUnderline\n >\n <Label\n type={LabelTypography.BUTTON_1}\n color={LabelColors.PRIMARY}\n >\n {stringSet.BUTTON__CANCEL}\n </Label>\n </TextButton>\n )\n }\n {\n renderControlButton?.(currentType) || (\n <div\n className=\"sendbird-voice-message-input__controler__main\"\n onClick={handleOnControlClick}\n >\n <ControlerIcon inputState={currentType} />\n </div>\n )\n }\n {\n renderSubmitButton?.() || (\n <div\n className={`sendbird-voice-message-input__controler__submit ${isSendButtonDisabled ? 'voice-message--disabled' : ''}`}\n onClick={handleOnSubmitClick}\n >\n <Icon\n width=\"19px\"\n height=\"19px\"\n type={IconTypes.SEND}\n fillColor={isSendButtonDisabled ? IconColors.ON_BACKGROUND_4 : IconColors.CONTENT}\n />\n </div>\n )\n }\n </div>\n </div>\n );\n};\n"],"names":["VoiceMessageInputStatus","READY_TO_RECORD","RECORDING","READY_TO_PLAY","PLAYING","ControlerIcon","_ref","inputState","React","createElement","className","Icon","width","height","type","IconTypes","PLAY","fillColor","IconColors","ON_BACKGROUND_1","VoiceMessageInput","minRecordTime","VOICE_RECORDER_DEFAULT_MIN","maximumValue","currentValue","currentType","onCancelClick","onControlClick","onSubmitClick","renderCancelButton","renderControlButton","renderSubmitButton","lastClickTime","setLastClickTime","useState","isReadyToRecord","useMemo","isRecording","isSendButtonDisabled","isPlayMode","stringSet","useLocalization","handleOnCancelClick","currentTime","Date","now","VOICE_RECORDER_CLICK_BUFFER_TIME","handleOnControlClick","useCallback","handleOnSubmitClick","ProgressBar","disabled","maxSize","currentSize","PlaybackTime","time","labelColor","LabelColors","ONBACKGROUND_4","ONCONTENT_1","TextButton","onClick","disableUnderline","Label","LabelTypography","BUTTON_1","color","PRIMARY","BUTTON__CANCEL","SEND","ON_BACKGROUND_4","CONTENT"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index-33b26fc7.js","sources":["../../src/ui/VoiceMessageInput/types.ts","../../src/ui/VoiceMessageInput/controlerIcons.tsx","../../src/ui/VoiceMessageInput/index.tsx"],"sourcesContent":["/* eslint-disable no-redeclare */\nexport const VoiceMessageInputStatus = {\n READY_TO_RECORD: 'READY_TO_RECORD',\n RECORDING: 'RECORDING',\n READY_TO_PLAY: 'READY_TO_PLAY',\n PLAYING: 'PLAYING',\n} as const;\nexport type VoiceMessageInputStatus = typeof VoiceMessageInputStatus[keyof typeof VoiceMessageInputStatus];\n","import React from 'react';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport { VoiceMessageInputStatus } from './types';\n\nexport interface ControlerIconProps {\n inputState?: VoiceMessageInputStatus;\n}\n\nexport const ControlerIcon = ({\n inputState,\n}: ControlerIconProps): React.ReactElement => {\n switch (inputState) {\n case VoiceMessageInputStatus.READY_TO_RECORD: {\n return (\n <div className=\"sendbird-controler-icon record-icon\" />\n );\n }\n case VoiceMessageInputStatus.RECORDING: {\n return (\n <div className=\"sendbird-controler-icon stop-icon\" />\n );\n }\n case VoiceMessageInputStatus.READY_TO_PLAY: {\n return (\n <Icon\n className=\"sendbird-controler-icon play-icon\"\n width=\"20px\"\n height=\"20px\"\n type={IconTypes.PLAY}\n fillColor={IconColors.ON_BACKGROUND_1}\n />\n );\n }\n case VoiceMessageInputStatus.PLAYING: {\n return (\n <div className=\"sendbird-controler-icon pause-icon\">\n <div className=\"sendbird-controler-icon pause-icon-inner\"/>\n <div className=\"sendbird-controler-icon pause-icon-inner\"/>\n </div>\n );\n }\n default:\n return null;\n }\n};\n\nexport default ControlerIcon;\n","import React, { useCallback, useMemo, useState } from 'react';\nimport './index.scss';\n\nimport PlaybackTime from '../PlaybackTime';\nimport ProgressBar from '../ProgressBar';\nimport TextButton from '../TextButton';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport ControlerIcon from './controlerIcons';\nimport { VOICE_RECORDER_CLICK_BUFFER_TIME, VOICE_RECORDER_DEFAULT_MIN } from '../../utils/consts';\nimport { VoiceMessageInputStatus } from './types';\n\nexport interface VoiceMessageInputProps {\n minRecordTime?: number;\n maximumValue: number;\n currentValue?: number;\n currentType: VoiceMessageInputStatus;\n onCancelClick?: () => void;\n onControlClick?: (type: VoiceMessageInputStatus) => void;\n onSubmitClick?: () => void;\n renderCancelButton?: () => React.ReactElement;\n renderControlButton?: (type: VoiceMessageInputStatus) => React.ReactElement;\n renderSubmitButton?: () => React.ReactElement;\n}\n\nexport const VoiceMessageInput = ({\n minRecordTime = VOICE_RECORDER_DEFAULT_MIN,\n maximumValue,\n currentValue = 0,\n currentType,\n onCancelClick,\n onControlClick,\n onSubmitClick,\n renderCancelButton,\n renderControlButton,\n renderSubmitButton,\n}: VoiceMessageInputProps): React.ReactElement => {\n const [lastClickTime, setLastClickTime] = useState<number>(0);\n const isReadyToRecord = useMemo(() => currentType === VoiceMessageInputStatus.READY_TO_RECORD, [currentType]);\n const isRecording = useMemo(() => currentType === VoiceMessageInputStatus.RECORDING, [currentType]);\n const isSendButtonDisabled = useMemo(() => {\n if (currentType === VoiceMessageInputStatus.READY_TO_RECORD\n || currentType === VoiceMessageInputStatus.RECORDING\n ) {\n return minRecordTime > currentValue;\n }\n return false;\n }, [currentType, minRecordTime, currentValue]);\n const isPlayMode = useMemo(() => {\n return (\n currentType === VoiceMessageInputStatus.READY_TO_PLAY\n || currentType === VoiceMessageInputStatus.PLAYING\n );\n }, [currentType]);\n const { stringSet } = useLocalization();\n\n const handleOnCancelClick = () => {\n const currentTime = Date.now();\n if (currentTime - lastClickTime > VOICE_RECORDER_CLICK_BUFFER_TIME) {\n onCancelClick();\n setLastClickTime(currentTime);\n }\n };\n const handleOnControlClick = useCallback(() => {\n const currentTime = Date.now();\n if (currentTime - lastClickTime > VOICE_RECORDER_CLICK_BUFFER_TIME) {\n onControlClick(currentType);\n setLastClickTime(currentTime);\n }\n }, [currentType]);\n const handleOnSubmitClick = () => {\n const currentTime = Date.now();\n if (currentTime - lastClickTime > VOICE_RECORDER_CLICK_BUFFER_TIME) {\n if (!isSendButtonDisabled) {\n onSubmitClick();\n }\n setLastClickTime(currentTime);\n }\n };\n\n return (\n <div className=\"sendbird-voice-message-input\">\n <div className=\"sendbird-voice-message-input__indicator\">\n <div className=\"sendbird-voice-message-input__indicator__progress-bar\">\n <ProgressBar\n className=\"sendbird-voice-message-input__indicator__progress-bar__bar\"\n disabled={isReadyToRecord}\n maxSize={maximumValue}\n currentSize={currentValue}\n />\n </div>\n {(isRecording) ? (<div className=\"sendbird-voice-message-input__indicator__on-rec\" />) : null}\n <PlaybackTime\n className=\"sendbird-voice-message-input__indicator__playback-time\"\n time={isPlayMode ? maximumValue - currentValue : currentValue}\n labelColor={isReadyToRecord ? LabelColors.ONBACKGROUND_4 : LabelColors.ONCONTENT_1}\n />\n </div>\n <div className=\"sendbird-voice-message-input__controler\">\n {\n renderCancelButton?.() || (\n <TextButton\n className=\"sendbird-voice-message-input__controler__cancel\"\n onClick={handleOnCancelClick}\n disableUnderline\n >\n <Label\n type={LabelTypography.BUTTON_1}\n color={LabelColors.PRIMARY}\n >\n {stringSet.BUTTON__CANCEL}\n </Label>\n </TextButton>\n )\n }\n {\n renderControlButton?.(currentType) || (\n <div\n className=\"sendbird-voice-message-input__controler__main\"\n onClick={handleOnControlClick}\n >\n <ControlerIcon inputState={currentType} />\n </div>\n )\n }\n {\n renderSubmitButton?.() || (\n <div\n className={`sendbird-voice-message-input__controler__submit ${isSendButtonDisabled ? 'voice-message--disabled' : ''}`}\n onClick={handleOnSubmitClick}\n >\n <Icon\n width=\"19px\"\n height=\"19px\"\n type={IconTypes.SEND}\n fillColor={isSendButtonDisabled ? IconColors.ON_BACKGROUND_4 : IconColors.CONTENT}\n />\n </div>\n )\n }\n </div>\n </div>\n );\n};\n"],"names":["VoiceMessageInputStatus","READY_TO_RECORD","RECORDING","READY_TO_PLAY","PLAYING","ControlerIcon","_ref","inputState","React","createElement","className","Icon","width","height","type","IconTypes","PLAY","fillColor","IconColors","ON_BACKGROUND_1","VoiceMessageInput","minRecordTime","VOICE_RECORDER_DEFAULT_MIN","maximumValue","currentValue","currentType","onCancelClick","onControlClick","onSubmitClick","renderCancelButton","renderControlButton","renderSubmitButton","lastClickTime","setLastClickTime","useState","isReadyToRecord","useMemo","isRecording","isSendButtonDisabled","isPlayMode","stringSet","useLocalization","handleOnCancelClick","currentTime","Date","now","VOICE_RECORDER_CLICK_BUFFER_TIME","handleOnControlClick","useCallback","handleOnSubmitClick","ProgressBar","disabled","maxSize","currentSize","PlaybackTime","time","labelColor","LabelColors","ONBACKGROUND_4","ONCONTENT_1","TextButton","onClick","disableUnderline","Label","LabelTypography","BUTTON_1","color","PRIMARY","BUTTON__CANCEL","SEND","ON_BACKGROUND_4","CONTENT"],"mappings":"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"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var React = require('react');
|
|
4
|
-
var index$1 = require('./index-
|
|
4
|
+
var index$1 = require('./index-c2afb27d.js');
|
|
5
5
|
var ui_Icon = require('./ui/Icon.js');
|
|
6
|
-
var ui_Label = require('./index-
|
|
6
|
+
var ui_Label = require('./index-b6443976.js');
|
|
7
7
|
var ui_Loader = require('./ui/Loader.js');
|
|
8
|
-
var index$2 = require('./index-
|
|
8
|
+
var index$2 = require('./index-05291303.js');
|
|
9
9
|
var utils_message_getOutgoingMessageState = require('./utils/message/getOutgoingMessageState.js');
|
|
10
|
-
var index = require('./index-
|
|
11
|
-
var LocalizationContext = require('./LocalizationContext-
|
|
10
|
+
var index = require('./index-793e52a7.js');
|
|
11
|
+
var LocalizationContext = require('./LocalizationContext-a7ac3575.js');
|
|
12
12
|
|
|
13
13
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
14
14
|
|
|
@@ -146,4 +146,4 @@ exports.getChannelUnreadMessageCount = getChannelUnreadMessageCount;
|
|
|
146
146
|
exports.getLastMessage = getLastMessage;
|
|
147
147
|
exports.getLastMessageCreatedAt = getLastMessageCreatedAt;
|
|
148
148
|
exports.getTotalMembers = getTotalMembers;
|
|
149
|
-
//# sourceMappingURL=index-
|
|
149
|
+
//# sourceMappingURL=index-4bfecbd3.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-01768a5e.js","sources":["../../src/modules/ChannelList/components/ChannelPreview/utils.js","../../src/ui/MessageStatus/index.tsx"],"sourcesContent":["import isToday from 'date-fns/isToday';\nimport format from 'date-fns/format';\nimport isThisYear from 'date-fns/isThisYear';\nimport isYesterday from 'date-fns/isYesterday';\n\nimport { truncateString } from '../../../../utils';\nimport { LabelStringSet } from '../../../../ui/Label';\n\n/* eslint-disable default-param-last */\nexport const getChannelTitle = (channel = {}, currentUserId, stringSet = LabelStringSet) => {\n if (!channel?.name && !channel?.members) {\n return stringSet.NO_TITLE;\n }\n if (channel?.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n if (channel?.members?.length === 1) {\n return stringSet.NO_MEMBERS;\n }\n return (channel?.members || [])\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || stringSet.NO_NAME))\n .join(', ');\n};\n\nexport const getLastMessageCreatedAt = ({\n channel,\n locale,\n stringSet,\n}) => {\n const createdAt = channel?.lastMessage?.createdAt;\n const optionalParam = locale ? { locale } : null;\n if (!createdAt) {\n return '';\n }\n if (isToday(createdAt)) {\n return format(createdAt, 'p', optionalParam);\n }\n if (isYesterday(createdAt)) {\n return stringSet?.MESSAGE_STATUS__YESTERDAY || 'Yesterday';\n }\n if (isThisYear(createdAt)) {\n return format(createdAt, 'MMM d', optionalParam);\n }\n return format(createdAt, 'yyyy/M/d', optionalParam);\n};\n\nexport const getTotalMembers = (channel) => (\n channel?.memberCount\n ? channel.memberCount\n : 0\n);\n\nconst getPrettyLastMessage = (message = {}) => {\n const MAXLEN = 30;\n const { messageType, name } = message;\n if (messageType === 'file') {\n return truncateString(name, MAXLEN);\n }\n return message.message;\n};\n\nexport const getLastMessage = (channel) => (channel?.lastMessage ? getPrettyLastMessage(channel?.lastMessage) : '');\n\nexport const getChannelUnreadMessageCount = (channel) => (\n channel?.unreadMessageCount\n ? channel.unreadMessageCount\n : 0\n);\n","import './index.scss';\nimport React from 'react';\nimport format from 'date-fns/format';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelColors, LabelTypography } from '../Label';\nimport Loader from '../Loader';\n\nimport { isSentStatus } from '../../utils';\nimport {\n getOutgoingMessageState,\n OutgoingMessageStates,\n} from '../../utils/exports/getOutgoingMessageState';\nimport { getLastMessageCreatedAt } from '../../modules/ChannelList/components/ChannelPreview/utils';\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport { Nullable } from '../../types';\n\nexport const MessageStatusTypes = OutgoingMessageStates;\n\ninterface MessageStatusProps {\n className?: string;\n message: UserMessage | FileMessage;\n channel: Nullable<GroupChannel>;\n isDateSeparatorConsidered?: boolean;\n}\n\nexport default function MessageStatus({\n className,\n message,\n channel,\n isDateSeparatorConsidered = true,\n}: MessageStatusProps): React.ReactElement {\n const { stringSet, dateLocale } = useLocalization();\n const status = getOutgoingMessageState(channel, message);\n const hideMessageStatusIcon = channel?.isGroupChannel?.() && (\n (channel.isSuper || channel.isPublic || channel.isBroadcast)\n && !(status === OutgoingMessageStates.PENDING || status === OutgoingMessageStates.FAILED)\n );\n const iconType = {\n [OutgoingMessageStates.SENT]: IconTypes.DONE,\n [OutgoingMessageStates.DELIVERED]: IconTypes.DONE_ALL,\n [OutgoingMessageStates.READ]: IconTypes.DONE_ALL,\n [OutgoingMessageStates.FAILED]: IconTypes.ERROR,\n };\n const iconColor = {\n [OutgoingMessageStates.SENT]: IconColors.SENT,\n [OutgoingMessageStates.DELIVERED]: IconColors.SENT,\n [OutgoingMessageStates.READ]: IconColors.READ,\n [OutgoingMessageStates.FAILED]: IconColors.ERROR,\n };\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-message-status',\n ].join(' ')}\n >\n {(status === OutgoingMessageStates.PENDING) ? (\n <Loader\n className=\"sendbird-message-status__icon\"\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n type={IconTypes.SPINNER}\n fillColor={IconColors.PRIMARY}\n width=\"16px\"\n height=\"16px\"\n />\n </Loader>\n ) : (\n <Icon\n className={`sendbird-message-status__icon ${hideMessageStatusIcon ? 'hide-icon' : ''} ${status === OutgoingMessageStates.FAILED ? '' : 'sendbird-message-status--sent'\n }`}\n type={iconType[status] || IconTypes.ERROR}\n fillColor={iconColor[status]}\n width=\"16px\"\n height=\"16px\"\n />\n )}\n {isSentStatus(status) && (\n <Label\n className=\"sendbird-message-status__text\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {\n isDateSeparatorConsidered\n ? format(message?.createdAt || 0, 'p', { locale: dateLocale })\n : getLastMessageCreatedAt({ channel, locale: dateLocale, stringSet })\n }\n </Label>\n )}\n </div>\n );\n}\n"],"names":["getChannelTitle","_channel$members","channel","arguments","length","undefined","currentUserId","stringSet","LabelStringSet","name","members","NO_TITLE","NO_MEMBERS","filter","_ref","userId","map","_ref2","nickname","NO_NAME","join","getLastMessageCreatedAt","_ref3","_channel$lastMessage","locale","createdAt","lastMessage","optionalParam","isToday","format","isYesterday","MESSAGE_STATUS__YESTERDAY","isThisYear","getTotalMembers","memberCount","getPrettyLastMessage","message","MAXLEN","messageType","truncateString","getLastMessage","getChannelUnreadMessageCount","unreadMessageCount","MessageStatusTypes","OutgoingMessageStates","MessageStatus","_channel$isGroupChann","className","isDateSeparatorConsidered","dateLocale","useLocalization","status","getOutgoingMessageState","hideMessageStatusIcon","isGroupChannel","call","isSuper","isPublic","isBroadcast","PENDING","FAILED","iconType","SENT","IconTypes","DONE","DELIVERED","DONE_ALL","READ","ERROR","iconColor","IconColors","React","createElement","Array","isArray","Loader","width","height","Icon","type","SPINNER","fillColor","PRIMARY","isSentStatus","Label","LabelTypography","CAPTION_3","color","LabelColors","ONBACKGROUND_2"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index-4bfecbd3.js","sources":["../../src/modules/ChannelList/components/ChannelPreview/utils.js","../../src/ui/MessageStatus/index.tsx"],"sourcesContent":["import isToday from 'date-fns/isToday';\nimport format from 'date-fns/format';\nimport isThisYear from 'date-fns/isThisYear';\nimport isYesterday from 'date-fns/isYesterday';\n\nimport { truncateString } from '../../../../utils';\nimport { LabelStringSet } from '../../../../ui/Label';\n\n/* eslint-disable default-param-last */\nexport const getChannelTitle = (channel = {}, currentUserId, stringSet = LabelStringSet) => {\n if (!channel?.name && !channel?.members) {\n return stringSet.NO_TITLE;\n }\n if (channel?.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n if (channel?.members?.length === 1) {\n return stringSet.NO_MEMBERS;\n }\n return (channel?.members || [])\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || stringSet.NO_NAME))\n .join(', ');\n};\n\nexport const getLastMessageCreatedAt = ({\n channel,\n locale,\n stringSet,\n}) => {\n const createdAt = channel?.lastMessage?.createdAt;\n const optionalParam = locale ? { locale } : null;\n if (!createdAt) {\n return '';\n }\n if (isToday(createdAt)) {\n return format(createdAt, 'p', optionalParam);\n }\n if (isYesterday(createdAt)) {\n return stringSet?.MESSAGE_STATUS__YESTERDAY || 'Yesterday';\n }\n if (isThisYear(createdAt)) {\n return format(createdAt, 'MMM d', optionalParam);\n }\n return format(createdAt, 'yyyy/M/d', optionalParam);\n};\n\nexport const getTotalMembers = (channel) => (\n channel?.memberCount\n ? channel.memberCount\n : 0\n);\n\nconst getPrettyLastMessage = (message = {}) => {\n const MAXLEN = 30;\n const { messageType, name } = message;\n if (messageType === 'file') {\n return truncateString(name, MAXLEN);\n }\n return message.message;\n};\n\nexport const getLastMessage = (channel) => (channel?.lastMessage ? getPrettyLastMessage(channel?.lastMessage) : '');\n\nexport const getChannelUnreadMessageCount = (channel) => (\n channel?.unreadMessageCount\n ? channel.unreadMessageCount\n : 0\n);\n","import './index.scss';\nimport React from 'react';\nimport format from 'date-fns/format';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelColors, LabelTypography } from '../Label';\nimport Loader from '../Loader';\n\nimport { isSentStatus } from '../../utils';\nimport {\n getOutgoingMessageState,\n OutgoingMessageStates,\n} from '../../utils/exports/getOutgoingMessageState';\nimport { getLastMessageCreatedAt } from '../../modules/ChannelList/components/ChannelPreview/utils';\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport { Nullable } from '../../types';\n\nexport const MessageStatusTypes = OutgoingMessageStates;\n\ninterface MessageStatusProps {\n className?: string;\n message: UserMessage | FileMessage;\n channel: Nullable<GroupChannel>;\n isDateSeparatorConsidered?: boolean;\n}\n\nexport default function MessageStatus({\n className,\n message,\n channel,\n isDateSeparatorConsidered = true,\n}: MessageStatusProps): React.ReactElement {\n const { stringSet, dateLocale } = useLocalization();\n const status = getOutgoingMessageState(channel, message);\n const hideMessageStatusIcon = channel?.isGroupChannel?.() && (\n (channel.isSuper || channel.isPublic || channel.isBroadcast)\n && !(status === OutgoingMessageStates.PENDING || status === OutgoingMessageStates.FAILED)\n );\n const iconType = {\n [OutgoingMessageStates.SENT]: IconTypes.DONE,\n [OutgoingMessageStates.DELIVERED]: IconTypes.DONE_ALL,\n [OutgoingMessageStates.READ]: IconTypes.DONE_ALL,\n [OutgoingMessageStates.FAILED]: IconTypes.ERROR,\n };\n const iconColor = {\n [OutgoingMessageStates.SENT]: IconColors.SENT,\n [OutgoingMessageStates.DELIVERED]: IconColors.SENT,\n [OutgoingMessageStates.READ]: IconColors.READ,\n [OutgoingMessageStates.FAILED]: IconColors.ERROR,\n };\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-message-status',\n ].join(' ')}\n >\n {(status === OutgoingMessageStates.PENDING) ? (\n <Loader\n className=\"sendbird-message-status__icon\"\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n type={IconTypes.SPINNER}\n fillColor={IconColors.PRIMARY}\n width=\"16px\"\n height=\"16px\"\n />\n </Loader>\n ) : (\n <Icon\n className={`sendbird-message-status__icon ${hideMessageStatusIcon ? 'hide-icon' : ''} ${status === OutgoingMessageStates.FAILED ? '' : 'sendbird-message-status--sent'\n }`}\n type={iconType[status] || IconTypes.ERROR}\n fillColor={iconColor[status]}\n width=\"16px\"\n height=\"16px\"\n />\n )}\n {isSentStatus(status) && (\n <Label\n className=\"sendbird-message-status__text\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {\n isDateSeparatorConsidered\n ? format(message?.createdAt || 0, 'p', { locale: dateLocale })\n : getLastMessageCreatedAt({ channel, locale: dateLocale, stringSet })\n }\n </Label>\n )}\n </div>\n );\n}\n"],"names":["getChannelTitle","_channel$members","channel","arguments","length","undefined","currentUserId","stringSet","LabelStringSet","name","members","NO_TITLE","NO_MEMBERS","filter","_ref","userId","map","_ref2","nickname","NO_NAME","join","getLastMessageCreatedAt","_ref3","_channel$lastMessage","locale","createdAt","lastMessage","optionalParam","isToday","format","isYesterday","MESSAGE_STATUS__YESTERDAY","isThisYear","getTotalMembers","memberCount","getPrettyLastMessage","message","MAXLEN","messageType","truncateString","getLastMessage","getChannelUnreadMessageCount","unreadMessageCount","MessageStatusTypes","OutgoingMessageStates","MessageStatus","_channel$isGroupChann","className","isDateSeparatorConsidered","dateLocale","useLocalization","status","getOutgoingMessageState","hideMessageStatusIcon","isGroupChannel","call","isSuper","isPublic","isBroadcast","PENDING","FAILED","iconType","SENT","IconTypes","DONE","DELIVERED","DONE_ALL","READ","ERROR","iconColor","IconColors","React","createElement","Array","isArray","Loader","width","height","Icon","type","SPINNER","fillColor","PRIMARY","isSentStatus","Label","LabelTypography","CAPTION_3","color","LabelColors","ONBACKGROUND_2"],"mappings":"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"}
|
|
@@ -0,0 +1,441 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
var ui_ContextMenu = require('./ui/ContextMenu.js');
|
|
5
|
+
var index = require('./index-05291303.js');
|
|
6
|
+
var LocalizationContext = require('./LocalizationContext-a7ac3575.js');
|
|
7
|
+
var ui_Icon = require('./ui/Icon.js');
|
|
8
|
+
var ui_Label = require('./index-b6443976.js');
|
|
9
|
+
var ui_BottomSheet = require('./ui/BottomSheet.js');
|
|
10
|
+
var ui_ImageRenderer = require('./ui/ImageRenderer.js');
|
|
11
|
+
var ui_ReactionButton = require('./ui/ReactionButton.js');
|
|
12
|
+
|
|
13
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
14
|
+
|
|
15
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
16
|
+
|
|
17
|
+
const MobileContextMenu = props => {
|
|
18
|
+
var _message$sender;
|
|
19
|
+
const {
|
|
20
|
+
hideMenu,
|
|
21
|
+
channel,
|
|
22
|
+
message,
|
|
23
|
+
replyType,
|
|
24
|
+
userId,
|
|
25
|
+
resendMessage,
|
|
26
|
+
showEdit,
|
|
27
|
+
showRemove,
|
|
28
|
+
setQuoteMessage,
|
|
29
|
+
parentRef,
|
|
30
|
+
onReplyInThread,
|
|
31
|
+
isOpenedFromThread = false
|
|
32
|
+
} = props;
|
|
33
|
+
const isByMe = (message === null || message === void 0 ? void 0 : (_message$sender = message.sender) === null || _message$sender === void 0 ? void 0 : _message$sender.userId) === userId;
|
|
34
|
+
const {
|
|
35
|
+
stringSet
|
|
36
|
+
} = LocalizationContext.useLocalization();
|
|
37
|
+
const showMenuItemCopy = index.isUserMessage(message);
|
|
38
|
+
const showMenuItemEdit = index.isUserMessage(message) && index.isSentMessage(message) && isByMe;
|
|
39
|
+
const showMenuItemResend = index.isFailedMessage(message) && (message === null || message === void 0 ? void 0 : message.isResendable) && isByMe;
|
|
40
|
+
const showMenuItemDelete = !index.isPendingMessage(message) && isByMe;
|
|
41
|
+
const showMenuItemDownload = !index.isPendingMessage(message) && index.isFileMessage(message);
|
|
42
|
+
const showMenuItemReply = replyType === 'QUOTE_REPLY' && !index.isFailedMessage(message) && !index.isPendingMessage(message) && (channel === null || channel === void 0 ? void 0 : channel.isGroupChannel());
|
|
43
|
+
const showMenuItemThread = replyType === 'THREAD' && !isOpenedFromThread && !index.isFailedMessage(message) && !index.isPendingMessage(message) && !index.isThreadMessage(message) && (channel === null || channel === void 0 ? void 0 : channel.isGroupChannel());
|
|
44
|
+
const fileMessage = message;
|
|
45
|
+
return /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu["default"], {
|
|
46
|
+
isOpen: true,
|
|
47
|
+
menuItems: () => {
|
|
48
|
+
var _message$parentMessag, _message$parentMessag2, _message$parentMessag3, _message$threadInfo$r, _message$threadInfo, _message$threadInfo$r2, _message$threadInfo2, _message$threadInfo$r3, _message$threadInfo3;
|
|
49
|
+
return /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu.MenuItems, {
|
|
50
|
+
className: "sendbird-message__mobile-context-menu",
|
|
51
|
+
parentRef: parentRef,
|
|
52
|
+
parentContainRef: parentRef,
|
|
53
|
+
closeDropdown: hideMenu
|
|
54
|
+
}, showMenuItemCopy && /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu.MenuItem, {
|
|
55
|
+
className: "sendbird-message__mobile-context-menu-item menu-item-copy",
|
|
56
|
+
onClick: () => {
|
|
57
|
+
hideMenu();
|
|
58
|
+
index.copyToClipboard(message === null || message === void 0 ? void 0 : message.message);
|
|
59
|
+
},
|
|
60
|
+
dataSbId: "ui_mobile_message_item_menu_copy"
|
|
61
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
|
|
62
|
+
type: ui_Label.LabelTypography.SUBTITLE_1,
|
|
63
|
+
color: ui_Label.LabelColors.ONBACKGROUND_1
|
|
64
|
+
}, stringSet === null || stringSet === void 0 ? void 0 : stringSet.MESSAGE_MENU__COPY), /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
65
|
+
type: ui_Icon.IconTypes.COPY,
|
|
66
|
+
fillColor: ui_Icon.IconColors.PRIMARY,
|
|
67
|
+
width: "24px",
|
|
68
|
+
height: "24px"
|
|
69
|
+
})), showMenuItemReply && /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu.MenuItem, {
|
|
70
|
+
className: "sendbird-message__mobile-context-menu-item menu-item-reply",
|
|
71
|
+
onClick: () => {
|
|
72
|
+
hideMenu();
|
|
73
|
+
setQuoteMessage(message);
|
|
74
|
+
},
|
|
75
|
+
disable: ((_message$parentMessag = message === null || message === void 0 ? void 0 : message.parentMessageId) !== null && _message$parentMessag !== void 0 ? _message$parentMessag : 0) > 0,
|
|
76
|
+
dataSbId: "ui_mobile_message_item_menu_reply"
|
|
77
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
|
|
78
|
+
type: ui_Label.LabelTypography.SUBTITLE_1,
|
|
79
|
+
color: ((_message$parentMessag2 = message === null || message === void 0 ? void 0 : message.parentMessageId) !== null && _message$parentMessag2 !== void 0 ? _message$parentMessag2 : 0) > 0 ? ui_Label.LabelColors.ONBACKGROUND_4 : ui_Label.LabelColors.ONBACKGROUND_1
|
|
80
|
+
}, stringSet.MESSAGE_MENU__REPLY), /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
81
|
+
type: ui_Icon.IconTypes.REPLY,
|
|
82
|
+
fillColor: ((_message$parentMessag3 = message === null || message === void 0 ? void 0 : message.parentMessageId) !== null && _message$parentMessag3 !== void 0 ? _message$parentMessag3 : 0) > 0 ? ui_Icon.IconColors.ON_BACKGROUND_4 : ui_Icon.IconColors.PRIMARY,
|
|
83
|
+
width: "24px",
|
|
84
|
+
height: "24px"
|
|
85
|
+
})), showMenuItemThread && /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu.MenuItem, {
|
|
86
|
+
className: "sendbird-message__mobile-context-menu-item menu-item-reply",
|
|
87
|
+
onClick: () => {
|
|
88
|
+
hideMenu();
|
|
89
|
+
onReplyInThread === null || onReplyInThread === void 0 ? void 0 : onReplyInThread({
|
|
90
|
+
message
|
|
91
|
+
});
|
|
92
|
+
},
|
|
93
|
+
dataSbId: "ui_mobile_message_item_menu_thread"
|
|
94
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
|
|
95
|
+
type: ui_Label.LabelTypography.SUBTITLE_1,
|
|
96
|
+
color: ui_Label.LabelColors.ONBACKGROUND_1
|
|
97
|
+
}, stringSet.MESSAGE_MENU__THREAD), /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
98
|
+
type: ui_Icon.IconTypes.THREAD,
|
|
99
|
+
fillColor: ui_Icon.IconColors.PRIMARY,
|
|
100
|
+
width: "24px",
|
|
101
|
+
height: "24px"
|
|
102
|
+
})), showMenuItemEdit && /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu.MenuItem, {
|
|
103
|
+
className: "sendbird-message__mobile-context-menu-item menu-item-edit",
|
|
104
|
+
onClick: () => {
|
|
105
|
+
hideMenu();
|
|
106
|
+
showEdit(true);
|
|
107
|
+
},
|
|
108
|
+
dataSbId: "ui_mobile_message_item_menu_edit"
|
|
109
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
|
|
110
|
+
type: ui_Label.LabelTypography.SUBTITLE_1,
|
|
111
|
+
color: ui_Label.LabelColors.ONBACKGROUND_1
|
|
112
|
+
}, stringSet.MESSAGE_MENU__EDIT), /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
113
|
+
type: ui_Icon.IconTypes.EDIT,
|
|
114
|
+
fillColor: ui_Icon.IconColors.PRIMARY,
|
|
115
|
+
width: "24px",
|
|
116
|
+
height: "24px"
|
|
117
|
+
})), showMenuItemResend && /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu.MenuItem, {
|
|
118
|
+
className: "sendbird-message__mobile-context-menu-item menu-item-resend",
|
|
119
|
+
onClick: () => {
|
|
120
|
+
hideMenu();
|
|
121
|
+
resendMessage(message);
|
|
122
|
+
},
|
|
123
|
+
dataSbId: "ui_mobile_message_item_menu_resend"
|
|
124
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
|
|
125
|
+
type: ui_Label.LabelTypography.SUBTITLE_1,
|
|
126
|
+
color: ui_Label.LabelColors.ONBACKGROUND_1
|
|
127
|
+
}, stringSet.MESSAGE_MENU__RESEND), /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
128
|
+
type: ui_Icon.IconTypes.REFRESH,
|
|
129
|
+
fillColor: ui_Icon.IconColors.PRIMARY,
|
|
130
|
+
width: "24px",
|
|
131
|
+
height: "24px"
|
|
132
|
+
})), showMenuItemDelete && /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu.MenuItem, {
|
|
133
|
+
className: "sendbird-message__mobile-context-menu-item menu-item-delete",
|
|
134
|
+
onClick: () => {
|
|
135
|
+
hideMenu();
|
|
136
|
+
showRemove(true);
|
|
137
|
+
},
|
|
138
|
+
disable: ((_message$threadInfo$r = message === null || message === void 0 ? void 0 : (_message$threadInfo = message.threadInfo) === null || _message$threadInfo === void 0 ? void 0 : _message$threadInfo.replyCount) !== null && _message$threadInfo$r !== void 0 ? _message$threadInfo$r : 0) > 0,
|
|
139
|
+
dataSbId: "ui_mobile_message_item_menu_delete"
|
|
140
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
|
|
141
|
+
type: ui_Label.LabelTypography.SUBTITLE_1,
|
|
142
|
+
color: ((_message$threadInfo$r2 = message === null || message === void 0 ? void 0 : (_message$threadInfo2 = message.threadInfo) === null || _message$threadInfo2 === void 0 ? void 0 : _message$threadInfo2.replyCount) !== null && _message$threadInfo$r2 !== void 0 ? _message$threadInfo$r2 : 0) > 0 ? ui_Label.LabelColors.ONBACKGROUND_4 : ui_Label.LabelColors.ONBACKGROUND_1
|
|
143
|
+
}, stringSet.MESSAGE_MENU__DELETE), /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
144
|
+
type: ui_Icon.IconTypes.DELETE,
|
|
145
|
+
fillColor: ((_message$threadInfo$r3 = message === null || message === void 0 ? void 0 : (_message$threadInfo3 = message.threadInfo) === null || _message$threadInfo3 === void 0 ? void 0 : _message$threadInfo3.replyCount) !== null && _message$threadInfo$r3 !== void 0 ? _message$threadInfo$r3 : 0) > 0 ? ui_Icon.IconColors.ON_BACKGROUND_4 : ui_Icon.IconColors.PRIMARY,
|
|
146
|
+
width: "24px",
|
|
147
|
+
height: "24px"
|
|
148
|
+
})), showMenuItemDownload && /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu.MenuItem, {
|
|
149
|
+
className: "sendbird-message__mobile-context-menu-item menu-item-save",
|
|
150
|
+
onClick: () => {
|
|
151
|
+
hideMenu();
|
|
152
|
+
},
|
|
153
|
+
dataSbId: "ui_mobile_message_item_menu_download_file"
|
|
154
|
+
}, /*#__PURE__*/React__default["default"].createElement("a", {
|
|
155
|
+
className: "sendbird-message__contextmenu--hyperlink",
|
|
156
|
+
rel: "noopener noreferrer",
|
|
157
|
+
href: fileMessage === null || fileMessage === void 0 ? void 0 : fileMessage.url,
|
|
158
|
+
target: "_blank"
|
|
159
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
|
|
160
|
+
type: ui_Label.LabelTypography.SUBTITLE_1,
|
|
161
|
+
color: ui_Label.LabelColors.ONBACKGROUND_1
|
|
162
|
+
}, stringSet.MESSAGE_MENU__SAVE), /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
163
|
+
type: ui_Icon.IconTypes.DOWNLOAD,
|
|
164
|
+
fillColor: ui_Icon.IconColors.PRIMARY,
|
|
165
|
+
width: "24px",
|
|
166
|
+
height: "24px"
|
|
167
|
+
}))));
|
|
168
|
+
}
|
|
169
|
+
});
|
|
170
|
+
};
|
|
171
|
+
|
|
172
|
+
const EMOJI_SIZE = 38;
|
|
173
|
+
const MobileBottomSheet = props => {
|
|
174
|
+
var _message$sender;
|
|
175
|
+
const {
|
|
176
|
+
hideMenu,
|
|
177
|
+
channel,
|
|
178
|
+
emojiContainer,
|
|
179
|
+
message,
|
|
180
|
+
replyType,
|
|
181
|
+
userId,
|
|
182
|
+
resendMessage,
|
|
183
|
+
toggleReaction,
|
|
184
|
+
isReactionEnabled,
|
|
185
|
+
showEdit,
|
|
186
|
+
showRemove,
|
|
187
|
+
setQuoteMessage,
|
|
188
|
+
onReplyInThread,
|
|
189
|
+
isOpenedFromThread = false
|
|
190
|
+
} = props;
|
|
191
|
+
const isByMe = (message === null || message === void 0 ? void 0 : (_message$sender = message.sender) === null || _message$sender === void 0 ? void 0 : _message$sender.userId) === userId;
|
|
192
|
+
const {
|
|
193
|
+
stringSet
|
|
194
|
+
} = LocalizationContext.useLocalization();
|
|
195
|
+
const showMenuItemCopy = index.isUserMessage(message);
|
|
196
|
+
const showMenuItemEdit = index.isUserMessage(message) && index.isSentMessage(message) && isByMe;
|
|
197
|
+
const showMenuItemResend = index.isFailedMessage(message) && (message === null || message === void 0 ? void 0 : message.isResendable) && isByMe;
|
|
198
|
+
const showMenuItemDelete = !index.isPendingMessage(message) && isByMe && !index.isParentMessage(message);
|
|
199
|
+
const showMenuItemDownload = !index.isPendingMessage(message) && index.isFileMessage(message) && !index.isVoiceMessage(message);
|
|
200
|
+
const showReaction = !index.isFailedMessage(message) && !index.isPendingMessage(message) && isReactionEnabled;
|
|
201
|
+
const showMenuItemReply = replyType === 'QUOTE_REPLY' && !index.isFailedMessage(message) && !index.isPendingMessage(message) && (channel === null || channel === void 0 ? void 0 : channel.isGroupChannel()) && !(channel !== null && channel !== void 0 && channel.isBroadcast);
|
|
202
|
+
const showMenuItemThread = replyType === 'THREAD' && !isOpenedFromThread && !index.isFailedMessage(message) && !index.isPendingMessage(message) && !index.isThreadMessage(message) && (channel === null || channel === void 0 ? void 0 : channel.isGroupChannel()) && !(channel !== null && channel !== void 0 && channel.isBroadcast);
|
|
203
|
+
const disableReaction = (message === null || message === void 0 ? void 0 : message.parentMessageId) > 0;
|
|
204
|
+
const fileMessage = message;
|
|
205
|
+
const maxEmojisPerRow = Math.floor(window.innerWidth / EMOJI_SIZE) - 1;
|
|
206
|
+
const [showEmojisOnly, setShowEmojisOnly] = React.useState(false);
|
|
207
|
+
const emojis = index.getEmojiListAll(emojiContainer);
|
|
208
|
+
// calculate max emojis that can be shown in screen
|
|
209
|
+
const visibleEmojis = showEmojisOnly ? emojis : emojis === null || emojis === void 0 ? void 0 : emojis.slice(0, maxEmojisPerRow);
|
|
210
|
+
const canShowMoreEmojis = emojis.length > maxEmojisPerRow;
|
|
211
|
+
return /*#__PURE__*/React__default["default"].createElement(ui_BottomSheet, {
|
|
212
|
+
onBackdropClick: hideMenu
|
|
213
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
214
|
+
className: "sendbird-message__bottomsheet"
|
|
215
|
+
}, showReaction && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
216
|
+
className: "sendbird-message__bottomsheet-reactions"
|
|
217
|
+
}, /*#__PURE__*/React__default["default"].createElement("ul", {
|
|
218
|
+
className: "sendbird-message__bottomsheet-reaction-bar"
|
|
219
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
220
|
+
className: `
|
|
221
|
+
sendbird-message__bottomsheet-reaction-bar__row
|
|
222
|
+
${showEmojisOnly ? 'sendbird-message__bottomsheet-reaction-bar__all' : ''}
|
|
223
|
+
`
|
|
224
|
+
}, visibleEmojis.map(emoji => {
|
|
225
|
+
var _message$reactions, _message$reactions$fi, _message$reactions$fi2;
|
|
226
|
+
const isReacted = message === null || message === void 0 ? void 0 : (_message$reactions = message.reactions) === null || _message$reactions === void 0 ? void 0 : (_message$reactions$fi = _message$reactions.filter(reaction => reaction.key === emoji.key)[0]) === null || _message$reactions$fi === void 0 ? void 0 : (_message$reactions$fi2 = _message$reactions$fi.userIds) === null || _message$reactions$fi2 === void 0 ? void 0 : _message$reactions$fi2.some(reactorId => reactorId === userId);
|
|
227
|
+
return /*#__PURE__*/React__default["default"].createElement(ui_ReactionButton, {
|
|
228
|
+
key: emoji.key,
|
|
229
|
+
width: `${EMOJI_SIZE}px`,
|
|
230
|
+
height: `${EMOJI_SIZE}px`,
|
|
231
|
+
selected: isReacted,
|
|
232
|
+
onClick: () => {
|
|
233
|
+
hideMenu();
|
|
234
|
+
toggleReaction(message, emoji.key, isReacted);
|
|
235
|
+
},
|
|
236
|
+
dataSbId: `ui_mobile_emoji_reactions_menu_${emoji.key}`
|
|
237
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_ImageRenderer, {
|
|
238
|
+
url: (emoji === null || emoji === void 0 ? void 0 : emoji.url) || '',
|
|
239
|
+
width: "28px",
|
|
240
|
+
height: "28px",
|
|
241
|
+
placeHolder: style => /*#__PURE__*/React__default["default"].createElement("div", {
|
|
242
|
+
style: style
|
|
243
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
244
|
+
type: ui_Icon.IconTypes.QUESTION,
|
|
245
|
+
fillColor: ui_Icon.IconColors.ON_BACKGROUND_3,
|
|
246
|
+
width: "28px",
|
|
247
|
+
height: "28px"
|
|
248
|
+
}))
|
|
249
|
+
}));
|
|
250
|
+
}), canShowMoreEmojis && !showEmojisOnly && /*#__PURE__*/React__default["default"].createElement(ui_ReactionButton, {
|
|
251
|
+
key: "emoji_more",
|
|
252
|
+
width: "38px",
|
|
253
|
+
height: "38px",
|
|
254
|
+
onClick: () => {
|
|
255
|
+
setShowEmojisOnly(true);
|
|
256
|
+
},
|
|
257
|
+
dataSbId: "ui_mobile_emoji_reactions_menu_emojiadd"
|
|
258
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_ImageRenderer, {
|
|
259
|
+
url: '',
|
|
260
|
+
width: "28px",
|
|
261
|
+
height: "28px",
|
|
262
|
+
placeHolder: style => /*#__PURE__*/React__default["default"].createElement("div", {
|
|
263
|
+
style: style
|
|
264
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
265
|
+
type: ui_Icon.IconTypes.EMOJI_MORE,
|
|
266
|
+
fillColor: ui_Icon.IconColors.ON_BACKGROUND_3,
|
|
267
|
+
width: "28px",
|
|
268
|
+
height: "28px"
|
|
269
|
+
}))
|
|
270
|
+
}))))), !showEmojisOnly && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
271
|
+
className: "sendbird-message__bottomsheet--actions"
|
|
272
|
+
}, showMenuItemCopy && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
273
|
+
className: "sendbird-message__bottomsheet--action",
|
|
274
|
+
onClick: () => {
|
|
275
|
+
hideMenu();
|
|
276
|
+
index.copyToClipboard(message === null || message === void 0 ? void 0 : message.message);
|
|
277
|
+
}
|
|
278
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
279
|
+
type: ui_Icon.IconTypes.COPY,
|
|
280
|
+
fillColor: ui_Icon.IconColors.PRIMARY,
|
|
281
|
+
width: "24px",
|
|
282
|
+
height: "24px"
|
|
283
|
+
}), /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
|
|
284
|
+
type: ui_Label.LabelTypography.SUBTITLE_1,
|
|
285
|
+
color: ui_Label.LabelColors.ONBACKGROUND_1
|
|
286
|
+
}, stringSet === null || stringSet === void 0 ? void 0 : stringSet.MESSAGE_MENU__COPY)), showMenuItemEdit && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
287
|
+
className: "sendbird-message__bottomsheet--action",
|
|
288
|
+
onClick: () => {
|
|
289
|
+
hideMenu();
|
|
290
|
+
showEdit(true);
|
|
291
|
+
}
|
|
292
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
293
|
+
type: ui_Icon.IconTypes.EDIT,
|
|
294
|
+
fillColor: ui_Icon.IconColors.PRIMARY,
|
|
295
|
+
width: "24px",
|
|
296
|
+
height: "24px"
|
|
297
|
+
}), /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
|
|
298
|
+
type: ui_Label.LabelTypography.SUBTITLE_1,
|
|
299
|
+
color: ui_Label.LabelColors.ONBACKGROUND_1
|
|
300
|
+
}, stringSet === null || stringSet === void 0 ? void 0 : stringSet.MESSAGE_MENU__EDIT)), showMenuItemResend && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
301
|
+
className: "sendbird-message__bottomsheet--action",
|
|
302
|
+
onClick: () => {
|
|
303
|
+
hideMenu();
|
|
304
|
+
resendMessage(message);
|
|
305
|
+
}
|
|
306
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
307
|
+
type: ui_Icon.IconTypes.REFRESH,
|
|
308
|
+
fillColor: ui_Icon.IconColors.PRIMARY,
|
|
309
|
+
width: "24px",
|
|
310
|
+
height: "24px"
|
|
311
|
+
}), /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
|
|
312
|
+
type: ui_Label.LabelTypography.SUBTITLE_1,
|
|
313
|
+
color: ui_Label.LabelColors.ONBACKGROUND_1
|
|
314
|
+
}, stringSet === null || stringSet === void 0 ? void 0 : stringSet.MESSAGE_MENU__RESEND)), showMenuItemReply && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
315
|
+
className: `sendbird-message__bottomsheet--action
|
|
316
|
+
${disableReaction ? 'sendbird-message__bottomsheet--action-disabled' : ''}
|
|
317
|
+
`,
|
|
318
|
+
role: "menuitem",
|
|
319
|
+
"aria-disabled": disableReaction ? true : false,
|
|
320
|
+
onClick: () => {
|
|
321
|
+
if (!disableReaction) {
|
|
322
|
+
hideMenu();
|
|
323
|
+
setQuoteMessage(message);
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
327
|
+
type: ui_Icon.IconTypes.REPLY,
|
|
328
|
+
fillColor: disableReaction ? ui_Icon.IconColors.ON_BACKGROUND_3 : ui_Icon.IconColors.PRIMARY,
|
|
329
|
+
width: "24px",
|
|
330
|
+
height: "24px"
|
|
331
|
+
}), /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
|
|
332
|
+
type: ui_Label.LabelTypography.SUBTITLE_1,
|
|
333
|
+
color: disableReaction ? ui_Label.LabelColors.ONBACKGROUND_4 : ui_Label.LabelColors.ONBACKGROUND_1
|
|
334
|
+
}, stringSet === null || stringSet === void 0 ? void 0 : stringSet.MESSAGE_MENU__REPLY)), showMenuItemThread && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
335
|
+
className: "sendbird-message__bottomsheet--action",
|
|
336
|
+
onClick: () => {
|
|
337
|
+
hideMenu();
|
|
338
|
+
onReplyInThread === null || onReplyInThread === void 0 ? void 0 : onReplyInThread({
|
|
339
|
+
message
|
|
340
|
+
});
|
|
341
|
+
}
|
|
342
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
343
|
+
type: ui_Icon.IconTypes.THREAD,
|
|
344
|
+
fillColor: ui_Icon.IconColors.PRIMARY,
|
|
345
|
+
width: "24px",
|
|
346
|
+
height: "24px"
|
|
347
|
+
}), /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
|
|
348
|
+
type: ui_Label.LabelTypography.SUBTITLE_1,
|
|
349
|
+
color: ui_Label.LabelColors.ONBACKGROUND_1
|
|
350
|
+
}, stringSet.MESSAGE_MENU__THREAD)), showMenuItemDelete && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
351
|
+
className: "sendbird-message__bottomsheet--action",
|
|
352
|
+
onClick: () => {
|
|
353
|
+
hideMenu();
|
|
354
|
+
showRemove(true);
|
|
355
|
+
}
|
|
356
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
357
|
+
type: ui_Icon.IconTypes.DELETE,
|
|
358
|
+
fillColor: ui_Icon.IconColors.PRIMARY,
|
|
359
|
+
width: "24px",
|
|
360
|
+
height: "24px"
|
|
361
|
+
}), /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
|
|
362
|
+
type: ui_Label.LabelTypography.SUBTITLE_1,
|
|
363
|
+
color: ui_Label.LabelColors.ONBACKGROUND_1
|
|
364
|
+
}, stringSet === null || stringSet === void 0 ? void 0 : stringSet.MESSAGE_MENU__DELETE)), showMenuItemDownload && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
365
|
+
className: "sendbird-message__bottomsheet--action",
|
|
366
|
+
onClick: () => {
|
|
367
|
+
hideMenu();
|
|
368
|
+
}
|
|
369
|
+
}, /*#__PURE__*/React__default["default"].createElement("a", {
|
|
370
|
+
className: "sendbird-message__bottomsheet--hyperlink",
|
|
371
|
+
rel: "noopener noreferrer",
|
|
372
|
+
href: fileMessage === null || fileMessage === void 0 ? void 0 : fileMessage.url,
|
|
373
|
+
target: "_blank"
|
|
374
|
+
}, /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
|
|
375
|
+
type: ui_Icon.IconTypes.DOWNLOAD,
|
|
376
|
+
fillColor: ui_Icon.IconColors.PRIMARY,
|
|
377
|
+
width: "24px",
|
|
378
|
+
height: "24px"
|
|
379
|
+
}), /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
|
|
380
|
+
type: ui_Label.LabelTypography.SUBTITLE_1,
|
|
381
|
+
color: ui_Label.LabelColors.ONBACKGROUND_1
|
|
382
|
+
}, stringSet === null || stringSet === void 0 ? void 0 : stringSet.MESSAGE_MENU__SAVE))))));
|
|
383
|
+
};
|
|
384
|
+
|
|
385
|
+
const MobileMenu = props => {
|
|
386
|
+
const {
|
|
387
|
+
message,
|
|
388
|
+
hideMenu,
|
|
389
|
+
userId,
|
|
390
|
+
channel,
|
|
391
|
+
isReactionEnabled = false,
|
|
392
|
+
isByMe,
|
|
393
|
+
replyType,
|
|
394
|
+
disabled,
|
|
395
|
+
showRemove,
|
|
396
|
+
showEdit,
|
|
397
|
+
resendMessage,
|
|
398
|
+
setQuoteMessage,
|
|
399
|
+
emojiContainer,
|
|
400
|
+
toggleReaction,
|
|
401
|
+
parentRef,
|
|
402
|
+
onReplyInThread,
|
|
403
|
+
isOpenedFromThread
|
|
404
|
+
} = props;
|
|
405
|
+
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, isReactionEnabled ? /*#__PURE__*/React__default["default"].createElement(MobileBottomSheet, {
|
|
406
|
+
channel: channel,
|
|
407
|
+
message: message,
|
|
408
|
+
hideMenu: hideMenu,
|
|
409
|
+
isByMe: isByMe,
|
|
410
|
+
userId: userId,
|
|
411
|
+
replyType: replyType,
|
|
412
|
+
disabled: disabled,
|
|
413
|
+
showRemove: showRemove,
|
|
414
|
+
showEdit: showEdit,
|
|
415
|
+
resendMessage: resendMessage,
|
|
416
|
+
setQuoteMessage: setQuoteMessage,
|
|
417
|
+
emojiContainer: emojiContainer,
|
|
418
|
+
toggleReaction: toggleReaction,
|
|
419
|
+
isReactionEnabled: isReactionEnabled,
|
|
420
|
+
onReplyInThread: onReplyInThread,
|
|
421
|
+
isOpenedFromThread: isOpenedFromThread
|
|
422
|
+
}) : /*#__PURE__*/React__default["default"].createElement(MobileContextMenu, {
|
|
423
|
+
channel: channel,
|
|
424
|
+
userId: userId,
|
|
425
|
+
message: message,
|
|
426
|
+
hideMenu: hideMenu,
|
|
427
|
+
isByMe: isByMe,
|
|
428
|
+
showEdit: showEdit,
|
|
429
|
+
replyType: replyType,
|
|
430
|
+
disabled: disabled,
|
|
431
|
+
showRemove: showRemove,
|
|
432
|
+
resendMessage: resendMessage,
|
|
433
|
+
setQuoteMessage: setQuoteMessage,
|
|
434
|
+
parentRef: parentRef,
|
|
435
|
+
onReplyInThread: onReplyInThread,
|
|
436
|
+
isOpenedFromThread: isOpenedFromThread
|
|
437
|
+
}));
|
|
438
|
+
};
|
|
439
|
+
|
|
440
|
+
exports.MobileMenu = MobileMenu;
|
|
441
|
+
//# sourceMappingURL=index-564380b1.js.map
|