@sendbird/uikit-react 3.4.6-0 → 3.4.6-rc.1
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 +46 -45
- package/App.js.map +1 -1
- package/CHANGELOG.md +16 -0
- package/Channel/components/ChannelHeader.js +20 -20
- package/Channel/components/ChannelHeader.js.map +1 -1
- package/Channel/components/ChannelUI.js +39 -38
- package/Channel/components/ChannelUI.js.map +1 -1
- package/Channel/components/FileViewer.js +15 -15
- package/Channel/components/FrozenNotification.js +4 -4
- package/Channel/components/Message.js +43 -42
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +27 -28
- package/Channel/components/MessageInput.js.map +1 -1
- package/Channel/components/MessageList.js +41 -59
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +17 -17
- package/Channel/components/RemoveMessageModal.js.map +1 -1
- package/Channel/components/SuggestedMentionList.js +23 -30
- package/Channel/components/SuggestedMentionList.js.map +1 -1
- package/Channel/components/TypingIndicator.js +15 -15
- package/Channel/components/TypingIndicator.js.map +1 -1
- package/Channel/components/UnreadCount.js +4 -4
- package/Channel/context.js +14 -14
- package/Channel.js +39 -38
- package/Channel.js.map +1 -1
- package/ChannelList/components/AddChannel.js +15 -15
- package/ChannelList/components/ChannelListHeader.js +6 -6
- package/ChannelList/components/ChannelListUI.js +30 -30
- package/ChannelList/components/ChannelPreview.js +27 -27
- package/ChannelList/components/ChannelPreview.js.map +1 -1
- package/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/ChannelList/context.js +8 -8
- package/ChannelList.js +30 -30
- package/{ChannelListProvider-b7ce527e.js → ChannelListProvider-32bd4597.js} +8 -8
- package/ChannelListProvider-32bd4597.js.map +1 -0
- package/{ChannelProvider-cd9afff3.js → ChannelProvider-4e33aa60.js} +12 -12
- package/ChannelProvider-4e33aa60.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 +14 -14
- package/ChannelSettings/components/ModerationPanel.js.map +1 -1
- package/ChannelSettings/components/UserListItem.js +10 -10
- package/ChannelSettings/components/UserPanel.js +14 -14
- package/ChannelSettings/components/UserPanel.js.map +1 -1
- package/ChannelSettings/context.js +3 -3
- package/ChannelSettings/context.js.map +1 -1
- package/ChannelSettings.js +17 -17
- package/CreateChannel/components/CreateChannelUI.js +13 -13
- package/CreateChannel/components/InviteUsers.js +16 -14
- package/CreateChannel/components/InviteUsers.js.map +1 -1
- package/CreateChannel/components/SelectChannelType.js +10 -10
- package/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/CreateChannel/context.js +4 -4
- package/CreateChannel.js +13 -13
- package/{CreateChannelProvider-d7e8a10f.js → CreateChannelProvider-96aa4ed0.js} +1 -1
- package/{CreateChannelProvider-d7e8a10f.js.map → CreateChannelProvider-96aa4ed0.js.map} +1 -1
- package/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
- package/CreateOpenChannel/context.js +1 -1
- package/CreateOpenChannel.js +9 -9
- package/CreateOpenChannel.js.map +1 -1
- package/EditUserProfile/components/EditUserProfileUI.js +12 -12
- package/EditUserProfile.js +12 -12
- package/{LocalizationContext-43b10f97.js → LocalizationContext-62966630.js} +3 -3
- package/{LocalizationContext-43b10f97.js.map → LocalizationContext-62966630.js.map} +1 -1
- package/{MediaQueryContext-f2df2472.js → MediaQueryContext-17146a37.js} +7 -7
- package/{MediaQueryContext-f2df2472.js.map → MediaQueryContext-17146a37.js.map} +1 -1
- package/{MemberList-70806978.js → MemberList-ef0a35ad.js} +5 -5
- package/MemberList-ef0a35ad.js.map +1 -0
- package/MessageSearch/components/MessageSearchUI.js +11 -11
- package/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/MessageSearch/context.js +1 -1
- package/MessageSearch/context.js.map +1 -1
- package/MessageSearch.js +11 -11
- package/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/OpenChannel/components/OpenChannelHeader.js +12 -12
- package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
- package/OpenChannel/components/OpenChannelInput.js +19 -19
- package/OpenChannel/components/OpenChannelMessage.js +28 -27
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +33 -67
- package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/OpenChannel/components/OpenChannelUI.js +32 -30
- package/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/OpenChannel/context.js +8 -8
- package/OpenChannel.js +32 -30
- package/OpenChannel.js.map +1 -1
- package/OpenChannelList/components/OpenChannelListUI.js +13 -13
- package/OpenChannelList/components/OpenChannelPreview.js +4 -4
- package/OpenChannelList/context.js +3 -3
- package/OpenChannelList.js +13 -13
- package/OpenChannelList.js.map +1 -1
- package/{OpenChannelListProvider-22244a14.js → OpenChannelListProvider-8be6450e.js} +6 -4
- package/OpenChannelListProvider-8be6450e.js.map +1 -0
- package/{OpenChannelProvider-36270182.js → OpenChannelProvider-98df8b74.js} +8 -8
- package/OpenChannelProvider-98df8b74.js.map +1 -0
- 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 +16 -16
- 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-d0a5c64c.js → RemoveMessageModal-0efd9201.js} +3 -3
- package/{RemoveMessageModal-d0a5c64c.js.map → RemoveMessageModal-0efd9201.js.map} +1 -1
- package/SendbirdProvider.js +138 -111
- package/SendbirdProvider.js.map +1 -1
- package/Thread/components/ParentMessageInfo.js +30 -30
- package/Thread/components/ParentMessageInfoItem.js +18 -18
- package/Thread/components/ThreadHeader.js +6 -6
- package/Thread/components/ThreadList.js +34 -33
- package/Thread/components/ThreadList.js.map +1 -1
- package/Thread/components/ThreadListItem.js +33 -33
- package/Thread/components/ThreadListItem.js.map +1 -1
- package/Thread/components/ThreadMessageInput.js +28 -29
- package/Thread/components/ThreadMessageInput.js.map +1 -1
- package/Thread/components/ThreadUI.js +37 -37
- package/Thread/context.js +8 -8
- package/Thread.js +37 -37
- package/{ThreadProvider-533e9025.js → ThreadProvider-1798360b.js} +9 -9
- package/ThreadProvider-1798360b.js.map +1 -0
- package/{UserProfileContext-12b6fabf.js → UserProfileContext-7083bd82.js} +1 -1
- package/{UserProfileContext-12b6fabf.js.map → UserProfileContext-7083bd82.js.map} +1 -1
- package/{VoiceMessageInputWrapper-c74412de.js → VoiceMessageInputWrapper-4479a1bd.js} +19 -14
- package/VoiceMessageInputWrapper-4479a1bd.js.map +1 -0
- package/VoicePlayer/context.js +3 -3
- package/VoicePlayer/useVoicePlayer.js +3 -4
- package/VoicePlayer/useVoicePlayer.js.map +1 -1
- package/VoiceRecorder/context.js +22 -125
- package/VoiceRecorder/context.js.map +1 -1
- package/VoiceRecorder/useVoiceRecorder.js +2 -3
- package/VoiceRecorder/useVoiceRecorder.js.map +1 -1
- package/WebAudioUtils-f57301b1.js +123 -0
- package/WebAudioUtils-f57301b1.js.map +1 -0
- package/{_rollupPluginBabelHelpers-3756a6a3.js → _rollupPluginBabelHelpers-48b56150.js} +1 -1
- package/_rollupPluginBabelHelpers-48b56150.js.map +1 -0
- package/actionTypes-9badb1b4.js +8 -0
- package/actionTypes-9badb1b4.js.map +1 -0
- package/cjs/App.js +46 -45
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +20 -20
- package/cjs/Channel/components/ChannelHeader.js.map +1 -1
- package/cjs/Channel/components/ChannelUI.js +39 -38
- package/cjs/Channel/components/ChannelUI.js.map +1 -1
- package/cjs/Channel/components/FileViewer.js +15 -15
- package/cjs/Channel/components/FrozenNotification.js +4 -4
- package/cjs/Channel/components/Message.js +47 -46
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +27 -28
- package/cjs/Channel/components/MessageInput.js.map +1 -1
- package/cjs/Channel/components/MessageList.js +41 -59
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +17 -17
- package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
- package/cjs/Channel/components/SuggestedMentionList.js +23 -30
- package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
- package/cjs/Channel/components/TypingIndicator.js +15 -15
- package/cjs/Channel/components/TypingIndicator.js.map +1 -1
- package/cjs/Channel/components/UnreadCount.js +4 -4
- package/cjs/Channel/context.js +14 -14
- package/cjs/Channel.js +39 -38
- package/cjs/Channel.js.map +1 -1
- package/cjs/ChannelList/components/AddChannel.js +15 -15
- package/cjs/ChannelList/components/ChannelListHeader.js +6 -6
- package/cjs/ChannelList/components/ChannelListUI.js +30 -30
- package/cjs/ChannelList/components/ChannelPreview.js +27 -27
- 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 +30 -30
- package/cjs/{ChannelListProvider-d8f65b18.js → ChannelListProvider-c90e6d9b.js} +8 -8
- package/cjs/ChannelListProvider-c90e6d9b.js.map +1 -0
- package/cjs/{ChannelProvider-473548f7.js → ChannelProvider-6da44044.js} +12 -12
- package/cjs/ChannelProvider-6da44044.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 +14 -14
- package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
- package/cjs/ChannelSettings/components/UserListItem.js +10 -10
- package/cjs/ChannelSettings/components/UserPanel.js +14 -14
- package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
- package/cjs/ChannelSettings/context.js +3 -3
- package/cjs/ChannelSettings/context.js.map +1 -1
- package/cjs/ChannelSettings.js +17 -17
- package/cjs/CreateChannel/components/CreateChannelUI.js +13 -13
- package/cjs/CreateChannel/components/InviteUsers.js +16 -14
- package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
- package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
- package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
- package/cjs/CreateChannel/context.js +4 -4
- package/cjs/CreateChannel.js +13 -13
- package/cjs/{CreateChannelProvider-387290bb.js → CreateChannelProvider-ff9bb9da.js} +1 -1
- package/cjs/{CreateChannelProvider-387290bb.js.map → CreateChannelProvider-ff9bb9da.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/CreateOpenChannel.js.map +1 -1
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
- package/cjs/EditUserProfile.js +12 -12
- package/cjs/{LocalizationContext-e4a874cf.js → LocalizationContext-4c1a8e44.js} +3 -3
- package/cjs/{LocalizationContext-e4a874cf.js.map → LocalizationContext-4c1a8e44.js.map} +1 -1
- package/cjs/{MediaQueryContext-fcd92c17.js → MediaQueryContext-9f3958fe.js} +7 -7
- package/cjs/{MediaQueryContext-fcd92c17.js.map → MediaQueryContext-9f3958fe.js.map} +1 -1
- package/cjs/{MemberList-dbd3a4b4.js → MemberList-1ad4eda5.js} +5 -5
- package/cjs/MemberList-1ad4eda5.js.map +1 -0
- package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
- package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
- package/cjs/MessageSearch/context.js +1 -1
- package/cjs/MessageSearch/context.js.map +1 -1
- package/cjs/MessageSearch.js +11 -11
- package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
- package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelInput.js +19 -19
- package/cjs/OpenChannel/components/OpenChannelMessage.js +28 -27
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +37 -71
- package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelUI.js +32 -30
- package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/cjs/OpenChannel/context.js +8 -8
- package/cjs/OpenChannel.js +32 -30
- package/cjs/OpenChannel.js.map +1 -1
- package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
- package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
- package/cjs/OpenChannelList/context.js +3 -3
- package/cjs/OpenChannelList.js +13 -13
- package/cjs/OpenChannelList.js.map +1 -1
- package/cjs/{OpenChannelListProvider-89659c0b.js → OpenChannelListProvider-f7387ce4.js} +6 -4
- package/cjs/OpenChannelListProvider-f7387ce4.js.map +1 -0
- package/cjs/{OpenChannelProvider-3d3d606e.js → OpenChannelProvider-0bbac562.js} +8 -8
- package/cjs/OpenChannelProvider-0bbac562.js.map +1 -0
- 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 +16 -16
- 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-21a7c6ac.js → RemoveMessageModal-63e870f4.js} +3 -3
- package/cjs/{RemoveMessageModal-21a7c6ac.js.map → RemoveMessageModal-63e870f4.js.map} +1 -1
- package/cjs/SendbirdProvider.js +142 -115
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfo.js +30 -30
- package/cjs/Thread/components/ParentMessageInfoItem.js +18 -18
- package/cjs/Thread/components/ThreadHeader.js +6 -6
- package/cjs/Thread/components/ThreadList.js +34 -33
- package/cjs/Thread/components/ThreadList.js.map +1 -1
- package/cjs/Thread/components/ThreadListItem.js +33 -33
- package/cjs/Thread/components/ThreadListItem.js.map +1 -1
- package/cjs/Thread/components/ThreadMessageInput.js +28 -29
- package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
- package/cjs/Thread/components/ThreadUI.js +37 -37
- package/cjs/Thread/context.js +8 -8
- package/cjs/Thread.js +37 -37
- package/cjs/{ThreadProvider-572d67c0.js → ThreadProvider-ca9e5e4f.js} +9 -9
- package/cjs/ThreadProvider-ca9e5e4f.js.map +1 -0
- package/cjs/{UserProfileContext-ce0c283c.js → UserProfileContext-34f6be33.js} +1 -1
- package/cjs/{UserProfileContext-ce0c283c.js.map → UserProfileContext-34f6be33.js.map} +1 -1
- package/cjs/{VoiceMessageInputWrapper-88ad4670.js → VoiceMessageInputWrapper-770a185c.js} +18 -13
- package/cjs/VoiceMessageInputWrapper-770a185c.js.map +1 -0
- package/cjs/VoicePlayer/context.js +3 -3
- package/cjs/VoicePlayer/useVoicePlayer.js +3 -4
- package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -1
- package/cjs/VoiceRecorder/context.js +21 -124
- package/cjs/VoiceRecorder/context.js.map +1 -1
- package/cjs/VoiceRecorder/useVoiceRecorder.js +2 -3
- package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -1
- package/cjs/WebAudioUtils-70bcccc3.js +126 -0
- package/cjs/WebAudioUtils-70bcccc3.js.map +1 -0
- package/cjs/{_rollupPluginBabelHelpers-6ab4baac.js → _rollupPluginBabelHelpers-8164e35a.js} +1 -1
- package/cjs/_rollupPluginBabelHelpers-8164e35a.js.map +1 -0
- package/cjs/actionTypes-4a2939b3.js +10 -0
- package/cjs/actionTypes-4a2939b3.js.map +1 -0
- package/cjs/{color-168c1d53.js → color-f43f059a.js} +1 -1
- package/cjs/{color-168c1d53.js.map → color-f43f059a.js.map} +1 -1
- package/cjs/{compareIds-441b4983.js → compareIds-e5f7db38.js} +1 -1
- package/cjs/{compareIds-441b4983.js.map → compareIds-e5f7db38.js.map} +1 -1
- package/cjs/{const-cf4cec6a.js → const-611ac2dd.js} +1 -1
- package/cjs/{const-cf4cec6a.js.map → const-611ac2dd.js.map} +1 -1
- package/cjs/{const-0273bf9e.js → const-e7388711.js} +1 -1
- package/cjs/{const-0273bf9e.js.map → const-e7388711.js.map} +1 -1
- package/cjs/{consts-b8c0be49.js → consts-82dce75d.js} +1 -1
- package/cjs/{consts-b8c0be49.js.map → consts-82dce75d.js.map} +1 -1
- package/cjs/{consts-e193b1b8.js → consts-d9ecf2d7.js} +1 -1
- package/cjs/{consts-e193b1b8.js.map → consts-d9ecf2d7.js.map} +1 -1
- package/cjs/{consts-472d9347.js → consts-e0f44b83.js} +1 -1
- package/cjs/{consts-472d9347.js.map → consts-e0f44b83.js.map} +1 -1
- package/cjs/{consts-2e23914f.js → consts-f8bd3346.js} +1 -1
- package/cjs/{consts-2e23914f.js.map → consts-f8bd3346.js.map} +1 -1
- package/cjs/{context-d718fff1.js → context-32080e3d.js} +2 -2
- package/cjs/{context-d718fff1.js.map → context-32080e3d.js.map} +1 -1
- package/cjs/dist/index.css +143 -142
- package/cjs/dist/index.css.map +1 -1
- package/cjs/handlers/OpenChannelHandler.js.map +1 -1
- package/cjs/handlers/SessionHandler.js.map +1 -1
- package/cjs/{index-b2e4a79e.js → index-0f5a2c3b.js} +7 -7
- package/cjs/index-0f5a2c3b.js.map +1 -0
- package/cjs/{index-9dd8a18a.js → index-1837f392.js} +6 -6
- package/cjs/index-1837f392.js.map +1 -0
- package/cjs/{index-f2d71843.js → index-450c5c4a.js} +113 -30
- package/cjs/index-450c5c4a.js.map +1 -0
- package/cjs/{index-813deccc.js → index-584a87f3.js} +1 -1
- package/cjs/{index-813deccc.js.map → index-584a87f3.js.map} +1 -1
- package/cjs/{index-630f7132.js → index-58bddb18.js} +14 -14
- package/cjs/index-58bddb18.js.map +1 -0
- package/cjs/{index-44341b78.js → index-6253d289.js} +6 -3
- package/cjs/index-6253d289.js.map +1 -0
- package/cjs/{index-0e43cd69.js → index-6295003c.js} +2 -2
- package/cjs/{index-0e43cd69.js.map → index-6295003c.js.map} +1 -1
- package/cjs/{index-ba9683ca.js → index-911b358f.js} +7 -3
- package/cjs/index-911b358f.js.map +1 -0
- package/cjs/{index-5075f3b2.js → index-946fe9b8.js} +14 -14
- package/cjs/index-946fe9b8.js.map +1 -0
- package/cjs/{index-3d08adec.js → index-a9a828c4.js} +4 -4
- package/cjs/index-a9a828c4.js.map +1 -0
- package/cjs/index-bddcf750.js +41 -0
- package/cjs/index-bddcf750.js.map +1 -0
- package/cjs/{index-4894fc55.js → index-cc5b51fb.js} +7 -7
- package/cjs/index-cc5b51fb.js.map +1 -0
- package/cjs/{index-d3b05e98.js → index-d217a491.js} +2 -2
- package/cjs/index-d217a491.js.map +1 -0
- package/cjs/{index-903c0f93.js → index-ecac7544.js} +24 -3
- package/cjs/index-ecac7544.js.map +1 -0
- package/cjs/{index-3a7584a0.js → index-f2afea13.js} +28 -29
- package/cjs/index-f2afea13.js.map +1 -0
- package/cjs/{index-47105c4f.js → index-fc3f351f.js} +2 -2
- package/cjs/index-fc3f351f.js.map +1 -0
- package/cjs/index.js +50 -49
- package/cjs/index.js.map +1 -1
- package/cjs/index.module-d62bc038.js +6 -0
- package/cjs/index.module-d62bc038.js.map +1 -0
- package/cjs/sendbirdSelectors.js +2 -2
- package/cjs/sendbirdSelectors.js.map +1 -1
- package/cjs/{stringSet-76f7df68.js → stringSet-9717efda.js} +1 -1
- package/cjs/{stringSet-76f7df68.js.map → stringSet-9717efda.js.map} +1 -1
- package/cjs/{tokenize-5071d1a6.js → tokenize-b42df26a.js} +19 -5
- package/cjs/tokenize-b42df26a.js.map +1 -0
- package/cjs/{topics-f70c5e0f.js → topics-11bf2ffa.js} +1 -1
- package/cjs/topics-11bf2ffa.js.map +1 -0
- package/cjs/tslib.es6-b412d11d.js +97 -0
- package/cjs/tslib.es6-b412d11d.js.map +1 -0
- package/cjs/{types-43ef9367.js → types-997d2578.js} +1 -1
- package/cjs/types-997d2578.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/BottomSheet.js.map +1 -1
- package/cjs/ui/Button.js +3 -3
- package/cjs/ui/Button.js.map +1 -1
- package/cjs/ui/ChannelAvatar.js +3 -3
- package/cjs/ui/ChannelAvatar.js.map +1 -1
- package/cjs/ui/Checkbox.js +2 -2
- package/cjs/ui/Checkbox.js.map +1 -1
- package/cjs/ui/ConnectionStatus.js +4 -4
- package/cjs/ui/ContextMenu.js +6 -6
- package/cjs/ui/ContextMenu.js.map +1 -1
- 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/IconButton.js +1 -1
- package/cjs/ui/IconButton.js.map +1 -1
- package/cjs/ui/ImageRenderer.js +1 -1
- package/cjs/ui/ImageRenderer.js.map +1 -1
- package/cjs/ui/Input.js +2 -2
- package/cjs/ui/Label.js +2 -2
- package/cjs/ui/LinkLabel.js +2 -2
- package/cjs/ui/Loader.js +1 -1
- package/cjs/ui/MentionLabel.js +10 -10
- package/cjs/ui/MentionUserLabel.js +1 -1
- package/cjs/ui/MessageContent.js +28 -28
- package/cjs/ui/MessageContent.js.map +1 -1
- package/cjs/ui/MessageInput.js +24 -23
- package/cjs/ui/MessageInput.js.map +1 -1
- package/cjs/ui/MessageItemMenu.js +8 -8
- package/cjs/ui/MessageItemMenu.js.map +1 -1
- package/cjs/ui/MessageItemReactionMenu.js +5 -5
- package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
- package/cjs/ui/MessageSearchFileItem.js +11 -11
- package/cjs/ui/MessageSearchFileItem.js.map +1 -1
- package/cjs/ui/MessageSearchItem.js +9 -9
- package/cjs/ui/MessageSearchItem.js.map +1 -1
- package/cjs/ui/MessageStatus.js +10 -10
- package/cjs/ui/Modal.js +7 -7
- package/cjs/ui/Modal.js.map +1 -1
- package/cjs/ui/OGMessageItemBody.js +14 -13
- 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/OpenChannelAvatar.js.map +1 -1
- package/cjs/ui/OpenchannelConversationHeader.js +6 -6
- package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
- package/cjs/ui/OpenchannelFileMessage.js +16 -16
- package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
- package/cjs/ui/OpenchannelOGMessage.js +19 -18
- package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
- package/cjs/ui/OpenchannelThumbnailMessage.js +15 -15
- package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/cjs/ui/OpenchannelUserMessage.js +16 -16
- package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
- package/cjs/ui/PlaceHolder.js +6 -6
- package/cjs/ui/PlaybackTime.js +2 -2
- package/cjs/ui/ProgressBar.js.map +1 -1
- package/cjs/ui/QuoteMessage.js +6 -6
- package/cjs/ui/QuoteMessage.js.map +1 -1
- package/cjs/ui/QuoteMessageInput.js +6 -6
- package/cjs/ui/ReactionBadge.js +3 -3
- package/cjs/ui/ReactionBadge.js.map +1 -1
- package/cjs/ui/ReactionButton.js +1 -1
- package/cjs/ui/SortByRow.js +2 -2
- package/cjs/ui/TextButton.js +2 -2
- package/cjs/ui/TextButton.js.map +1 -1
- package/cjs/ui/TextMessageItemBody.js +14 -13
- package/cjs/ui/TextMessageItemBody.js.map +1 -1
- package/cjs/ui/ThreadReplies.js +6 -6
- package/cjs/ui/ThumbnailMessageItemBody.js +4 -4
- package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/cjs/ui/Tooltip.js +3 -3
- package/cjs/ui/Tooltip.js.map +1 -1
- package/cjs/ui/TooltipWrapper.js +1 -1
- package/cjs/ui/UnknownMessageItemBody.js +6 -6
- package/cjs/ui/UserListItem.js +11 -11
- package/cjs/ui/UserListItem.js.map +1 -1
- package/cjs/ui/UserProfile.js +9 -9
- package/cjs/ui/VoiceMessageItemBody.js +5 -6
- package/cjs/ui/VoiceMessageItemBody.js.map +1 -1
- package/cjs/ui/VoiceMessgeInput.js +8 -8
- package/cjs/ui/Word.js +11 -11
- package/cjs/ui/Word.js.map +1 -1
- package/cjs/{useLongPress-3582b310.js → useLongPress-0b0040bb.js} +3 -3
- package/cjs/{useLongPress-3582b310.js.map → useLongPress-0b0040bb.js.map} +1 -1
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/useSendbirdStateContext.js.map +1 -1
- package/cjs/utils/message/isVoiceMessage.js +2 -2
- package/cjs/utils/message/isVoiceMessage.js.map +1 -1
- package/cjs/{utils-39eb2189.js → utils-301360ec.js} +2 -2
- package/cjs/utils-301360ec.js.map +1 -0
- package/cjs/{utils-39a3f99e.js → utils-43d14023.js} +1 -1
- package/cjs/utils-43d14023.js.map +1 -0
- package/cjs/{utils-1ebf89f9.js → utils-aeadc058.js} +1 -1
- package/cjs/{utils-1ebf89f9.js.map → utils-aeadc058.js.map} +1 -1
- package/cjs/{utils-fdfc9b0a.js → utils-d40c9909.js} +1 -1
- package/cjs/{utils-fdfc9b0a.js.map → utils-d40c9909.js.map} +1 -1
- package/cjs/{uuid-f23c161c.js → uuid-d0a9c040.js} +1 -1
- package/cjs/{uuid-f23c161c.js.map → uuid-d0a9c040.js.map} +1 -1
- package/cjs/withSendbird.js +1 -1
- package/{color-e54d3ed7.js → color-4ecee870.js} +1 -1
- package/{color-e54d3ed7.js.map → color-4ecee870.js.map} +1 -1
- package/{compareIds-3e30a438.js → compareIds-bc4cf9bf.js} +1 -1
- package/{compareIds-3e30a438.js.map → compareIds-bc4cf9bf.js.map} +1 -1
- package/{const-71bd6867.js → const-34b3294d.js} +1 -1
- package/{const-71bd6867.js.map → const-34b3294d.js.map} +1 -1
- package/{const-48a3200e.js → const-8a7444d1.js} +1 -1
- package/{const-48a3200e.js.map → const-8a7444d1.js.map} +1 -1
- package/{consts-665331c7.js → consts-165100af.js} +1 -1
- package/{consts-665331c7.js.map → consts-165100af.js.map} +1 -1
- package/{consts-4b1e008b.js → consts-7a61df9f.js} +1 -1
- package/{consts-4b1e008b.js.map → consts-7a61df9f.js.map} +1 -1
- package/{consts-e4e1a8fc.js → consts-81c7d9ed.js} +1 -1
- package/{consts-e4e1a8fc.js.map → consts-81c7d9ed.js.map} +1 -1
- package/{consts-30f09302.js → consts-96859f90.js} +1 -1
- package/{consts-30f09302.js.map → consts-96859f90.js.map} +1 -1
- package/{context-993ee0c3.js → context-c54bc9b4.js} +2 -2
- package/{context-993ee0c3.js.map → context-c54bc9b4.js.map} +1 -1
- package/dist/index.css +143 -142
- package/dist/index.css.map +1 -1
- package/handlers/OpenChannelHandler.js.map +1 -1
- package/handlers/SessionHandler.js.map +1 -1
- package/{index-cd1a9173.js → index-1db30515.js} +14 -14
- package/index-1db30515.js.map +1 -0
- package/index-2ea26b17.js +39 -0
- package/index-2ea26b17.js.map +1 -0
- package/{index-d75ba9c0.js → index-3ac8a689.js} +4 -4
- package/index-3ac8a689.js.map +1 -0
- package/{index-207577d6.js → index-47ba6604.js} +7 -3
- package/index-47ba6604.js.map +1 -0
- package/{index-8f0ae983.js → index-538fa479.js} +2 -2
- package/{index-8f0ae983.js.map → index-538fa479.js.map} +1 -1
- package/{index-8a52a6f4.js → index-5cfaecc9.js} +113 -30
- package/index-5cfaecc9.js.map +1 -0
- package/{index-0f373e79.js → index-6574e8fd.js} +24 -3
- package/index-6574e8fd.js.map +1 -0
- package/{index-5c20d787.js → index-6f66895e.js} +1 -1
- package/{index-5c20d787.js.map → index-6f66895e.js.map} +1 -1
- package/{index-a90edcd2.js → index-77a24725.js} +7 -7
- package/index-77a24725.js.map +1 -0
- package/{index-95f0372d.js → index-adfdd634.js} +2 -2
- package/index-adfdd634.js.map +1 -0
- package/{index-ec8cbdfb.js → index-af95f2b0.js} +14 -14
- package/index-af95f2b0.js.map +1 -0
- package/{index-2932882f.js → index-c4ff34e4.js} +6 -3
- package/index-c4ff34e4.js.map +1 -0
- package/{index-c77693d8.js → index-df6b2fc4.js} +2 -2
- package/index-df6b2fc4.js.map +1 -0
- package/{index-88523047.js → index-e2834120.js} +7 -7
- package/index-e2834120.js.map +1 -0
- package/{index-10377bc5.js → index-e5062739.js} +6 -6
- package/index-e5062739.js.map +1 -0
- package/index-f5d419ec.js +53 -0
- package/index-f5d419ec.js.map +1 -0
- package/index.d.ts +1 -1
- package/index.js +50 -49
- package/index.js.map +1 -1
- package/index.module-a2145ffe.js +4 -0
- package/index.module-a2145ffe.js.map +1 -0
- package/package.json +4 -2
- package/sendbirdSelectors.js +2 -2
- package/sendbirdSelectors.js.map +1 -1
- package/{stringSet-2d42f6ff.js → stringSet-e0fd81b2.js} +1 -1
- package/{stringSet-2d42f6ff.js.map → stringSet-e0fd81b2.js.map} +1 -1
- package/{tokenize-cd9c48bb.js → tokenize-22d48b61.js} +19 -6
- package/tokenize-22d48b61.js.map +1 -0
- package/{topics-6d4bf2ed.js → topics-bc5fee43.js} +1 -1
- package/topics-bc5fee43.js.map +1 -0
- package/tslib.es6-85bcd95d.js +92 -0
- package/tslib.es6-85bcd95d.js.map +1 -0
- package/{types-2fb5793c.js → types-84207ac4.js} +1 -1
- package/types-84207ac4.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/BottomSheet.js.map +1 -1
- package/ui/Button.js +3 -3
- package/ui/Button.js.map +1 -1
- package/ui/ChannelAvatar.js +3 -3
- package/ui/ChannelAvatar.js.map +1 -1
- package/ui/Checkbox.js +2 -2
- package/ui/Checkbox.js.map +1 -1
- package/ui/ConnectionStatus.js +4 -4
- package/ui/ContextMenu.js +6 -6
- package/ui/ContextMenu.js.map +1 -1
- 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/IconButton.js +1 -1
- package/ui/IconButton.js.map +1 -1
- package/ui/ImageRenderer.js +1 -1
- package/ui/ImageRenderer.js.map +1 -1
- package/ui/Input.js +2 -2
- package/ui/Label.js +2 -2
- package/ui/LinkLabel.js +2 -2
- package/ui/Loader.js +1 -1
- package/ui/MentionLabel.js +10 -10
- package/ui/MentionUserLabel.js +1 -1
- package/ui/MessageContent.js +28 -28
- package/ui/MessageContent.js.map +1 -1
- package/ui/MessageInput.js +24 -23
- package/ui/MessageInput.js.map +1 -1
- package/ui/MessageItemMenu.js +8 -8
- package/ui/MessageItemMenu.js.map +1 -1
- package/ui/MessageItemReactionMenu.js +5 -5
- package/ui/MessageItemReactionMenu.js.map +1 -1
- package/ui/MessageSearchFileItem.js +11 -11
- package/ui/MessageSearchFileItem.js.map +1 -1
- package/ui/MessageSearchItem.js +9 -9
- package/ui/MessageSearchItem.js.map +1 -1
- package/ui/MessageStatus.js +10 -10
- package/ui/Modal.js +7 -7
- package/ui/Modal.js.map +1 -1
- package/ui/OGMessageItemBody.js +14 -13
- package/ui/OGMessageItemBody.js.map +1 -1
- package/ui/OpenChannelAdminMessage.js +3 -3
- package/ui/OpenChannelAvatar.js +6 -6
- package/ui/OpenChannelAvatar.js.map +1 -1
- package/ui/OpenchannelConversationHeader.js +6 -6
- package/ui/OpenchannelConversationHeader.js.map +1 -1
- package/ui/OpenchannelFileMessage.js +16 -16
- package/ui/OpenchannelFileMessage.js.map +1 -1
- package/ui/OpenchannelOGMessage.js +19 -18
- package/ui/OpenchannelOGMessage.js.map +1 -1
- package/ui/OpenchannelThumbnailMessage.js +15 -15
- package/ui/OpenchannelThumbnailMessage.js.map +1 -1
- package/ui/OpenchannelUserMessage.js +16 -16
- package/ui/OpenchannelUserMessage.js.map +1 -1
- package/ui/PlaceHolder.js +6 -6
- package/ui/PlaybackTime.js +2 -2
- package/ui/ProgressBar.js.map +1 -1
- package/ui/QuoteMessage.js +6 -6
- package/ui/QuoteMessage.js.map +1 -1
- package/ui/QuoteMessageInput.js +6 -6
- package/ui/ReactionBadge.js +3 -3
- package/ui/ReactionBadge.js.map +1 -1
- package/ui/ReactionButton.js +1 -1
- package/ui/SortByRow.js +2 -2
- package/ui/TextButton.js +2 -2
- package/ui/TextButton.js.map +1 -1
- package/ui/TextMessageItemBody.js +14 -13
- package/ui/TextMessageItemBody.js.map +1 -1
- package/ui/ThreadReplies.js +6 -6
- package/ui/ThumbnailMessageItemBody.js +4 -4
- package/ui/ThumbnailMessageItemBody.js.map +1 -1
- package/ui/Tooltip.js +3 -3
- package/ui/Tooltip.js.map +1 -1
- package/ui/TooltipWrapper.js +1 -1
- package/ui/UnknownMessageItemBody.js +6 -6
- package/ui/UserListItem.js +11 -11
- package/ui/UserListItem.js.map +1 -1
- package/ui/UserProfile.js +9 -9
- package/ui/VoiceMessageItemBody.js +5 -6
- package/ui/VoiceMessageItemBody.js.map +1 -1
- package/ui/VoiceMessgeInput.js +8 -8
- package/ui/Word.js +11 -11
- package/ui/Word.js.map +1 -1
- package/{useLongPress-c1a00d6e.js → useLongPress-08d9369b.js} +3 -3
- package/{useLongPress-c1a00d6e.js.map → useLongPress-08d9369b.js.map} +1 -1
- package/useSendbirdStateContext.js +1 -1
- package/useSendbirdStateContext.js.map +1 -1
- package/utils/message/isVoiceMessage.js +2 -2
- package/utils/message/isVoiceMessage.js.map +1 -1
- package/{utils-3c726d0f.js → utils-13ac01f0.js} +2 -2
- package/utils-13ac01f0.js.map +1 -0
- package/{utils-4c1f97d4.js → utils-3c97842b.js} +1 -1
- package/{utils-4c1f97d4.js.map → utils-3c97842b.js.map} +1 -1
- package/{utils-760413c9.js → utils-4aea6ebc.js} +1 -1
- package/utils-4aea6ebc.js.map +1 -0
- package/{utils-a7563986.js → utils-7dc80efd.js} +1 -1
- package/{utils-a7563986.js.map → utils-7dc80efd.js.map} +1 -1
- package/{uuid-368c5040.js → uuid-39d923b9.js} +1 -1
- package/{uuid-368c5040.js.map → uuid-39d923b9.js.map} +1 -1
- package/withSendbird.js +1 -1
- package/.yarn/install-state.gz +0 -0
- package/ChannelListProvider-b7ce527e.js.map +0 -1
- package/ChannelProvider-cd9afff3.js.map +0 -1
- package/MemberList-70806978.js.map +0 -1
- package/OpenChannelListProvider-22244a14.js.map +0 -1
- package/OpenChannelProvider-36270182.js.map +0 -1
- package/ThreadProvider-533e9025.js.map +0 -1
- package/VoiceMessageInputWrapper-c74412de.js.map +0 -1
- package/_rollupPluginBabelHelpers-3756a6a3.js.map +0 -1
- package/actionTypes-f6400d21.js +0 -6
- package/actionTypes-f6400d21.js.map +0 -1
- package/cjs/ChannelListProvider-d8f65b18.js.map +0 -1
- package/cjs/ChannelProvider-473548f7.js.map +0 -1
- package/cjs/MemberList-dbd3a4b4.js.map +0 -1
- package/cjs/OpenChannelListProvider-89659c0b.js.map +0 -1
- package/cjs/OpenChannelProvider-3d3d606e.js.map +0 -1
- package/cjs/ThreadProvider-572d67c0.js.map +0 -1
- package/cjs/VoiceMessageInputWrapper-88ad4670.js.map +0 -1
- package/cjs/_rollupPluginBabelHelpers-6ab4baac.js.map +0 -1
- package/cjs/actionTypes-1b068888.js +0 -10
- package/cjs/actionTypes-1b068888.js.map +0 -1
- package/cjs/index-3a7584a0.js.map +0 -1
- package/cjs/index-3d08adec.js.map +0 -1
- package/cjs/index-44341b78.js.map +0 -1
- package/cjs/index-47105c4f.js.map +0 -1
- package/cjs/index-4894fc55.js.map +0 -1
- package/cjs/index-5075f3b2.js.map +0 -1
- package/cjs/index-630f7132.js.map +0 -1
- package/cjs/index-903c0f93.js.map +0 -1
- package/cjs/index-9dd8a18a.js.map +0 -1
- package/cjs/index-b2e4a79e.js.map +0 -1
- package/cjs/index-ba9683ca.js.map +0 -1
- package/cjs/index-d3b05e98.js.map +0 -1
- package/cjs/index-f2d71843.js.map +0 -1
- package/cjs/tokenize-5071d1a6.js.map +0 -1
- package/cjs/topics-f70c5e0f.js.map +0 -1
- package/cjs/tslib.es6-67bdb021.js +0 -176
- package/cjs/tslib.es6-67bdb021.js.map +0 -1
- package/cjs/types-43ef9367.js.map +0 -1
- package/cjs/utils-39a3f99e.js.map +0 -1
- package/cjs/utils-39eb2189.js.map +0 -1
- package/index-0f373e79.js.map +0 -1
- package/index-10377bc5.js.map +0 -1
- package/index-207577d6.js.map +0 -1
- package/index-2932882f.js.map +0 -1
- package/index-88523047.js.map +0 -1
- package/index-8a52a6f4.js.map +0 -1
- package/index-95f0372d.js.map +0 -1
- package/index-a90edcd2.js.map +0 -1
- package/index-c77693d8.js.map +0 -1
- package/index-cc626895.js +0 -54
- package/index-cc626895.js.map +0 -1
- package/index-cd1a9173.js.map +0 -1
- package/index-d75ba9c0.js.map +0 -1
- package/index-ec8cbdfb.js.map +0 -1
- package/tokenize-cd9c48bb.js.map +0 -1
- package/topics-6d4bf2ed.js.map +0 -1
- package/tslib.es6-5180f9d1.js +0 -171
- package/tslib.es6-5180f9d1.js.map +0 -1
- package/types-2fb5793c.js.map +0 -1
- package/utils-3c726d0f.js.map +0 -1
- package/utils-760413c9.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-911b358f.js","sources":["../../src/hooks/VoicePlayer/dux/actionTypes.ts","../../src/hooks/VoicePlayer/dux/initialState.ts","../../src/hooks/VoicePlayer/dux/reducer.ts","../../src/hooks/VoicePlayer/index.tsx"],"sourcesContent":["import { ObjectValues } from '../../../utils/typeHelpers/objectValues';\n\nexport const actionTypes = {\n INITIALIZE_AUDIO_UNIT: 'INITIALIZE_AUDIO_UNIT',\n SET_CURRENT_PLAYER: 'SET_CURRENT_PLAYER',\n ON_VOICE_PLAYER_PLAY: 'ON_VOICE_PLAYER_PLAY',\n ON_VOICE_PLAYER_PAUSE: 'ON_VOICE_PLAYER_PAUSE',\n ON_CURRENT_TIME_UPDATE: 'ON_CURRENT_TIME_UPDATE',\n} as const;\n\nexport type VoicePlayerActionType = ObjectValues<typeof actionTypes>;\n\nexport const INITIALIZE_AUDIO_UNIT: VoicePlayerActionType = 'INITIALIZE_AUDIO_UNIT';\nexport const SET_CURRENT_PLAYER: VoicePlayerActionType = 'SET_CURRENT_PLAYER';\nexport const ON_VOICE_PLAYER_PLAY: VoicePlayerActionType = 'ON_VOICE_PLAYER_PLAY';\nexport const ON_VOICE_PLAYER_PAUSE: VoicePlayerActionType = 'ON_VOICE_PLAYER_PAUSE';\nexport const ON_CURRENT_TIME_UPDATE: VoicePlayerActionType = 'ON_CURRENT_TIME_UPDATE';\n","import { GroupKey } from '../utils';\n\nexport const VoicePlayerStatus = {\n IDLE: 'IDLE',\n PREPARING: 'PREPARING',\n PLAYING: 'PLAYING',\n PAUSED: 'PAUSED',\n COMPLETED: 'COMPLETED',\n} as const;\nexport type VoicePlayerStatus = typeof VoicePlayerStatus[keyof typeof VoicePlayerStatus];\n\nexport type AudioStorageUnit = {\n playingStatus: VoicePlayerStatus;\n audioFile: null | File;\n playbackTime: number;\n duration: number;\n}\nexport const AudioUnitDefaultValue = (): AudioStorageUnit => ({\n audioFile: null,\n playbackTime: 0,\n duration: 1000,\n playingStatus: VoicePlayerStatus.IDLE,\n});\n\nexport interface VoicePlayerInitialState {\n currentPlayer: null | HTMLAudioElement;\n currentGroupKey: string;\n audioStorage: Record<GroupKey, AudioStorageUnit>;\n}\n\nexport const voicePlayerInitialState: VoicePlayerInitialState = {\n currentPlayer: null,\n currentGroupKey: '',\n audioStorage: {},\n};\n","import {\n INITIALIZE_AUDIO_UNIT,\n ON_CURRENT_TIME_UPDATE,\n ON_VOICE_PLAYER_PAUSE,\n ON_VOICE_PLAYER_PLAY,\n SET_CURRENT_PLAYER,\n} from './actionTypes';\nimport {\n AudioStorageUnit,\n AudioUnitDefaultValue,\n VoicePlayerInitialState,\n VoicePlayerStatus,\n} from './initialState';\n\ntype InitializeAudioUnitPayload = { groupKey: string };\ntype SetCurrentPlayerPayload = { audioPlayer: HTMLAudioElement, groupKey: string };\ntype OnVoicePlayerPlayPayload = { groupKey: string, audioFile: File };\ntype OnVoicePlayerPausePayload = { groupKey: string };\ntype OnCurrentTimeUpdatePayload = { groupKey: string };\ntype PayloadType = (\n InitializeAudioUnitPayload\n | SetCurrentPlayerPayload\n | OnVoicePlayerPlayPayload\n | OnVoicePlayerPausePayload\n | OnCurrentTimeUpdatePayload\n);\ntype ActionType = {\n type: string;\n payload: PayloadType;\n}\n\nexport default function voicePlayerReducer(\n state: VoicePlayerInitialState,\n action: ActionType,\n): VoicePlayerInitialState {\n switch (action.type) {\n case INITIALIZE_AUDIO_UNIT: {\n const { groupKey } = action.payload as InitializeAudioUnitPayload;\n const audioUnit = (state.audioStorage?.[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue()) as AudioStorageUnit;\n audioUnit.playingStatus = VoicePlayerStatus.PREPARING;\n return {\n ...state,\n audioStorage: {\n ...state.audioStorage,\n [groupKey]: audioUnit,\n },\n };\n }\n case SET_CURRENT_PLAYER: {\n const { audioPlayer, groupKey } = action.payload as SetCurrentPlayerPayload;\n return {\n ...state,\n currentPlayer: audioPlayer,\n currentGroupKey: groupKey,\n };\n }\n case ON_VOICE_PLAYER_PLAY: {\n const { groupKey, audioFile } = action.payload as OnVoicePlayerPlayPayload;\n const audioUnit = (state.audioStorage?.[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue()) as AudioStorageUnit;\n audioUnit.audioFile = audioFile;\n audioUnit.playingStatus = VoicePlayerStatus.PLAYING;\n return {\n ...state,\n audioStorage: {\n ...state.audioStorage,\n [groupKey]: audioUnit,\n },\n };\n }\n case ON_VOICE_PLAYER_PAUSE: {\n const { groupKey } = action.payload as OnVoicePlayerPausePayload;\n const audioUnit = (state.audioStorage?.[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue()) as AudioStorageUnit;\n audioUnit.playingStatus = VoicePlayerStatus.PAUSED;\n const { currentTime, duration } = state.currentPlayer as HTMLAudioElement;\n if (audioUnit.playbackTime === audioUnit.duration) {\n audioUnit.playbackTime = 0;\n } else if (currentTime > 0 && duration > 0) {\n audioUnit.playbackTime = currentTime;\n audioUnit.duration = duration;\n }\n return {\n ...state,\n audioStorage: {\n ...state.audioStorage,\n [groupKey]: audioUnit,\n },\n };\n }\n case ON_CURRENT_TIME_UPDATE: {\n const { groupKey } = action.payload as OnCurrentTimeUpdatePayload;\n const { currentTime, duration } = state.currentPlayer as HTMLAudioElement;\n const audioUnit = (state.audioStorage?.[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue()) as AudioStorageUnit;\n if (currentTime > 0 && duration > 0) {\n audioUnit.playbackTime = currentTime;\n audioUnit.duration = duration;\n }\n return {\n ...state,\n audioStorage: {\n ...state.audioStorage,\n [groupKey]: audioUnit,\n },\n };\n }\n default:\n return state;\n }\n}\n","import React, { createContext, useContext, useReducer } from 'react';\nimport voicePlayerReducer from './dux/reducer';\nimport {\n AudioStorageUnit,\n AudioUnitDefaultValue,\n VoicePlayerInitialState,\n voicePlayerInitialState,\n} from './dux/initialState';\nimport {\n INITIALIZE_AUDIO_UNIT,\n ON_CURRENT_TIME_UPDATE,\n ON_VOICE_PLAYER_PAUSE,\n ON_VOICE_PLAYER_PLAY,\n SET_CURRENT_PLAYER,\n} from './dux/actionTypes';\nimport {\n VOICE_MESSAGE_FILE_NAME,\n VOICE_MESSAGE_MIME_TYPE,\n VOICE_PLAYER_AUDIO_ID,\n VOICE_PLAYER_ROOT_ID,\n} from '../../utils/consts';\nimport useSendbirdStateContext from '../useSendbirdStateContext';\n\n// VoicePlayerProvider interface\nexport interface VoicePlayerProps {\n children: React.ReactElement;\n}\nexport interface VoicePlayerPlayProps {\n groupKey: string;\n audioFile?: File;\n audioFileUrl?: string;\n}\nexport interface VoicePlayerContext {\n play: (props: VoicePlayerPlayProps) => void;\n pause: (groupKey?: string) => void;\n stop: (text?: string) => void;\n voicePlayerStore: VoicePlayerInitialState;\n}\n\nconst noop = () => { /* noop */ };\nconst VoicePlayerStoreDefaultValue = {\n currentGroupKey: '',\n currentPlayer: null,\n audioStorage: {},\n};\n\nconst VoicePlayerContext = createContext<VoicePlayerContext>({\n play: noop,\n pause: noop,\n stop: noop,\n voicePlayerStore: VoicePlayerStoreDefaultValue,\n});\n\nexport const VoicePlayerProvider = ({\n children,\n}: VoicePlayerProps): React.ReactElement => {\n const [voicePlayerStore, voicePlayerDispatcher] = useReducer(voicePlayerReducer, voicePlayerInitialState);\n const {\n currentGroupKey,\n currentPlayer,\n audioStorage,\n } = voicePlayerStore;\n const { config } = useSendbirdStateContext();\n const { logger } = config;\n\n const stop = (text = '') => {\n if (currentGroupKey.includes(text)) {\n logger.info('VoicePlayer: Pause playing(by text).');\n pause(currentGroupKey);\n }\n };\n\n const pause = (groupKey: string) => {\n if (currentGroupKey === groupKey && currentPlayer !== null) {\n logger.info('VoicePlayer: Pause playing(by group key).');\n currentPlayer?.pause();\n }\n };\n\n const play = ({\n groupKey,\n audioFile = null,\n audioFileUrl = '',\n }: VoicePlayerPlayProps): void => {\n if (groupKey !== currentGroupKey) {\n pause(currentGroupKey);\n }\n\n // Clear the previous AudioPlayer element\n const voicePlayerRoot = document.getElementById(VOICE_PLAYER_ROOT_ID);\n const voicePlayerAudioElement = document.getElementById(VOICE_PLAYER_AUDIO_ID);\n if (voicePlayerAudioElement) {\n voicePlayerRoot.removeChild(voicePlayerAudioElement);\n }\n\n logger.info('VoicePlayer: Start getting audio file.');\n new Promise((resolve) => {\n if (audioFile) {\n resolve(audioFile);\n logger.info('VoicePlayer: Use the audioFile instance.');\n }\n if (audioStorage?.[groupKey]?.audioFile) {\n resolve(audioStorage[groupKey].audioFile);\n logger.info('VoicePlayer: Get from the audioStorage.');\n }\n voicePlayerDispatcher({\n type: INITIALIZE_AUDIO_UNIT,\n payload: { groupKey },\n });\n fetch(audioFileUrl)\n .then((res) => res.blob())\n .then((blob) => {\n const audioFile = new File([blob], VOICE_MESSAGE_FILE_NAME, {\n lastModified: new Date().getTime(),\n type: VOICE_MESSAGE_MIME_TYPE,\n });\n resolve(audioFile);\n logger.info('VoicePlayer: Get the audioFile from URL.');\n });\n }).then((audioFile: File) => {\n logger.info('VoicePlayer: Succeeded getting audio file.', audioFile);\n const currentAudioUnit = audioStorage[groupKey] || AudioUnitDefaultValue() as AudioStorageUnit;\n const audioPlayer = new Audio(URL?.createObjectURL?.(audioFile));\n audioPlayer.id = VOICE_PLAYER_AUDIO_ID;\n audioPlayer.currentTime = currentAudioUnit.playbackTime;\n audioPlayer.volume = 1;\n audioPlayer.loop = false;\n audioPlayer.onplaying = () => {\n logger.info('VoicePlayer: OnPlaying event is called from audioPlayer', { groupKey, audioPlayer });\n voicePlayerDispatcher({\n type: ON_VOICE_PLAYER_PLAY,\n payload: { groupKey, audioFile },\n });\n };\n audioPlayer.onpause = () => {\n logger.info('VoicePlayer: OnPause event is called from audioPlayer', { groupKey, audioPlayer });\n voicePlayerDispatcher({\n type: ON_VOICE_PLAYER_PAUSE,\n payload: { groupKey },\n });\n };\n audioPlayer.ontimeupdate = () => {\n voicePlayerDispatcher({\n type: ON_CURRENT_TIME_UPDATE,\n payload: { groupKey },\n });\n };\n audioPlayer?.play();\n const voicePlayerRoot = document.getElementById(VOICE_PLAYER_ROOT_ID);\n voicePlayerRoot.appendChild(audioPlayer);\n voicePlayerDispatcher({\n type: SET_CURRENT_PLAYER,\n payload: { groupKey, audioPlayer },\n });\n logger.info('VoicePlayer: Succeeded playing audio player.', { groupKey, audioPlayer });\n });\n };\n\n return (\n <VoicePlayerContext.Provider value={{\n play,\n pause,\n stop,\n voicePlayerStore,\n }}>\n <div id={VOICE_PLAYER_ROOT_ID} style={{ display: 'none' }} />\n {children}\n </VoicePlayerContext.Provider>\n );\n};\n\nexport const useVoicePlayerContext = (): VoicePlayerContext => useContext(VoicePlayerContext);\n"],"names":["INITIALIZE_AUDIO_UNIT","SET_CURRENT_PLAYER","ON_VOICE_PLAYER_PLAY","ON_VOICE_PLAYER_PAUSE","ON_CURRENT_TIME_UPDATE","VoicePlayerStatus","IDLE","PREPARING","PLAYING","PAUSED","COMPLETED","AudioUnitDefaultValue","audioFile","playbackTime","duration","playingStatus","voicePlayerInitialState","currentPlayer","currentGroupKey","audioStorage","voicePlayerReducer","state","action","type","groupKey","payload","audioUnit","_e","__assign","_a","_j","audioPlayer","_k","_f","_b","_g","_l","currentTime","_c","_m","_h","_d","noop","VoicePlayerStoreDefaultValue","VoicePlayerContext","createContext","play","pause","stop","voicePlayerStore","VoicePlayerProvider","children","useReducer","voicePlayerDispatcher","config","useSendbirdStateContext","logger","text","includes","info","audioFileUrl","voicePlayerRoot","document","getElementById","VOICE_PLAYER_ROOT_ID","voicePlayerAudioElement","VOICE_PLAYER_AUDIO_ID","removeChild","Promise","resolve","fetch","then","res","blob","File","VOICE_MESSAGE_FILE_NAME","lastModified","Date","getTime","VOICE_MESSAGE_MIME_TYPE","currentAudioUnit","Audio","URL","createObjectURL","id","volume","loop","onplaying","onpause","ontimeupdate","appendChild","React","createElement","Provider","value","style","display","useVoicePlayerContext","useContext"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var tslib_es6 = require('./tslib.es6-
|
|
3
|
+
var tslib_es6 = require('./tslib.es6-b412d11d.js');
|
|
4
4
|
var utils_message_getOutgoingMessageState = require('./utils/message/getOutgoingMessageState.js');
|
|
5
5
|
|
|
6
6
|
// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types
|
|
@@ -12,20 +12,20 @@ var SUPPORTED_MIMES = {
|
|
|
12
12
|
AUDIO: ['audio/aac', 'audio/midi', 'audio/x-midi', 'audio/mpeg', 'audio/ogg', 'audio/opus', 'audio/wav', 'audio/webm', 'audio/3gpp', 'audio/3gpp2', 'audio/mp3']
|
|
13
13
|
};
|
|
14
14
|
var UIKitMessageTypes = {
|
|
15
|
-
ADMIN:
|
|
16
|
-
TEXT:
|
|
17
|
-
FILE:
|
|
18
|
-
THUMBNAIL:
|
|
19
|
-
OG:
|
|
20
|
-
UNKNOWN:
|
|
15
|
+
ADMIN: 'ADMIN',
|
|
16
|
+
TEXT: 'TEXT',
|
|
17
|
+
FILE: 'FILE',
|
|
18
|
+
THUMBNAIL: 'THUMBNAIL',
|
|
19
|
+
OG: 'OG',
|
|
20
|
+
UNKNOWN: 'UNKNOWN'
|
|
21
21
|
};
|
|
22
22
|
var UIKitFileTypes = {
|
|
23
|
-
IMAGE:
|
|
24
|
-
AUDIO:
|
|
25
|
-
VIDEO:
|
|
26
|
-
GIF:
|
|
27
|
-
VOICE:
|
|
28
|
-
OTHERS:
|
|
23
|
+
IMAGE: 'IMAGE',
|
|
24
|
+
AUDIO: 'AUDIO',
|
|
25
|
+
VIDEO: 'VIDEO',
|
|
26
|
+
GIF: 'GIF',
|
|
27
|
+
VOICE: 'VOICE',
|
|
28
|
+
OTHERS: 'OTHERS'
|
|
29
29
|
};
|
|
30
30
|
var SendingMessageStatus = {
|
|
31
31
|
NONE: 'none',
|
|
@@ -646,4 +646,4 @@ exports.isVideo = isVideo;
|
|
|
646
646
|
exports.isVideoMessage = isVideoMessage;
|
|
647
647
|
exports.isVoiceMessage = isVoiceMessage;
|
|
648
648
|
exports.truncateString = truncateString;
|
|
649
|
-
//# sourceMappingURL=index-
|
|
649
|
+
//# sourceMappingURL=index-946fe9b8.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-946fe9b8.js","sources":["../../src/utils/index.ts"],"sourcesContent":["import SendbirdChat, { Emoji, EmojiCategory, EmojiContainer, User } from '@sendbird/chat';\nimport { GroupChannel, Member, SendbirdGroupChat, GroupChannelListQuery } from '@sendbird/chat/groupChannel';\nimport { AdminMessage, FileMessage, MessageListParams, Reaction, UserMessage } from '@sendbird/chat/message';\nimport { OpenChannel, SendbirdOpenChat } from '@sendbird/chat/openChannel';\n\nimport { getOutgoingMessageState, OutgoingMessageStates } from './exports/getOutgoingMessageState';\nimport { EveryMessage } from '../types';\n\n// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types\nconst SUPPORTED_MIMES = {\n IMAGE: [\n 'image/jpeg',\n 'image/jpg',\n 'image/png',\n 'image/gif',\n 'image/svg+xml',\n 'image/webp', // not supported in IE\n ],\n VIDEO: [\n 'video/mpeg',\n 'video/ogg',\n 'video/webm',\n 'video/mp4',\n ],\n AUDIO: [\n 'audio/aac',\n 'audio/midi',\n 'audio/x-midi',\n 'audio/mpeg',\n 'audio/ogg',\n 'audio/opus',\n 'audio/wav',\n 'audio/webm',\n 'audio/3gpp',\n 'audio/3gpp2',\n 'audio/mp3',\n ],\n};\n\nexport interface UIKitMessageTypes {\n ADMIN: 'ADMIN',\n TEXT: 'TEXT',\n FILE: 'FILE',\n THUMBNAIL: 'THUMBNAIL',\n OG: 'OG',\n UNKNOWN: 'UNKNOWN',\n}\nexport const UIKitMessageTypes: UIKitMessageTypes = {\n ADMIN: 'ADMIN',\n TEXT: 'TEXT',\n FILE: 'FILE',\n THUMBNAIL: 'THUMBNAIL',\n OG: 'OG',\n UNKNOWN: 'UNKNOWN',\n};\nexport interface UIKitFileTypes {\n IMAGE: 'IMAGE',\n AUDIO: 'AUDIO',\n VIDEO: 'VIDEO',\n GIF: 'GIF',\n VOICE: 'VOICE',\n OTHERS: 'OTHERS',\n}\nexport const UIKitFileTypes: UIKitFileTypes = {\n IMAGE: 'IMAGE',\n AUDIO: 'AUDIO',\n VIDEO: 'VIDEO',\n GIF: 'GIF',\n VOICE: 'VOICE',\n OTHERS: 'OTHERS',\n};\n\nexport interface SendingMessageStatus {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n}\nconst SendingMessageStatus: SendingMessageStatus = {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n};\n\nexport type CoreMessageType = EveryMessage;\n\nexport const isTextuallyNull = (text: string): boolean => {\n if (text === '' || text === null) {\n return true;\n }\n return false;\n};\n\nexport const isImage = (type: string): boolean => SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;\nexport const isVideo = (type: string): boolean => SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;\nexport const isGif = (type: string): boolean => type === 'image/gif';\nexport const isSupportedFileView = (type: string): boolean => isImage(type) || isVideo(type);\nexport const isAudio = (type: string): boolean => SUPPORTED_MIMES.AUDIO.indexOf(type) >= 0;\n\nexport const getUIKitFileTypes = (): UIKitFileTypes => ({ ...UIKitFileTypes });\nexport const getUIKitFileType = (type: string): string => {\n if (isGif(type)) return UIKitFileTypes.GIF;\n if (isImage(type)) return UIKitFileTypes.IMAGE;\n if (isVideo(type)) return UIKitFileTypes.VIDEO;\n if (isAudio(type)) return UIKitFileTypes.AUDIO;\n return UIKitFileTypes.OTHERS;\n};\n\nexport const isSentMessage = (message: UserMessage | FileMessage): boolean => (message.sendingStatus === 'succeeded');\nexport const isDeliveredMessage = (channel: GroupChannel, message: UserMessage | FileMessage): boolean => (\n getOutgoingMessageState(channel, message) === OutgoingMessageStates.DELIVERED\n || getOutgoingMessageState(channel, message) === OutgoingMessageStates.READ\n);\nexport const isReadMessage = (channel: GroupChannel, message: UserMessage | FileMessage): boolean => (\n getOutgoingMessageState(channel, message) === OutgoingMessageStates.READ\n);\n// TODO: Remove channel from the params, it seems unnecessary\nexport const isFailedMessage = (message: UserMessage | FileMessage): boolean => (message?.sendingStatus === 'failed');\nexport const isPendingMessage = (message: UserMessage | FileMessage): boolean => (message?.sendingStatus === 'pending');\nexport const isSentStatus = (state: string): boolean => (\n state === OutgoingMessageStates.SENT\n || state === OutgoingMessageStates.DELIVERED\n || state === OutgoingMessageStates.READ\n);\n\nexport const isAdminMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => (\n message && (message?.isAdminMessage?.() || (message?.messageType === 'admin'))\n);\nexport const isUserMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => (\n message && (message?.isUserMessage?.() || (message?.messageType === 'user'))\n);\nexport const isFileMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => (\n message && (message?.isFileMessage?.() || (message?.messageType === 'file'))\n);\n\nexport const isOGMessage = (message: UserMessage | FileMessage): boolean => !!(\n message && isUserMessage(message) && message?.ogMetaData && (\n message.ogMetaData?.url\n || message.ogMetaData?.title\n || message.ogMetaData?.description\n || message.ogMetaData?.defaultImage\n )\n);\nexport const isTextMessage = (message: UserMessage | FileMessage): boolean => isUserMessage(message) && !isOGMessage(message);\nexport const isThumbnailMessage = (message: UserMessage | FileMessage): boolean => (\n message && isFileMessage(message) && isSupportedFileView((message as FileMessage).type)\n);\nexport const isImageMessage = (message: FileMessage): boolean => message && isThumbnailMessage(message) && isImage(message.type);\nexport const isVideoMessage = (message: UserMessage | FileMessage): boolean => (\n message && isThumbnailMessage(message) && isVideo((message as FileMessage).type)\n);\nexport const isGifMessage = (message: UserMessage | FileMessage): boolean => (\n message && isThumbnailMessage(message) && isGif((message as FileMessage).type)\n);\nexport const isAudioMessage = (message: FileMessage): boolean => message && isFileMessage(message) && isAudio(message.type);\nexport const isAudioMessageMimeType = (type: string): boolean => (/^audio\\//.test(type));\nexport const isVoiceMessage = (message: FileMessage): boolean => {\n // ex) audio/m4a OR audio/m4a;sbu_type=voice\n if (!(message && isFileMessage(message))) {\n return false;\n }\n const [mimeType, typeParameter] = message.type?.split(';');\n if (!isAudioMessageMimeType(mimeType) || !typeParameter) {\n return false;\n }\n const [key, value] = typeParameter?.split('=');\n if (key === 'sbu_type' && value === 'voice') {\n return true;\n }\n // ex) message.metaArrays = [{ key: 'KEY_INTERNAL_MESSAGE_TYPE', value: ['voice/m4a'] }]\n return isVoiceMessageMimeType(message.metaArrays.find((metaArray) => metaArray.key === 'KEY_INTERNAL_MESSAGE_TYPE')?.value?.[0]);\n};\nexport const isVoiceMessageMimeType = (type: string): boolean => (/^voice\\//.test(type));\n\nexport const isEditedMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => isUserMessage(message) && (message?.updatedAt > 0);\nexport const isEnabledOGMessage = (message: UserMessage): boolean => (\n (!message || !message.ogMetaData || !message.ogMetaData.url) ? false : true\n);\n\nexport const getUIKitMessageTypes = (): UIKitMessageTypes => ({ ...UIKitMessageTypes });\nexport const getUIKitMessageType = (message: UserMessage | FileMessage | AdminMessage): string => {\n if (isAdminMessage(message as AdminMessage)) return UIKitMessageTypes.ADMIN;\n if (isUserMessage(message as UserMessage)) {\n return isOGMessage(message as UserMessage) ? UIKitMessageTypes.OG : UIKitMessageTypes.TEXT;\n }\n if (isFileMessage(message as FileMessage)) {\n if (isThumbnailMessage(message as FileMessage)) {\n return UIKitMessageTypes.THUMBNAIL;\n }\n if (isVoiceMessage(message as FileMessage)) {\n return UIKitFileTypes.VOICE\n }\n return UIKitMessageTypes.FILE;\n }\n return UIKitMessageTypes.UNKNOWN;\n};\nexport const getSendingMessageStatus = (): SendingMessageStatus => ({ ...SendingMessageStatus });\n\nconst reducer = (accumulator: Array<string>, currentValue: string | Array<string>): Array<any> => {\n if (Array.isArray(currentValue)) {\n return [...accumulator, ...currentValue];\n } else {\n accumulator.push(currentValue);\n return accumulator;\n }\n};\nexport const getClassName = (classNames: string | Array<string | Array<string>>): string => (\n Array.isArray(classNames)\n ? classNames.reduce(reducer, []).join(' ')\n : classNames\n);\nexport const isReactedBy = (userId: string, reaction: Reaction): boolean => (\n reaction.userIds.some((reactorUserId: string): boolean => reactorUserId === userId)\n);\ninterface StringSet {\n TOOLTIP__YOU: string;\n TOOLTIP__AND_YOU: string;\n TOOLTIP__UNKNOWN_USER: string;\n}\nexport const getEmojiTooltipString = (reaction: Reaction, userId: string, memberNicknamesMap: Map<string, string>, stringSet: StringSet): string => {\n let you = '';\n if (isReactedBy(userId, reaction)) {\n you = reaction.userIds.length === 1 ? stringSet.TOOLTIP__YOU : stringSet.TOOLTIP__AND_YOU;\n }\n return (`${reaction.userIds\n .filter((reactorUserId: string) => reactorUserId !== userId)\n .map((reactorUserId: string) => (memberNicknamesMap.get(reactorUserId) || stringSet.TOOLTIP__UNKNOWN_USER))\n .join(', ')}${you}`);\n};\n\n// TODO: Use the interface after language tranlsatation of Sendbird.js\ninterface UIKitStore {\n stores: {\n sdkStore: {\n sdk: SendbirdChat | SendbirdOpenChat | SendbirdGroupChat,\n },\n userStore: {\n user: User,\n },\n },\n config: {\n isReactionEnabled: boolean,\n }\n}\nexport const getCurrentUserId = (store: UIKitStore): string => (store?.stores?.userStore?.user?.userId);\nexport const getUseReaction = (store: UIKitStore, channel: GroupChannel | OpenChannel): boolean => {\n if (!store?.config?.isReactionEnabled)\n return false;\n if (!store?.stores?.sdkStore?.sdk?.appInfo?.useReaction)\n return false;\n if (channel?.isGroupChannel())\n return !((channel as GroupChannel).isBroadcast || (channel as GroupChannel).isSuper);\n return store?.config?.isReactionEnabled;\n};\n\nexport const isMessageSentByMe = (userId: string, message: UserMessage | FileMessage): boolean => (\n (userId && message?.sender?.userId) && userId === message.sender.userId\n);\n\nconst URL_REG = /[-a-zA-Z0-9@:%._+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_+.~#?&//=]*)/;\nexport const isUrl = (text: string): boolean => URL_REG.test(text);\nconst MENTION_TAG_REG = /\\@\\{.*?\\}/i;\nexport const isMentionedText = (text: string): boolean => MENTION_TAG_REG.test(text);\n\nexport const truncateString = (fullStr: string, strLen?: number): string => {\n if (!strLen) strLen = 40;\n if (fullStr === null || fullStr === undefined) return '';\n if (fullStr.length <= strLen) return fullStr;\n const separator = '...';\n const sepLen = separator.length;\n const charsToShow = strLen - sepLen;\n const frontChars = Math.ceil(charsToShow / 2);\n const backChars = Math.floor(charsToShow / 2);\n return fullStr.substr(0, frontChars) + separator + fullStr.substr(fullStr.length - backChars);\n};\n\nexport const copyToClipboard = (text: string): boolean => {\n // @ts-ignore: Unreachable code error\n if (window.clipboardData && window.clipboardData.setData) {\n // Internet Explorer-specific code path to prevent textarea being shown while dialog is visible.\n // @ts-ignore: Unreachable code error\n return window.clipboardData.setData('Text', text);\n }\n if (document.queryCommandSupported && document.queryCommandSupported('copy')) {\n const textarea = document.createElement('textarea');\n textarea.textContent = text;\n textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in Microsoft Edge.\n document.body.appendChild(textarea);\n textarea.select();\n try {\n return document.execCommand('copy'); // Security exception may be thrown by some browsers.\n } catch (ex) {\n return false;\n } finally {\n document.body.removeChild(textarea);\n }\n }\n return false;\n};\n\nexport const getEmojiListAll = (emojiContainer: EmojiContainer): Array<Emoji> => (\n emojiContainer?.emojiCategories?.map((emojiCategory: EmojiCategory) => emojiCategory.emojis)\n .reduce((prevArr: Array<Emoji>, currArr: Array<Emoji>) => prevArr.concat(currArr), [])\n);\nexport const getEmojiMapAll = (emojiContainer: EmojiContainer): Map<string, Emoji> => {\n const emojiMap = new Map();\n emojiContainer?.emojiCategories?.forEach((category: EmojiCategory) => {\n category?.emojis?.forEach((emoji: Emoji): void => {\n if (emoji && emoji.key) {\n emojiMap.set(emoji.key, emoji);\n }\n });\n });\n return emojiMap;\n};\n\nexport const getUserName = (user: User): string => (user?.friendName || user?.nickname || user?.userId);\nexport const getSenderName = (message: UserMessage | FileMessage): string => (message?.sender && getUserName(message?.sender));\n\nexport const hasSameMembers = <T>(a: T[], b: T[]): boolean => {\n if (a === b) {\n return true;\n }\n if (a == null || b == null) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n\n const sortedA = [...a].sort();\n const sortedB = [...b].sort();\n\n for (let i = 0; i < sortedA.length; ++i) {\n if (sortedA[i] !== sortedB[i]) {\n return false;\n }\n }\n return true;\n}\nexport const isFriend = (user: User): boolean => !!(user.friendDiscoveryKey || user.friendName);\n\nexport const filterMessageListParams = (params: MessageListParams, message: UserMessage | FileMessage): boolean => {\n // @ts-ignore\n if (params?.messageTypeFilter && params.messageTypeFilter !== message.messageType) {\n return false;\n }\n if (params?.customTypesFilter?.length > 0) {\n const customTypes = params.customTypesFilter.filter((item) => item !== '*');\n // Because Chat SDK inserts '*' when customTypes is empty\n if (customTypes.length > 0 && !customTypes.includes(message.customType)) {\n return false;\n }\n }\n if (params?.senderUserIdsFilter && params?.senderUserIdsFilter?.length > 0) {\n if (message?.isUserMessage?.() || message?.isFileMessage?.()) {\n const messageSender = (message as UserMessage | FileMessage).sender || message['_sender'];\n if (!params?.senderUserIdsFilter?.includes(messageSender?.userId)) {\n return false;\n }\n } else {\n return false;\n }\n }\n if (!params?.includeParentMessageInfo && (message?.parentMessageId || message?.parentMessage)) {\n return false;\n }\n return true;\n};\n\nexport const filterChannelListParams = (params: GroupChannelListQuery, channel: GroupChannel, currentUserId: string): boolean => {\n if (!params?.includeEmpty && channel?.lastMessage === null) {\n return false;\n }\n const searchFilter = params?.searchFilter;\n if (searchFilter?.query && searchFilter.fields?.length > 0) {\n const searchQuery = searchFilter.query;\n const searchFields = searchFilter.fields;\n if (searchQuery && searchFields && searchFields.length > 0) {\n if (!searchFields.some((searchField) => {\n switch (searchField) {\n case 'channel_name': {\n return channel?.name?.toLowerCase().includes(searchQuery.toLowerCase());\n }\n case 'member_nickname': {\n return channel?.members?.some((member: Member) => member.nickname.toLowerCase().includes(searchQuery.toLowerCase()));\n }\n default: {\n return true;\n }\n }\n })) {\n return false;\n }\n }\n }\n const userIdsFilter = params?.userIdsFilter;\n if (userIdsFilter?.userIds?.length > 0) {\n const { includeMode, queryType } = userIdsFilter;\n const userIds: string[] = userIdsFilter.userIds;\n const memberIds = channel?.members?.map((member: Member) => member.userId);\n if (!includeMode) { // exact match\n if (!userIds.includes(currentUserId)) {\n userIds.push(currentUserId); // add the caller's userId if not added already.\n }\n if (channel?.members?.length > userIds.length) {\n return false; // userIds may contain one or more non-member(s).\n }\n if (!hasSameMembers(userIds, memberIds)) {\n return false;\n }\n } else if (userIds.length > 0) { // inclusive\n switch (queryType) {\n case 'AND': {\n if (userIds.some((userId: string) => !memberIds.includes(userId))) {\n return false;\n }\n break;\n }\n case 'OR': {\n if (userIds.every((userId: string) => !memberIds.includes(userId))) {\n return false;\n }\n break;\n }\n default: {\n break;\n }\n }\n }\n }\n if (params?.includeEmpty === false && channel?.lastMessage === null) {\n return false;\n }\n if (params?.includeFrozen === false && channel?.isFrozen === true) {\n return false;\n }\n if (params?.customTypesFilter?.length > 0 && !params.customTypesFilter.includes(channel?.customType)) {\n return false;\n }\n if (params?.customTypeStartsWithFilter && !new RegExp(`^${params.customTypeStartsWithFilter}`).test(channel?.customType)) {\n return false;\n }\n if (params?.channelNameContainsFilter && !channel?.name?.toLowerCase().includes(params.channelNameContainsFilter.toLowerCase())) {\n return false;\n }\n if (params?.nicknameContainsFilter) {\n const lowerCasedSubString = params.nicknameContainsFilter.toLowerCase();\n if (channel?.members?.every((member: Member) => !member.nickname.toLowerCase().includes(lowerCasedSubString))) {\n return false;\n }\n }\n if (params?.channelUrlsFilter?.length > 0 && !params.channelUrlsFilter.includes(channel?.url)) {\n return false;\n }\n if (params?.myMemberStateFilter) {\n switch (params.myMemberStateFilter) {\n case 'joined_only':\n if (channel?.myMemberState !== 'joined') {\n return false;\n }\n break;\n case 'invited_only':\n if (channel?.myMemberState !== 'invited') {\n return false;\n }\n break;\n case 'invited_by_friend':\n if (channel?.myMemberState !== 'invited' || !isFriend(channel?.inviter)) {\n return false;\n }\n break;\n case 'invited_by_non_friend':\n if (channel?.myMemberState !== 'invited' || isFriend(channel?.inviter)) {\n return false;\n }\n break;\n }\n }\n if (params?.hiddenChannelFilter) {\n switch (params.hiddenChannelFilter) {\n case 'unhidden_only':\n if (channel?.isHidden || channel?.hiddenState !== 'unhidden') {\n return false;\n }\n break;\n case 'hidden_only':\n if (!channel?.isHidden) {\n return false;\n }\n break;\n case 'hidden_allow_auto_unhide':\n if (!channel?.isHidden || channel?.hiddenState !== 'hidden_allow_auto_unhide') {\n return false;\n }\n break;\n case 'hidden_prevent_auto_unhide':\n if (!channel?.isHidden || channel?.hiddenState !== 'hidden_prevent_auto_unhide') {\n return false;\n }\n break;\n }\n }\n if (params?.unreadChannelFilter) {\n switch (params.unreadChannelFilter) {\n case 'unread_message':\n if (channel?.unreadMessageCount === 0) {\n return false;\n }\n break;\n }\n }\n if (params?.publicChannelFilter) {\n switch (params.publicChannelFilter) {\n case 'public':\n if (!channel?.isPublic) {\n return false;\n }\n break;\n case 'private':\n if (channel?.isPublic) {\n return false;\n }\n break;\n }\n }\n if (params?.superChannelFilter) {\n switch (params.superChannelFilter) {\n case 'super':\n if (!channel?.isSuper) {\n return false;\n }\n break;\n case 'nonsuper':\n if (channel?.isSuper) {\n return false;\n }\n break;\n }\n }\n return true;\n};\n\nexport const binarySearch = (list: Array<number>, number: number): number => { // [100, 99, 98, 97, ...]\n const pivot = Math.floor(list.length / 2);\n if (list[pivot] === number) {\n return pivot;\n }\n const leftList = list.slice(0, pivot);\n const rightList = list.slice(pivot + 1, list.length);\n if (list[pivot] > number) {\n return pivot + 1 + (rightList.length === 0 ? 0 : binarySearch(rightList, number));\n } else {\n return (leftList.length === 0) ? pivot : binarySearch(leftList, number);\n }\n};\n// This is required when channel is displayed on channel list by filter\nexport const getChannelsWithUpsertedChannel = (channels: Array<GroupChannel>, channel: GroupChannel): Array<GroupChannel> => {\n if (channels.some((ch: GroupChannel) => ch.url === channel?.url)) {\n return channels.map((ch: GroupChannel) => (ch.url === channel?.url ? channel : ch));\n }\n const targetIndex = binarySearch(\n channels.map((channel: GroupChannel) => channel?.lastMessage?.createdAt || channel?.createdAt),\n channel?.lastMessage?.createdAt || channel?.createdAt,\n );\n return [...channels.slice(0, targetIndex), channel, ...channels.slice(targetIndex, channels.length)];\n};\n\nexport const getMatchedUserIds = (word: string, users: Array<User>, _template?: string): boolean => {\n const template = _template || '@'; // Use global variable\n // const matchedUserIds = [];\n // users.map((user) => user?.userId).forEach((userId) => {\n // if (word.indexOf(`${template}{${userId}}`) > -1) {\n // matchedUserIds.push(userId);\n // }\n // });\n // return matchedUserIds;\n return users.map((user) => user?.userId).some((userId) => word.indexOf(`${template}{${userId}}`) > -1);\n};\n\nexport enum StringObjType {\n normal = 'normal',\n mention = 'mention',\n url = 'url',\n}\nexport interface StringObj {\n type: StringObjType;\n value: string;\n userId?: string;\n}\n\n/**\n * @deprecated\n * use smart-components/message/utils/tokenize instead\n */\nexport const convertWordToStringObj = (word: string, _users: Array<User>, _template?: string): Array<StringObj> => {\n const users = _users || [];\n const template = _template || '@'; // Use global variable\n const resultArray = [];\n const regex = RegExp(`${template}{(${users.map((user) => user?.userId).join('|')})}`, 'g');\n let excutionResult;\n let lastIndex = 0;\n while ((excutionResult = regex.exec(word)) !== null) {\n const [template, userId] = excutionResult;\n const endIndex = regex.lastIndex;\n const startIndex = endIndex - template.length;\n // Normal text\n const normalText = word.slice(lastIndex, startIndex);\n resultArray.push({\n type: isUrl(normalText) ? StringObjType.url : StringObjType.normal,\n value: normalText,\n });\n // Mention template\n const mentionedUser = users.find((user) => user?.userId === userId);\n if (!mentionedUser) {\n resultArray.push({\n type: StringObjType.normal,\n value: template, // because template is the origin text\n });\n } else {\n resultArray.push({\n type: StringObjType.mention,\n value: mentionedUser?.nickname || '(No name)',\n userId: userId,\n });\n }\n lastIndex = endIndex;\n }\n if (lastIndex < word.length) {\n // Normal text\n const normalText = word.slice(lastIndex);\n resultArray.push({\n type: isUrl(normalText) ? StringObjType.url : StringObjType.normal,\n value: normalText,\n });\n }\n return resultArray;\n};\n\nexport const arrayEqual = (array1: Array<unknown>, array2: Array<unknown>): boolean => {\n if (Array.isArray(array1) && Array.isArray(array2) && array1.length === array2.length) {\n for (let i = 0; i < array1.length; i++) {\n if (array1[i] !== array2[i]) {\n return false;\n }\n }\n return true;\n }\n return false;\n};\n"],"names":["SUPPORTED_MIMES","IMAGE","VIDEO","AUDIO","UIKitMessageTypes","ADMIN","TEXT","FILE","THUMBNAIL","OG","UNKNOWN","UIKitFileTypes","GIF","VOICE","OTHERS","SendingMessageStatus","NONE","SUCCEEDED","FAILED","PENDING","isTextuallyNull","text","isImage","type","indexOf","isVideo","isGif","isSupportedFileView","isAudio","getUIKitFileTypes","__assign","getUIKitFileType","isSentMessage","message","sendingStatus","isReadMessage","channel","getOutgoingMessageState","OutgoingMessageStates","READ","isFailedMessage","isPendingMessage","isSentStatus","state","SENT","DELIVERED","isAdminMessage","_a","call","messageType","isUserMessage","isFileMessage","isOGMessage","ogMetaData","url","_b","title","_c","description","_d","defaultImage","isTextMessage","isThumbnailMessage","isImageMessage","isVideoMessage","isGifMessage","isAudioMessage","isAudioMessageMimeType","test","isVoiceMessage","split","mimeType","typeParameter","_e","key","value","isVoiceMessageMimeType","metaArrays","find","metaArray","isEditedMessage","updatedAt","getUIKitMessageTypes","getUIKitMessageType","getSendingMessageStatus","reducer","accumulator","currentValue","Array","isArray","__spreadArray","push","getClassName","classNames","reduce","join","isReactedBy","userId","reaction","userIds","some","reactorUserId","getEmojiTooltipString","memberNicknamesMap","stringSet","you","length","TOOLTIP__YOU","TOOLTIP__AND_YOU","concat","filter","map","get","TOOLTIP__UNKNOWN_USER","URL_REG","isUrl","truncateString","fullStr","strLen","undefined","separator","sepLen","charsToShow","frontChars","Math","ceil","backChars","floor","substr","copyToClipboard","window","clipboardData","setData","document","queryCommandSupported","textarea","createElement","textContent","style","position","body","appendChild","select","execCommand","ex","removeChild","getEmojiListAll","emojiContainer","emojiCategories","emojiCategory","emojis","prevArr","currArr","getEmojiMapAll","emojiMap","Map","forEach","category","emoji","set","getUserName","user","friendName","nickname","getSenderName","sender","hasSameMembers","a","b","sortedA","sort","sortedB","i","isFriend","friendDiscoveryKey","filterMessageListParams","params","messageTypeFilter","customTypesFilter","customTypes","item","includes","customType","senderUserIdsFilter","messageSender","includeParentMessageInfo","parentMessageId","parentMessage","filterChannelListParams","currentUserId","includeEmpty","lastMessage","searchFilter","query","fields","searchQuery_1","searchFields","searchField","name","toLowerCase","members","member","userIdsFilter","includeMode","queryType","memberIds_1","every","includeFrozen","isFrozen","customTypeStartsWithFilter","RegExp","channelNameContainsFilter","_f","nicknameContainsFilter","lowerCasedSubString_1","_g","_h","channelUrlsFilter","myMemberStateFilter","myMemberState","inviter","hiddenChannelFilter","isHidden","hiddenState","unreadChannelFilter","unreadMessageCount","publicChannelFilter","isPublic","superChannelFilter","isSuper","binarySearch","list","number","pivot","leftList","slice","rightList","getChannelsWithUpsertedChannel","channels","ch","targetIndex","createdAt","StringObjType","convertWordToStringObj","word","_users","_template","users","template","resultArray","regex","excutionResult","lastIndex","template_1","endIndex","startIndex","normalText","normal","mentionedUser","mention","exec","arrayEqual","array1","array2"],"mappings":"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"}
|
|
@@ -5,9 +5,9 @@ var ui_PlaybackTime = require('./ui/PlaybackTime.js');
|
|
|
5
5
|
var ui_ProgressBar = require('./ui/ProgressBar.js');
|
|
6
6
|
var ui_TextButton = require('./ui/TextButton.js');
|
|
7
7
|
var ui_Icon = require('./ui/Icon.js');
|
|
8
|
-
var ui_Label = require('./index-
|
|
9
|
-
var LocalizationContext = require('./LocalizationContext-
|
|
10
|
-
var consts = require('./consts-
|
|
8
|
+
var ui_Label = require('./index-6295003c.js');
|
|
9
|
+
var LocalizationContext = require('./LocalizationContext-4c1a8e44.js');
|
|
10
|
+
var consts = require('./consts-82dce75d.js');
|
|
11
11
|
|
|
12
12
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
13
13
|
|
|
@@ -159,4 +159,4 @@ var VoiceMessageInput = function (_a) {
|
|
|
159
159
|
|
|
160
160
|
exports.VoiceMessageInput = VoiceMessageInput;
|
|
161
161
|
exports.VoiceMessageInputStatus = VoiceMessageInputStatus;
|
|
162
|
-
//# sourceMappingURL=index-
|
|
162
|
+
//# sourceMappingURL=index-a9a828c4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-a9a828c4.js","sources":["../../src/ui/VoiceMessageInput/types.ts","../../src/ui/VoiceMessageInput/controlerIcons.tsx","../../src/ui/VoiceMessageInput/index.tsx"],"sourcesContent":["export 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","_a","inputState","React","createElement","className","Icon","width","height","type","IconTypes","PLAY","fillColor","IconColors","ON_BACKGROUND_1","VoiceMessageInput","_b","minRecordTime","VOICE_RECORDER_DEFAULT_MIN","maximumValue","_c","currentValue","currentType","onCancelClick","onControlClick","onSubmitClick","renderCancelButton","renderControlButton","renderSubmitButton","_d","useState","lastClickTime","setLastClickTime","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","concat","SEND","ON_BACKGROUND_4","CONTENT"],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
var consts = require('./consts-82dce75d.js');
|
|
5
|
+
|
|
6
|
+
function calcScrollBottom(scrollHeight, scrollTop) {
|
|
7
|
+
return scrollHeight - scrollTop;
|
|
8
|
+
}
|
|
9
|
+
function useHandleOnScrollCallback(_a) {
|
|
10
|
+
var hasMore = _a.hasMore,
|
|
11
|
+
onScroll = _a.onScroll,
|
|
12
|
+
scrollRef = _a.scrollRef,
|
|
13
|
+
setShowScrollDownButton = _a.setShowScrollDownButton;
|
|
14
|
+
return React.useCallback(function () {
|
|
15
|
+
var element = scrollRef.current;
|
|
16
|
+
var scrollTop = element.scrollTop,
|
|
17
|
+
scrollHeight = element.scrollHeight,
|
|
18
|
+
clientHeight = element.clientHeight;
|
|
19
|
+
// https://sendbird.atlassian.net/browse/SBISSUE-11759
|
|
20
|
+
// the edge case where channel is inside a page that already has scroll
|
|
21
|
+
// scrollintoView will move the whole page, which we dont want
|
|
22
|
+
var scrollBottom = calcScrollBottom(scrollHeight, scrollTop);
|
|
23
|
+
// even if there is more to fetch or not,
|
|
24
|
+
// we still have to show the scroll to bottom button
|
|
25
|
+
if (typeof setShowScrollDownButton === 'function') {
|
|
26
|
+
setShowScrollDownButton(scrollHeight > scrollTop + clientHeight + 1);
|
|
27
|
+
}
|
|
28
|
+
if (!hasMore) {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
if (scrollTop < consts.SCROLL_BUFFER) {
|
|
32
|
+
onScroll(function () {
|
|
33
|
+
// sets the scroll position to the bottom of the new messages
|
|
34
|
+
scrollRef.current.scrollTop = scrollRef.current.scrollHeight - scrollBottom;
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
}, [setShowScrollDownButton, hasMore, onScroll, scrollRef]);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
exports.useHandleOnScrollCallback = useHandleOnScrollCallback;
|
|
41
|
+
//# sourceMappingURL=index-bddcf750.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-bddcf750.js","sources":["../../src/hooks/useHandleOnScrollCallback/index.ts"],"sourcesContent":["import React, { useCallback } from 'react';\nimport { SCROLL_BUFFER } from '../../utils/consts';\n\nexport interface UseHandleOnScrollCallbackProps {\n hasMore: boolean;\n onScroll(fn: () => void): void;\n scrollRef: React.RefObject<HTMLDivElement>;\n setShowScrollDownButton?: React.Dispatch<React.SetStateAction<boolean>>;\n}\n\nexport function calcScrollBottom(scrollHeight: number, scrollTop: number): number {\n return scrollHeight - scrollTop\n}\n\nexport function useHandleOnScrollCallback({\n hasMore,\n onScroll,\n scrollRef,\n setShowScrollDownButton,\n}: UseHandleOnScrollCallbackProps): () => void {\n return useCallback(() => {\n const element = scrollRef.current;\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n } = element;\n // https://sendbird.atlassian.net/browse/SBISSUE-11759\n // the edge case where channel is inside a page that already has scroll\n // scrollintoView will move the whole page, which we dont want\n const scrollBottom = calcScrollBottom(scrollHeight, scrollTop);\n // even if there is more to fetch or not,\n // we still have to show the scroll to bottom button\n if (typeof setShowScrollDownButton === 'function') {\n setShowScrollDownButton(scrollHeight > scrollTop + clientHeight + 1)\n }\n if (!hasMore) {\n return;\n }\n if (scrollTop < SCROLL_BUFFER) {\n onScroll(() => {\n // sets the scroll position to the bottom of the new messages\n scrollRef.current.scrollTop = scrollRef.current.scrollHeight - scrollBottom;\n });\n }\n }, [\n setShowScrollDownButton,\n hasMore,\n onScroll,\n scrollRef,\n ]);\n}\n"],"names":["calcScrollBottom","scrollHeight","scrollTop","useHandleOnScrollCallback","_a","hasMore","onScroll","scrollRef","setShowScrollDownButton","useCallback","element","current","clientHeight","scrollBottom","SCROLL_BUFFER"],"mappings":";;;;;AAUgB,SAAAA,gBAAgBA,CAACC,YAAoB,EAAEC,SAAiB,EAAA;EACtE,OAAOD,YAAY,GAAGC,SAAS,CAAA;AACjC,CAAA;AAEM,SAAUC,yBAAyBA,CAACC,EAKT,EAAA;MAJ/BC,OAAO,GAAAD,EAAA,CAAAC,OAAA;IACPC,QAAQ,GAAAF,EAAA,CAAAE,QAAA;IACRC,SAAS,GAAAH,EAAA,CAAAG,SAAA;IACTC,uBAAuB,GAAAJ,EAAA,CAAAI,uBAAA,CAAA;EAEvB,OAAOC,iBAAW,CAAC,YAAA;AACjB,IAAA,IAAMC,OAAO,GAAGH,SAAS,CAACI,OAAO,CAAA;AAE/B,IAAA,IAAAT,SAAS,GAGPQ,OAAO,CAAAR,SAHA;MACTD,YAAY,GAEVS,OAAO,CAAAT,YAFG;MACZW,YAAY,GACVF,OAAO,aADG,CAAA;AAEd;AACA;AACA;AACA,IAAA,IAAMG,YAAY,GAAGb,gBAAgB,CAACC,YAAY,EAAEC,SAAS,CAAC,CAAA;AAC9D;AACA;AACA,IAAA,IAAI,OAAOM,uBAAuB,KAAK,UAAU,EAAE;MACjDA,uBAAuB,CAACP,YAAY,GAAGC,SAAS,GAAGU,YAAY,GAAG,CAAC,CAAC,CAAA;AACrE,KAAA;IACD,IAAI,CAACP,OAAO,EAAE;AACZ,MAAA,OAAA;AACD,KAAA;IACD,IAAIH,SAAS,GAAGY,oBAAa,EAAE;AAC7BR,MAAAA,QAAQ,CAAC,YAAA;AACP;QACAC,SAAS,CAACI,OAAO,CAACT,SAAS,GAAGK,SAAS,CAACI,OAAO,CAACV,YAAY,GAAGY,YAAY,CAAA;AAC7E,OAAC,CAAC,CAAA;AACH,KAAA;GACF,EAAE,CACDL,uBAAuB,EACvBH,OAAO,EACPC,QAAQ,EACRC,SAAS,CACV,CAAC,CAAA;AACJ;;;;"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var tslib_es6 = require('./tslib.es6-
|
|
3
|
+
var tslib_es6 = require('./tslib.es6-b412d11d.js');
|
|
4
4
|
var React = require('react');
|
|
5
|
-
var index$1 = require('./index-
|
|
5
|
+
var index$1 = require('./index-450c5c4a.js');
|
|
6
6
|
var ui_Icon = require('./ui/Icon.js');
|
|
7
|
-
var ui_Label = require('./index-
|
|
7
|
+
var ui_Label = require('./index-6295003c.js');
|
|
8
8
|
var ui_Loader = require('./ui/Loader.js');
|
|
9
|
-
var index$2 = require('./index-
|
|
9
|
+
var index$2 = require('./index-946fe9b8.js');
|
|
10
10
|
var utils_message_getOutgoingMessageState = require('./utils/message/getOutgoingMessageState.js');
|
|
11
|
-
var index = require('./index-
|
|
12
|
-
var LocalizationContext = require('./LocalizationContext-
|
|
11
|
+
var index = require('./index-6253d289.js');
|
|
12
|
+
var LocalizationContext = require('./LocalizationContext-4c1a8e44.js');
|
|
13
13
|
|
|
14
14
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
15
15
|
|
|
@@ -135,4 +135,4 @@ exports.getChannelUnreadMessageCount = getChannelUnreadMessageCount;
|
|
|
135
135
|
exports.getLastMessage = getLastMessage;
|
|
136
136
|
exports.getLastMessageCreatedAt = getLastMessageCreatedAt;
|
|
137
137
|
exports.getTotalMembers = getTotalMembers;
|
|
138
|
-
//# sourceMappingURL=index-
|
|
138
|
+
//# sourceMappingURL=index-cc5b51fb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-cc5b51fb.js","sources":["../../src/smart-components/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\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 '../../smart-components/ChannelList/components/ChannelPreview/utils';\nimport { useLocalization } from '../../lib/LocalizationContext';\n\nexport const MessageStatusTypes = OutgoingMessageStates;\n\ninterface MessageStatusProps {\n className?: string;\n message: UserMessage | FileMessage;\n channel: 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","_a","className","_e","isDateSeparatorConsidered","_f","useLocalization","dateLocale","status","getOutgoingMessageState","hideMessageStatusIcon","_d","isGroupChannel","call","isSuper","isPublic","isBroadcast","PENDING","FAILED","iconType","_b","SENT","IconTypes","DONE","DELIVERED","DONE_ALL","READ","ERROR","iconColor","_c","IconColors","React","createElement","__spreadArray","Array","isArray","Loader","width","height","Icon","type","SPINNER","fillColor","PRIMARY","concat","isSentStatus","Label","LabelTypography","CAPTION_3","color","LabelColors","ONBACKGROUND_2"],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var React = require('react');
|
|
4
4
|
var ui_ContextMenu = require('./ui/ContextMenu.js');
|
|
5
5
|
var useSendbirdStateContext = require('./useSendbirdStateContext.js');
|
|
6
|
-
var LocalizationContext = require('./LocalizationContext-
|
|
6
|
+
var LocalizationContext = require('./LocalizationContext-4c1a8e44.js');
|
|
7
7
|
|
|
8
8
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
9
9
|
|
|
@@ -189,4 +189,4 @@ exports.isFineDelete = isFineDelete;
|
|
|
189
189
|
exports.isFineEdit = isFineEdit;
|
|
190
190
|
exports.isFineResend = isFineResend;
|
|
191
191
|
exports.showMenuTrigger = showMenuTrigger;
|
|
192
|
-
//# sourceMappingURL=index-
|
|
192
|
+
//# sourceMappingURL=index-d217a491.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-d217a491.js","sources":["../../src/utils/openChannelUtils.ts","../../src/ui/OpenChannelMobileMenu/index.tsx"],"sourcesContent":["import type { User } from '@sendbird/chat';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nconst OpenChannelMessageStatusTypes = {\n NONE: 'none',\n PENDING: 'pending',\n FAILED: 'failed',\n CANCELED: 'canceled',\n SUCCEEDED: 'succeeded',\n};\n\nexport const getSenderFromMessage = (message: UserMessage | FileMessage): User => {\n // @ts-ignore\n return message.sender || message._sender;\n};\n\nexport const checkIsSent = (status: string): boolean => (status === OpenChannelMessageStatusTypes.SUCCEEDED);\nexport const checkIsPending = (status: string): boolean => (status === OpenChannelMessageStatusTypes.PENDING);\nexport const checkIsFailed = (status: string): boolean => (status === OpenChannelMessageStatusTypes.FAILED);\n\nexport const checkIsByMe = (message: UserMessage | FileMessage, userId: string): boolean => (getSenderFromMessage(message).userId === userId);\n\ninterface isFineCopyParams {\n message: UserMessage;\n status: string;\n userId: string;\n}\nexport const isFineCopy = ({ message }: isFineCopyParams): boolean => {\n return (message?.messageType === 'user' && message?.message?.length > 0);\n};\n\ninterface isFineResendParams {\n message: UserMessage | FileMessage;\n status: string;\n userId: string;\n}\nexport const isFineResend = ({ message, status, userId }: isFineResendParams): boolean => {\n return checkIsByMe(message, userId)\n && checkIsFailed(status)\n // @ts-ignore\n && message?.isResendable();\n};\n\ninterface isFineEditParams {\n message: UserMessage | FileMessage;\n status: string;\n userId: string;\n}\nexport const isFineEdit = ({ message, status, userId }: isFineEditParams): boolean => {\n return checkIsByMe(message, userId) && checkIsSent(status) && message?.isUserMessage?.();\n};\n\ninterface isFineDeleteParams {\n message: UserMessage | FileMessage;\n status: string;\n userId: string;\n}\nexport const isFineDelete = ({ message, userId }: isFineDeleteParams): boolean => {\n return checkIsByMe(message, userId);\n};\n\ninterface IsFineDownloadParams {\n message: FileMessage | UserMessage;\n status: string;\n}\n\nexport const isFineDownload = ({ message, status }: IsFineDownloadParams): boolean => {\n if (message?.isFileMessage?.() && checkIsSent(status)) {\n return true;\n }\n return false;\n};\n\ninterface showMenuTriggerParams {\n message: UserMessage | FileMessage;\n status: string;\n userId: string;\n}\nexport const showMenuTrigger = (props: showMenuTriggerParams): boolean => {\n const { message, status, userId } = props;\n // @ts-ignore\n if (message.messageType === 'user') {\n return (\n isFineDelete({ message, status, userId })\n || isFineEdit({ message, status, userId })\n // @ts-ignore\n || isFineCopy({ message, status, userId })\n || isFineResend({ message, status, userId })\n );\n } else {\n return (\n isFineDelete({ message, status, userId })\n || isFineResend({ message, status, userId })\n );\n }\n};\n","import './open-channel-mobile-menu.scss';\n\nimport React from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport ContextMenu, { MenuItems, MenuItem } from '../ContextMenu';\nimport {\n isFineDelete,\n isFineResend,\n isFineCopy,\n isFineEdit,\n isFineDownload,\n} from '../../utils/openChannelUtils';\nimport useSendbirdStateContext from '../../hooks/useSendbirdStateContext';\nimport { useLocalization } from '../../lib/LocalizationContext';\n\ntype Props = {\n message: UserMessage | FileMessage;\n parentRef: React.RefObject<HTMLDivElement>;\n resendMessage?(): void;\n showRemove?(): void;\n copyToClipboard?(): void;\n showEdit?(): void;\n hideMenu(): void;\n isEphemeral?: boolean;\n};\n\nconst OpenChannelMobileMenu: React.FC<Props> = (props: Props) => {\n const {\n message,\n parentRef,\n resendMessage,\n showEdit,\n showRemove,\n copyToClipboard,\n hideMenu,\n isEphemeral = false,\n } = props;\n const userMessage = message as UserMessage;\n const status = message?.sendingStatus;\n const { stringSet } = useLocalization();\n const userId = useSendbirdStateContext()?.config?.userId;\n const fileMessage = message as FileMessage;\n return (\n <ContextMenu\n isOpen\n menuItems={() => (\n <MenuItems\n className=\"sendbird-openchannel__mobile-menu\"\n parentRef={parentRef}\n parentContainRef={parentRef}\n closeDropdown={hideMenu}\n >\n {\n isFineCopy({ message: userMessage, userId, status }) && (\n <MenuItem\n className=\"sendbird-openchannel-og-message__top__context-menu__copy\"\n onClick={() => {\n copyToClipboard();\n }}\n >\n <>{stringSet.CONTEXT_MENU_DROPDOWN__COPY}</>\n </MenuItem>\n )\n }\n {\n (!isEphemeral && isFineEdit({ message, userId, status })) && (\n <MenuItem\n className=\"sendbird-openchannel-og-message__top__context-menu__edit\"\n onClick={() => {\n showEdit();\n }}\n >\n <>{stringSet.CONTEXT_MENU_DROPDOWN__EDIT}</>\n </MenuItem>\n )\n }\n {\n isFineResend({ message, userId, status }) && (\n <MenuItem\n onClick={() => {\n resendMessage();\n }}\n >\n <>{stringSet.CONTEXT_MENU_DROPDOWN__RESEND}</>\n </MenuItem>\n )\n }\n {\n (!isEphemeral && isFineDelete({ message, userId, status })) && (\n <MenuItem\n onClick={() => {\n showRemove();\n }}\n >\n <>{stringSet.CONTEXT_MENU_DROPDOWN__DELETE}</>\n </MenuItem>\n )\n }\n {\n isFineDownload({ message, status }) && (\n <MenuItem\n onClick={() => {\n hideMenu();\n }}\n >\n <a\n className=\"sendbird-openchannel__mobile-menu-hyperlink\"\n rel=\"noopener noreferrer\"\n href={fileMessage?.url}\n target=\"_blank\"\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__SAVE}\n </a>\n </MenuItem>\n )\n }\n </MenuItems>\n )\n }/>\n )\n}\n\nexport default OpenChannelMobileMenu;\n"],"names":["OpenChannelMessageStatusTypes","NONE","PENDING","FAILED","CANCELED","SUCCEEDED","getSenderFromMessage","message","sender","_sender","checkIsSent","status","checkIsPending","checkIsFailed","checkIsByMe","userId","isFineCopy","_a","messageType","_b","length","isFineResend","isResendable","isFineEdit","isUserMessage","call","isFineDelete","isFineDownload","isFileMessage","showMenuTrigger","props","OpenChannelMobileMenu","parentRef","resendMessage","showEdit","showRemove","copyToClipboard","hideMenu","_c","isEphemeral","userMessage","sendingStatus","stringSet","useLocalization","useSendbirdStateContext","config","fileMessage","React","createElement","ContextMenu","isOpen","menuItems","MenuItems","className","parentContainRef","closeDropdown","MenuItem","onClick","Fragment","CONTEXT_MENU_DROPDOWN__COPY","CONTEXT_MENU_DROPDOWN__EDIT","CONTEXT_MENU_DROPDOWN__RESEND","CONTEXT_MENU_DROPDOWN__DELETE","rel","href","url","target","CONTEXT_MENU_DROPDOWN__SAVE"],"mappings":"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"}
|
|
@@ -63,9 +63,11 @@ var formatDistanceLocale = {
|
|
|
63
63
|
other: 'almost {{count}} years'
|
|
64
64
|
}
|
|
65
65
|
};
|
|
66
|
+
|
|
66
67
|
var formatDistance = function formatDistance(token, count, options) {
|
|
67
68
|
var result;
|
|
68
69
|
var tokenValue = formatDistanceLocale[token];
|
|
70
|
+
|
|
69
71
|
if (typeof tokenValue === 'string') {
|
|
70
72
|
result = tokenValue;
|
|
71
73
|
} else if (count === 1) {
|
|
@@ -73,6 +75,7 @@ var formatDistance = function formatDistance(token, count, options) {
|
|
|
73
75
|
} else {
|
|
74
76
|
result = tokenValue.other.replace('{{count}}', count.toString());
|
|
75
77
|
}
|
|
78
|
+
|
|
76
79
|
if (options !== null && options !== void 0 && options.addSuffix) {
|
|
77
80
|
if (options.comparison && options.comparison > 0) {
|
|
78
81
|
return 'in ' + result;
|
|
@@ -80,6 +83,7 @@ var formatDistance = function formatDistance(token, count, options) {
|
|
|
80
83
|
return result + ' ago';
|
|
81
84
|
}
|
|
82
85
|
}
|
|
86
|
+
|
|
83
87
|
return result;
|
|
84
88
|
};
|
|
85
89
|
|
|
@@ -134,6 +138,7 @@ var formatRelativeLocale = {
|
|
|
134
138
|
nextWeek: "eeee 'at' p",
|
|
135
139
|
other: 'P'
|
|
136
140
|
};
|
|
141
|
+
|
|
137
142
|
var formatRelative = function formatRelative(token, _date, _baseDate, _options) {
|
|
138
143
|
return formatRelativeLocale[token];
|
|
139
144
|
};
|
|
@@ -142,15 +147,19 @@ function buildLocalizeFn(args) {
|
|
|
142
147
|
return function (dirtyIndex, options) {
|
|
143
148
|
var context = options !== null && options !== void 0 && options.context ? String(options.context) : 'standalone';
|
|
144
149
|
var valuesArray;
|
|
150
|
+
|
|
145
151
|
if (context === 'formatting' && args.formattingValues) {
|
|
146
152
|
var defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
|
|
147
153
|
var width = options !== null && options !== void 0 && options.width ? String(options.width) : defaultWidth;
|
|
148
154
|
valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
|
|
149
155
|
} else {
|
|
150
156
|
var _defaultWidth = args.defaultWidth;
|
|
157
|
+
|
|
151
158
|
var _width = options !== null && options !== void 0 && options.width ? String(options.width) : args.defaultWidth;
|
|
159
|
+
|
|
152
160
|
valuesArray = args.values[_width] || args.values[_defaultWidth];
|
|
153
161
|
}
|
|
162
|
+
|
|
154
163
|
var index = args.argumentCallback ? args.argumentCallback(dirtyIndex) : dirtyIndex; // @ts-ignore: For some reason TypeScript just don't want to match it, no matter how hard we try. I challenge you to try to remove it!
|
|
155
164
|
|
|
156
165
|
return valuesArray[index];
|
|
@@ -246,6 +255,7 @@ var formattingDayPeriodValues = {
|
|
|
246
255
|
night: 'at night'
|
|
247
256
|
}
|
|
248
257
|
};
|
|
258
|
+
|
|
249
259
|
var ordinalNumber = function ordinalNumber(dirtyNumber, _options) {
|
|
250
260
|
var number = Number(dirtyNumber); // If ordinal numbers depend on context, for example,
|
|
251
261
|
// if they are different for different grammatical genders,
|
|
@@ -255,18 +265,23 @@ var ordinalNumber = function ordinalNumber(dirtyNumber, _options) {
|
|
|
255
265
|
// 'day', 'hour', 'minute', 'second'.
|
|
256
266
|
|
|
257
267
|
var rem100 = number % 100;
|
|
268
|
+
|
|
258
269
|
if (rem100 > 20 || rem100 < 10) {
|
|
259
270
|
switch (rem100 % 10) {
|
|
260
271
|
case 1:
|
|
261
272
|
return number + 'st';
|
|
273
|
+
|
|
262
274
|
case 2:
|
|
263
275
|
return number + 'nd';
|
|
276
|
+
|
|
264
277
|
case 3:
|
|
265
278
|
return number + 'rd';
|
|
266
279
|
}
|
|
267
280
|
}
|
|
281
|
+
|
|
268
282
|
return number + 'th';
|
|
269
283
|
};
|
|
284
|
+
|
|
270
285
|
var localize = {
|
|
271
286
|
ordinalNumber: ordinalNumber,
|
|
272
287
|
era: buildLocalizeFn({
|
|
@@ -302,9 +317,11 @@ function buildMatchFn(args) {
|
|
|
302
317
|
var width = options.width;
|
|
303
318
|
var matchPattern = width && args.matchPatterns[width] || args.matchPatterns[args.defaultMatchWidth];
|
|
304
319
|
var matchResult = string.match(matchPattern);
|
|
320
|
+
|
|
305
321
|
if (!matchResult) {
|
|
306
322
|
return null;
|
|
307
323
|
}
|
|
324
|
+
|
|
308
325
|
var matchedString = matchResult[0];
|
|
309
326
|
var parsePatterns = width && args.parsePatterns[width] || args.parsePatterns[args.defaultParseWidth];
|
|
310
327
|
var key = Array.isArray(parsePatterns) ? findIndex(parsePatterns, function (pattern) {
|
|
@@ -322,20 +339,24 @@ function buildMatchFn(args) {
|
|
|
322
339
|
};
|
|
323
340
|
};
|
|
324
341
|
}
|
|
342
|
+
|
|
325
343
|
function findKey(object, predicate) {
|
|
326
344
|
for (var key in object) {
|
|
327
345
|
if (object.hasOwnProperty(key) && predicate(object[key])) {
|
|
328
346
|
return key;
|
|
329
347
|
}
|
|
330
348
|
}
|
|
349
|
+
|
|
331
350
|
return undefined;
|
|
332
351
|
}
|
|
352
|
+
|
|
333
353
|
function findIndex(array, predicate) {
|
|
334
354
|
for (var key = 0; key < array.length; key++) {
|
|
335
355
|
if (predicate(array[key])) {
|
|
336
356
|
return key;
|
|
337
357
|
}
|
|
338
358
|
}
|
|
359
|
+
|
|
339
360
|
return undefined;
|
|
340
361
|
}
|
|
341
362
|
|
|
@@ -471,12 +492,12 @@ var locale = {
|
|
|
471
492
|
match: match,
|
|
472
493
|
options: {
|
|
473
494
|
weekStartsOn: 0
|
|
474
|
-
/* Sunday
|
|
475
|
-
|
|
495
|
+
/* Sunday */
|
|
496
|
+
,
|
|
476
497
|
firstWeekContainsDate: 1
|
|
477
498
|
}
|
|
478
499
|
};
|
|
479
500
|
var defaultLocale = locale;
|
|
480
501
|
|
|
481
502
|
exports.defaultLocale = defaultLocale;
|
|
482
|
-
//# sourceMappingURL=index-
|
|
503
|
+
//# sourceMappingURL=index-ecac7544.js.map
|