UNPKG

@uimkit/uikit-react

Version:

<img style="width:64px" src="https://mgmt.uimkit.chat/media/img/avatar.png"/>

35 lines (30 loc) 1.3 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var React = require('react'); require('../../../types/models.js'); require('../../../types/events.js'); function useShouldForceScrollToBottom(messages, currentUserId) { var lastFocusedOwnMessage = React.useRef(''); var initialFocusRegistered = React.useRef(false); function recheckForNewOwnMessage() { if (messages && messages.length > 0) { var lastMessage = messages[messages.length - 1]; // 最后一条消息是自己发的, 就更新关联 if (lastMessage.from === currentUserId && lastFocusedOwnMessage.current !== lastMessage.id) { lastFocusedOwnMessage.current = lastMessage.id; return true; } } return false; } React.useEffect(function () { if (messages && messages.length && !initialFocusRegistered.current) { initialFocusRegistered.current = true; recheckForNewOwnMessage(); } }, [messages, messages === null || messages === void 0 ? void 0 : messages.length]); return recheckForNewOwnMessage; } exports.useShouldForceScrollToBottom = useShouldForceScrollToBottom; //# sourceMappingURL=useShouldForceScrollToBottom.js.map