UNPKG

@droppii-org/chat-sdk

Version:

Droppii React Chat SDK

26 lines (25 loc) 1.9 kB
"use client"; import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime"; import { Avatar, message } from "antd"; import { highlightSearch, sanitizeHtml } from "../../../utils/common"; import useConversationStore from "../../../store/conversation"; import { useTranslation } from "react-i18next"; const SearchItemAsUser = (props) => { var _a, _b, _c, _d, _e, _f; const { session, searchTerm = "" } = props; const { t } = useTranslation(); const ownerName = `${(_a = session.owner) === null || _a === void 0 ? void 0 : _a.fullName}${((_b = session.owner) === null || _b === void 0 ? void 0 : _b.username) ? ` (${(_c = session.owner) === null || _c === void 0 ? void 0 : _c.username})` : ""}`; const onPressItem = async () => { if (!(session === null || session === void 0 ? void 0 : session.conversation)) { return message.error(t("err_get_conversation")); } useConversationStore.getState().setConversationData(session.conversation); useConversationStore .getState() .setSelectedConversationId(session.conversationId); }; return (_jsxs("div", { className: "py-3 px-2 flex items-center gap-3 hover:bg-gray-100 hover:rounded-sm cursor-pointer border-b mx-1", onClick: onPressItem, children: [_jsx(Avatar, { size: "large", src: (_d = session.owner) === null || _d === void 0 ? void 0 : _d.avatar, alt: (_e = session.owner) === null || _e === void 0 ? void 0 : _e.username, children: (_f = session.owner) === null || _f === void 0 ? void 0 : _f.fullName.charAt(0).toUpperCase() }), _jsx("div", { className: "flex flex-col flex-1 min-w-0", children: _jsx("p", { className: "text-sm font-semibold truncate", dangerouslySetInnerHTML: { __html: sanitizeHtml(highlightSearch(ownerName, searchTerm)), } }) })] }, session.id)); }; export default SearchItemAsUser;