@sendbird/uikit-react 3.4.4 → 3.4.5
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 +47 -42
- package/App.js.map +1 -1
- package/CHANGELOG.md +80 -0
- package/Channel/components/ChannelHeader.js +19 -19
- package/Channel/components/ChannelUI.js +39 -35
- 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 -39
- package/Channel/components/Message.js.map +1 -1
- package/Channel/components/MessageInput.js +27 -24
- package/Channel/components/MessageInput.js.map +1 -1
- package/Channel/components/MessageList.js +65 -62
- package/Channel/components/MessageList.js.map +1 -1
- package/Channel/components/RemoveMessageModal.js +17 -17
- package/Channel/components/SuggestedMentionList.js +17 -17
- package/Channel/components/TypingIndicator.js +15 -15
- package/Channel/components/UnreadCount.js +4 -4
- package/Channel/context.js +14 -14
- package/Channel.js +40 -35
- 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 +40 -62
- package/ChannelList/components/ChannelListUI.js.map +1 -1
- package/ChannelList/components/ChannelPreview.js +26 -26
- package/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/ChannelList/context.js +8 -8
- package/ChannelList.js +30 -30
- package/{ChannelListProvider-3c107fc7.js → ChannelListProvider-10fe7340.js} +18 -12
- package/ChannelListProvider-10fe7340.js.map +1 -0
- package/{ChannelProvider-28639e83.js → ChannelProvider-4ac82784.js} +32 -32
- package/ChannelProvider-4ac82784.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/UserListItem.js +10 -10
- package/ChannelSettings/components/UserPanel.js +13 -13
- package/ChannelSettings/context.js +3 -3
- package/ChannelSettings.js +17 -17
- package/CreateChannel/components/CreateChannelUI.js +13 -13
- package/CreateChannel/components/InviteUsers.js +13 -13
- package/CreateChannel/components/SelectChannelType.js +10 -10
- package/CreateChannel/context.js +4 -4
- package/CreateChannel.js +13 -13
- package/{CreateChannelProvider-09772304.js → CreateChannelProvider-11045f46.js} +1 -1
- package/{CreateChannelProvider-09772304.js.map → CreateChannelProvider-11045f46.js.map} +1 -1
- package/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
- package/CreateOpenChannel/context.js +1 -1
- package/CreateOpenChannel.js +9 -9
- package/EditUserProfile/components/EditUserProfileUI.js +12 -12
- package/EditUserProfile.js +12 -12
- package/{LocalizationContext-ef72d4b1.js → LocalizationContext-654ae04f.js} +3 -3
- package/{LocalizationContext-ef72d4b1.js.map → LocalizationContext-654ae04f.js.map} +1 -1
- package/{MediaQueryContext-683c7242.js → MediaQueryContext-e791a4d1.js} +1 -1
- package/{MediaQueryContext-683c7242.js.map → MediaQueryContext-e791a4d1.js.map} +1 -1
- package/{MemberList-0bc3ff4a.js → MemberList-6f3c8288.js} +5 -5
- package/{MemberList-0bc3ff4a.js.map → MemberList-6f3c8288.js.map} +1 -1
- package/Message/context.js +30 -0
- package/Message/context.js.map +1 -0
- package/MessageSearch/components/MessageSearchUI.js +11 -11
- package/MessageSearch/context.js +1 -1
- package/MessageSearch.js +11 -11
- package/OpenChannel/components/FrozenChannelNotification.js +4 -4
- package/OpenChannel/components/OpenChannelHeader.js +12 -12
- package/OpenChannel/components/OpenChannelInput.js +19 -16
- package/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessage.js +28 -24
- package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/OpenChannel/components/OpenChannelMessageList.js +58 -38
- package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/OpenChannel/components/OpenChannelUI.js +31 -27
- package/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/OpenChannel/context.js +8 -8
- package/OpenChannel.js +31 -27
- 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/{OpenChannelListProvider-e5246224.js → OpenChannelListProvider-eb189b41.js} +3 -3
- package/{OpenChannelListProvider-e5246224.js.map → OpenChannelListProvider-eb189b41.js.map} +1 -1
- package/{OpenChannelProvider-c5952f33.js → OpenChannelProvider-e418b369.js} +7 -7
- package/{OpenChannelProvider-c5952f33.js.map → OpenChannelProvider-e418b369.js.map} +1 -1
- package/OpenChannelSettings/components/EditDetailsModal.js +12 -12
- package/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
- package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
- package/OpenChannelSettings/components/OperatorUI.js +16 -16
- package/OpenChannelSettings/components/ParticipantUI.js +14 -14
- package/OpenChannelSettings/context.js +3 -3
- package/OpenChannelSettings.js +17 -17
- package/README.md +3 -2
- package/{RemoveMessageModal-63a8b079.js → RemoveMessageModal-938b400d.js} +3 -3
- package/{RemoveMessageModal-63a8b079.js.map → RemoveMessageModal-938b400d.js.map} +1 -1
- package/SendbirdProvider.js +93 -14
- package/SendbirdProvider.js.map +1 -1
- package/Thread/components/ParentMessageInfo.js +32 -28
- package/Thread/components/ParentMessageInfo.js.map +1 -1
- package/Thread/components/ParentMessageInfoItem.js +43 -45
- package/Thread/components/ParentMessageInfoItem.js.map +1 -1
- package/Thread/components/ThreadHeader.js +6 -6
- package/Thread/components/ThreadList.js +48 -36
- package/Thread/components/ThreadList.js.map +1 -1
- package/Thread/components/ThreadListItem.js +34 -30
- package/Thread/components/ThreadListItem.js.map +1 -1
- package/Thread/components/ThreadMessageInput.js +28 -25
- package/Thread/components/ThreadMessageInput.js.map +1 -1
- package/Thread/components/ThreadUI.js +66 -58
- package/Thread/components/ThreadUI.js.map +1 -1
- package/Thread/context.js +8 -8
- package/Thread.js +44 -40
- package/Thread.js.map +1 -1
- package/{ThreadProvider-435a6f11.js → ThreadProvider-faf3df5d.js} +7 -7
- package/{ThreadProvider-435a6f11.js.map → ThreadProvider-faf3df5d.js.map} +1 -1
- package/{UserProfileContext-5d7c5f9f.js → UserProfileContext-1996d4d2.js} +1 -1
- package/{UserProfileContext-5d7c5f9f.js.map → UserProfileContext-1996d4d2.js.map} +1 -1
- package/{VoiceMessageInputWrapper-8a9dda68.js → VoiceMessageInputWrapper-59373f20.js} +7 -7
- package/{VoiceMessageInputWrapper-8a9dda68.js.map → VoiceMessageInputWrapper-59373f20.js.map} +1 -1
- package/VoicePlayer/context.js +3 -3
- package/VoicePlayer/useVoicePlayer.js +3 -3
- package/VoiceRecorder/context.js +2 -2
- package/VoiceRecorder/useVoiceRecorder.js +2 -2
- package/{_rollupPluginBabelHelpers-37cba0d6.js → _rollupPluginBabelHelpers-e908c50d.js} +1 -1
- package/_rollupPluginBabelHelpers-e908c50d.js.map +1 -0
- package/{actionTypes-80e9dbe4.js → actionTypes-ee7f96a9.js} +1 -1
- package/{actionTypes-80e9dbe4.js.map → actionTypes-ee7f96a9.js.map} +1 -1
- package/cjs/App.js +47 -42
- package/cjs/App.js.map +1 -1
- package/cjs/Channel/components/ChannelHeader.js +19 -19
- package/cjs/Channel/components/ChannelUI.js +39 -35
- 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 +43 -39
- package/cjs/Channel/components/Message.js.map +1 -1
- package/cjs/Channel/components/MessageInput.js +27 -24
- package/cjs/Channel/components/MessageInput.js.map +1 -1
- package/cjs/Channel/components/MessageList.js +65 -62
- package/cjs/Channel/components/MessageList.js.map +1 -1
- package/cjs/Channel/components/RemoveMessageModal.js +17 -17
- package/cjs/Channel/components/SuggestedMentionList.js +17 -17
- package/cjs/Channel/components/TypingIndicator.js +15 -15
- package/cjs/Channel/components/UnreadCount.js +4 -4
- package/cjs/Channel/context.js +14 -14
- package/cjs/Channel.js +40 -35
- 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 +39 -61
- package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
- package/cjs/ChannelList/components/ChannelPreview.js +26 -26
- package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
- package/cjs/ChannelList/context.js +8 -8
- package/cjs/ChannelList.js +30 -30
- package/cjs/{ChannelListProvider-b7ffadf7.js → ChannelListProvider-d4f91fc4.js} +18 -12
- package/cjs/ChannelListProvider-d4f91fc4.js.map +1 -0
- package/cjs/{ChannelProvider-b963c72c.js → ChannelProvider-af0b997c.js} +32 -32
- package/cjs/ChannelProvider-af0b997c.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/UserListItem.js +10 -10
- package/cjs/ChannelSettings/components/UserPanel.js +13 -13
- package/cjs/ChannelSettings/context.js +3 -3
- package/cjs/ChannelSettings.js +17 -17
- package/cjs/CreateChannel/components/CreateChannelUI.js +13 -13
- package/cjs/CreateChannel/components/InviteUsers.js +13 -13
- package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
- package/cjs/CreateChannel/context.js +4 -4
- package/cjs/CreateChannel.js +13 -13
- package/cjs/{CreateChannelProvider-ea54c83b.js → CreateChannelProvider-c4ad28a8.js} +1 -1
- package/cjs/{CreateChannelProvider-ea54c83b.js.map → CreateChannelProvider-c4ad28a8.js.map} +1 -1
- package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
- package/cjs/CreateOpenChannel/context.js +1 -1
- package/cjs/CreateOpenChannel.js +9 -9
- package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
- package/cjs/EditUserProfile.js +12 -12
- package/cjs/{LocalizationContext-4822793b.js → LocalizationContext-01fceac0.js} +3 -3
- package/cjs/{LocalizationContext-4822793b.js.map → LocalizationContext-01fceac0.js.map} +1 -1
- package/cjs/{MediaQueryContext-b83880cc.js → MediaQueryContext-4978c777.js} +1 -1
- package/cjs/{MediaQueryContext-b83880cc.js.map → MediaQueryContext-4978c777.js.map} +1 -1
- package/cjs/{MemberList-4cfc05a3.js → MemberList-5c05b62f.js} +5 -5
- package/cjs/{MemberList-4cfc05a3.js.map → MemberList-5c05b62f.js.map} +1 -1
- package/cjs/Message/context.js +39 -0
- package/cjs/Message/context.js.map +1 -0
- package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
- package/cjs/MessageSearch/context.js +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/OpenChannelInput.js +19 -16
- package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessage.js +28 -24
- package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelMessageList.js +58 -38
- package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
- package/cjs/OpenChannel/components/OpenChannelUI.js +31 -27
- package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
- package/cjs/OpenChannel/context.js +8 -8
- package/cjs/OpenChannel.js +31 -27
- 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/{OpenChannelListProvider-9fc6f344.js → OpenChannelListProvider-3be4b8a5.js} +3 -3
- package/cjs/{OpenChannelListProvider-9fc6f344.js.map → OpenChannelListProvider-3be4b8a5.js.map} +1 -1
- package/cjs/{OpenChannelProvider-64fb7652.js → OpenChannelProvider-56af9a0e.js} +7 -7
- package/cjs/{OpenChannelProvider-64fb7652.js.map → OpenChannelProvider-56af9a0e.js.map} +1 -1
- package/cjs/OpenChannelSettings/components/EditDetailsModal.js +12 -12
- package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
- package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
- package/cjs/OpenChannelSettings/components/OperatorUI.js +16 -16
- package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
- package/cjs/OpenChannelSettings/context.js +3 -3
- package/cjs/OpenChannelSettings.js +17 -17
- package/cjs/{RemoveMessageModal-00de23ec.js → RemoveMessageModal-31ff9edc.js} +3 -3
- package/cjs/{RemoveMessageModal-00de23ec.js.map → RemoveMessageModal-31ff9edc.js.map} +1 -1
- package/cjs/SendbirdProvider.js +92 -13
- package/cjs/SendbirdProvider.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfo.js +32 -28
- package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
- package/cjs/Thread/components/ParentMessageInfoItem.js +42 -44
- package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
- package/cjs/Thread/components/ThreadHeader.js +6 -6
- package/cjs/Thread/components/ThreadList.js +48 -36
- package/cjs/Thread/components/ThreadList.js.map +1 -1
- package/cjs/Thread/components/ThreadListItem.js +34 -30
- package/cjs/Thread/components/ThreadListItem.js.map +1 -1
- package/cjs/Thread/components/ThreadMessageInput.js +28 -25
- package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
- package/cjs/Thread/components/ThreadUI.js +67 -59
- package/cjs/Thread/components/ThreadUI.js.map +1 -1
- package/cjs/Thread/context.js +8 -8
- package/cjs/Thread.js +44 -40
- package/cjs/Thread.js.map +1 -1
- package/cjs/{ThreadProvider-93f2b7e5.js → ThreadProvider-12784adf.js} +7 -7
- package/cjs/{ThreadProvider-93f2b7e5.js.map → ThreadProvider-12784adf.js.map} +1 -1
- package/cjs/{UserProfileContext-7bc4eec4.js → UserProfileContext-c4642438.js} +1 -1
- package/cjs/{UserProfileContext-7bc4eec4.js.map → UserProfileContext-c4642438.js.map} +1 -1
- package/cjs/{VoiceMessageInputWrapper-82c8ef13.js → VoiceMessageInputWrapper-3b5db880.js} +7 -7
- package/cjs/{VoiceMessageInputWrapper-82c8ef13.js.map → VoiceMessageInputWrapper-3b5db880.js.map} +1 -1
- package/cjs/VoicePlayer/context.js +3 -3
- package/cjs/VoicePlayer/useVoicePlayer.js +3 -3
- package/cjs/VoiceRecorder/context.js +2 -2
- package/cjs/VoiceRecorder/useVoiceRecorder.js +2 -2
- package/cjs/{_rollupPluginBabelHelpers-1218aafb.js → _rollupPluginBabelHelpers-994cd1da.js} +1 -1
- package/cjs/_rollupPluginBabelHelpers-994cd1da.js.map +1 -0
- package/cjs/{actionTypes-f186c4dd.js → actionTypes-38d53eaf.js} +1 -1
- package/cjs/{actionTypes-f186c4dd.js.map → actionTypes-38d53eaf.js.map} +1 -1
- package/cjs/{color-937f65ad.js → color-8f9fe57f.js} +1 -1
- package/cjs/{color-937f65ad.js.map → color-8f9fe57f.js.map} +1 -1
- package/cjs/{compareIds-3d732a01.js → compareIds-b77b66f3.js} +1 -1
- package/cjs/{compareIds-3d732a01.js.map → compareIds-b77b66f3.js.map} +1 -1
- package/cjs/{const-44ac2c14.js → const-35f8be84.js} +1 -1
- package/cjs/{const-44ac2c14.js.map → const-35f8be84.js.map} +1 -1
- package/cjs/{const-73aa22ac.js → const-e03cb4c1.js} +1 -1
- package/cjs/{const-73aa22ac.js.map → const-e03cb4c1.js.map} +1 -1
- package/cjs/{consts-2b0eaee0.js → consts-69fc20be.js} +1 -1
- package/cjs/{consts-2b0eaee0.js.map → consts-69fc20be.js.map} +1 -1
- package/cjs/consts-956b1221.js +6 -0
- package/cjs/consts-956b1221.js.map +1 -0
- package/cjs/consts-aabb33e0.js +6 -0
- package/cjs/consts-aabb33e0.js.map +1 -0
- package/cjs/{consts-11872691.js → consts-b29bd4d5.js} +1 -1
- package/cjs/{consts-11872691.js.map → consts-b29bd4d5.js.map} +1 -1
- package/cjs/{context-7e270322.js → context-d9e248df.js} +2 -2
- package/cjs/{context-7e270322.js.map → context-d9e248df.js.map} +1 -1
- package/cjs/dist/index.css +89 -81
- package/cjs/dist/index.css.map +1 -1
- package/cjs/{index-a867516a.js → index-1e57cbdb.js} +4 -4
- package/cjs/{index-a867516a.js.map → index-1e57cbdb.js.map} +1 -1
- package/cjs/{index-f78cff63.js → index-1f02e60f.js} +2 -2
- package/cjs/{index-f78cff63.js.map → index-1f02e60f.js.map} +1 -1
- package/cjs/{index-7207d339.js → index-26a1e861.js} +11 -5
- package/cjs/index-26a1e861.js.map +1 -0
- package/cjs/{index-57989185.js → index-36aaf992.js} +1 -1
- package/cjs/{index-57989185.js.map → index-36aaf992.js.map} +1 -1
- package/cjs/index-603c2a7c.js +63 -0
- package/cjs/index-603c2a7c.js.map +1 -0
- package/cjs/{index-2f2f3e43.js → index-72fd0294.js} +8 -2
- package/cjs/index-72fd0294.js.map +1 -0
- package/cjs/{index-1151a507.js → index-7c5d21c4.js} +1 -1
- package/cjs/{index-1151a507.js.map → index-7c5d21c4.js.map} +1 -1
- package/cjs/{index-cfff5dbb.js → index-959a4ab1.js} +2 -2
- package/cjs/{index-cfff5dbb.js.map → index-959a4ab1.js.map} +1 -1
- package/cjs/{index-f52caf82.js → index-a7fa406f.js} +2 -2
- package/cjs/{index-f52caf82.js.map → index-a7fa406f.js.map} +1 -1
- package/cjs/{index-aaa65319.js → index-aa908fcf.js} +7 -7
- package/cjs/{index-aaa65319.js.map → index-aa908fcf.js.map} +1 -1
- package/cjs/{index-a5fad93c.js → index-aeba3b06.js} +4 -4
- package/cjs/{index-a5fad93c.js.map → index-aeba3b06.js.map} +1 -1
- package/cjs/{index-c7ff34af.js → index-b9fbe704.js} +5 -5
- package/cjs/{index-c7ff34af.js.map → index-b9fbe704.js.map} +1 -1
- package/cjs/{index-e9d3a5d6.js → index-c825cf5b.js} +3 -3
- package/cjs/{index-e9d3a5d6.js.map → index-c825cf5b.js.map} +1 -1
- package/cjs/{index-3f30ab14.js → index-d41db9c1.js} +7 -7
- package/cjs/{index-3f30ab14.js.map → index-d41db9c1.js.map} +1 -1
- package/cjs/{index-20fc629b.js → index-e3f00fd1.js} +3 -3
- package/cjs/{index-20fc629b.js.map → index-e3f00fd1.js.map} +1 -1
- package/cjs/index.js +55 -51
- package/cjs/index.js.map +1 -1
- package/cjs/sendbirdSelectors.js +2 -2
- package/cjs/{stringSet-7f49973c.js → stringSet-7330b627.js} +1 -1
- package/cjs/{stringSet-7f49973c.js.map → stringSet-7330b627.js.map} +1 -1
- package/cjs/tokenize-a5a20ef3.js +134 -0
- package/cjs/tokenize-a5a20ef3.js.map +1 -0
- package/cjs/{topics-9d6a6d36.js → topics-7547922a.js} +1 -1
- package/cjs/{topics-9d6a6d36.js.map → topics-7547922a.js.map} +1 -1
- package/cjs/{tslib.es6-46c08a06.js → tslib.es6-ee1122c5.js} +1 -1
- package/cjs/{tslib.es6-46c08a06.js.map → tslib.es6-ee1122c5.js.map} +1 -1
- package/cjs/{types-31b11c88.js → types-7daeb4a1.js} +1 -1
- package/cjs/types-7daeb4a1.js.map +1 -0
- package/cjs/ui/Accordion.js +3 -3
- package/cjs/ui/AccordionGroup.js +2 -2
- package/cjs/ui/AdminMessage.js +3 -3
- package/cjs/ui/Avatar.js +2 -2
- package/cjs/ui/Badge.js +5 -5
- package/cjs/ui/BottomSheet.js +1 -1
- package/cjs/ui/Button.js +3 -3
- package/cjs/ui/ChannelAvatar.js +3 -3
- package/cjs/ui/ConnectionStatus.js +4 -4
- package/cjs/ui/ContextMenu.js +5 -5
- package/cjs/ui/DateSeparator.js +4 -4
- package/cjs/ui/EmojiReactions.js +7 -7
- package/cjs/ui/FileMessageItemBody.js +6 -6
- package/cjs/ui/FileViewer.js +8 -8
- package/cjs/ui/IconButton.js +1 -1
- package/cjs/ui/ImageRenderer.js +1 -1
- package/cjs/ui/Input.js +2 -2
- package/cjs/ui/Label.js +2 -2
- package/cjs/ui/LinkLabel.js +2 -2
- package/cjs/ui/Loader.js +1 -1
- package/cjs/ui/MentionLabel.js +12 -11
- package/cjs/ui/MentionLabel.js.map +1 -1
- package/cjs/ui/MentionUserLabel.js +1 -1
- package/cjs/ui/MessageContent.js +29 -25
- package/cjs/ui/MessageContent.js.map +1 -1
- package/cjs/ui/MessageInput.js +81 -52
- package/cjs/ui/MessageInput.js.map +1 -1
- package/cjs/ui/MessageItemMenu.js +8 -8
- package/cjs/ui/MessageItemReactionMenu.js +5 -5
- package/cjs/ui/MessageSearchFileItem.js +10 -10
- package/cjs/ui/MessageSearchItem.js +9 -9
- package/cjs/ui/MessageStatus.js +10 -10
- package/cjs/ui/Modal.js +7 -7
- package/cjs/ui/OGMessageItemBody.js +26 -32
- package/cjs/ui/OGMessageItemBody.js.map +1 -1
- package/cjs/ui/OpenChannelAdminMessage.js +3 -3
- package/cjs/ui/OpenChannelAvatar.js +6 -6
- package/cjs/ui/OpenchannelConversationHeader.js +6 -6
- package/cjs/ui/OpenchannelFileMessage.js +16 -16
- package/cjs/ui/OpenchannelOGMessage.js +48 -64
- package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
- package/cjs/ui/OpenchannelThumbnailMessage.js +15 -15
- package/cjs/ui/OpenchannelUserMessage.js +16 -16
- package/cjs/ui/PlaceHolder.js +6 -6
- package/cjs/ui/PlaybackTime.js +2 -2
- package/cjs/ui/QuoteMessage.js +6 -6
- package/cjs/ui/QuoteMessageInput.js +6 -6
- package/cjs/ui/ReactionBadge.js +3 -3
- package/cjs/ui/ReactionButton.js +1 -1
- package/cjs/ui/SortByRow.js +2 -2
- package/cjs/ui/TextButton.js +2 -2
- package/cjs/ui/TextMessageItemBody.js +25 -30
- package/cjs/ui/TextMessageItemBody.js.map +1 -1
- package/cjs/ui/ThreadReplies.js +6 -6
- package/cjs/ui/ThumbnailMessageItemBody.js +2 -2
- package/cjs/ui/Tooltip.js +3 -3
- package/cjs/ui/TooltipWrapper.js +1 -1
- package/cjs/ui/UnknownMessageItemBody.js +6 -6
- package/cjs/ui/UserListItem.js +10 -10
- package/cjs/ui/UserProfile.js +9 -9
- package/cjs/ui/VoiceMessageItemBody.js +5 -5
- package/cjs/ui/VoiceMessgeInput.js +8 -8
- package/cjs/ui/Word.js +15 -10
- package/cjs/ui/Word.js.map +1 -1
- package/cjs/{useLongPress-839c53cb.js → useLongPress-3e3b1188.js} +3 -3
- package/cjs/{useLongPress-839c53cb.js.map → useLongPress-3e3b1188.js.map} +1 -1
- package/cjs/useSendbirdStateContext.js +1 -1
- package/cjs/utils/message/isVoiceMessage.js +2 -2
- package/cjs/{utils-dae078f4.js → utils-5905fc1a.js} +1 -1
- package/cjs/{utils-dae078f4.js.map → utils-5905fc1a.js.map} +1 -1
- package/cjs/{utils-7d2c966a.js → utils-5ca88bb6.js} +1 -1
- package/cjs/{utils-7d2c966a.js.map → utils-5ca88bb6.js.map} +1 -1
- package/cjs/{utils-9fc9438c.js → utils-de779857.js} +2 -2
- package/cjs/{utils-9fc9438c.js.map → utils-de779857.js.map} +1 -1
- package/cjs/{utils-41bb82dc.js → utils-e4cd6a0c.js} +1 -1
- package/cjs/{utils-41bb82dc.js.map → utils-e4cd6a0c.js.map} +1 -1
- package/cjs/{uuid-8454abf3.js → uuid-26b61f16.js} +1 -1
- package/cjs/{uuid-8454abf3.js.map → uuid-26b61f16.js.map} +1 -1
- package/cjs/withSendbird.js +1 -1
- package/{color-e5d40073.js → color-f6e2214f.js} +1 -1
- package/{color-e5d40073.js.map → color-f6e2214f.js.map} +1 -1
- package/{compareIds-148644b4.js → compareIds-d958887d.js} +1 -1
- package/{compareIds-148644b4.js.map → compareIds-d958887d.js.map} +1 -1
- package/{const-bf594206.js → const-735bcf5b.js} +1 -1
- package/{const-bf594206.js.map → const-735bcf5b.js.map} +1 -1
- package/{const-bba4efc9.js → const-c7334190.js} +1 -1
- package/{const-bba4efc9.js.map → const-c7334190.js.map} +1 -1
- package/consts-12512664.js +4 -0
- package/consts-12512664.js.map +1 -0
- package/consts-8f50899e.js +4 -0
- package/consts-8f50899e.js.map +1 -0
- package/{consts-b3042213.js → consts-9422accf.js} +1 -1
- package/{consts-b3042213.js.map → consts-9422accf.js.map} +1 -1
- package/{consts-f9543b99.js → consts-ddb92249.js} +1 -1
- package/{consts-f9543b99.js.map → consts-ddb92249.js.map} +1 -1
- package/{context-e82cf2c4.js → context-7465b898.js} +2 -2
- package/{context-e82cf2c4.js.map → context-7465b898.js.map} +1 -1
- package/dist/index.css +89 -81
- package/dist/index.css.map +1 -1
- package/{index-86cb1c98.js → index-0ecbda20.js} +4 -4
- package/{index-86cb1c98.js.map → index-0ecbda20.js.map} +1 -1
- package/{index-e3d008b9.js → index-12c44496.js} +1 -1
- package/{index-e3d008b9.js.map → index-12c44496.js.map} +1 -1
- package/{index-253052c7.js → index-437c0f3c.js} +7 -7
- package/{index-253052c7.js.map → index-437c0f3c.js.map} +1 -1
- package/{index-90365474.js → index-47d179f2.js} +2 -2
- package/{index-90365474.js.map → index-47d179f2.js.map} +1 -1
- package/{index-1dfb77d4.js → index-4c3eaeb7.js} +2 -2
- package/{index-1dfb77d4.js.map → index-4c3eaeb7.js.map} +1 -1
- package/{index-113d122f.js → index-63e7b57b.js} +5 -5
- package/{index-113d122f.js.map → index-63e7b57b.js.map} +1 -1
- package/{index-9a413f89.js → index-6e33b2e0.js} +3 -3
- package/{index-9a413f89.js.map → index-6e33b2e0.js.map} +1 -1
- package/{index-e571f56c.js → index-7b8ea67e.js} +4 -4
- package/{index-e571f56c.js.map → index-7b8ea67e.js.map} +1 -1
- package/{index-556999ef.js → index-83ae3ffe.js} +8 -3
- package/index-83ae3ffe.js.map +1 -0
- package/{index-2c0ab386.js → index-8e901b57.js} +11 -5
- package/index-8e901b57.js.map +1 -0
- package/{index-e1cff2ff.js → index-9626a87e.js} +3 -3
- package/{index-e1cff2ff.js.map → index-9626a87e.js.map} +1 -1
- package/{index-5be5af6d.js → index-a52a0b76.js} +7 -7
- package/{index-5be5af6d.js.map → index-a52a0b76.js.map} +1 -1
- package/index-ace292c2.js +57 -0
- package/index-ace292c2.js.map +1 -0
- package/{index-97a2ff37.js → index-aced8439.js} +2 -2
- package/{index-97a2ff37.js.map → index-aced8439.js.map} +1 -1
- package/{index-18c2f8d4.js → index-cf141ad7.js} +1 -1
- package/{index-18c2f8d4.js.map → index-cf141ad7.js.map} +1 -1
- package/index.d.ts +28 -1
- package/index.js +55 -51
- package/index.js.map +1 -1
- package/package.json +1 -1
- package/sendbirdSelectors.js +2 -2
- package/{stringSet-273bec27.js → stringSet-7c7d84fc.js} +1 -1
- package/{stringSet-273bec27.js.map → stringSet-7c7d84fc.js.map} +1 -1
- package/tokenize-8f238f49.js +130 -0
- package/tokenize-8f238f49.js.map +1 -0
- package/{topics-df7f51d4.js → topics-4697c2b3.js} +1 -1
- package/{topics-df7f51d4.js.map → topics-4697c2b3.js.map} +1 -1
- package/{tslib.es6-1aaf3795.js → tslib.es6-209c9f08.js} +1 -1
- package/{tslib.es6-1aaf3795.js.map → tslib.es6-209c9f08.js.map} +1 -1
- package/{types-ed183627.js → types-41ea68c8.js} +1 -1
- package/types-41ea68c8.js.map +1 -0
- package/ui/Accordion.js +3 -3
- package/ui/AccordionGroup.js +2 -2
- package/ui/AdminMessage.js +3 -3
- package/ui/Avatar.js +2 -2
- package/ui/Badge.js +5 -5
- package/ui/BottomSheet.js +1 -1
- package/ui/Button.js +3 -3
- package/ui/ChannelAvatar.js +3 -3
- package/ui/ConnectionStatus.js +4 -4
- package/ui/ContextMenu.js +5 -5
- package/ui/DateSeparator.js +4 -4
- package/ui/EmojiReactions.js +7 -7
- package/ui/FileMessageItemBody.js +6 -6
- package/ui/FileViewer.js +8 -8
- package/ui/IconButton.js +1 -1
- package/ui/ImageRenderer.js +1 -1
- package/ui/Input.js +2 -2
- package/ui/Label.js +2 -2
- package/ui/LinkLabel.js +2 -2
- package/ui/Loader.js +1 -1
- package/ui/MentionLabel.js +12 -11
- package/ui/MentionLabel.js.map +1 -1
- package/ui/MentionUserLabel.js +1 -1
- package/ui/MessageContent.js +29 -25
- package/ui/MessageContent.js.map +1 -1
- package/ui/MessageInput.js +81 -52
- package/ui/MessageInput.js.map +1 -1
- package/ui/MessageItemMenu.js +8 -8
- package/ui/MessageItemReactionMenu.js +5 -5
- package/ui/MessageSearchFileItem.js +10 -10
- package/ui/MessageSearchItem.js +9 -9
- package/ui/MessageStatus.js +10 -10
- package/ui/Modal.js +7 -7
- package/ui/OGMessageItemBody.js +26 -32
- package/ui/OGMessageItemBody.js.map +1 -1
- package/ui/OpenChannelAdminMessage.js +3 -3
- package/ui/OpenChannelAvatar.js +6 -6
- package/ui/OpenchannelConversationHeader.js +6 -6
- package/ui/OpenchannelFileMessage.js +16 -16
- package/ui/OpenchannelOGMessage.js +48 -64
- package/ui/OpenchannelOGMessage.js.map +1 -1
- package/ui/OpenchannelThumbnailMessage.js +15 -15
- package/ui/OpenchannelUserMessage.js +16 -16
- package/ui/PlaceHolder.js +6 -6
- package/ui/PlaybackTime.js +2 -2
- package/ui/QuoteMessage.js +6 -6
- package/ui/QuoteMessageInput.js +6 -6
- package/ui/ReactionBadge.js +3 -3
- package/ui/ReactionButton.js +1 -1
- package/ui/SortByRow.js +2 -2
- package/ui/TextButton.js +2 -2
- package/ui/TextMessageItemBody.js +25 -30
- package/ui/TextMessageItemBody.js.map +1 -1
- package/ui/ThreadReplies.js +6 -6
- package/ui/ThumbnailMessageItemBody.js +2 -2
- package/ui/Tooltip.js +3 -3
- package/ui/TooltipWrapper.js +1 -1
- package/ui/UnknownMessageItemBody.js +6 -6
- package/ui/UserListItem.js +10 -10
- package/ui/UserProfile.js +9 -9
- package/ui/VoiceMessageItemBody.js +5 -5
- package/ui/VoiceMessgeInput.js +8 -8
- package/ui/Word.js +15 -10
- package/ui/Word.js.map +1 -1
- package/{useLongPress-1ae5a380.js → useLongPress-e2570976.js} +3 -3
- package/{useLongPress-1ae5a380.js.map → useLongPress-e2570976.js.map} +1 -1
- package/useSendbirdStateContext.js +1 -1
- package/utils/message/isVoiceMessage.js +2 -2
- package/{utils-99c30ef6.js → utils-04bd857d.js} +1 -1
- package/{utils-99c30ef6.js.map → utils-04bd857d.js.map} +1 -1
- package/{utils-25614c42.js → utils-12a3467f.js} +1 -1
- package/{utils-25614c42.js.map → utils-12a3467f.js.map} +1 -1
- package/{utils-09901477.js → utils-3d03001e.js} +1 -1
- package/{utils-09901477.js.map → utils-3d03001e.js.map} +1 -1
- package/{utils-1b97d8ea.js → utils-4942106c.js} +2 -2
- package/{utils-1b97d8ea.js.map → utils-4942106c.js.map} +1 -1
- package/{uuid-29207f65.js → uuid-31c6ecb2.js} +1 -1
- package/{uuid-29207f65.js.map → uuid-31c6ecb2.js.map} +1 -1
- package/withSendbird.js +1 -1
- package/ChannelListProvider-3c107fc7.js.map +0 -1
- package/ChannelProvider-28639e83.js.map +0 -1
- package/_rollupPluginBabelHelpers-37cba0d6.js.map +0 -1
- package/cjs/ChannelListProvider-b7ffadf7.js.map +0 -1
- package/cjs/ChannelProvider-b963c72c.js.map +0 -1
- package/cjs/_rollupPluginBabelHelpers-1218aafb.js.map +0 -1
- package/cjs/index-2f2f3e43.js.map +0 -1
- package/cjs/index-7207d339.js.map +0 -1
- package/cjs/types-31b11c88.js.map +0 -1
- package/index-2c0ab386.js.map +0 -1
- package/index-556999ef.js.map +0 -1
- package/types-ed183627.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-6e33b2e0.js","sources":["../node_modules/date-fns/esm/isToday/index.js","../node_modules/date-fns/esm/isSameYear/index.js","../node_modules/date-fns/esm/isThisYear/index.js","../node_modules/date-fns/esm/addDays/index.js","../node_modules/date-fns/esm/subDays/index.js","../node_modules/date-fns/esm/isYesterday/index.js"],"sourcesContent":["import isSameDay from \"../isSameDay/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isToday\n * @category Day Helpers\n * @summary Is the given date today?\n * @pure false\n *\n * @description\n * Is the given date today?\n *\n * > ⚠️ Please note that this function is not present in the FP submodule as\n * > it uses `Date.now()` internally hence impure and can't be safely curried.\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is today\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // If today is 6 October 2014, is 6 October 14:00:00 today?\n * const result = isToday(new Date(2014, 9, 6, 14, 0))\n * //=> true\n */\n\nexport default function isToday(dirtyDate) {\n requiredArgs(1, arguments);\n return isSameDay(dirtyDate, Date.now());\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isSameYear\n * @category Year Helpers\n * @summary Are the given dates in the same year?\n *\n * @description\n * Are the given dates in the same year?\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same year\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 2 September 2014 and 25 September 2014 in the same year?\n * const result = isSameYear(new Date(2014, 8, 2), new Date(2014, 8, 25))\n * //=> true\n */\n\nexport default function isSameYear(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n return dateLeft.getFullYear() === dateRight.getFullYear();\n}","import isSameYear from \"../isSameYear/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isThisYear\n * @category Year Helpers\n * @summary Is the given date in the same year as the current date?\n * @pure false\n *\n * @description\n * Is the given date in the same year as the current date?\n *\n * > ⚠️ Please note that this function is not present in the FP submodule as\n * > it uses `Date.now()` internally hence impure and can't be safely curried.\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is in this year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // If today is 25 September 2014, is 2 July 2014 in this year?\n * const result = isThisYear(new Date(2014, 6, 2))\n * //=> true\n */\n\nexport default function isThisYear(dirtyDate) {\n requiredArgs(1, arguments);\n return isSameYear(dirtyDate, Date.now());\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name addDays\n * @category Day Helpers\n * @summary Add the specified number of days to the given date.\n *\n * @description\n * Add the specified number of days to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of days to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} - the new date with the days added\n * @throws {TypeError} - 2 arguments required\n *\n * @example\n * // Add 10 days to 1 September 2014:\n * const result = addDays(new Date(2014, 8, 1), 10)\n * //=> Thu Sep 11 2014 00:00:00\n */\n\nexport default function addDays(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var amount = toInteger(dirtyAmount);\n\n if (isNaN(amount)) {\n return new Date(NaN);\n }\n\n if (!amount) {\n // If 0 days, no-op to avoid changing times in the hour before end of DST\n return date;\n }\n\n date.setDate(date.getDate() + amount);\n return date;\n}","import addDays from \"../addDays/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\n/**\n * @name subDays\n * @category Day Helpers\n * @summary Subtract the specified number of days from the given date.\n *\n * @description\n * Subtract the specified number of days from the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of days to be subtracted. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the days subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 10 days from 1 September 2014:\n * const result = subDays(new Date(2014, 8, 1), 10)\n * //=> Fri Aug 22 2014 00:00:00\n */\n\nexport default function subDays(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addDays(dirtyDate, -amount);\n}","import isSameDay from \"../isSameDay/index.js\";\nimport subDays from \"../subDays/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isYesterday\n * @category Day Helpers\n * @summary Is the given date yesterday?\n * @pure false\n *\n * @description\n * Is the given date yesterday?\n *\n * > ⚠️ Please note that this function is not present in the FP submodule as\n * > it uses `Date.now()` internally hence impure and can't be safely curried.\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is yesterday\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // If today is 6 October 2014, is 5 October 14:00:00 yesterday?\n * const result = isYesterday(new Date(2014, 9, 5, 14, 0))\n * //=> true\n */\n\nexport default function isYesterday(dirtyDate) {\n requiredArgs(1, arguments);\n return isSameDay(dirtyDate, subDays(Date.now(), 1));\n}"],"names":[],"mappings":"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"}
|
|
@@ -3,9 +3,9 @@ import { PlaybackTime } from './ui/PlaybackTime.js';
|
|
|
3
3
|
import { ProgressBar } from './ui/ProgressBar.js';
|
|
4
4
|
import TextButton from './ui/TextButton.js';
|
|
5
5
|
import Icon, { IconTypes, IconColors } from './ui/Icon.js';
|
|
6
|
-
import { b as LabelColors, L as Label, a as LabelTypography } from './index-
|
|
7
|
-
import { u as useLocalization } from './LocalizationContext-
|
|
8
|
-
import { j as VOICE_RECORDER_CLICK_BUFFER_TIME, a as VOICE_RECORDER_DEFAULT_MIN } from './consts-
|
|
6
|
+
import { b as LabelColors, L as Label, a as LabelTypography } from './index-8e901b57.js';
|
|
7
|
+
import { u as useLocalization } from './LocalizationContext-654ae04f.js';
|
|
8
|
+
import { j as VOICE_RECORDER_CLICK_BUFFER_TIME, a as VOICE_RECORDER_DEFAULT_MIN } from './consts-9422accf.js';
|
|
9
9
|
|
|
10
10
|
var VoiceMessageInputStatus = {
|
|
11
11
|
READY_TO_RECORD: 'READY_TO_RECORD',
|
|
@@ -168,4 +168,4 @@ var VoiceMessageInput = function (_a) {
|
|
|
168
168
|
};
|
|
169
169
|
|
|
170
170
|
export { VoiceMessageInputStatus as V, VoiceMessageInput as a };
|
|
171
|
-
//# sourceMappingURL=index-
|
|
171
|
+
//# sourceMappingURL=index-7b8ea67e.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-e571f56c.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","IconTypes","PLAY","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","LabelColors","ONBACKGROUND_4","ONCONTENT_1","LabelTypography","BUTTON_1","PRIMARY","BUTTON__CANCEL","concat","SEND","ON_BACKGROUND_4","CONTENT"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index-7b8ea67e.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","IconTypes","PLAY","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","LabelColors","ONBACKGROUND_4","ONCONTENT_1","LabelTypography","BUTTON_1","PRIMARY","BUTTON__CANCEL","concat","SEND","ON_BACKGROUND_4","CONTENT"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as __assign, a as __spreadArray } from './tslib.es6-
|
|
1
|
+
import { _ as __assign, a as __spreadArray } from './tslib.es6-209c9f08.js';
|
|
2
2
|
import { OutgoingMessageStates, getOutgoingMessageState } from './utils/message/getOutgoingMessageState.js';
|
|
3
3
|
|
|
4
4
|
var SUPPORTED_MIMES = {
|
|
@@ -628,6 +628,11 @@ var StringObjType;
|
|
|
628
628
|
StringObjType["mention"] = "mention";
|
|
629
629
|
StringObjType["url"] = "url";
|
|
630
630
|
})(StringObjType || (StringObjType = {}));
|
|
631
|
+
/**
|
|
632
|
+
* @deprecated
|
|
633
|
+
* use smart-components/message/utils/tokenize instead
|
|
634
|
+
*/
|
|
635
|
+
|
|
631
636
|
|
|
632
637
|
var convertWordToStringObj = function (word, _users, _template) {
|
|
633
638
|
var users = _users || [];
|
|
@@ -702,5 +707,5 @@ var arrayEqual = function (array1, array2) {
|
|
|
702
707
|
return false;
|
|
703
708
|
};
|
|
704
709
|
|
|
705
|
-
export {
|
|
706
|
-
//# sourceMappingURL=index-
|
|
710
|
+
export { getSenderName as A, isTextMessage as B, isOGMessage as C, isSupportedFileView as D, isVideo as E, isImage as F, isUrl as G, getEmojiMapAll as H, isReactedBy as I, getEmojiTooltipString as J, getUIKitFileType as K, getUIKitFileTypes as L, isGif as M, convertWordToStringObj as N, StringObjType as S, UIKitMessageTypes as U, getSendingMessageStatus as a, isReadMessage as b, filterMessageListParams as c, isVoiceMessage as d, isEditedMessage as e, filterChannelListParams as f, getChannelsWithUpsertedChannel as g, isSentStatus as h, isTextuallyNull as i, getClassName as j, arrayEqual as k, isFileMessage as l, isImageMessage as m, isThumbnailMessage as n, isAudioMessage as o, isGifMessage as p, isVideoMessage as q, isUserMessage as r, getUIKitMessageType as s, truncateString as t, isSentMessage as u, isFailedMessage as v, isPendingMessage as w, copyToClipboard as x, getEmojiListAll as y, getUIKitMessageTypes as z };
|
|
711
|
+
//# sourceMappingURL=index-83ae3ffe.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-83ae3ffe.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\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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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React__default from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
import { g as getStringSet } from './stringSet-
|
|
3
|
+
import { g as getStringSet } from './stringSet-7c7d84fc.js';
|
|
4
4
|
|
|
5
5
|
const Typography = {
|
|
6
6
|
H_1: 'H_1',
|
|
@@ -108,9 +108,15 @@ function Label(_ref) {
|
|
|
108
108
|
color,
|
|
109
109
|
children
|
|
110
110
|
} = _ref;
|
|
111
|
-
return
|
|
112
|
-
|
|
113
|
-
|
|
111
|
+
return (
|
|
112
|
+
/*#__PURE__*/
|
|
113
|
+
// Donot make this into div
|
|
114
|
+
// Mention uses Label. If we use div, it would break the mention detection on Paste
|
|
115
|
+
// https://github.com/sendbird/sendbird-uikit-react/pull/479
|
|
116
|
+
React__default.createElement("span", {
|
|
117
|
+
className: [...(Array.isArray(className) ? className : [className]), 'sendbird-label', type ? changeTypographyToClassName(type) : '', color ? changeColorToClassName(color) : ''].join(' ')
|
|
118
|
+
}, children)
|
|
119
|
+
);
|
|
114
120
|
}
|
|
115
121
|
Label.propTypes = {
|
|
116
122
|
className: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),
|
|
@@ -129,4 +135,4 @@ const LabelColors = Colors;
|
|
|
129
135
|
const LabelStringSet = getStringSet('en');
|
|
130
136
|
|
|
131
137
|
export { Label as L, LabelTypography as a, LabelColors as b, LabelStringSet as c, changeColorToClassName as d };
|
|
132
|
-
//# sourceMappingURL=index-
|
|
138
|
+
//# sourceMappingURL=index-8e901b57.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-8e901b57.js","sources":["../src/ui/Label/types.js","../src/ui/Label/utils.js","../src/ui/Label/index.jsx"],"sourcesContent":["export const Typography = {\n H_1: 'H_1',\n H_2: 'H_2',\n SUBTITLE_1: 'SUBTITLE_1',\n SUBTITLE_2: 'SUBTITLE_2',\n BODY_1: 'BODY_1',\n BODY_2: 'BODY_2',\n BUTTON_1: 'BUTTON_1',\n BUTTON_2: 'BUTTON_2',\n CAPTION_1: 'CAPTION_1',\n CAPTION_2: 'CAPTION_2',\n CAPTION_3: 'CAPTION_3',\n};\n\nexport const Colors = {\n ONBACKGROUND_1: 'ONBACKGROUND_1',\n ONBACKGROUND_2: 'ONBACKGROUND_2',\n ONBACKGROUND_3: 'ONBACKGROUND_3',\n ONBACKGROUND_4: 'ONBACKGROUND_4',\n ONCONTENT_1: 'ONCONTENT_1',\n ONCONTENT_2: 'ONCONTENT_2',\n PRIMARY: 'PRIMARY',\n ERROR: 'ERROR',\n SECONDARY_3: 'SECONDARY_3',\n};\n","import { Typography, Colors } from './types';\n\nexport function changeTypographyToClassName(type) {\n switch (type) {\n case Typography.H_1: return 'sendbird-label--h-1';\n case Typography.H_2: return 'sendbird-label--h-2';\n case Typography.SUBTITLE_1: return 'sendbird-label--subtitle-1';\n case Typography.SUBTITLE_2: return 'sendbird-label--subtitle-2';\n case Typography.BODY_1: return 'sendbird-label--body-1';\n case Typography.BODY_2: return 'sendbird-label--body-2';\n case Typography.BUTTON_1: return 'sendbird-label--button-1';\n case Typography.BUTTON_2: return 'sendbird-label--button-2';\n case Typography.CAPTION_1: return 'sendbird-label--caption-1';\n case Typography.CAPTION_2: return 'sendbird-label--caption-2';\n case Typography.CAPTION_3: return 'sendbird-label--caption-3';\n default: return '';\n }\n}\n\nexport function changeColorToClassName(color) {\n switch (color) {\n case Colors.ONBACKGROUND_1: return 'sendbird-label--color-onbackground-1';\n case Colors.ONBACKGROUND_2: return 'sendbird-label--color-onbackground-2';\n case Colors.ONBACKGROUND_3: return 'sendbird-label--color-onbackground-3';\n case Colors.ONBACKGROUND_4: return 'sendbird-label--color-onbackground-4';\n case Colors.ONCONTENT_1: return 'sendbird-label--color-oncontent-1';\n case Colors.ONCONTENT_2: return 'sendbird-label--color-oncontent-2';\n case Colors.PRIMARY: return 'sendbird-label--color-primary'; // should be Primary-3 fix me\n case Colors.ERROR: return 'sendbird-label--color-error';\n case Colors.SECONDARY_3: return 'sendbird-label--color-secondary-3';\n default: return '';\n }\n}\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport './index.scss';\nimport { Typography, Colors } from './types';\nimport { changeTypographyToClassName, changeColorToClassName } from './utils';\nimport getStringSet from './stringSet';\n\nexport default function Label({\n className,\n type,\n color,\n children,\n}) {\n return (\n // Donot make this into div\n // Mention uses Label. If we use div, it would break the mention detection on Paste\n // https://github.com/sendbird/sendbird-uikit-react/pull/479\n <span\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-label',\n type ? changeTypographyToClassName(type) : '',\n color ? changeColorToClassName(color) : '',\n ].join(' ')}\n >\n {children}\n </span>\n );\n}\n\nLabel.propTypes = {\n className: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n type: PropTypes.string,\n color: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.element,\n PropTypes.any,\n ]),\n};\n\nLabel.defaultProps = {\n className: [],\n type: '',\n color: '',\n children: null,\n};\n\nconst LabelTypography = Typography;\nconst LabelColors = Colors;\nconst LabelStringSet = getStringSet('en');\nexport { LabelTypography, LabelColors, LabelStringSet };\n"],"names":["Typography","H_1","H_2","SUBTITLE_1","SUBTITLE_2","BODY_1","BODY_2","BUTTON_1","BUTTON_2","CAPTION_1","CAPTION_2","CAPTION_3","Colors","ONBACKGROUND_1","ONBACKGROUND_2","ONBACKGROUND_3","ONBACKGROUND_4","ONCONTENT_1","ONCONTENT_2","PRIMARY","ERROR","SECONDARY_3","changeTypographyToClassName","type","changeColorToClassName","color","Label","className","children","React","Array","isArray","join","propTypes","PropTypes","oneOfType","string","arrayOf","number","element","any","defaultProps","LabelTypography","LabelColors","LabelStringSet","getStringSet"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React__default, { useReducer, useContext, createContext } from 'react';
|
|
2
|
-
import { _ as __assign } from './tslib.es6-
|
|
3
|
-
import { f as VOICE_PLAYER_ROOT_ID, g as VOICE_PLAYER_AUDIO_ID, b as VOICE_MESSAGE_FILE_NAME, c as VOICE_MESSAGE_MIME_TYPE } from './consts-
|
|
2
|
+
import { _ as __assign } from './tslib.es6-209c9f08.js';
|
|
3
|
+
import { f as VOICE_PLAYER_ROOT_ID, g as VOICE_PLAYER_AUDIO_ID, b as VOICE_MESSAGE_FILE_NAME, c as VOICE_MESSAGE_MIME_TYPE } from './consts-9422accf.js';
|
|
4
4
|
import useSendbirdStateContext from './useSendbirdStateContext.js';
|
|
5
5
|
|
|
6
6
|
var INITIALIZE_AUDIO_UNIT = 'INITIALIZE_AUDIO_UNIT';
|
|
@@ -286,4 +286,4 @@ var useVoicePlayerContext = function () {
|
|
|
286
286
|
};
|
|
287
287
|
|
|
288
288
|
export { AudioUnitDefaultValue as A, VoicePlayerProvider as V, VoicePlayerStatus as a, useVoicePlayerContext as u };
|
|
289
|
-
//# sourceMappingURL=index-
|
|
289
|
+
//# sourceMappingURL=index-9626a87e.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-e1cff2ff.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 new Promise((resolve) => {\n if (audioFile) {\n resolve(audioFile);\n }\n if (audioStorage?.[groupKey]?.audioFile) {\n resolve(audioStorage[groupKey].audioFile)\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 });\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","display","useVoicePlayerContext","useContext"],"mappings":";;;;;AAYO,IAAMA,qBAAqB,GAA0B,uBAArD,CAAA;AACA,IAAMC,kBAAkB,GAA0B,oBAAlD,CAAA;AACA,IAAMC,oBAAoB,GAA0B,sBAApD,CAAA;AACA,IAAMC,qBAAqB,GAA0B,uBAArD,CAAA;AACA,IAAMC,sBAAsB,GAA0B,wBAAtD;;ACdA,IAAMC,iBAAiB,GAAG;AAC/BC,EAAAA,IAAI,EAAE,MADyB;AAE/BC,EAAAA,SAAS,EAAE,WAFoB;AAG/BC,EAAAA,OAAO,EAAE,SAHsB;AAI/BC,EAAAA,MAAM,EAAE,QAJuB;AAK/BC,EAAAA,SAAS,EAAE,WAAA;AALoB,EAA1B;AAeA,IAAMC,qBAAqB,GAAG,YAAA;EAAwB,OAAC;AAC5DC,IAAAA,SAAS,EAAE,IADiD;AAE5DC,IAAAA,YAAY,EAAE,CAF8C;AAG5DC,IAAAA,QAAQ,EAAE,IAHkD;IAI5DC,aAAa,EAAEV,iBAAiB,CAACC,IAAAA;GAJ0B,CAAA;AAK3D,EALK;AAaA,IAAMU,uBAAuB,GAA4B;AAC9DC,EAAAA,aAAa,EAAE,IAD+C;AAE9DC,EAAAA,eAAe,EAAE,EAF6C;AAG9DC,EAAAA,YAAY,EAAE,EAAA;AAHgD,CAAzD;;ACCO,SAAUC,kBAAV,CACZC,KADY,EAEZC,MAFY,EAEM;;;;;EAElB,QAAQA,MAAM,CAACC,IAAf;AACE,IAAA,KAAKvB,qBAAL;AAA4B,MAAA;AAClB,QAAA,IAAAwB,QAAQ,GAAKF,MAAM,CAACG,OAAP,SAAb,CAAA;AACR,QAAA,IAAMC,SAAS,GAAI,CAAA,CAAAC,EAAA,GAAAN,KAAK,CAACF,YAAN,MAAkB,IAAlB,IAAkBQ,EAAA,KAAA,KAAA,CAAlB,GAAkB,KAAA,CAAlB,GAAkBA,EAAA,CAAGH,QAAH,CAAlB,IAAiCH,KAAK,CAACF,YAAN,CAAmBK,QAAnB,CAAjC,GAAgEb,qBAAqB,EAAxG,CAAA;AACAe,QAAAA,SAAS,CAACX,aAAV,GAA0BV,iBAAiB,CAACE,SAA5C,CAAA;QACA,OACKqB,QAAA,CAAAA,QAAA,CAAA,EAAA,EAAAP,KAAA,CAAA,EACH;UAAAF,YAAY,EACPS,QAAA,CAAAA,QAAA,CAAA,EAAA,EAAAP,KAAK,CAACF,YAAN,CAAA,GACFU,EAAA,GAAA,EAAA,EAAAA,EAAA,CAAAL,QAAA,CAAA,GAAWE,SAAX,EAEHG,EAHK,EAAA;AADL,SADG,CADL,CAAA;AAOD,OAAA;;AACD,IAAA,KAAK5B,kBAAL;AAAyB,MAAA;AACjB,QAAA,IAAA6B,EAAA,GAA4BR,MAAM,CAACG,OAAnC;AAAA,YAAEM,WAAW,GAAAD,EAAA,CAAAC,WAAb;AAAA,YAAeP,QAAQ,GAAAM,EAAA,CAAAN,QAAvB,CAAA;QACN,OACKI,QAAA,CAAAA,QAAA,CAAA,EAAA,EAAAP,KAAA,CAAA;AACHJ,UAAAA,aAAa,EAAEc;AACfb,UAAAA,eAAe,EAAEM,QAAAA;SAFd,CADL,CAAA;AAKD,OAAA;;AACD,IAAA,KAAKtB,oBAAL;AAA2B,MAAA;AACnB,QAAA,IAAA8B,EAAA,GAA0BV,MAAM,CAACG,OAAjC;AAAA,YAAED,QAAQ,GAAAQ,EAAA,CAAAR,QAAV;AAAA,YAAYZ,SAAS,GAAAoB,EAAA,CAAApB,SAArB,CAAA;AACN,QAAA,IAAMc,SAAS,GAAI,CAAA,CAAAO,EAAA,GAAAZ,KAAK,CAACF,YAAN,MAAkB,IAAlB,IAAkBc,EAAA,KAAA,KAAA,CAAlB,GAAkB,KAAA,CAAlB,GAAkBA,EAAA,CAAGT,QAAH,CAAlB,IAAiCH,KAAK,CAACF,YAAN,CAAmBK,QAAnB,CAAjC,GAAgEb,qBAAqB,EAAxG,CAAA;QACAe,SAAS,CAACd,SAAV,GAAsBA,SAAtB,CAAA;AACAc,QAAAA,SAAS,CAACX,aAAV,GAA0BV,iBAAiB,CAACG,OAA5C,CAAA;QACA,OACKoB,QAAA,CAAAA,QAAA,CAAA,EAAA,EAAAP,KAAA,CAAA,EACH;UAAAF,YAAY,EACPS,QAAA,CAAAA,QAAA,CAAA,EAAA,EAAAP,KAAK,CAACF,YAAN,CAAA,GACFe,EAAA,GAAA,EAAA,EAAAA,EAAA,CAAAV,QAAA,CAAA,GAAWE,SAAX,EAEHQ,EAHK,EAAA;AADL,SADG,CADL,CAAA;AAOD,OAAA;;AACD,IAAA,KAAK/B,qBAAL;AAA4B,MAAA;AAClB,QAAA,IAAAqB,QAAQ,GAAKF,MAAM,CAACG,OAAP,SAAb,CAAA;AACR,QAAA,IAAMC,SAAS,GAAI,CAAA,CAAAS,EAAA,GAAAd,KAAK,CAACF,YAAN,MAAkB,IAAlB,IAAkBgB,EAAA,KAAA,KAAA,CAAlB,GAAkB,KAAA,CAAlB,GAAkBA,EAAA,CAAGX,QAAH,CAAlB,IAAiCH,KAAK,CAACF,YAAN,CAAmBK,QAAnB,CAAjC,GAAgEb,qBAAqB,EAAxG,CAAA;AACAe,QAAAA,SAAS,CAACX,aAAV,GAA0BV,iBAAiB,CAACI,MAA5C,CAAA;AACM,QAAA,IAAA2B,EAAA,GAA4Bf,KAAK,CAACJ,aAAlC;AAAA,YAAEoB,WAAW,GAAAD,EAAA,CAAAC,WAAb;AAAA,YAAevB,QAAQ,GAAAsB,EAAA,CAAAtB,QAAvB,CAAA;;AACN,QAAA,IAAIY,SAAS,CAACb,YAAV,KAA2Ba,SAAS,CAACZ,QAAzC,EAAmD;UACjDY,SAAS,CAACb,YAAV,GAAyB,CAAzB,CAAA;SADF,MAEO,IAAIwB,WAAW,GAAG,CAAd,IAAmBvB,QAAQ,GAAG,CAAlC,EAAqC;UAC1CY,SAAS,CAACb,YAAV,GAAyBwB,WAAzB,CAAA;UACAX,SAAS,CAACZ,QAAV,GAAqBA,QAArB,CAAA;AACD,SAAA;;QACD,OACKc,QAAA,CAAAA,QAAA,CAAA,EAAA,EAAAP,KAAA,CAAA,EACH;UAAAF,YAAY,EACPS,QAAA,CAAAA,QAAA,CAAA,EAAA,EAAAP,KAAK,CAACF,YAAN,CAAA,GACFmB,EAAA,GAAA,EAAA,EAAAA,EAAA,CAAAd,QAAA,CAAA,GAAWE,SAAX,EAEHY,EAHK,EAAA;AADL,SADG,CADL,CAAA;AAOD,OAAA;;AACD,IAAA,KAAKlC,sBAAL;AAA6B,MAAA;AACnB,QAAA,IAAAoB,QAAQ,GAAKF,MAAM,CAACG,OAAP,SAAb,CAAA;AACF,QAAA,IAAAc,EAAA,GAA4BlB,KAAK,CAACJ,aAAlC;AAAA,YAAEoB,WAAW,GAAAE,EAAA,CAAAF,WAAb;AAAA,YAAevB,QAAQ,GAAAyB,EAAA,CAAAzB,QAAvB,CAAA;AACN,QAAA,IAAMY,SAAS,GAAI,CAAA,CAAAc,EAAA,GAAAnB,KAAK,CAACF,YAAN,MAAkB,IAAlB,IAAkBqB,EAAA,KAAA,KAAA,CAAlB,GAAkB,KAAA,CAAlB,GAAkBA,EAAA,CAAGhB,QAAH,CAAlB,IAAiCH,KAAK,CAACF,YAAN,CAAmBK,QAAnB,CAAjC,GAAgEb,qBAAqB,EAAxG,CAAA;;AACA,QAAA,IAAI0B,WAAW,GAAG,CAAd,IAAmBvB,QAAQ,GAAG,CAAlC,EAAqC;UACnCY,SAAS,CAACb,YAAV,GAAyBwB,WAAzB,CAAA;UACAX,SAAS,CAACZ,QAAV,GAAqBA,QAArB,CAAA;AACD,SAAA;;QACD,OACKc,QAAA,CAAAA,QAAA,CAAA,EAAA,EAAAP,KAAA,CAAA,EACH;UAAAF,YAAY,EACPS,QAAA,CAAAA,QAAA,CAAA,EAAA,EAAAP,KAAK,CAACF,YAAN,CAAA,GACFsB,EAAA,GAAA,EAAA,EAAAA,EAAA,CAAAjB,QAAA,CAAA,GAAWE,SAAX,EAEHe,EAHK,EAAA;AADL,SADG,CADL,CAAA;AAOD,OAAA;;AACD,IAAA;AACE,MAAA,OAAOpB,KAAP,CAAA;AAtEJ,GAAA;AAwED;;ACpED,IAAMqB,IAAI,GAAG,YAAkB,EAA/B,CAAA;;AACA,IAAMC,4BAA4B,GAAG;AACnCzB,EAAAA,eAAe,EAAE,EADkB;AAEnCD,EAAAA,aAAa,EAAE,IAFoB;AAGnCE,EAAAA,YAAY,EAAE,EAAA;AAHqB,CAArC,CAAA;AAMA,IAAMyB,kBAAkB,gBAAGC,aAAa,CAAqB;AAC3DC,EAAAA,IAAI,EAAEJ,IADqD;AAE3DK,EAAAA,KAAK,EAAEL,IAFoD;AAG3DM,EAAAA,IAAI,EAAEN,IAHqD;AAI3DO,EAAAA,gBAAgB,EAAEN,4BAAAA;AAJyC,CAArB,CAAxC,CAAA;AAOaO,IAAAA,mBAAmB,GAAG,UAACrB,EAAD,EAEhB;AADjB,EAAA,IAAAsB,QAAQ,GAAAtB,EAAA,CAAAsB,QAAR,CAAA;;AAEM,EAAA,IAAAjB,EAA4C,GAAAkB,UAAU,CAAChC,kBAAD,EAAqBJ,uBAArB,CAAtD;AAAA,MAACiC,gBAAgB,GAAAf,EAAA,CAAA,CAAA,CAAjB;AAAA,MAAmBmB,qBAAqB,QAAxC,CAAA;;AAEJ,EAAA,IAAAnC,eAAe,GAGb+B,gBAAgB,CAAA/B,eAHlB;AAAA,MACAD,aAAa,GAEXgC,gBAAgB,CAAAhC,aAHlB;AAAA,MAEAE,YAAY,GACV8B,gBAAgB,aAHlB,CAAA;AAIM,EAAA,IAAAK,MAAM,GAAKC,uBAAuB,EAAA,OAAlC,CAAA;AACA,EAAA,IAAAC,MAAM,GAAKF,MAAM,CAAAE,MAAjB,CAAA;;AAER,EAAA,IAAMR,IAAI,GAAG,UAACS,IAAD,EAAU;AAAT,IAAA,IAAAA,IAAA,KAAA,KAAA,CAAA,EAAA;AAAAA,MAAAA,IAAS,GAAA,EAAT,CAAA;AAAS,KAAA;;AACrB,IAAA,IAAIvC,eAAe,CAACwC,QAAhB,CAAyBD,IAAzB,CAAJ,EAAoC;MAClCD,MAAM,CAACG,IAAP,CAAY,sCAAZ,CAAA,CAAA;MACAZ,KAAK,CAAC7B,eAAD,CAAL,CAAA;AACD,KAAA;GAJH,CAAA;;AAOA,EAAA,IAAM6B,KAAK,GAAG,UAACvB,QAAD,EAAiB;AAC7B,IAAA,IAAIN,eAAe,KAAKM,QAApB,IAAgCP,aAAa,KAAK,IAAtD,EAA4D;MAC1DuC,MAAM,CAACG,IAAP,CAAY,2CAAZ,CAAA,CAAA;AACA1C,MAAAA,aAAa,SAAb,IAAAA,aAAa,KAAA,KAAA,CAAb,GAAa,KAAA,CAAb,GAAAA,aAAa,CAAE8B,KAAf,EAAA,CAAA;AACD,KAAA;GAJH,CAAA;;AAOA,EAAA,IAAMD,IAAI,GAAG,UAACjB,EAAD,EAIU;AAHrB,IAAA,IAAAL,QAAQ,GAAAK,EAAA,CAAAL,QAAR;AAAA,QACAU,EAAgB,GAAAL,EAAA,CAAAjB,SADhB;QACAA,SAAS,GAAGsB,EAAA,KAAA,KAAA,CAAA,GAAA,IAAA,GAAIA,EADhB;AAAA,QAEAI,EAAiB,GAAAT,EAAA,CAAA+B,YAFjB;QAEAA,YAAY,GAAAtB,EAAA,KAAA,KAAA,CAAA,GAAG,EAAH,GAAKA,EAFjB,CAAA;;IAIA,IAAId,QAAQ,KAAKN,eAAjB,EAAkC;MAChC6B,KAAK,CAAC7B,eAAD,CAAL,CAAA;AACD,KAHoB;;;AAMrB,IAAA,IAAM2C,eAAe,GAAGC,QAAQ,CAACC,cAAT,CAAwBC,oBAAxB,CAAxB,CAAA;AACA,IAAA,IAAMC,uBAAuB,GAAGH,QAAQ,CAACC,cAAT,CAAwBG,qBAAxB,CAAhC,CAAA;;AACA,IAAA,IAAID,uBAAJ,EAA6B;MAC3BJ,eAAe,CAACM,WAAhB,CAA4BF,uBAA5B,CAAA,CAAA;AACD,KAAA;;AAED,IAAA,IAAIG,OAAJ,CAAY,UAACC,OAAD,EAAQ;;;AAClB,MAAA,IAAIzD,SAAJ,EAAe;QACbyD,OAAO,CAACzD,SAAD,CAAP,CAAA;AACD,OAAA;;AACD,MAAA,IAAI,CAAAiB,EAAA,GAAAV,YAAY,KAAA,IAAZ,IAAAA,YAAY,KAAA,KAAA,CAAZ,GAAY,KAAA,CAAZ,GAAAA,YAAY,CAAGK,QAAH,CAAZ,MAA0B,IAA1B,IAA0BK,EAAA,KAAA,KAAA,CAA1B,GAA0B,KAAA,CAA1B,GAA0BA,EAAA,CAAAjB,SAA9B,EAAyC;AACvCyD,QAAAA,OAAO,CAAClD,YAAY,CAACK,QAAD,CAAZ,CAAuBZ,SAAxB,CAAP,CAAA;AACD,OAAA;;AACDyC,MAAAA,qBAAqB,CAAC;AACpB9B,QAAAA,IAAI,EAAEvB,qBADc;AAEpByB,QAAAA,OAAO,EAAE;AAAED,UAAAA,QAAQ,EAAAA,QAAAA;AAAV,SAAA;AAFW,OAAD,CAArB,CAAA;MAIA8C,KAAK,CAACV,YAAD,CAAL,CACGW,IADH,CACQ,UAACC,GAAD,EAAS;QAAA,OAAAA,GAAG,CAACC,IAAJ,EAAA,CAAA;AAAU,OAD3B,CAEGF,CAAAA,IAFH,CAEQ,UAACE,IAAD,EAAK;QACT,IAAM7D,SAAS,GAAG,IAAI8D,IAAJ,CAAS,CAACD,IAAD,CAAT,EAAiBE,uBAAjB,EAA0C;AAC1DC,UAAAA,YAAY,EAAE,IAAIC,IAAJ,EAAA,CAAWC,OAAX,EAD4C;AAE1DvD,UAAAA,IAAI,EAAEwD,uBAAAA;AAFoD,SAA1C,CAAlB,CAAA;QAIAV,OAAO,CAACzD,SAAD,CAAP,CAAA;OAPJ,CAAA,CAAA;AASD,KApBD,CAoBG2D,CAAAA,IApBH,CAoBQ,UAAC3D,SAAD,EAAgB;;;AACtB4C,MAAAA,MAAM,CAACG,IAAP,CAAY,4CAAZ,EAA0D/C,SAA1D,CAAA,CAAA;MACA,IAAMoE,gBAAgB,GAAG7D,YAAY,CAACK,QAAD,CAAZ,IAA0Bb,qBAAqB,EAAxE,CAAA;AACA,MAAA,IAAMoB,WAAW,GAAG,IAAIkD,KAAJ,CAAU,MAAAC,GAAG,KAAA,IAAH,IAAAA,GAAG,KAAA,KAAA,CAAH,GAAG,KAAA,CAAH,GAAAA,GAAG,CAAEC,eAAL,UAAA,iBAAA,SAAA,gBAAuBvE,UAAjC,CAApB,CAAA;MACAmB,WAAW,CAACqD,EAAZ,GAAiBlB,qBAAjB,CAAA;AACAnC,MAAAA,WAAW,CAACM,WAAZ,GAA0B2C,gBAAgB,CAACnE,YAA3C,CAAA;MACAkB,WAAW,CAACsD,MAAZ,GAAqB,CAArB,CAAA;MACAtD,WAAW,CAACuD,IAAZ,GAAmB,KAAnB,CAAA;;MACAvD,WAAW,CAACwD,SAAZ,GAAwB,YAAA;AACtB/B,QAAAA,MAAM,CAACG,IAAP,CAAY,yDAAZ,EAAuE;AAAEnC,UAAAA,QAAQ,EAAAA,QAAV;AAAYO,UAAAA,WAAW,EAAAA,WAAAA;SAA9F,CAAA,CAAA;AACAsB,QAAAA,qBAAqB,CAAC;AACpB9B,UAAAA,IAAI,EAAErB,oBADc;AAEpBuB,UAAAA,OAAO,EAAE;AAAED,YAAAA,QAAQ,UAAV;AAAYZ,YAAAA,SAAS;AAArB,WAAA;AAFW,SAAD,CAArB,CAAA;OAFF,CAAA;;MAOAmB,WAAW,CAACyD,OAAZ,GAAsB,YAAA;AACpBhC,QAAAA,MAAM,CAACG,IAAP,CAAY,uDAAZ,EAAqE;AAAEnC,UAAAA,QAAQ,EAAAA,QAAV;AAAYO,UAAAA,WAAW,EAAAA,WAAAA;SAA5F,CAAA,CAAA;AACAsB,QAAAA,qBAAqB,CAAC;AACpB9B,UAAAA,IAAI,EAAEpB,qBADc;AAEpBsB,UAAAA,OAAO,EAAE;AAAED,YAAAA,QAAQ,EAAAA,QAAAA;AAAV,WAAA;AAFW,SAAD,CAArB,CAAA;OAFF,CAAA;;MAOAO,WAAW,CAAC0D,YAAZ,GAA2B,YAAA;AACzBpC,QAAAA,qBAAqB,CAAC;AACpB9B,UAAAA,IAAI,EAAEnB,sBADc;AAEpBqB,UAAAA,OAAO,EAAE;AAAED,YAAAA,QAAQ,EAAAA,QAAAA;AAAV,WAAA;AAFW,SAAD,CAArB,CAAA;OADF,CAAA;;AAMAO,MAAAA,WAAW,SAAX,IAAAA,WAAW,KAAA,KAAA,CAAX,GAAW,KAAA,CAAX,GAAAA,WAAW,CAAEe,IAAb,EAAA,CAAA;AACA,MAAA,IAAMe,eAAe,GAAGC,QAAQ,CAACC,cAAT,CAAwBC,oBAAxB,CAAxB,CAAA;MACAH,eAAe,CAAC6B,WAAhB,CAA4B3D,WAA5B,CAAA,CAAA;AACAsB,MAAAA,qBAAqB,CAAC;AACpB9B,QAAAA,IAAI,EAAEtB,kBADc;AAEpBwB,QAAAA,OAAO,EAAE;AAAED,UAAAA,QAAQ,UAAV;AAAYO,UAAAA,WAAW;AAAvB,SAAA;AAFW,OAAD,CAArB,CAAA;AAIAyB,MAAAA,MAAM,CAACG,IAAP,CAAY,8CAAZ,EAA4D;AAAEnC,QAAAA,QAAQ,EAAAA,QAAV;AAAYO,QAAAA,WAAW,EAAAA,WAAAA;OAAnF,CAAA,CAAA;KAvDF,CAAA,CAAA;GAhBF,CAAA;;EA2EA,oBACE4D,cAAA,CAAA,aAAA,CAAC,kBAAD,CAAoB,QAApB,EAAA;AAA6B,IAAA,KAAK,EAAE;AAClC7C,MAAAA,IAAI,EAAAA,IAD8B;AAElCC,MAAAA,KAAK,EAAAA,KAF6B;AAGlCC,MAAAA,IAAI,EAAAA,IAH8B;AAIlCC,MAAAA,gBAAgB,EAAAA,gBAAAA;AAJkB,KAAA;GAMlC,eAAA0C,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,EAAE,EAAE3B,oBAAT;AAA+B,IAAA,KAAK,EAAE;AAAE4B,MAAAA,OAAO,EAAE,MAAA;AAAX,KAAA;GANxC,CAAA,EAOGzC,QAPH,CADF,CAAA;AAWD,EAhHM;AAkHA,IAAM0C,qBAAqB,GAAG,YAA0B;EAAA,OAAAC,UAAU,CAAClD,kBAAD,CAAV,CAAA;AAA8B;;;;"}
|
|
1
|
+
{"version":3,"file":"index-9626a87e.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 new Promise((resolve) => {\n if (audioFile) {\n resolve(audioFile);\n }\n if (audioStorage?.[groupKey]?.audioFile) {\n resolve(audioStorage[groupKey].audioFile)\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 });\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","display","useVoicePlayerContext","useContext"],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { a as __spreadArray } from './tslib.es6-
|
|
1
|
+
import { a as __spreadArray } from './tslib.es6-209c9f08.js';
|
|
2
2
|
import React__default from 'react';
|
|
3
|
-
import { f as format } from './index-
|
|
3
|
+
import { f as format } from './index-aced8439.js';
|
|
4
4
|
import Icon, { IconTypes, IconColors } from './ui/Icon.js';
|
|
5
|
-
import { c as LabelStringSet, L as Label, a as LabelTypography, b as LabelColors } from './index-
|
|
5
|
+
import { c as LabelStringSet, L as Label, a as LabelTypography, b as LabelColors } from './index-8e901b57.js';
|
|
6
6
|
import Loader from './ui/Loader.js';
|
|
7
|
-
import { t as truncateString, h as isSentStatus } from './index-
|
|
7
|
+
import { t as truncateString, h as isSentStatus } from './index-83ae3ffe.js';
|
|
8
8
|
import { getOutgoingMessageState, OutgoingMessageStates } from './utils/message/getOutgoingMessageState.js';
|
|
9
|
-
import { i as isToday, a as isYesterday, b as isThisYear } from './index-
|
|
10
|
-
import { u as useLocalization } from './LocalizationContext-
|
|
9
|
+
import { i as isToday, a as isYesterday, b as isThisYear } from './index-6e33b2e0.js';
|
|
10
|
+
import { u as useLocalization } from './LocalizationContext-654ae04f.js';
|
|
11
11
|
|
|
12
12
|
const getChannelTitle = function () {
|
|
13
13
|
var _channel$members;
|
|
@@ -142,4 +142,4 @@ function MessageStatus(_a) {
|
|
|
142
142
|
}
|
|
143
143
|
|
|
144
144
|
export { MessageStatus as M, getTotalMembers as a, getLastMessageCreatedAt as b, getLastMessage as c, getChannelUnreadMessageCount as d, MessageStatusTypes as e, getChannelTitle as g };
|
|
145
|
-
//# sourceMappingURL=index-
|
|
145
|
+
//# sourceMappingURL=index-a52a0b76.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-5be5af6d.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","currentUserId","stringSet","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","userId","map","nickname","NO_NAME","join","getLastMessageCreatedAt","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","__spreadArray","Array","isArray","SPINNER","PRIMARY","concat","isSentStatus","LabelTypography","CAPTION_3","LabelColors","ONBACKGROUND_2"],"mappings":";;;;;;;;;;;AAQO,MAAMA,eAAe,GAAG,YAA6D;AAAA,EAAA,IAAA,gBAAA,CAAA;;EAAA,IAA5DC,OAA4D,uEAAlD,EAAkD,CAAA;AAAA,EAAA,IAA9CC,aAA8C,GAAA,SAAA,CAAA,MAAA,GAAA,CAAA,GAAA,SAAA,CAAA,CAAA,CAAA,GAAA,SAAA,CAAA;EAAA,IAA/BC,SAA+B,uEAAnBC,cAAmB,CAAA;;AAC1F,EAAA,IAAI,EAACH,OAAD,KAAA,IAAA,IAACA,OAAD,KAACA,KAAAA,CAAAA,IAAAA,OAAO,CAAEI,IAAV,CAAA,IAAkB,EAACJ,OAAD,aAACA,OAAD,KAAA,KAAA,CAAA,IAACA,OAAO,CAAEK,OAAV,CAAtB,EAAyC;IACvC,OAAOH,SAAS,CAACI,QAAjB,CAAA;AACD,GAAA;;AACD,EAAA,IAAIN,OAAO,KAAA,IAAP,IAAAA,OAAO,WAAP,IAAAA,OAAO,CAAEI,IAAT,IAAiBJ,OAAO,CAACI,IAAR,KAAiB,eAAtC,EAAuD;IACrD,OAAOJ,OAAO,CAACI,IAAf,CAAA;AACD,GAAA;;AACD,EAAA,IAAI,CAAAJ,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,CAAA,gBAAA,GAAAA,OAAO,CAAEK,OAAT,MAAA,IAAA,IAAA,gBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,gBAAA,CAAkBE,MAAlB,MAA6B,CAAjC,EAAoC;IAClC,OAAOL,SAAS,CAACM,UAAjB,CAAA;AACD,GAAA;;AACD,EAAA,OAAO,CAAC,CAAAR,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAA,KAAA,CAAP,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEK,OAAT,KAAoB,EAArB,EACJI,MADI,CACG,IAAA,IAAA;IAAA,IAAC;AAAEC,MAAAA,MAAAA;KAAH,GAAA,IAAA,CAAA;IAAA,OAAgBA,MAAM,KAAKT,aAA3B,CAAA;GADH,CAAA,CAEJU,GAFI,CAEA,KAAA,IAAA;IAAA,IAAC;AAAEC,MAAAA,QAAAA;KAAH,GAAA,KAAA,CAAA;AAAA,IAAA,OAAmBA,QAAQ,IAAIV,SAAS,CAACW,OAAzC,CAAA;AAAA,GAFA,CAGJC,CAAAA,IAHI,CAGC,IAHD,CAAP,CAAA;AAID,EAdM;AAgBA,MAAMC,uBAAuB,GAAG,KAIjC,IAAA;AAAA,EAAA,IAAA,oBAAA,CAAA;;EAAA,IAJkC;IACtCf,OADsC;IAEtCgB,MAFsC;AAGtCd,IAAAA,SAAAA;GACI,GAAA,KAAA,CAAA;EACJ,MAAMe,SAAS,GAAGjB,OAAH,KAAGA,IAAAA,IAAAA,OAAH,KAAGA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAAA,oBAAAA,GAAAA,OAAO,CAAEkB,WAAZ,MAAG,IAAA,IAAA,oBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,oBAAA,CAAsBD,SAAxC,CAAA;EACA,MAAME,aAAa,GAAGH,MAAM,GAAG;AAAEA,IAAAA,MAAAA;AAAF,GAAH,GAAgB,IAA5C,CAAA;;EACA,IAAI,CAACC,SAAL,EAAgB;AACd,IAAA,OAAO,EAAP,CAAA;AACD,GAAA;;AACD,EAAA,IAAIG,OAAO,CAACH,SAAD,CAAX,EAAwB;AACtB,IAAA,OAAOI,MAAM,CAACJ,SAAD,EAAY,GAAZ,EAAiBE,aAAjB,CAAb,CAAA;AACD,GAAA;;AACD,EAAA,IAAIG,WAAW,CAACL,SAAD,CAAf,EAA4B;IAC1B,OAAO,CAAAf,SAAS,KAAA,IAAT,IAAAA,SAAS,KAAT,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,SAAS,CAAEqB,yBAAX,KAAwC,WAA/C,CAAA;AACD,GAAA;;AACD,EAAA,IAAIC,UAAU,CAACP,SAAD,CAAd,EAA2B;AACzB,IAAA,OAAOI,MAAM,CAACJ,SAAD,EAAY,OAAZ,EAAqBE,aAArB,CAAb,CAAA;AACD,GAAA;;AACD,EAAA,OAAOE,MAAM,CAACJ,SAAD,EAAY,UAAZ,EAAwBE,aAAxB,CAAb,CAAA;AACD,EApBM;MAsBMM,eAAe,GAAIzB,OAAD,IAC7BA,OAAO,SAAP,IAAAA,OAAO,WAAP,IAAAA,OAAO,CAAE0B,WAAT,GACI1B,OAAO,CAAC0B,WADZ,GAEI,EAHC;;AAMP,MAAMC,oBAAoB,GAAG,YAAkB;EAAA,IAAjBC,OAAiB,uEAAP,EAAO,CAAA;EAC7C,MAAMC,MAAM,GAAG,EAAf,CAAA;EACA,MAAM;IAAEC,WAAF;AAAe1B,IAAAA,IAAAA;AAAf,GAAA,GAAwBwB,OAA9B,CAAA;;EACA,IAAIE,WAAW,KAAK,MAApB,EAA4B;AAC1B,IAAA,OAAOC,cAAc,CAAC3B,IAAD,EAAOyB,MAAP,CAArB,CAAA;AACD,GAAA;;EACD,OAAOD,OAAO,CAACA,OAAf,CAAA;AACD,CAPD,CAAA;;AASO,MAAMI,cAAc,GAAIhC,OAAD,IAAcA,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAP,KAAA,CAAA,IAAAA,OAAO,CAAEkB,WAAT,GAAuBS,oBAAoB,CAAC3B,OAAD,KAACA,IAAAA,IAAAA,OAAD,KAACA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEkB,WAAV,CAA3C,GAAoE,GAAzG;MAEMe,4BAA4B,GAAIjC,OAAD,IAC1CA,OAAO,SAAP,IAAAA,OAAO,WAAP,IAAAA,OAAO,CAAEkC,kBAAT,GACIlC,OAAO,CAACkC,kBADZ,GAEI;;AChDC,IAAMC,kBAAkB,GAAGC,sBAA3B;AASiB,SAAAC,aAAA,CAAcC,EAAd,EAKH;;;;;AAJnB,EAAA,IAAAC,SAAS,GAAAD,EAAA,CAAAC,SAAT;AAAA,MACAX,OAAO,GAAAU,EAAA,CAAAV,OADP;AAAA,MAEA5B,OAAO,GAAAsC,EAAA,CAAAtC,OAFP;AAAA,MAGAwC,EAAgC,GAAAF,EAAA,CAAAG,yBAHhC;MAGAA,yBAAyB,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,IAAH,GAAOA,EAHhC,CAAA;;EAKM,IAAAE,EAAA,GAA4BC,eAAe,EAA3C;AAAA,MAAEzC,SAAS,GAAAwC,EAAA,CAAAxC,SAAX;AAAA,MAAa0C,UAAU,GAAAF,EAAA,CAAAE,UAAvB,CAAA;;AACN,EAAA,IAAMC,MAAM,GAAGC,uBAAuB,CAAC9C,OAAD,EAAU4B,OAAV,CAAtC,CAAA;AACA,EAAA,IAAMmB,qBAAqB,GAAG,CAAA,CAAAC,EAAA,GAAAhD,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAEiD,cAAT,MAA2B,IAA3B,IAA2BD,EAAA,KAAA,KAAA,CAA3B,GAA2B,KAAA,CAA3B,GAA2BA,EAAA,CAAAE,IAAA,CAAAlD,OAAA,CAA3B,MAC3BA,OAAO,CAACmD,OAAR,IAAmBnD,OAAO,CAACoD,QAA3B,IAAuCpD,OAAO,CAACqD,WAAhD,CACG,IAAA,EAAER,MAAM,KAAKT,qBAAqB,CAACkB,OAAjC,IAA4CT,MAAM,KAAKT,qBAAqB,CAACmB,MAA/E,CAFL,CAAA;EAIA,IAAMC,QAAQ,IAAAC,EAAA,GAAA,EAAA,EACZA,EAAA,CAACrB,qBAAqB,CAACsB,IAAvB,CAAA,GAA8BC,SAAS,CAACC,IAD5B,EAEZH,EAAA,CAACrB,qBAAqB,CAACyB,SAAvB,CAAA,GAAmCF,SAAS,CAACG,QAFjC,EAGZL,EAAA,CAACrB,qBAAqB,CAAC2B,IAAvB,CAAA,GAA8BJ,SAAS,CAACG,QAH5B,EAIZL,EAAA,CAACrB,qBAAqB,CAACmB,MAAvB,CAAA,GAAgCI,SAAS,CAACK,KAJ9B,IAAA,CAAd,CAAA;EAMA,IAAMC,SAAS,IAAAC,EAAA,GAAA,EAAA,EACbA,EAAA,CAAC9B,qBAAqB,CAACsB,IAAvB,CAAA,GAA8BS,UAAU,CAACT,IAD5B,EAEbQ,EAAA,CAAC9B,qBAAqB,CAACyB,SAAvB,CAAA,GAAmCM,UAAU,CAACT,IAFjC,EAGbQ,EAAA,CAAC9B,qBAAqB,CAAC2B,IAAvB,CAAA,GAA8BI,UAAU,CAACJ,IAH5B,EAIbG,EAAA,CAAC9B,qBAAqB,CAACmB,MAAvB,CAAA,GAAgCY,UAAU,CAACH,KAJ9B,IAAA,CAAf,CAAA;EAOA,oBACEI,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAEC,aAAA,CAAAA,aAAA,CAAA,EAAA,EACLC,KAAK,CAACC,OAAN,CAAchC,SAAd,IAA2BA,SAA3B,GAAuC,CAACA,SAAD,CADlC,EAC8C,IAD9C,CAAA,EAC8C,CACvD,yBADuD,CAD9C,EAGT,KAHS,CAAA,CAGTzB,IAHS,CAGJ,GAHI,CAAA;AADb,GAAA,EAMI+B,MAAM,KAAKT,qBAAqB,CAACkB,OAAlC,gBACCc,6BAAC,MAAD,EAAA;AACE,IAAA,SAAS,EAAC,+BADZ;AAEE,IAAA,KAAK,EAAC,MAFR;AAGE,IAAA,MAAM,EAAC,MAAA;AAHT,GAAA,eAKEA,6BAAC,IAAD,EAAA;IACE,IAAI,EAAET,SAAS,CAACa,OADlB;IAEE,SAAS,EAAEL,UAAU,CAACM,OAFxB;AAGE,IAAA,KAAK,EAAC,MAHR;AAIE,IAAA,MAAM,EAAC,MAAA;GATX,CAAA,CADD,gBAcCL,cAAA,CAAA,aAAA,CAAC,IAAD,EAAA;IACE,SAAS,EAAE,uCAAA,CAAiCrB,qBAAqB,GAAG,WAAH,GAAiB,EAAvE,EAA6E,GAA7E,EAA6E2B,MAA7E,CAA6E7B,MAAM,KAAKT,qBAAqB,CAACmB,MAAjC,GAA0C,EAA1C,GAA+C,+BAA5H,CADb;IAGE,IAAI,EAAEC,QAAQ,CAACX,MAAD,CAAR,IAAoBc,SAAS,CAACK,KAHtC;AAIE,IAAA,SAAS,EAAEC,SAAS,CAACpB,MAAD,CAJtB;AAKE,IAAA,KAAK,EAAC,MALR;AAME,IAAA,MAAM,EAAC,MAAA;AANT,GAAA,CApBJ,EA6BG8B,YAAY,CAAC9B,MAAD,CAAZ,iBACCuB,6BAAC,KAAD,EAAA;AACE,IAAA,SAAS,EAAC,+BADZ;IAEE,IAAI,EAAEQ,eAAe,CAACC,SAFxB;IAGE,KAAK,EAAEC,WAAW,CAACC,cAAAA;GAGjBtC,EAAAA,yBAAyB,GACrBpB,MAAM,CAAC,CAAAO,OAAO,KAAP,IAAA,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEX,SAAT,KAAsB,CAAvB,EAA0B,GAA1B,EAA+B;AAAED,IAAAA,MAAM,EAAE4B,UAAAA;GAAzC,CADe,GAErB7B,uBAAuB,CAAC;AAAEf,IAAAA,OAAO,EAAAA,OAAT;AAAWgB,IAAAA,MAAM,EAAE4B,UAAnB;AAA+B1C,IAAAA,SAAS,EAAAA,SAAAA;GAAzC,CAR/B,CA9BJ,CADF,CAAA;AA6CD;;;;"}
|
|
1
|
+
{"version":3,"file":"index-a52a0b76.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","currentUserId","stringSet","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","userId","map","nickname","NO_NAME","join","getLastMessageCreatedAt","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","__spreadArray","Array","isArray","SPINNER","PRIMARY","concat","isSentStatus","LabelTypography","CAPTION_3","LabelColors","ONBACKGROUND_2"],"mappings":"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"}
|