@uimkit/uikit-react
Version:
<img style="width:64px" src="https://mgmt.uimkit.chat/media/img/avatar.png"/>
52 lines (49 loc) • 4.09 kB
JavaScript
import { __assign } from 'tslib';
import React__default from 'react';
import { MessageBubble } from './MessageBubble.js';
import { MessageTip } from './MessageTip.js';
import '../../context/TranslationContext.js';
import '../../context/UIKitContext.js';
import { useComponentContext } from '../../context/ComponentContext.js';
import '../../context/ChatActionContext.js';
import '../../context/MessageInputContext.js';
import { useUIMessageContext, messageShowType } from '../../context/UIMessageContext.js';
import '../../context/ChatStateContext.js';
import { MessageSystem } from './MessageSystem.js';
import { MessageRevoke } from './MessageRevoke.js';
import { MessageName } from './MessageName.js';
import { MessageAvatar } from './MessageAvatar.js';
import { MessageType } from '../../types/models.js';
import '../../types/events.js';
function UIMessageDefaultWithContext(props) {
var _a;
var message = props.message, propsMessageContext = props.MessageContext, propsMessagePlugins = props.MessagePlugins, className = props.className;
var _b = useComponentContext('UIMessage'), contextMessageContext = _b.MessageContext, contextMessagePlugins = _b.MessagePlugins;
var _c = useUIMessageContext('UIMessage'), prefix = _c.prefix, suffix = _c.suffix, customName = _c.customName, _d = _c.showAvatar, showAvatar = _d === void 0 ? messageShowType.IN : _d, _e = _c.showName, showName = _e === void 0 ? messageShowType.IN : _e, customAvatar = _c.customAvatar;
var MessageContextUIComponent = propsMessageContext || contextMessageContext;
var MessagePlugins = propsMessagePlugins || contextMessagePlugins;
return (React__default.createElement("div", { className: "message-default\n ".concat(((message === null || message === void 0 ? void 0 : message.type) === MessageType.GroupTip || (message === null || message === void 0 ? void 0 : message.revoked)) ? 'tip' : message === null || message === void 0 ? void 0 : message.flow, "\n ").concat(className, "\n ") },
(message === null || message === void 0 ? void 0 : message.type) === MessageType.GroupTip
&& (React__default.createElement(MessageTip, { message: message })),
(message === null || message === void 0 ? void 0 : message.type) === MessageType.GroupSystemNotice
&& (React__default.createElement(MessageSystem, { message: message })),
(message === null || message === void 0 ? void 0 : message.revoked)
&& (React__default.createElement(MessageRevoke, { message: message })),
(message === null || message === void 0 ? void 0 : message.type) !== MessageType.GroupTip
&& (message === null || message === void 0 ? void 0 : message.type) !== MessageType.GroupSystemNotice
&& !(message === null || message === void 0 ? void 0 : message.revoked)
&& (React__default.createElement("div", { className: "".concat((_a = message === null || message === void 0 ? void 0 : message.flow) !== null && _a !== void 0 ? _a : 'in'), key: message === null || message === void 0 ? void 0 : message.id, "data-message-id": message === null || message === void 0 ? void 0 : message.id },
prefix,
React__default.createElement(MessageAvatar, { message: message, CustomAvatar: customAvatar, showType: showAvatar }),
React__default.createElement("main", { className: "content" },
React__default.createElement(MessageName, { message: message, CustomName: customName, showType: showName }),
React__default.createElement(MessageBubble, { message: message, Context: MessageContextUIComponent, Plugins: MessagePlugins },
React__default.createElement(MessageContextUIComponent, { message: message }))),
suffix))));
}
var MemoizedUIMessageDefault = React__default.memo(UIMessageDefaultWithContext);
function UIMessageDefault(props) {
return (React__default.createElement(MemoizedUIMessageDefault, __assign({}, props)));
}
export { UIMessageDefault };
//# sourceMappingURL=UIMessageDefault.js.map