@uimkit/uikit-react
Version:
<img style="width:64px" src="https://mgmt.uimkit.chat/media/img/avatar.png"/>
30 lines (27 loc) • 1.68 kB
JavaScript
import { __assign } from 'tslib';
import React__default from 'react';
import { JSONStringToParse } from '../utils.js';
import { ConversationType } from '../../types/models.js';
import '../../types/events.js';
function MessageCustomWithContext(props) {
var context = props.context, message = props.message, children = props.children;
var handleContext = function (data) {
if (data.data === 'Hyperlink') {
var extension = JSONStringToParse(data === null || data === void 0 ? void 0 : data.extension);
return extension === null || extension === void 0 ? void 0 : extension.item.map(function (item) { return React__default.createElement("a", { target: "_blank", key: item.value, href: item.value, rel: "noreferrer" }, item.value); });
}
if (data.data === 'group_create') {
return "".concat((message === null || message === void 0 ? void 0 : message.nick) || (message === null || message === void 0 ? void 0 : message.from), " Create a group");
}
return data.extension;
};
return (React__default.createElement("div", { className: "bubble message-custom bubble-".concat(message.flow, " ").concat((message === null || message === void 0 ? void 0 : message.conversation_type) === ConversationType.Group ? 'group' : '') },
handleContext(context === null || context === void 0 ? void 0 : context.custom),
children));
}
var MemoizedMessageCustom = React__default.memo(MessageCustomWithContext);
function MessageCustom(props) {
return (React__default.createElement(MemoizedMessageCustom, __assign({}, props)));
}
export { MessageCustom };
//# sourceMappingURL=MessageCustom.js.map