@uimkit/uikit-react
Version:
<img style="width:64px" src="https://mgmt.uimkit.chat/media/img/avatar.png"/>
33 lines (30 loc) • 1.73 kB
JavaScript
import { __assign } from 'tslib';
import React__default, { useState, useEffect } from 'react';
import '../../types/models.js';
import '../../types/events.js';
import { UIContactPreviewContent } from './UIContactPreviewContent.js';
import '../Icon/type.js';
import '../Icon/config.js';
import '../../context/TranslationContext.js';
import '../../context/UIKitContext.js';
import '../../context/ComponentContext.js';
import '../../context/ChatActionContext.js';
import '../../context/MessageInputContext.js';
import '../../context/UIMessageContext.js';
import '../../context/ChatStateContext.js';
import { getDisplayTitle } from './utils.js';
function UIContactPreview(props) {
var activeContact = props.activeContact, setActiveContact = props.setActiveContact, contact = props.contact, _a = props.Preview, Preview = _a === void 0 ? UIContactPreviewContent : _a, searchValue = props.searchValue;
var _b = useState(contact.avatar), displayImage = _b[0], setDisplayImage = _b[1];
var _c = useState(getDisplayTitle(contact, searchValue)), displayTitle = _c[0], setDisplayTitle = _c[1];
var isActive = (activeContact === null || activeContact === void 0 ? void 0 : activeContact.id) === (contact === null || contact === void 0 ? void 0 : contact.id);
if (!Preview)
return null;
useEffect(function () {
setDisplayImage(contact.avatar);
setDisplayTitle(getDisplayTitle(contact, searchValue));
}, [contact, searchValue]);
return (React__default.createElement(Preview, __assign({}, props, { active: isActive, displayImage: displayImage, displayTitle: displayTitle, setActiveContact: setActiveContact })));
}
export { UIContactPreview };
//# sourceMappingURL=UIContactPreview.js.map