@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,65 +1,68 @@
|
|
|
1
1
|
import React__default from 'react';
|
|
2
2
|
import useSendbirdStateContext from '../../useSendbirdStateContext.js';
|
|
3
|
-
import { u as useChannelContext } from '../../ChannelProvider-
|
|
4
|
-
import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-
|
|
3
|
+
import { u as useChannelContext } from '../../ChannelProvider-4ac82784.js';
|
|
4
|
+
import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-0ecbda20.js';
|
|
5
5
|
import ConnectionStatus from '../../ui/ConnectionStatus.js';
|
|
6
6
|
import ChannelHeader from './ChannelHeader.js';
|
|
7
7
|
import MessageList from './MessageList.js';
|
|
8
8
|
import TypingIndicator from './TypingIndicator.js';
|
|
9
9
|
import MessageInputWrapper from './MessageInput.js';
|
|
10
10
|
import '../../withSendbird.js';
|
|
11
|
-
import '../../tslib.es6-
|
|
12
|
-
import '../../UserProfileContext-
|
|
11
|
+
import '../../tslib.es6-209c9f08.js';
|
|
12
|
+
import '../../UserProfileContext-1996d4d2.js';
|
|
13
13
|
import 'prop-types';
|
|
14
|
-
import '../../index-
|
|
15
|
-
import '../../index-
|
|
16
|
-
import '../../topics-
|
|
17
|
-
import '../../index-
|
|
14
|
+
import '../../index-aced8439.js';
|
|
15
|
+
import '../../index-cf141ad7.js';
|
|
16
|
+
import '../../topics-4697c2b3.js';
|
|
17
|
+
import '../../index-83ae3ffe.js';
|
|
18
18
|
import '../../utils/message/getOutgoingMessageState.js';
|
|
19
|
-
import '../../_rollupPluginBabelHelpers-
|
|
20
|
-
import '../../compareIds-
|
|
21
|
-
import '../../const-
|
|
19
|
+
import '../../_rollupPluginBabelHelpers-e908c50d.js';
|
|
20
|
+
import '../../compareIds-d958887d.js';
|
|
21
|
+
import '../../const-735bcf5b.js';
|
|
22
22
|
import '@sendbird/chat/groupChannel';
|
|
23
|
-
import '../../uuid-
|
|
23
|
+
import '../../uuid-31c6ecb2.js';
|
|
24
24
|
import '@sendbird/chat/message';
|
|
25
25
|
import '../../ui/ContextMenu.js';
|
|
26
26
|
import 'react-dom';
|
|
27
27
|
import '../../ui/SortByRow.js';
|
|
28
|
-
import '../../index-
|
|
29
|
-
import '../../stringSet-
|
|
28
|
+
import '../../index-8e901b57.js';
|
|
29
|
+
import '../../stringSet-7c7d84fc.js';
|
|
30
30
|
import '../../ui/ReactionButton.js';
|
|
31
31
|
import '../../ui/ImageRenderer.js';
|
|
32
32
|
import '../../ui/Icon.js';
|
|
33
|
-
import '../../consts-
|
|
34
|
-
import '../../LocalizationContext-
|
|
33
|
+
import '../../consts-9422accf.js';
|
|
34
|
+
import '../../LocalizationContext-654ae04f.js';
|
|
35
35
|
import '../../ui/Loader.js';
|
|
36
|
-
import '../../utils-
|
|
36
|
+
import '../../utils-4942106c.js';
|
|
37
37
|
import '../../ui/IconButton.js';
|
|
38
38
|
import '../../ui/ChannelAvatar.js';
|
|
39
39
|
import '../../ui/Avatar.js';
|
|
40
|
-
import '../../utils-
|
|
41
|
-
import '../../MediaQueryContext-
|
|
42
|
-
import '../../utils-
|
|
40
|
+
import '../../utils-12a3467f.js';
|
|
41
|
+
import '../../MediaQueryContext-e791a4d1.js';
|
|
42
|
+
import '../../utils-04bd857d.js';
|
|
43
43
|
import './Message.js';
|
|
44
44
|
import './SuggestedMentionList.js';
|
|
45
|
-
import '../../const-
|
|
46
|
-
import '../../ThreadProvider-
|
|
45
|
+
import '../../const-c7334190.js';
|
|
46
|
+
import '../../ThreadProvider-faf3df5d.js';
|
|
47
47
|
import '../../Thread/context/types.js';
|
|
48
48
|
import '@sendbird/chat';
|
|
49
49
|
import '../../ui/DateSeparator.js';
|
|
50
|
-
import '../../color-
|
|
50
|
+
import '../../color-f6e2214f.js';
|
|
51
51
|
import '../../ui/MessageInput.js';
|
|
52
52
|
import '../../ui/Button.js';
|
|
53
53
|
import 'dompurify';
|
|
54
|
-
import '../../consts-
|
|
54
|
+
import '../../consts-ddb92249.js';
|
|
55
|
+
import '../../consts-12512664.js';
|
|
56
|
+
import '../../consts-8f50899e.js';
|
|
57
|
+
import '../../tokenize-8f238f49.js';
|
|
55
58
|
import '../../ui/MessageContent.js';
|
|
56
59
|
import '../../ui/UserProfile.js';
|
|
57
60
|
import '../../sendbirdSelectors.js';
|
|
58
|
-
import '../../index-
|
|
59
|
-
import '../../index-
|
|
60
|
-
import '../../index-
|
|
61
|
+
import '../../index-a52a0b76.js';
|
|
62
|
+
import '../../index-6e33b2e0.js';
|
|
63
|
+
import '../../index-4c3eaeb7.js';
|
|
61
64
|
import '../../ui/MessageItemMenu.js';
|
|
62
|
-
import '../../types-
|
|
65
|
+
import '../../types-41ea68c8.js';
|
|
63
66
|
import '../../ui/MessageItemReactionMenu.js';
|
|
64
67
|
import '../../ui/EmojiReactions.js';
|
|
65
68
|
import '../../ui/Tooltip.js';
|
|
@@ -67,23 +70,24 @@ import '../../ui/TooltipWrapper.js';
|
|
|
67
70
|
import '../../ui/ReactionBadge.js';
|
|
68
71
|
import '../../ui/AdminMessage.js';
|
|
69
72
|
import '../../ui/TextMessageItemBody.js';
|
|
70
|
-
import '../../
|
|
71
|
-
import '../../
|
|
73
|
+
import '../../index-ace292c2.js';
|
|
74
|
+
import '../../Message/context.js';
|
|
72
75
|
import '../../ui/MentionLabel.js';
|
|
76
|
+
import '../../ui/LinkLabel.js';
|
|
73
77
|
import '../../ui/FileMessageItemBody.js';
|
|
74
78
|
import '../../ui/TextButton.js';
|
|
75
79
|
import '../../ui/ThumbnailMessageItemBody.js';
|
|
76
80
|
import '../../ui/OGMessageItemBody.js';
|
|
77
81
|
import '../../ui/UnknownMessageItemBody.js';
|
|
78
82
|
import '../../ui/QuoteMessage.js';
|
|
79
|
-
import '../../useLongPress-
|
|
83
|
+
import '../../useLongPress-e2570976.js';
|
|
80
84
|
import '../../ui/BottomSheet.js';
|
|
81
|
-
import '../../index-
|
|
85
|
+
import '../../index-12c44496.js';
|
|
82
86
|
import '../../ui/ThreadReplies.js';
|
|
83
87
|
import '../../ui/VoiceMessageItemBody.js';
|
|
84
88
|
import '../../ui/ProgressBar.js';
|
|
85
89
|
import '../../VoicePlayer/useVoicePlayer.js';
|
|
86
|
-
import '../../index-
|
|
90
|
+
import '../../index-9626a87e.js';
|
|
87
91
|
import '../../VoiceRecorder/context.js';
|
|
88
92
|
import '../../lame.all.js';
|
|
89
93
|
import '../../ui/PlaybackTime.js';
|
|
@@ -93,9 +97,9 @@ import '../../ui/Modal.js';
|
|
|
93
97
|
import './UnreadCount.js';
|
|
94
98
|
import './FrozenNotification.js';
|
|
95
99
|
import '../../ui/QuoteMessageInput.js';
|
|
96
|
-
import '../../VoiceMessageInputWrapper-
|
|
100
|
+
import '../../VoiceMessageInputWrapper-59373f20.js';
|
|
97
101
|
import '../../VoiceRecorder/useVoiceRecorder.js';
|
|
98
|
-
import '../../index-
|
|
102
|
+
import '../../index-7b8ea67e.js';
|
|
99
103
|
|
|
100
104
|
var ChannelUI = function (_a) {
|
|
101
105
|
var _b, _c, _d, _e;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChannelUI.js","sources":["../../../src/smart-components/Channel/components/ChannelUI/index.tsx"],"sourcesContent":["import './channel-ui.scss';\n\nimport React from 'react';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport ConnectionStatus from '../../../../ui/ConnectionStatus';\nimport ChannelHeader from '../ChannelHeader';\nimport MessageList from '../MessageList';\nimport TypingIndicator from '../TypingIndicator';\nimport MessageInputWrapper from '../MessageInput';\nimport { RenderCustomSeparatorProps, RenderMessageProps } from '../../../../types';\n\nexport interface ChannelUIProps {\n isLoading?: boolean;\n renderPlaceholderLoader?: () => React.ReactElement;\n renderPlaceholderInvalid?: () => React.ReactElement;\n renderPlaceholderEmpty?: () => React.ReactElement;\n renderChannelHeader?: () => React.ReactElement;\n renderMessage?: (props: RenderMessageProps) => React.ReactElement;\n renderMessageInput?: () => React.ReactElement;\n renderFileUploadIcon?: () => React.ReactElement;\n renderVoiceMessageIcon?: () => React.ReactElement;\n renderSendMessageIcon?: () => React.ReactElement;\n renderTypingIndicator?: () => React.ReactElement;\n renderCustomSeparator?: (props: RenderCustomSeparatorProps) => React.ReactElement;\n}\n\nconst ChannelUI: React.FC<ChannelUIProps> = ({\n isLoading,\n renderPlaceholderLoader,\n renderPlaceholderInvalid,\n renderPlaceholderEmpty,\n renderChannelHeader,\n renderMessage,\n renderMessageInput,\n renderTypingIndicator,\n renderCustomSeparator,\n renderFileUploadIcon,\n renderVoiceMessageIcon,\n renderSendMessageIcon,\n}: ChannelUIProps) => {\n const {\n channelUrl,\n isInvalid,\n } = useChannelContext();\n\n const globalStore = useSendbirdStateContext();\n const sdkError = globalStore?.stores?.sdkStore?.error;\n const logger = globalStore?.config?.logger;\n const isOnline = globalStore?.config?.isOnline;\n\n if (isLoading) {\n return (<div className=\"sendbird-conversation\">\n {\n renderPlaceholderLoader?.() || (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n }\n </div>);\n }\n\n if (!channelUrl) {\n return (<div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} />\n )\n }\n </div>);\n }\n if (isInvalid) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.WRONG} />\n )\n }\n </div>\n );\n }\n if (sdkError) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder\n type={PlaceHolderTypes.WRONG}\n retryToConnect={() => {\n logger.info('Channel: reconnecting');\n // reconnect();\n }}\n />\n )\n }\n </div>\n );\n }\n return (\n <div className='sendbird-conversation'>\n {renderChannelHeader?.() || (\n <ChannelHeader className=\"sendbird-conversation__channel-header\" />\n )}\n <MessageList\n className=\"sendbird-conversation__message-list\"\n renderMessage={renderMessage}\n renderPlaceholderEmpty={renderPlaceholderEmpty}\n renderCustomSeparator={renderCustomSeparator}\n renderPlaceholderLoader={renderPlaceholderLoader}\n />\n <div className=\"sendbird-conversation__footer\">\n {\n renderMessageInput?.() || (\n <MessageInputWrapper\n renderFileUploadIcon={renderFileUploadIcon}\n renderVoiceMessageIcon={renderVoiceMessageIcon}\n renderSendMessageIcon={renderSendMessageIcon}\n />\n )\n }\n <div className=\"sendbird-conversation__footer__typing-indicator\">\n {\n renderTypingIndicator?.() || (\n <TypingIndicator />\n )\n }\n {\n !isOnline && (\n <ConnectionStatus />\n )\n }\n </div>\n </div>\n </div>\n );\n}\n\nexport default ChannelUI;\n"],"names":["ChannelUI","_a","isLoading","renderPlaceholderLoader","renderPlaceholderInvalid","renderPlaceholderEmpty","renderChannelHeader","renderMessage","renderMessageInput","renderTypingIndicator","renderCustomSeparator","renderFileUploadIcon","renderVoiceMessageIcon","renderSendMessageIcon","_f","useChannelContext","channelUrl","isInvalid","globalStore","useSendbirdStateContext","sdkError","_c","_b","stores","sdkStore","error","logger","_d","config","isOnline","_e","React","PlaceHolderTypes","LOADING","NO_CHANNELS","WRONG","info"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ChannelUI.js","sources":["../../../src/smart-components/Channel/components/ChannelUI/index.tsx"],"sourcesContent":["import './channel-ui.scss';\n\nimport React from 'react';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport ConnectionStatus from '../../../../ui/ConnectionStatus';\nimport ChannelHeader from '../ChannelHeader';\nimport MessageList from '../MessageList';\nimport TypingIndicator from '../TypingIndicator';\nimport MessageInputWrapper from '../MessageInput';\nimport { RenderCustomSeparatorProps, RenderMessageProps } from '../../../../types';\n\nexport interface ChannelUIProps {\n isLoading?: boolean;\n renderPlaceholderLoader?: () => React.ReactElement;\n renderPlaceholderInvalid?: () => React.ReactElement;\n renderPlaceholderEmpty?: () => React.ReactElement;\n renderChannelHeader?: () => React.ReactElement;\n renderMessage?: (props: RenderMessageProps) => React.ReactElement;\n renderMessageInput?: () => React.ReactElement;\n renderFileUploadIcon?: () => React.ReactElement;\n renderVoiceMessageIcon?: () => React.ReactElement;\n renderSendMessageIcon?: () => React.ReactElement;\n renderTypingIndicator?: () => React.ReactElement;\n renderCustomSeparator?: (props: RenderCustomSeparatorProps) => React.ReactElement;\n}\n\nconst ChannelUI: React.FC<ChannelUIProps> = ({\n isLoading,\n renderPlaceholderLoader,\n renderPlaceholderInvalid,\n renderPlaceholderEmpty,\n renderChannelHeader,\n renderMessage,\n renderMessageInput,\n renderTypingIndicator,\n renderCustomSeparator,\n renderFileUploadIcon,\n renderVoiceMessageIcon,\n renderSendMessageIcon,\n}: ChannelUIProps) => {\n const {\n channelUrl,\n isInvalid,\n } = useChannelContext();\n\n const globalStore = useSendbirdStateContext();\n const sdkError = globalStore?.stores?.sdkStore?.error;\n const logger = globalStore?.config?.logger;\n const isOnline = globalStore?.config?.isOnline;\n\n if (isLoading) {\n return (<div className=\"sendbird-conversation\">\n {\n renderPlaceholderLoader?.() || (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n }\n </div>);\n }\n\n if (!channelUrl) {\n return (<div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} />\n )\n }\n </div>);\n }\n if (isInvalid) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.WRONG} />\n )\n }\n </div>\n );\n }\n if (sdkError) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder\n type={PlaceHolderTypes.WRONG}\n retryToConnect={() => {\n logger.info('Channel: reconnecting');\n // reconnect();\n }}\n />\n )\n }\n </div>\n );\n }\n return (\n <div className='sendbird-conversation'>\n {renderChannelHeader?.() || (\n <ChannelHeader className=\"sendbird-conversation__channel-header\" />\n )}\n <MessageList\n className=\"sendbird-conversation__message-list\"\n renderMessage={renderMessage}\n renderPlaceholderEmpty={renderPlaceholderEmpty}\n renderCustomSeparator={renderCustomSeparator}\n renderPlaceholderLoader={renderPlaceholderLoader}\n />\n <div className=\"sendbird-conversation__footer\">\n {\n renderMessageInput?.() || (\n <MessageInputWrapper\n renderFileUploadIcon={renderFileUploadIcon}\n renderVoiceMessageIcon={renderVoiceMessageIcon}\n renderSendMessageIcon={renderSendMessageIcon}\n />\n )\n }\n <div className=\"sendbird-conversation__footer__typing-indicator\">\n {\n renderTypingIndicator?.() || (\n <TypingIndicator />\n )\n }\n {\n !isOnline && (\n <ConnectionStatus />\n )\n }\n </div>\n </div>\n </div>\n );\n}\n\nexport default ChannelUI;\n"],"names":["ChannelUI","_a","isLoading","renderPlaceholderLoader","renderPlaceholderInvalid","renderPlaceholderEmpty","renderChannelHeader","renderMessage","renderMessageInput","renderTypingIndicator","renderCustomSeparator","renderFileUploadIcon","renderVoiceMessageIcon","renderSendMessageIcon","_f","useChannelContext","channelUrl","isInvalid","globalStore","useSendbirdStateContext","sdkError","_c","_b","stores","sdkStore","error","logger","_d","config","isOnline","_e","React","PlaceHolderTypes","LOADING","NO_CHANNELS","WRONG","info"],"mappings":"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"}
|
|
@@ -1,32 +1,32 @@
|
|
|
1
1
|
import React__default from 'react';
|
|
2
2
|
import { createPortal } from 'react-dom';
|
|
3
3
|
import Avatar from '../../ui/Avatar.js';
|
|
4
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-
|
|
4
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-8e901b57.js';
|
|
5
5
|
import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
|
|
6
|
-
import { M as MODAL_ROOT } from '../../index-
|
|
7
|
-
import {
|
|
6
|
+
import { M as MODAL_ROOT } from '../../index-12c44496.js';
|
|
7
|
+
import { D as isSupportedFileView, E as isVideo, F as isImage } from '../../index-83ae3ffe.js';
|
|
8
8
|
import useSendbirdStateContext from '../../useSendbirdStateContext.js';
|
|
9
|
-
import { u as useChannelContext } from '../../ChannelProvider-
|
|
10
|
-
import '../../tslib.es6-
|
|
9
|
+
import { u as useChannelContext } from '../../ChannelProvider-4ac82784.js';
|
|
10
|
+
import '../../tslib.es6-209c9f08.js';
|
|
11
11
|
import '../../ui/ImageRenderer.js';
|
|
12
|
-
import '../../uuid-
|
|
12
|
+
import '../../uuid-31c6ecb2.js';
|
|
13
13
|
import 'prop-types';
|
|
14
|
-
import '../../stringSet-
|
|
14
|
+
import '../../stringSet-7c7d84fc.js';
|
|
15
15
|
import '../../utils/message/getOutgoingMessageState.js';
|
|
16
16
|
import '../../withSendbird.js';
|
|
17
|
-
import '../../UserProfileContext-
|
|
18
|
-
import '../../index-
|
|
19
|
-
import '../../index-
|
|
20
|
-
import '../../topics-
|
|
21
|
-
import '../../_rollupPluginBabelHelpers-
|
|
22
|
-
import '../../compareIds-
|
|
23
|
-
import '../../const-
|
|
17
|
+
import '../../UserProfileContext-1996d4d2.js';
|
|
18
|
+
import '../../index-aced8439.js';
|
|
19
|
+
import '../../index-cf141ad7.js';
|
|
20
|
+
import '../../topics-4697c2b3.js';
|
|
21
|
+
import '../../_rollupPluginBabelHelpers-e908c50d.js';
|
|
22
|
+
import '../../compareIds-d958887d.js';
|
|
23
|
+
import '../../const-735bcf5b.js';
|
|
24
24
|
import '@sendbird/chat/groupChannel';
|
|
25
25
|
import '@sendbird/chat/message';
|
|
26
26
|
import '../../ui/ContextMenu.js';
|
|
27
27
|
import '../../ui/SortByRow.js';
|
|
28
28
|
import '../../ui/ReactionButton.js';
|
|
29
|
-
import '../../consts-
|
|
29
|
+
import '../../consts-9422accf.js';
|
|
30
30
|
|
|
31
31
|
var FileViewerComponent = function (_a) {
|
|
32
32
|
var // sender
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React__default, { useContext } from 'react';
|
|
2
|
-
import { a as LocalizationContext } from '../../LocalizationContext-
|
|
3
|
-
import { L as Label, a as LabelTypography } from '../../index-
|
|
4
|
-
import '../../stringSet-
|
|
5
|
-
import '../../index-
|
|
2
|
+
import { a as LocalizationContext } from '../../LocalizationContext-654ae04f.js';
|
|
3
|
+
import { L as Label, a as LabelTypography } from '../../index-8e901b57.js';
|
|
4
|
+
import '../../stringSet-7c7d84fc.js';
|
|
5
|
+
import '../../index-cf141ad7.js';
|
|
6
6
|
import 'prop-types';
|
|
7
7
|
|
|
8
8
|
var FrozenNotification = function (_a) {
|
|
@@ -1,56 +1,59 @@
|
|
|
1
|
-
import { a as __spreadArray } from '../../tslib.es6-
|
|
1
|
+
import { a as __spreadArray } from '../../tslib.es6-209c9f08.js';
|
|
2
2
|
import React__default, { useState, useEffect, useRef, useLayoutEffect, useMemo } from 'react';
|
|
3
|
-
import { f as format } from '../../index-
|
|
3
|
+
import { f as format } from '../../index-aced8439.js';
|
|
4
4
|
import SuggestedMentionList from './SuggestedMentionList.js';
|
|
5
5
|
import useSendbirdStateContext from '../../useSendbirdStateContext.js';
|
|
6
|
-
import { u as useChannelContext, a as isDisabledBecauseFrozen, b as isDisabledBecauseMuted } from '../../ChannelProvider-
|
|
7
|
-
import { j as getClassName } from '../../index-
|
|
8
|
-
import { M as MAX_USER_MENTION_COUNT, a as MAX_USER_SUGGESTION_COUNT } from '../../const-
|
|
6
|
+
import { u as useChannelContext, a as isDisabledBecauseFrozen, b as isDisabledBecauseMuted } from '../../ChannelProvider-4ac82784.js';
|
|
7
|
+
import { j as getClassName } from '../../index-83ae3ffe.js';
|
|
8
|
+
import { M as MAX_USER_MENTION_COUNT, a as MAX_USER_SUGGESTION_COUNT } from '../../const-735bcf5b.js';
|
|
9
9
|
import DateSeparator from '../../ui/DateSeparator.js';
|
|
10
|
-
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-
|
|
10
|
+
import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-8e901b57.js';
|
|
11
11
|
import MessageInput from '../../ui/MessageInput.js';
|
|
12
12
|
import MessageContent from '../../ui/MessageContent.js';
|
|
13
13
|
import FileViewer from './FileViewer.js';
|
|
14
14
|
import RemoveMessage from './RemoveMessageModal.js';
|
|
15
|
-
import { M as MessageInputKeys } from '../../const-
|
|
16
|
-
import { u as useLocalization } from '../../LocalizationContext-
|
|
17
|
-
import '../../index-
|
|
15
|
+
import { M as MessageInputKeys } from '../../const-c7334190.js';
|
|
16
|
+
import { u as useLocalization } from '../../LocalizationContext-654ae04f.js';
|
|
17
|
+
import '../../index-cf141ad7.js';
|
|
18
18
|
import '../../ui/Icon.js';
|
|
19
19
|
import 'prop-types';
|
|
20
20
|
import '../../ui/Avatar.js';
|
|
21
21
|
import '../../ui/ImageRenderer.js';
|
|
22
|
-
import '../../uuid-
|
|
23
|
-
import '../../ThreadProvider-
|
|
22
|
+
import '../../uuid-31c6ecb2.js';
|
|
23
|
+
import '../../ThreadProvider-faf3df5d.js';
|
|
24
24
|
import '../../utils/message/getOutgoingMessageState.js';
|
|
25
|
-
import '../../UserProfileContext-
|
|
25
|
+
import '../../UserProfileContext-1996d4d2.js';
|
|
26
26
|
import '../../Thread/context/types.js';
|
|
27
27
|
import '@sendbird/chat';
|
|
28
|
-
import '../../topics-
|
|
28
|
+
import '../../topics-4697c2b3.js';
|
|
29
29
|
import '@sendbird/chat/groupChannel';
|
|
30
30
|
import '@sendbird/chat/message';
|
|
31
|
-
import '../../consts-
|
|
31
|
+
import '../../consts-9422accf.js';
|
|
32
32
|
import '../../withSendbird.js';
|
|
33
|
-
import '../../_rollupPluginBabelHelpers-
|
|
34
|
-
import '../../compareIds-
|
|
33
|
+
import '../../_rollupPluginBabelHelpers-e908c50d.js';
|
|
34
|
+
import '../../compareIds-d958887d.js';
|
|
35
35
|
import '../../ui/ContextMenu.js';
|
|
36
36
|
import 'react-dom';
|
|
37
37
|
import '../../ui/SortByRow.js';
|
|
38
|
-
import '../../stringSet-
|
|
38
|
+
import '../../stringSet-7c7d84fc.js';
|
|
39
39
|
import '../../ui/ReactionButton.js';
|
|
40
|
-
import '../../color-
|
|
40
|
+
import '../../color-f6e2214f.js';
|
|
41
41
|
import '../../ui/IconButton.js';
|
|
42
42
|
import '../../ui/Button.js';
|
|
43
43
|
import 'dompurify';
|
|
44
|
-
import '../../consts-
|
|
44
|
+
import '../../consts-ddb92249.js';
|
|
45
|
+
import '../../consts-12512664.js';
|
|
46
|
+
import '../../consts-8f50899e.js';
|
|
47
|
+
import '../../tokenize-8f238f49.js';
|
|
45
48
|
import '../../ui/UserProfile.js';
|
|
46
49
|
import '../../sendbirdSelectors.js';
|
|
47
|
-
import '../../utils-
|
|
48
|
-
import '../../index-
|
|
50
|
+
import '../../utils-04bd857d.js';
|
|
51
|
+
import '../../index-a52a0b76.js';
|
|
49
52
|
import '../../ui/Loader.js';
|
|
50
|
-
import '../../index-
|
|
51
|
-
import '../../index-
|
|
53
|
+
import '../../index-6e33b2e0.js';
|
|
54
|
+
import '../../index-4c3eaeb7.js';
|
|
52
55
|
import '../../ui/MessageItemMenu.js';
|
|
53
|
-
import '../../types-
|
|
56
|
+
import '../../types-41ea68c8.js';
|
|
54
57
|
import '../../ui/MessageItemReactionMenu.js';
|
|
55
58
|
import '../../ui/EmojiReactions.js';
|
|
56
59
|
import '../../ui/Tooltip.js';
|
|
@@ -58,24 +61,25 @@ import '../../ui/TooltipWrapper.js';
|
|
|
58
61
|
import '../../ui/ReactionBadge.js';
|
|
59
62
|
import '../../ui/AdminMessage.js';
|
|
60
63
|
import '../../ui/TextMessageItemBody.js';
|
|
61
|
-
import '../../
|
|
62
|
-
import '../../
|
|
64
|
+
import '../../index-ace292c2.js';
|
|
65
|
+
import '../../Message/context.js';
|
|
63
66
|
import '../../ui/MentionLabel.js';
|
|
67
|
+
import '../../ui/LinkLabel.js';
|
|
64
68
|
import '../../ui/FileMessageItemBody.js';
|
|
65
69
|
import '../../ui/TextButton.js';
|
|
66
|
-
import '../../MediaQueryContext-
|
|
70
|
+
import '../../MediaQueryContext-e791a4d1.js';
|
|
67
71
|
import '../../ui/ThumbnailMessageItemBody.js';
|
|
68
72
|
import '../../ui/OGMessageItemBody.js';
|
|
69
73
|
import '../../ui/UnknownMessageItemBody.js';
|
|
70
74
|
import '../../ui/QuoteMessage.js';
|
|
71
|
-
import '../../useLongPress-
|
|
75
|
+
import '../../useLongPress-e2570976.js';
|
|
72
76
|
import '../../ui/BottomSheet.js';
|
|
73
|
-
import '../../index-
|
|
77
|
+
import '../../index-12c44496.js';
|
|
74
78
|
import '../../ui/ThreadReplies.js';
|
|
75
79
|
import '../../ui/VoiceMessageItemBody.js';
|
|
76
80
|
import '../../ui/ProgressBar.js';
|
|
77
81
|
import '../../VoicePlayer/useVoicePlayer.js';
|
|
78
|
-
import '../../index-
|
|
82
|
+
import '../../index-9626a87e.js';
|
|
79
83
|
import '../../VoiceRecorder/context.js';
|
|
80
84
|
import '../../lame.all.js';
|
|
81
85
|
import '../../ui/PlaybackTime.js';
|
|
@@ -191,7 +195,7 @@ var Message = function (_a) {
|
|
|
191
195
|
setAbleMention = _s[1];
|
|
192
196
|
|
|
193
197
|
var editMessageInputRef = useRef(null);
|
|
194
|
-
var
|
|
198
|
+
var messageScrollRef = useRef(null);
|
|
195
199
|
var displaySuggestedMentionList = isOnline && isMentionEnabled && mentionNickname.length > 0 && !isDisabledBecauseFrozen(currentGroupChannel) && !isDisabledBecauseMuted(currentGroupChannel);
|
|
196
200
|
var disabled = !initialized || isDisabledBecauseFrozen(currentGroupChannel) || isDisabledBecauseMuted(currentGroupChannel) || !isOnline;
|
|
197
201
|
useEffect(function () {
|
|
@@ -225,8 +229,8 @@ var Message = function (_a) {
|
|
|
225
229
|
var animationTimeout = null;
|
|
226
230
|
var messageHighlightedTimeout = null;
|
|
227
231
|
|
|
228
|
-
if (highLightedMessageId === message.messageId && (
|
|
229
|
-
|
|
232
|
+
if (highLightedMessageId === message.messageId && (messageScrollRef === null || messageScrollRef === void 0 ? void 0 : messageScrollRef.current)) {
|
|
233
|
+
messageScrollRef.current.scrollIntoView({
|
|
230
234
|
block: 'center',
|
|
231
235
|
inline: 'center'
|
|
232
236
|
});
|
|
@@ -246,13 +250,13 @@ var Message = function (_a) {
|
|
|
246
250
|
clearTimeout(animationTimeout);
|
|
247
251
|
clearTimeout(messageHighlightedTimeout);
|
|
248
252
|
};
|
|
249
|
-
}, [highLightedMessageId,
|
|
253
|
+
}, [highLightedMessageId, messageScrollRef.current, message.messageId]);
|
|
250
254
|
useLayoutEffect(function () {
|
|
251
255
|
var animationTimeout = null;
|
|
252
256
|
var messageAnimatedTimeout = null;
|
|
253
257
|
|
|
254
|
-
if (animatedMessageId === message.messageId && (
|
|
255
|
-
|
|
258
|
+
if (animatedMessageId === message.messageId && (messageScrollRef === null || messageScrollRef === void 0 ? void 0 : messageScrollRef.current)) {
|
|
259
|
+
messageScrollRef.current.scrollIntoView({
|
|
256
260
|
block: 'center',
|
|
257
261
|
inline: 'center'
|
|
258
262
|
});
|
|
@@ -272,7 +276,7 @@ var Message = function (_a) {
|
|
|
272
276
|
clearTimeout(animationTimeout);
|
|
273
277
|
clearTimeout(messageAnimatedTimeout);
|
|
274
278
|
};
|
|
275
|
-
}, [animatedMessageId,
|
|
279
|
+
}, [animatedMessageId, messageScrollRef.current, message.messageId, onMessageAnimated]);
|
|
276
280
|
var renderedMessage = useMemo(function () {
|
|
277
281
|
return renderMessage === null || renderMessage === void 0 ? void 0 : renderMessage({
|
|
278
282
|
message: message,
|
|
@@ -292,7 +296,7 @@ var Message = function (_a) {
|
|
|
292
296
|
|
|
293
297
|
if (renderedMessage) {
|
|
294
298
|
return /*#__PURE__*/React__default.createElement("div", {
|
|
295
|
-
ref:
|
|
299
|
+
ref: messageScrollRef,
|
|
296
300
|
className: getClassName(['sendbird-msg-hoc sendbird-msg--scroll-ref', isAnimated ? 'sendbird-msg-hoc__animated' : '', isHighlighted ? 'sendbird-msg-hoc__highlighted' : ''])
|
|
297
301
|
}, // TODO: Add message instance as a function parameter
|
|
298
302
|
hasSeparator && (renderedCustomSeparator || /*#__PURE__*/React__default.createElement(DateSeparator, null, /*#__PURE__*/React__default.createElement(Label, {
|
|
@@ -391,7 +395,7 @@ var Message = function (_a) {
|
|
|
391
395
|
style: {
|
|
392
396
|
marginBottom: '2px'
|
|
393
397
|
},
|
|
394
|
-
ref:
|
|
398
|
+
ref: messageScrollRef
|
|
395
399
|
}, hasSeparator && (renderedCustomSeparator || /*#__PURE__*/React__default.createElement(DateSeparator, null, /*#__PURE__*/React__default.createElement(Label, {
|
|
396
400
|
type: LabelTypography.CAPTION_2,
|
|
397
401
|
color: LabelColors.ONBACKGROUND_2
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Message.js","sources":["../../../src/utils/useDidMountEffect.ts","../../../src/smart-components/Channel/components/Message/index.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nconst useDidMountEffect = (func: () => void, deps: Array<unknown>): void => {\n const [didMount, setDidmount] = useState(false);\n useEffect(() => {\n if (didMount) {\n func();\n } else {\n setDidmount(true);\n }\n }, deps);\n};\n\nexport default useDidMountEffect;\n","import React, {\n useRef,\n useMemo,\n useState,\n useEffect,\n useLayoutEffect,\n} from 'react';\nimport type { FileMessage } from '@sendbird/chat/message';\nimport format from 'date-fns/format';\n\nimport useDidMountEffect from '../../../../utils/useDidMountEffect';\nimport SuggestedMentionList from '../SuggestedMentionList';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport { getClassName } from '../../../../utils';\nimport { isDisabledBecauseFrozen, isDisabledBecauseMuted } from '../../context/utils';\nimport { MAX_USER_MENTION_COUNT, MAX_USER_SUGGESTION_COUNT } from '../../context/const';\n\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport MessageInput from '../../../../ui/MessageInput';\nimport MessageContent from '../../../../ui/MessageContent';\nimport FileViewer from '../FileViewer';\nimport RemoveMessageModal from '../RemoveMessageModal';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport { EveryMessage, RenderCustomSeparatorProps, RenderMessageProps } from '../../../../types';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\ntype MessageUIProps = {\n message: EveryMessage;\n hasSeparator?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n handleScroll: () => void;\n // for extending\n renderMessage?: (props: RenderMessageProps) => React.ReactElement;\n renderCustomSeparator?: (props: RenderCustomSeparatorProps) => React.ReactElement;\n renderEditInput?: () => React.ReactElement;\n renderMessageContent?: () => React.ReactElement;\n};\n\n// todo: Refactor this component, is too complex now\nconst Message = ({\n message,\n hasSeparator,\n chainTop,\n chainBottom,\n handleScroll,\n renderCustomSeparator,\n renderEditInput,\n renderMessage,\n renderMessageContent,\n}: MessageUIProps): React.ReactElement => {\n const { dateLocale } = useLocalization();\n const globalStore = useSendbirdStateContext();\n const {\n userId,\n isOnline,\n isMentionEnabled,\n userMention,\n } = globalStore?.config;\n const maxUserMentionCount = userMention?.maxMentionCount || MAX_USER_MENTION_COUNT;\n const maxUserSuggestionCount = userMention?.maxSuggestionCount || MAX_USER_SUGGESTION_COUNT;\n\n const {\n initialized,\n currentGroupChannel,\n highLightedMessageId,\n setHighLightedMessageId,\n animatedMessageId,\n setAnimatedMessageId,\n updateMessage,\n scrollToMessage,\n replyType,\n threadReplySelectType,\n isReactionEnabled,\n toggleReaction,\n emojiContainer,\n nicknamesMap,\n setQuoteMessage,\n resendMessage,\n renderUserMentionItem,\n onReplyInThread,\n onQuoteMessageClick,\n onMessageAnimated,\n onMessageHighlighted,\n } = useChannelContext();\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const [isAnimated, setIsAnimated] = useState(false);\n const [isHighlighted, setIsHighlighted] = useState(false);\n const [mentionNickname, setMentionNickname] = useState('');\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [ableMention, setAbleMention] = useState(true);\n const editMessageInputRef = useRef(null);\n const useMessageScrollRef = useRef(null);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isDisabledBecauseFrozen(currentGroupChannel)\n && !isDisabledBecauseMuted(currentGroupChannel);\n const disabled = !initialized\n || isDisabledBecauseFrozen(currentGroupChannel)\n || isDisabledBecauseMuted(currentGroupChannel)\n || !isOnline;\n\n useEffect(() => {\n if (mentionedUsers?.length >= maxUserMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n useDidMountEffect(() => {\n if (currentGroupChannel?.lastMessage?.messageId === message?.messageId) {\n handleScroll?.();\n }\n }, [showEdit, message?.reactions?.length]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageHighlightedTimeout = null;\n if (highLightedMessageId === message.messageId && useMessageScrollRef?.current) {\n useMessageScrollRef.current.scrollIntoView({ block: 'center', inline: 'center' });\n setIsAnimated(false);\n animationTimeout = setTimeout(() => {\n setIsHighlighted(true);\n }, 500);\n messageHighlightedTimeout = setTimeout(() => {\n setHighLightedMessageId(0);\n onMessageHighlighted?.();\n }, 1600);\n } else {\n setIsHighlighted(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageHighlightedTimeout);\n }\n }, [highLightedMessageId, useMessageScrollRef.current, message.messageId]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageAnimatedTimeout = null;\n if (animatedMessageId === message.messageId && useMessageScrollRef?.current) {\n useMessageScrollRef.current.scrollIntoView({ block: 'center', inline: 'center' });\n setIsHighlighted(false);\n animationTimeout = setTimeout(() => {\n setIsAnimated(true);\n }, 500);\n messageAnimatedTimeout = setTimeout(() => {\n setAnimatedMessageId(0);\n onMessageAnimated?.();\n }, 1600);\n } else {\n setIsAnimated(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageAnimatedTimeout);\n }\n }, [animatedMessageId, useMessageScrollRef.current, message.messageId, onMessageAnimated]);\n const renderedMessage = useMemo(() => {\n return renderMessage?.({\n message,\n chainTop,\n chainBottom,\n });\n }, [message, renderMessage]);\n const renderedCustomSeparator = useMemo(() => {\n if (renderCustomSeparator) {\n return renderCustomSeparator?.({ message: message });\n }\n return null;\n }, [message, renderCustomSeparator]);\n\n if (renderedMessage) {\n return (\n <div\n ref={useMessageScrollRef}\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n >\n {/* date-separator */}\n {\n // TODO: Add message instance as a function parameter\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {renderedMessage}\n </div>\n );\n }\n\n if (showEdit && message?.isUserMessage?.()) {\n return renderEditInput?.() || (\n <>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={maxUserMentionCount}\n maxSuggestionCount={maxUserSuggestionCount}\n />\n )\n }\n <MessageInput\n isEdit\n disabled={disabled}\n ref={editMessageInputRef}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n message={message}\n onStartTyping={() => {\n currentGroupChannel?.startTyping?.();\n }}\n onUpdateMessage={({ messageId, message, mentionTemplate }) => {\n updateMessage({\n messageId,\n message,\n mentionedUsers,\n mentionTemplate,\n });\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onCancelEdit={() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setMentionSuggestedUsers([])\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n </>\n );\n }\n\n return (\n <div\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n style={{ marginBottom: '2px' }}\n ref={useMessageScrollRef}\n >\n {/* date-separator */}\n {\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {/* Message */}\n {\n renderMessageContent?.() || (\n <MessageContent\n className=\"sendbird-message-hoc__message-content\"\n userId={userId}\n scrollToMessage={scrollToMessage}\n channel={currentGroupChannel}\n message={message}\n disabled={!isOnline}\n chainTop={chainTop}\n chainBottom={chainBottom}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n threadReplySelectType={threadReplySelectType}\n nicknamesMap={nicknamesMap}\n emojiContainer={emojiContainer}\n showEdit={setShowEdit}\n showRemove={setShowRemove}\n showFileViewer={setShowFileViewer}\n resendMessage={resendMessage}\n toggleReaction={toggleReaction}\n setQuoteMessage={setQuoteMessage}\n onReplyInThread={onReplyInThread}\n onQuoteMessageClick={onQuoteMessageClick}\n />\n )\n }\n {/* Modal */}\n {\n showRemove && (\n <RemoveMessageModal\n message={message}\n onCancel={() => setShowRemove(false)}\n />\n )\n }\n {\n showFileViewer && (\n <FileViewer\n message={message as FileMessage}\n onCancel={() => setShowFileViewer(false)}\n />\n )\n }\n </div>\n );\n};\n\nexport default Message;\n"],"names":["useDidMountEffect","func","deps","_a","useState","didMount","setDidmount","useEffect","Message","message","hasSeparator","chainTop","chainBottom","handleScroll","renderCustomSeparator","renderEditInput","renderMessage","renderMessageContent","dateLocale","useLocalization","globalStore","useSendbirdStateContext","_d","config","userId","isOnline","isMentionEnabled","userMention","maxUserMentionCount","maxMentionCount","MAX_USER_MENTION_COUNT","maxUserSuggestionCount","maxSuggestionCount","MAX_USER_SUGGESTION_COUNT","_e","useChannelContext","initialized","currentGroupChannel","highLightedMessageId","setHighLightedMessageId","animatedMessageId","setAnimatedMessageId","updateMessage","scrollToMessage","replyType","threadReplySelectType","isReactionEnabled","toggleReaction","emojiContainer","nicknamesMap","setQuoteMessage","resendMessage","renderUserMentionItem","onReplyInThread","onQuoteMessageClick","onMessageAnimated","onMessageHighlighted","_f","showEdit","setShowEdit","_g","showRemove","setShowRemove","_h","showFileViewer","setShowFileViewer","_j","isAnimated","setIsAnimated","_k","isHighlighted","setIsHighlighted","_l","mentionNickname","setMentionNickname","_m","mentionedUsers","setMentionedUsers","_o","mentionedUserIds","setMentionedUserIds","_p","messageInputEvent","setMessageInputEvent","_q","selectedUser","setSelectedUser","_r","mentionSuggestedUsers","setMentionSuggestedUsers","_s","ableMention","setAbleMention","editMessageInputRef","useRef","useMessageScrollRef","displaySuggestedMentionList","length","isDisabledBecauseFrozen","isDisabledBecauseMuted","disabled","filter","i","indexOf","splice","lastMessage","messageId","_b","reactions","useLayoutEffect","animationTimeout","messageHighlightedTimeout","current","scrollIntoView","block","inline","setTimeout","clearTimeout","messageAnimatedTimeout","renderedMessage","useMemo","renderedCustomSeparator","React","getClassName","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","format","createdAt","locale","_c","isUserMessage","call","user","__spreadArray","users","startTyping","mentionTemplate","endTyping","mentionText","userIds","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","marginBottom","RemoveMessageModal"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Message.js","sources":["../../../src/utils/useDidMountEffect.ts","../../../src/smart-components/Channel/components/Message/index.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nconst useDidMountEffect = (func: () => void, deps: Array<unknown>): void => {\n const [didMount, setDidmount] = useState(false);\n useEffect(() => {\n if (didMount) {\n func();\n } else {\n setDidmount(true);\n }\n }, deps);\n};\n\nexport default useDidMountEffect;\n","import React, {\n useRef,\n useMemo,\n useState,\n useEffect,\n useLayoutEffect,\n} from 'react';\nimport type { FileMessage } from '@sendbird/chat/message';\nimport format from 'date-fns/format';\n\nimport useDidMountEffect from '../../../../utils/useDidMountEffect';\nimport SuggestedMentionList from '../SuggestedMentionList';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport { getClassName } from '../../../../utils';\nimport { isDisabledBecauseFrozen, isDisabledBecauseMuted } from '../../context/utils';\nimport { MAX_USER_MENTION_COUNT, MAX_USER_SUGGESTION_COUNT } from '../../context/const';\n\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport MessageInput from '../../../../ui/MessageInput';\nimport MessageContent from '../../../../ui/MessageContent';\nimport FileViewer from '../FileViewer';\nimport RemoveMessageModal from '../RemoveMessageModal';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport { EveryMessage, RenderCustomSeparatorProps, RenderMessageProps } from '../../../../types';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\ntype MessageUIProps = {\n message: EveryMessage;\n hasSeparator?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n handleScroll: () => void;\n // for extending\n renderMessage?: (props: RenderMessageProps) => React.ReactElement;\n renderCustomSeparator?: (props: RenderCustomSeparatorProps) => React.ReactElement;\n renderEditInput?: () => React.ReactElement;\n renderMessageContent?: () => React.ReactElement;\n};\n\n// todo: Refactor this component, is too complex now\nconst Message = ({\n message,\n hasSeparator,\n chainTop,\n chainBottom,\n handleScroll,\n renderCustomSeparator,\n renderEditInput,\n renderMessage,\n renderMessageContent,\n}: MessageUIProps): React.ReactElement => {\n const { dateLocale } = useLocalization();\n const globalStore = useSendbirdStateContext();\n const {\n userId,\n isOnline,\n isMentionEnabled,\n userMention,\n } = globalStore?.config;\n const maxUserMentionCount = userMention?.maxMentionCount || MAX_USER_MENTION_COUNT;\n const maxUserSuggestionCount = userMention?.maxSuggestionCount || MAX_USER_SUGGESTION_COUNT;\n\n const {\n initialized,\n currentGroupChannel,\n highLightedMessageId,\n setHighLightedMessageId,\n animatedMessageId,\n setAnimatedMessageId,\n updateMessage,\n scrollToMessage,\n replyType,\n threadReplySelectType,\n isReactionEnabled,\n toggleReaction,\n emojiContainer,\n nicknamesMap,\n setQuoteMessage,\n resendMessage,\n renderUserMentionItem,\n onReplyInThread,\n onQuoteMessageClick,\n onMessageAnimated,\n onMessageHighlighted,\n } = useChannelContext();\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const [isAnimated, setIsAnimated] = useState(false);\n const [isHighlighted, setIsHighlighted] = useState(false);\n const [mentionNickname, setMentionNickname] = useState('');\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [ableMention, setAbleMention] = useState(true);\n const editMessageInputRef = useRef(null);\n const messageScrollRef = useRef(null);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isDisabledBecauseFrozen(currentGroupChannel)\n && !isDisabledBecauseMuted(currentGroupChannel);\n const disabled = !initialized\n || isDisabledBecauseFrozen(currentGroupChannel)\n || isDisabledBecauseMuted(currentGroupChannel)\n || !isOnline;\n\n useEffect(() => {\n if (mentionedUsers?.length >= maxUserMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n useDidMountEffect(() => {\n if (currentGroupChannel?.lastMessage?.messageId === message?.messageId) {\n handleScroll?.();\n }\n }, [showEdit, message?.reactions?.length]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageHighlightedTimeout = null;\n if (highLightedMessageId === message.messageId && messageScrollRef?.current) {\n messageScrollRef.current.scrollIntoView({ block: 'center', inline: 'center' });\n setIsAnimated(false);\n animationTimeout = setTimeout(() => {\n setIsHighlighted(true);\n }, 500);\n messageHighlightedTimeout = setTimeout(() => {\n setHighLightedMessageId(0);\n onMessageHighlighted?.();\n }, 1600);\n } else {\n setIsHighlighted(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageHighlightedTimeout);\n }\n }, [highLightedMessageId, messageScrollRef.current, message.messageId]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageAnimatedTimeout = null;\n if (animatedMessageId === message.messageId && messageScrollRef?.current) {\n messageScrollRef.current.scrollIntoView({ block: 'center', inline: 'center' });\n setIsHighlighted(false);\n animationTimeout = setTimeout(() => {\n setIsAnimated(true);\n }, 500);\n messageAnimatedTimeout = setTimeout(() => {\n setAnimatedMessageId(0);\n onMessageAnimated?.();\n }, 1600);\n } else {\n setIsAnimated(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageAnimatedTimeout);\n }\n }, [animatedMessageId, messageScrollRef.current, message.messageId, onMessageAnimated]);\n const renderedMessage = useMemo(() => {\n return renderMessage?.({\n message,\n chainTop,\n chainBottom,\n });\n }, [message, renderMessage]);\n const renderedCustomSeparator = useMemo(() => {\n if (renderCustomSeparator) {\n return renderCustomSeparator?.({ message: message });\n }\n return null;\n }, [message, renderCustomSeparator]);\n\n if (renderedMessage) {\n return (\n <div\n ref={messageScrollRef}\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n >\n {/* date-separator */}\n {\n // TODO: Add message instance as a function parameter\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {renderedMessage}\n </div>\n );\n }\n\n if (showEdit && message?.isUserMessage?.()) {\n return renderEditInput?.() || (\n <>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={maxUserMentionCount}\n maxSuggestionCount={maxUserSuggestionCount}\n />\n )\n }\n <MessageInput\n isEdit\n disabled={disabled}\n ref={editMessageInputRef}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n message={message}\n onStartTyping={() => {\n currentGroupChannel?.startTyping?.();\n }}\n onUpdateMessage={({ messageId, message, mentionTemplate }) => {\n updateMessage({\n messageId,\n message,\n mentionedUsers,\n mentionTemplate,\n });\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onCancelEdit={() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setMentionSuggestedUsers([])\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n </>\n );\n }\n\n return (\n <div\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n style={{ marginBottom: '2px' }}\n ref={messageScrollRef}\n >\n {/* date-separator */}\n {\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {/* Message */}\n {\n renderMessageContent?.() || (\n <MessageContent\n className=\"sendbird-message-hoc__message-content\"\n userId={userId}\n scrollToMessage={scrollToMessage}\n channel={currentGroupChannel}\n message={message}\n disabled={!isOnline}\n chainTop={chainTop}\n chainBottom={chainBottom}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n threadReplySelectType={threadReplySelectType}\n nicknamesMap={nicknamesMap}\n emojiContainer={emojiContainer}\n showEdit={setShowEdit}\n showRemove={setShowRemove}\n showFileViewer={setShowFileViewer}\n resendMessage={resendMessage}\n toggleReaction={toggleReaction}\n setQuoteMessage={setQuoteMessage}\n onReplyInThread={onReplyInThread}\n onQuoteMessageClick={onQuoteMessageClick}\n />\n )\n }\n {/* Modal */}\n {\n showRemove && (\n <RemoveMessageModal\n message={message}\n onCancel={() => setShowRemove(false)}\n />\n )\n }\n {\n showFileViewer && (\n <FileViewer\n message={message as FileMessage}\n onCancel={() => setShowFileViewer(false)}\n />\n )\n }\n </div>\n );\n};\n\nexport default Message;\n"],"names":["useDidMountEffect","func","deps","_a","useState","didMount","setDidmount","useEffect","Message","message","hasSeparator","chainTop","chainBottom","handleScroll","renderCustomSeparator","renderEditInput","renderMessage","renderMessageContent","dateLocale","useLocalization","globalStore","useSendbirdStateContext","_d","config","userId","isOnline","isMentionEnabled","userMention","maxUserMentionCount","maxMentionCount","MAX_USER_MENTION_COUNT","maxUserSuggestionCount","maxSuggestionCount","MAX_USER_SUGGESTION_COUNT","_e","useChannelContext","initialized","currentGroupChannel","highLightedMessageId","setHighLightedMessageId","animatedMessageId","setAnimatedMessageId","updateMessage","scrollToMessage","replyType","threadReplySelectType","isReactionEnabled","toggleReaction","emojiContainer","nicknamesMap","setQuoteMessage","resendMessage","renderUserMentionItem","onReplyInThread","onQuoteMessageClick","onMessageAnimated","onMessageHighlighted","_f","showEdit","setShowEdit","_g","showRemove","setShowRemove","_h","showFileViewer","setShowFileViewer","_j","isAnimated","setIsAnimated","_k","isHighlighted","setIsHighlighted","_l","mentionNickname","setMentionNickname","_m","mentionedUsers","setMentionedUsers","_o","mentionedUserIds","setMentionedUserIds","_p","messageInputEvent","setMessageInputEvent","_q","selectedUser","setSelectedUser","_r","mentionSuggestedUsers","setMentionSuggestedUsers","_s","ableMention","setAbleMention","editMessageInputRef","useRef","messageScrollRef","displaySuggestedMentionList","length","isDisabledBecauseFrozen","isDisabledBecauseMuted","disabled","filter","i","indexOf","splice","lastMessage","messageId","_b","reactions","useLayoutEffect","animationTimeout","messageHighlightedTimeout","current","scrollIntoView","block","inline","setTimeout","clearTimeout","messageAnimatedTimeout","renderedMessage","useMemo","renderedCustomSeparator","React","getClassName","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","format","createdAt","locale","_c","isUserMessage","call","user","__spreadArray","users","startTyping","mentionTemplate","endTyping","mentionText","userIds","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","marginBottom","RemoveMessageModal"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,iBAAiB,GAAG,UAACC,IAAD,EAAmBC,IAAnB,EAAuC;AACvD,EAAA,IAAAC,EAAA,GAA0BC,QAAQ,CAAC,KAAD,CAAlC;AAAA,MAACC,QAAQ,GAAAF,EAAA,CAAA,CAAA,CAAT;AAAA,MAAWG,WAAW,GAAAH,EAAA,CAAA,CAAA,CAAtB,CAAA;;AACNI,EAAAA,SAAS,CAAC,YAAA;AACN,IAAA,IAAIF,QAAJ,EAAc;MACZJ,IAAI,EAAA,CAAA;AACL,KAFD,MAEO;MACLK,WAAW,CAAC,IAAD,CAAX,CAAA;AACD,KAAA;GALI,EAMNJ,IANM,CAAT,CAAA;AAOH,CATD;;ACwCA,IAAMM,OAAO,GAAG,UAACL,EAAD,EAUC;;;MATfM,OAAO,GAAAN,EAAA,CAAAM;MACPC,YAAY,GAAAP,EAAA,CAAAO;MACZC,QAAQ,GAAAR,EAAA,CAAAQ;MACRC,WAAW,GAAAT,EAAA,CAAAS;MACXC,YAAY;MACZC,qBAAqB,GAAAX,EAAA,CAAAW;MACrBC,eAAe,GAAAZ,EAAA,CAAAY;MACfC,aAAa,GAAAb,EAAA,CAAAa;MACbC,oBAAoB,GAAAd,EAAA,CAAAc;AAEZ,EAAA,IAAAC,UAAU,GAAKC,eAAe,EAAA,WAA9B,CAAA;EACR,IAAMC,WAAW,GAAGC,uBAAuB,EAA3C,CAAA;;AACM,EAAA,IAAAC,EAAA,GAKFF,WAAW,KAAX,IAAA,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAEG,MALX;AAAA,MACJC,MAAM,YADF;AAAA,MAEJC,QAAQ,cAFJ;AAAA,MAGJC,gBAAgB,sBAHZ;AAAA,MAIJC,WAAW,iBAJP,CAAA;;AAMN,EAAA,IAAMC,mBAAmB,GAAG,CAAAD,WAAW,KAAX,IAAA,IAAAA,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,WAAW,CAAEE,eAAb,KAAgCC,sBAA5D,CAAA;AACA,EAAA,IAAMC,sBAAsB,GAAG,CAAAJ,WAAW,KAAX,IAAA,IAAAA,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,WAAW,CAAEK,kBAAb,KAAmCC,yBAAlE,CAAA;;EAEM,IAAAC,EAsBF,GAAAC,iBAAiB,EAtBf;AAAA,MACJC,WAAW,GAAAF,EAAA,CAAAE,WADP;AAAA,MAEJC,mBAAmB,GAAAH,EAAA,CAAAG,mBAFf;AAAA,MAGJC,oBAAoB,GAAAJ,EAAA,CAAAI,oBAHhB;AAAA,MAIJC,uBAAuB,GAAAL,EAAA,CAAAK,uBAJnB;AAAA,MAKJC,iBAAiB,GAAAN,EAAA,CAAAM,iBALb;AAAA,MAMJC,oBAAoB,GAAAP,EAAA,CAAAO,oBANhB;AAAA,MAOJC,aAAa,GAAAR,EAAA,CAAAQ,aAPT;AAAA,MAQJC,eAAe,GAAAT,EAAA,CAAAS,eARX;AAAA,MASJC,SAAS,GAAAV,EAAA,CAAAU,SATL;AAAA,MAUJC,qBAAqB,GAAAX,EAAA,CAAAW,qBAVjB;AAAA,MAWJC,iBAAiB,GAAAZ,EAAA,CAAAY,iBAXb;AAAA,MAYJC,cAAc,GAAAb,EAAA,CAAAa,cAZV;AAAA,MAaJC,cAAc,GAAAd,EAAA,CAAAc,cAbV;AAAA,MAcJC,YAAY,GAAAf,EAAA,CAAAe,YAdR;AAAA,MAeJC,eAAe,qBAfX;AAAA,MAgBJC,aAAa,GAAAjB,EAAA,CAAAiB,aAhBT;AAAA,MAiBJC,qBAAqB,GAAAlB,EAAA,CAAAkB,qBAjBjB;AAAA,MAkBJC,eAAe,qBAlBX;AAAA,MAmBJC,mBAAmB,GAAApB,EAAA,CAAAoB,mBAnBf;AAAA,MAoBJC,iBAAiB,GAAArB,EAAA,CAAAqB,iBApBb;AAAA,MAqBJC,oBAAoB,0BArBhB,CAAA;;AAuBA,EAAA,IAAAC,EAAA,GAA0BrD,QAAQ,CAAC,KAAD,CAAlC;AAAA,MAACsD,QAAQ,GAAAD,EAAA,CAAA,CAAA,CAAT;AAAA,MAAWE,WAAW,GAAAF,EAAA,CAAA,CAAA,CAAtB,CAAA;;AACA,EAAA,IAAAG,EAAA,GAA8BxD,QAAQ,CAAC,KAAD,CAAtC;AAAA,MAACyD,UAAU,GAAAD,EAAA,CAAA,CAAA,CAAX;AAAA,MAAaE,aAAa,GAAAF,EAAA,CAAA,CAAA,CAA1B,CAAA;;AACA,EAAA,IAAAG,EAAA,GAAsC3D,QAAQ,CAAC,KAAD,CAA9C;AAAA,MAAC4D,cAAc,GAAAD,EAAA,CAAA,CAAA,CAAf;AAAA,MAAiBE,iBAAiB,GAAAF,EAAA,CAAA,CAAA,CAAlC,CAAA;;AACA,EAAA,IAAAG,EAAA,GAA8B9D,QAAQ,CAAC,KAAD,CAAtC;AAAA,MAAC+D,UAAU,GAAAD,EAAA,CAAA,CAAA,CAAX;AAAA,MAAaE,aAAa,GAAAF,EAAA,CAAA,CAAA,CAA1B,CAAA;;AACA,EAAA,IAAAG,EAAA,GAAoCjE,QAAQ,CAAC,KAAD,CAA5C;AAAA,MAACkE,aAAa,GAAAD,EAAA,CAAA,CAAA,CAAd;AAAA,MAAgBE,gBAAgB,GAAAF,EAAA,CAAA,CAAA,CAAhC,CAAA;;AACA,EAAA,IAAAG,EAAA,GAAwCpE,QAAQ,CAAC,EAAD,CAAhD;AAAA,MAACqE,eAAe,GAAAD,EAAA,CAAA,CAAA,CAAhB;AAAA,MAAkBE,kBAAkB,GAAAF,EAAA,CAAA,CAAA,CAApC,CAAA;;AACA,EAAA,IAAAG,EAAA,GAAsCvE,QAAQ,CAAC,EAAD,CAA9C;AAAA,MAACwE,cAAc,GAAAD,EAAA,CAAA,CAAA,CAAf;AAAA,MAAiBE,iBAAiB,GAAAF,EAAA,CAAA,CAAA,CAAlC,CAAA;;AACA,EAAA,IAAAG,EAAA,GAA0C1E,QAAQ,CAAC,EAAD,CAAlD;AAAA,MAAC2E,gBAAgB,GAAAD,EAAA,CAAA,CAAA,CAAjB;AAAA,MAAmBE,mBAAmB,GAAAF,EAAA,CAAA,CAAA,CAAtC,CAAA;;AACA,EAAA,IAAAG,EAAA,GAA4C7E,QAAQ,CAAC,IAAD,CAApD;AAAA,MAAC8E,iBAAiB,GAAAD,EAAA,CAAA,CAAA,CAAlB;AAAA,MAAoBE,oBAAoB,GAAAF,EAAA,CAAA,CAAA,CAAxC,CAAA;;AACA,EAAA,IAAAG,EAAA,GAAkChF,QAAQ,CAAC,IAAD,CAA1C;AAAA,MAACiF,YAAY,GAAAD,EAAA,CAAA,CAAA,CAAb;AAAA,MAAeE,eAAe,GAAAF,EAAA,CAAA,CAAA,CAA9B,CAAA;;AACA,EAAA,IAAAG,EAAA,GAAoDnF,QAAQ,CAAC,EAAD,CAA5D;AAAA,MAACoF,qBAAqB,GAAAD,EAAA,CAAA,CAAA,CAAtB;AAAA,MAAwBE,wBAAwB,GAAAF,EAAA,CAAA,CAAA,CAAhD,CAAA;;AACA,EAAA,IAAAG,EAAA,GAAgCtF,QAAQ,CAAC,IAAD,CAAxC;AAAA,MAACuF,WAAW,GAAAD,EAAA,CAAA,CAAA,CAAZ;AAAA,MAAcE,cAAc,GAAAF,EAAA,CAAA,CAAA,CAA5B,CAAA;;AACN,EAAA,IAAMG,mBAAmB,GAAGC,MAAM,CAAC,IAAD,CAAlC,CAAA;AACA,EAAA,IAAMC,gBAAgB,GAAGD,MAAM,CAAC,IAAD,CAA/B,CAAA;EACA,IAAME,2BAA2B,GAAGvE,QAAQ,IACvCC,gBAD+B,IAE/B+C,eAAe,CAACwB,MAAhB,GAAyB,CAFM,IAG/B,CAACC,uBAAuB,CAAC7D,mBAAD,CAHO,IAI/B,CAAC8D,sBAAsB,CAAC9D,mBAAD,CAJ5B,CAAA;AAKA,EAAA,IAAM+D,QAAQ,GAAG,CAAChE,WAAD,IACZ8D,uBAAuB,CAAC7D,mBAAD,CADX,IAEZ8D,sBAAsB,CAAC9D,mBAAD,CAFV,IAGZ,CAACZ,QAHN,CAAA;AAKAlB,EAAAA,SAAS,CAAC,YAAA;AACR,IAAA,IAAI,CAAAqE,cAAc,KAAA,IAAd,IAAAA,cAAc,KAAA,KAAA,CAAd,GAAc,KAAA,CAAd,GAAAA,cAAc,CAAEqB,MAAhB,KAA0BrE,mBAA9B,EAAmD;MACjDgE,cAAc,CAAC,KAAD,CAAd,CAAA;AACD,KAFD,MAEO;MACLA,cAAc,CAAC,IAAD,CAAd,CAAA;AACD,KAAA;AACF,GANQ,EAMN,CAAChB,cAAD,CANM,CAAT,CAAA;AAQArE,EAAAA,SAAS,CAAC,YAAA;AACRsE,IAAAA,iBAAiB,CAACD,cAAc,CAACyB,MAAf,CAAsB,UAAClG,EAAD,EAAW;AAAR,MAAA,IAAAqB,MAAM,GAAArB,EAAA,CAAAqB,MAAN,CAAA;AACzC,MAAA,IAAM8E,CAAC,GAAGvB,gBAAgB,CAACwB,OAAjB,CAAyB/E,MAAzB,CAAV,CAAA;;MACA,IAAI8E,CAAC,GAAG,CAAR,EAAW;AACT,QAAA,OAAO,KAAP,CAAA;AACD,OAFD,MAEO;AACLvB,QAAAA,gBAAgB,CAACyB,MAAjB,CAAwBF,CAAxB,EAA2B,CAA3B,CAAA,CAAA;AACA,QAAA,OAAO,IAAP,CAAA;AACD,OAAA;AACF,KARiB,CAAD,CAAjB,CAAA;AASD,GAVQ,EAUN,CAACvB,gBAAD,CAVM,CAAT,CAAA;AAYA/E,EAAAA,iBAAiB,CAAC,YAAA;;;IAChB,IAAI,CAAA,MAAAqC,mBAAmB,KAAA,IAAnB,IAAAA,mBAAmB,KAAnB,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,mBAAmB,CAAEoE,WAArB,MAAgC,IAAhC,IAAgCtG,EAAA,KAAA,KAAA,CAAhC,GAAgC,KAAA,CAAhC,GAAgCA,EAAA,CAAEuG,SAAlC,OAAgDjG,OAAO,SAAP,IAAAA,OAAO,KAAA,KAAA,CAAP,GAAO,KAAA,CAAP,GAAAA,OAAO,CAAEiG,SAAzD,CAAJ,EAAwE;AACtE7F,MAAAA,YAAY,KAAZ,IAAA,IAAAA,YAAY,KAAZ,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,YAAY,EAAZ,CAAA;AACD,KAAA;AACF,GAJgB,EAId,CAAC6C,QAAD,EAAW,CAAAiD,EAAA,GAAAlG,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAEmG,SAAT,MAAkB,IAAlB,IAAkBD,EAAA,KAAA,KAAA,CAAlB,GAAkB,KAAA,CAAlB,GAAkBA,EAAA,CAAEV,MAA/B,CAJc,CAAjB,CAAA;AAMAY,EAAAA,eAAe,CAAC,YAAA;IACd,IAAIC,gBAAgB,GAAG,IAAvB,CAAA;IACA,IAAIC,yBAAyB,GAAG,IAAhC,CAAA;;IACA,IAAIzE,oBAAoB,KAAK7B,OAAO,CAACiG,SAAjC,KAA8CX,gBAAgB,KAAhB,IAAA,IAAAA,gBAAgB,KAAhB,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,gBAAgB,CAAEiB,OAAhE,CAAJ,EAA6E;AAC3EjB,MAAAA,gBAAgB,CAACiB,OAAjB,CAAyBC,cAAzB,CAAwC;AAAEC,QAAAA,KAAK,EAAE,QAAT;AAAmBC,QAAAA,MAAM,EAAE,QAAA;OAAnE,CAAA,CAAA;MACA/C,aAAa,CAAC,KAAD,CAAb,CAAA;MACA0C,gBAAgB,GAAGM,UAAU,CAAC,YAAA;QAC5B7C,gBAAgB,CAAC,IAAD,CAAhB,CAAA;OAD2B,EAE1B,GAF0B,CAA7B,CAAA;MAGAwC,yBAAyB,GAAGK,UAAU,CAAC,YAAA;QACrC7E,uBAAuB,CAAC,CAAD,CAAvB,CAAA;AACAiB,QAAAA,oBAAoB,KAApB,IAAA,IAAAA,oBAAoB,KAApB,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,oBAAoB,EAApB,CAAA;OAFoC,EAGnC,IAHmC,CAAtC,CAAA;AAID,KAVD,MAUO;MACLe,gBAAgB,CAAC,KAAD,CAAhB,CAAA;AACD,KAAA;;AACD,IAAA,OAAO,YAAA;MACL8C,YAAY,CAACP,gBAAD,CAAZ,CAAA;MACAO,YAAY,CAACN,yBAAD,CAAZ,CAAA;KAFF,CAAA;AAID,GApBc,EAoBZ,CAACzE,oBAAD,EAAuByD,gBAAgB,CAACiB,OAAxC,EAAiDvG,OAAO,CAACiG,SAAzD,CApBY,CAAf,CAAA;AAsBAG,EAAAA,eAAe,CAAC,YAAA;IACd,IAAIC,gBAAgB,GAAG,IAAvB,CAAA;IACA,IAAIQ,sBAAsB,GAAG,IAA7B,CAAA;;IACA,IAAI9E,iBAAiB,KAAK/B,OAAO,CAACiG,SAA9B,KAA2CX,gBAAgB,KAAhB,IAAA,IAAAA,gBAAgB,KAAhB,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,gBAAgB,CAAEiB,OAA7D,CAAJ,EAA0E;AACxEjB,MAAAA,gBAAgB,CAACiB,OAAjB,CAAyBC,cAAzB,CAAwC;AAAEC,QAAAA,KAAK,EAAE,QAAT;AAAmBC,QAAAA,MAAM,EAAE,QAAA;OAAnE,CAAA,CAAA;MACA5C,gBAAgB,CAAC,KAAD,CAAhB,CAAA;MACAuC,gBAAgB,GAAGM,UAAU,CAAC,YAAA;QAC5BhD,aAAa,CAAC,IAAD,CAAb,CAAA;OAD2B,EAE1B,GAF0B,CAA7B,CAAA;MAGAkD,sBAAsB,GAAGF,UAAU,CAAC,YAAA;QAClC3E,oBAAoB,CAAC,CAAD,CAApB,CAAA;AACAc,QAAAA,iBAAiB,KAAjB,IAAA,IAAAA,iBAAiB,KAAjB,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,iBAAiB,EAAjB,CAAA;OAFiC,EAGhC,IAHgC,CAAnC,CAAA;AAID,KAVD,MAUO;MACLa,aAAa,CAAC,KAAD,CAAb,CAAA;AACD,KAAA;;AACD,IAAA,OAAO,YAAA;MACLiD,YAAY,CAACP,gBAAD,CAAZ,CAAA;MACAO,YAAY,CAACC,sBAAD,CAAZ,CAAA;KAFF,CAAA;AAID,GApBc,EAoBZ,CAAC9E,iBAAD,EAAoBuD,gBAAgB,CAACiB,OAArC,EAA8CvG,OAAO,CAACiG,SAAtD,EAAiEnD,iBAAjE,CApBY,CAAf,CAAA;AAqBA,EAAA,IAAMgE,eAAe,GAAGC,OAAO,CAAC,YAAA;AAC9B,IAAA,OAAOxG,aAAa,KAAA,IAAb,IAAAA,aAAa,KAAA,KAAA,CAAb,GAAa,KAAA,CAAb,GAAAA,aAAa,CAAG;AACrBP,MAAAA,OAAO,EAAAA,OADc;AAErBE,MAAAA,QAAQ,EAAAA,QAFa;AAGrBC,MAAAA,WAAW,EAAAA,WAAAA;AAHU,KAAH,CAApB,CAAA;AAKD,GAN8B,EAM5B,CAACH,OAAD,EAAUO,aAAV,CAN4B,CAA/B,CAAA;AAOA,EAAA,IAAMyG,uBAAuB,GAAGD,OAAO,CAAC,YAAA;AACtC,IAAA,IAAI1G,qBAAJ,EAA2B;AACzB,MAAA,OAAOA,qBAAqB,KAAA,IAArB,IAAAA,qBAAqB,KAAA,KAAA,CAArB,GAAqB,KAAA,CAArB,GAAAA,qBAAqB,CAAG;AAAEL,QAAAA,OAAO,EAAEA,OAAAA;AAAX,OAAH,CAA5B,CAAA;AACD,KAAA;;AACD,IAAA,OAAO,IAAP,CAAA;AACD,GALsC,EAKpC,CAACA,OAAD,EAAUK,qBAAV,CALoC,CAAvC,CAAA;;AAOA,EAAA,IAAIyG,eAAJ,EAAqB;IACnB,oBACEG,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,MAAA,GAAG,EAAE3B,gBADP;AAEE,MAAA,SAAS,EAAE4B,YAAY,CAAC,CACtB,2CADsB,EAEtBxD,UAAU,GAAG,4BAAH,GAAkC,EAFtB,EAGtBG,aAAa,GAAG,+BAAH,GAAqC,EAH5B,CAAD,CAAA;KAQrB;AACA5D,IAAAA,YAAY,KAAK+G,uBAAuB,iBACtCC,6BAAC,aAAD,EAAA,IAAA,eACEA,6BAAC,KAAD,EAAA;MAAO,IAAI,EAAEE,eAAe,CAACC,SAA7B;MAAwC,KAAK,EAAEC,WAAW,CAACC,cAAAA;AAA3D,KAAA,EACGC,MAAM,CAACvH,OAAO,CAACwH,SAAT,EAAoB,eAApB,EAAqC;AAC1CC,MAAAA,MAAM,EAAEhH,UAAAA;AADkC,KAArC,CADT,CADF,CADU,CAXhB,EAqBGqG,eArBH,CADF,CAAA;AAyBD,GAAA;;AAED,EAAA,IAAI7D,QAAQ,KAAI,CAAAyE,EAAA,GAAA1H,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAE2H,aAAT,MAA0B,IAA1B,IAA0BD,EAAA,KAAA,KAAA,CAA1B,GAA0B,KAAA,CAA1B,GAA0BA,EAAA,CAAAE,IAAA,CAAA5H,OAAA,CAA9B,CAAZ,EAA4C;IAC1C,OAAO,CAAAM,eAAe,KAAf,IAAA,IAAAA,eAAe,WAAf,SAAA,GAAAA,eAAe,EAAf,kBACL2G,4DAEI1B,2BAA2B,iBACzB0B,6BAAC,oBAAD,EAAA;AACE,MAAA,cAAc,EAAEjD,eADlB;AAEE,MAAA,UAAU,EAAES,iBAFd;AAGE,MAAA,qBAAqB,EAAE9B,qBAHzB;MAIE,eAAe,EAAE,UAACkF,IAAD,EAAK;AACpB,QAAA,IAAIA,IAAJ,EAAU;AACRzD,UAAAA,iBAAiB,CAAK0D,aAAA,CAAAA,aAAA,CAAA,EAAA,EAAA3D,cAAA,EAAgB,IAAhB,CAAA,EAAgB,CAAA0D,IAAA,CAAhB,OAAA,CAAL,CAAjB,CAAA;AACD,SAAA;;QACD5D,kBAAkB,CAAC,EAAD,CAAlB,CAAA;QACAY,eAAe,CAACgD,IAAD,CAAf,CAAA;QACAnD,oBAAoB,CAAC,IAAD,CAApB,CAAA;OAVJ;AAYE,MAAA,iBAAiB,EAAE,YAAA;QACjBA,oBAAoB,CAAC,IAAD,CAApB,CAAA;OAbJ;MAeE,YAAY,EAAE,UAACqD,KAAD,EAAM;QAClB/C,wBAAwB,CAAC+C,KAAD,CAAxB,CAAA;OAhBJ;AAkBE,MAAA,cAAc,EAAE7C,WAlBlB;AAmBE,MAAA,eAAe,EAAE/D,mBAnBnB;AAoBE,MAAA,kBAAkB,EAAEG,sBAAAA;KAvB5B,CAAA,eA2BE2F,6BAAC,YAAD,EAAA;AACE,MAAA,MAAM,EADR,IAAA;AAEE,MAAA,QAAQ,EAAEtB,QAFZ;AAGE,MAAA,GAAG,EAAEP,mBAHP;AAIE,MAAA,mBAAmB,EAAER,YAJvB;AAKE,MAAA,gBAAgB,EAAE3D,gBALpB;AAME,MAAA,OAAO,EAAEjB,OANX;AAOE,MAAA,aAAa,EAAE,YAAA;;;AACb,QAAA,CAAAN,EAAA,GAAAkC,mBAAmB,SAAnB,IAAAA,mBAAmB,KAAA,KAAA,CAAnB,GAAmB,KAAA,CAAnB,GAAAA,mBAAmB,CAAEoG,WAArB,UAAA,iBAAA,SAAA,+BAAA,CAAA;OARJ;MAUE,eAAe,EAAE,UAACtI,EAAD,EAAwC;;;AAArC,QAAA,IAAAuG,SAAS,eAAT;AAAA,YAAWjG,OAAO,GAAAN,EAAA,CAAAM,OAAlB;AAAA,YAAoBiI,eAAe,GAAAvI,EAAA,CAAAuI,eAAnC,CAAA;AAClBhG,QAAAA,aAAa,CAAC;AACZgE,UAAAA,SAAS,EAAAA,SADG;AAEZjG,UAAAA,OAAO,EAAAA,OAFK;AAGZmE,UAAAA,cAAc,EAAAA,cAHF;AAIZ8D,UAAAA,eAAe,EAAAA,eAAAA;AAJH,SAAD,CAAb,CAAA;QAMA/E,WAAW,CAAC,KAAD,CAAX,CAAA;AACA,QAAA,CAAAgD,EAAA,GAAAtE,mBAAmB,SAAnB,IAAAA,mBAAmB,KAAA,KAAA,CAAnB,GAAmB,KAAA,CAAnB,GAAAA,mBAAmB,CAAEsG,SAArB,UAAA,iBAAA,SAAA,+BAAA,CAAA;OAlBJ;AAoBE,MAAA,YAAY,EAAE,YAAA;;;QACZjE,kBAAkB,CAAC,EAAD,CAAlB,CAAA;QACAG,iBAAiB,CAAC,EAAD,CAAjB,CAAA;QACAG,mBAAmB,CAAC,EAAD,CAAnB,CAAA;QACAS,wBAAwB,CAAC,EAAD,CAAxB,CAAA;QACA9B,WAAW,CAAC,KAAD,CAAX,CAAA;AACA,QAAA,CAAAxD,EAAA,GAAAkC,mBAAmB,SAAnB,IAAAA,mBAAmB,KAAA,KAAA,CAAnB,GAAmB,KAAA,CAAnB,GAAAA,mBAAmB,CAAEsG,SAArB,UAAA,iBAAA,SAAA,+BAAA,CAAA;OA1BJ;MA4BE,eAAe,EAAE,UAACL,IAAD,EAAK;AACpB,QAAA,IAAI,CAAAjD,YAAY,KAAA,IAAZ,IAAAA,YAAY,KAAA,KAAA,CAAZ,GAAY,KAAA,CAAZ,GAAAA,YAAY,CAAE7D,MAAd,OAAyB8G,IAAI,SAAJ,IAAAA,IAAI,KAAA,KAAA,CAAJ,GAAI,KAAA,CAAJ,GAAAA,IAAI,CAAE9G,MAA/B,CAAJ,EAA2C;UACzC8D,eAAe,CAAC,IAAD,CAAf,CAAA;UACAZ,kBAAkB,CAAC,EAAD,CAAlB,CAAA;AACD,SAAA;OAhCL;MAkCE,qBAAqB,EAAE,UAACkE,WAAD,EAAY;QACjClE,kBAAkB,CAACkE,WAAD,CAAlB,CAAA;OAnCJ;MAqCE,yBAAyB,EAAE,UAACC,OAAD,EAAQ;QACjC7D,mBAAmB,CAAC6D,OAAD,CAAnB,CAAA;OAtCJ;MAwCE,SAAS,EAAE,UAACC,CAAD,EAAE;QACX,IAAI9C,2BAA2B,IAAI,CAAAR,qBAAqB,KAAA,IAArB,IAAAA,qBAAqB,KAAA,KAAA,CAArB,GAAqB,KAAA,CAArB,GAAAA,qBAAqB,CAAES,MAAvB,IAAgC,CAA/D,KACG6C,CAAC,CAACC,GAAF,KAAUC,gBAAgB,CAACC,KAA3B,IAAoCtD,WAArC,IAAqDmD,CAAC,CAACC,GAAF,KAAUC,gBAAgB,CAACE,OAAhF,IAA2FJ,CAAC,CAACC,GAAF,KAAUC,gBAAgB,CAACG,SADxH,CAAJ,EAEE;UACAhE,oBAAoB,CAAC2D,CAAD,CAApB,CAAA;AACA,UAAA,OAAO,IAAP,CAAA;AACD,SAAA;;AACD,QAAA,OAAO,KAAP,CAAA;AACD,OAAA;AAhDH,KAAA,CA3BF,CADF,CAAA;AAgFD,GAAA;;EAED,oBACEpB,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAEC,YAAY,CAAC,CACtB,2CADsB,EAEtBxD,UAAU,GAAG,4BAAH,GAAkC,EAFtB,EAGtBG,aAAa,GAAG,+BAAH,GAAqC,EAH5B,CAAD,CADzB;AAME,IAAA,KAAK,EAAE;AAAE8E,MAAAA,YAAY,EAAE,KAAA;KANzB;AAOE,IAAA,GAAG,EAAErD,gBAAAA;GAIHrF,EAAAA,YAAY,KAAK+G,uBAAuB,iBACtCC,6BAAC,aAAD,EAAA,IAAA,eACEA,6BAAC,KAAD,EAAA;IAAO,IAAI,EAAEE,eAAe,CAACC,SAA7B;IAAwC,KAAK,EAAEC,WAAW,CAACC,cAAAA;AAA3D,GAAA,EACGC,MAAM,CAACvH,OAAO,CAACwH,SAAT,EAAoB,eAApB,EAAqC;AAC1CC,IAAAA,MAAM,EAAEhH,UAAAA;GADH,CADT,CADF,CADU,CAXhB,EAuBI,CAAAD,oBAAoB,KAApB,IAAA,IAAAA,oBAAoB,KAApB,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,oBAAoB,EAApB,kBACEyG,cAAA,CAAA,aAAA,CAAC,cAAD,EAAA;AACE,IAAA,SAAS,EAAC,uCADZ;AAEE,IAAA,MAAM,EAAElG,MAFV;AAGE,IAAA,eAAe,EAAEmB,eAHnB;AAIE,IAAA,OAAO,EAAEN,mBAJX;AAKE,IAAA,OAAO,EAAE5B,OALX;IAME,QAAQ,EAAE,CAACgB,QANb;AAOE,IAAA,QAAQ,EAAEd,QAPZ;AAQE,IAAA,WAAW,EAAEC,WARf;AASE,IAAA,iBAAiB,EAAEkC,iBATrB;AAUE,IAAA,SAAS,EAAEF,SAVb;AAWE,IAAA,qBAAqB,EAAEC,qBAXzB;AAYE,IAAA,YAAY,EAAEI,YAZhB;AAaE,IAAA,cAAc,EAAED,cAblB;AAcE,IAAA,QAAQ,EAAEW,WAdZ;AAeE,IAAA,UAAU,EAAEG,aAfd;AAgBE,IAAA,cAAc,EAAEG,iBAhBlB;AAiBE,IAAA,aAAa,EAAEd,aAjBjB;AAkBE,IAAA,cAAc,EAAEJ,cAlBlB;AAmBE,IAAA,eAAe,EAAEG,eAnBnB;AAoBE,IAAA,eAAe,EAAEG,eApBnB;AAqBE,IAAA,mBAAmB,EAAEC,mBAAAA;AArBvB,GAAA,CAxBN,EAmDIO,UAAU,iBACR6D,cAAA,CAAA,aAAA,CAAC2B,aAAD,EAAA;AACE,IAAA,OAAO,EAAE5I,OADX;AAEE,IAAA,QAAQ,EAAE,YAAA;MAAM,OAAAqD,aAAa,CAAC,KAAD,CAAb,CAAA;AAAoB,KAAA;AAFtC,GAAA,CApDN,EA2DIE,cAAc,iBACZ0D,cAAA,CAAA,aAAA,CAAC,UAAD,EAAA;AACE,IAAA,OAAO,EAAEjH,OADX;AAEE,IAAA,QAAQ,EAAE,YAAA;MAAM,OAAAwD,iBAAiB,CAAC,KAAD,CAAjB,CAAA;AAAwB,KAAA;AAF1C,GAAA,CA5DN,CADF,CAAA;AAqED;;;;"}
|