UNPKG

stream-chat-react-native-core

Version:

The official React Native and Expo components for Stream Chat, a service for building chat applications

32 lines 1.67 kB
Object.defineProperty(exports, "__esModule", { value: true }); exports.useChannelDetailsMemberStatusText = void 0; var _react = require("react"); var _TranslationContext = require("../../../contexts/translationContext/TranslationContext"); var _useChannelMemberCount = require("../../../hooks/useChannelMemberCount"); var _useIsDirectChat = require("../../../hooks/useIsDirectChat"); var _useChannelMembersState = require("../../ChannelList/hooks/useChannelMembersState"); var _useChannelOnlineMemberCount = require("../../ChannelList/hooks/useChannelOnlineMemberCount"); var useChannelDetailsMemberStatusText = channel => { var _useTranslationContex = (0, _TranslationContext.useTranslationContext)(), t = _useTranslationContex.t; var members = (0, _useChannelMembersState.useChannelMembersState)(channel); var memberCount = (0, _useChannelMemberCount.useChannelMemberCount)(channel); var onlineCount = (0, _useChannelOnlineMemberCount.useChannelOnlineMemberCount)(channel); var isDirect = (0, _useIsDirectChat.useIsDirectChat)(channel); return (0, _react.useMemo)(() => { if (isDirect) { var ownUserId = channel.getClient().userID; var otherMember = Object.values(members).find(member => member.user?.id !== ownUserId); return otherMember?.user?.online ? t('Online') : ''; } return t('{{memberCount}} members, {{onlineCount}} online', { count: memberCount, memberCount, onlineCount }); }, [channel, isDirect, memberCount, members, onlineCount, t]); }; exports.useChannelDetailsMemberStatusText = useChannelDetailsMemberStatusText; //# sourceMappingURL=useChannelDetailsMemberStatusText.js.map