@uimkit/uikit-react
Version:
<img style="width:64px" src="https://mgmt.uimkit.chat/media/img/avatar.png"/>
27 lines (24 loc) • 1.69 kB
JavaScript
import { __assign } from 'tslib';
import React__default, { useState } from 'react';
import { Modal } from '../Modal/index.js';
import { ConversationType } from '../../types/models.js';
import '../../types/events.js';
import lodash_first from '../../node_modules/.pnpm/lodash.first@3.0.0/node_modules/lodash.first/index.js';
function MessageImageWithContext(props) {
var _a;
var context = props.context, message = props.message, children = props.children;
var _b = useState(false), show = _b[0], setShow = _b[1];
var bigImageInfo = lodash_first((_a = message === null || message === void 0 ? void 0 : message.image) === null || _a === void 0 ? void 0 : _a.infos);
return (React__default.createElement("div", { className: "message-image" },
React__default.createElement("div", { role: "button", tabIndex: 0, onClick: function () { setShow(true); } },
React__default.createElement("img", { className: "img bubble-".concat(message.flow, " ").concat((message === null || message === void 0 ? void 0 : message.conversation_type) === ConversationType.Group ? 'group' : ''), src: context.url, alt: "" })),
children,
show && (React__default.createElement(Modal, { onClick: function () { setShow(false); } },
React__default.createElement("img", { className: "big-image", src: bigImageInfo === null || bigImageInfo === void 0 ? void 0 : bigImageInfo.url, alt: "" })))));
}
var MemoizedMessageImage = React__default.memo(MessageImageWithContext);
function MessageImage(props) {
return (React__default.createElement(MemoizedMessageImage, __assign({}, props)));
}
export { MessageImage };
//# sourceMappingURL=MessageImage.js.map