UNPKG

@uimkit/uikit-react

Version:

<img style="width:64px" src="https://mgmt.uimkit.chat/media/img/avatar.png"/>

38 lines (35 loc) 2.14 kB
import { __assign } from 'tslib'; import React__default, { useCallback } from 'react'; import { MESSAGE_OPERATE, MESSAGE_FLOW } from '../../constants.js'; import '../../context/TranslationContext.js'; import '../../context/UIKitContext.js'; import '../../context/ComponentContext.js'; import { useChatActionContext } from '../../context/ChatActionContext.js'; import '../../context/MessageInputContext.js'; import '../../context/UIMessageContext.js'; import '../../context/ChatStateContext.js'; import { MessageType } from '../../types/models.js'; import '../../types/events.js'; function MessageRevokeWithContext(props) { var message = props.message; var operateMessage = useChatActionContext('MessageRevokeWithContext').operateMessage; var handleRevoke = useCallback(function () { var _a; operateMessage((_a = {}, _a[MESSAGE_OPERATE.REVOKE] = message, _a)); }, [operateMessage]); return (React__default.createElement("div", { className: "bubble message-system message-revoke" }, (message === null || message === void 0 ? void 0 : message.flow) === MESSAGE_FLOW.IN && React__default.createElement("span", null, (message === null || message === void 0 ? void 0 : message.nick) || (message === null || message === void 0 ? void 0 : message.from)), (message === null || message === void 0 ? void 0 : message.flow) !== MESSAGE_FLOW.IN && React__default.createElement("span", null, "you "), React__default.createElement("span", null, " recalled a message"), (message === null || message === void 0 ? void 0 : message.flow) === MESSAGE_FLOW.OUT && (message === null || message === void 0 ? void 0 : message.type) === MessageType.Text && React__default.createElement("span", { className: "edit", role: "button", tabIndex: 0, onClick: handleRevoke }, " Re-edit"))); } var MemoizedMessageRevoke = React__default.memo(MessageRevokeWithContext); function MessageRevoke(props) { return (React__default.createElement(MemoizedMessageRevoke, __assign({}, props))); } export { MessageRevoke }; //# sourceMappingURL=MessageRevoke.js.map