UNPKG

@uimkit/uikit-react

Version:

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

77 lines (70 loc) 6.43 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var tslib = require('tslib'); var React = require('react'); require('../../types/models.js'); require('../../types/events.js'); require('../../context/TranslationContext.js'); require('../../context/UIKitContext.js'); var ComponentContext = require('../../context/ComponentContext.js'); require('../../context/ChatActionContext.js'); require('../../context/MessageInputContext.js'); var UIMessageContext = require('../../context/UIMessageContext.js'); var ChatStateContext = require('../../context/ChatStateContext.js'); var useMessageHandler = require('./hooks/useMessageHandler.js'); require('../../constants.js'); require('../Icon/type.js'); require('../Icon/config.js'); require('i18next'); var UIMessageDefault = require('./UIMessageDefault.js'); var MessagePlugins = require('./MessagePlugins.js'); var MessageContext = require('./MessageContext.js'); function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } var React__default = /*#__PURE__*/_interopDefaultLegacy(React); function UIMessageWithContext(props) { var propsMessage = props.message, propUIMessage = props.UIMessage, propMessagePlugins = props.MessagePlugins, propMessageContext = props.MessageContext, handleDelete = props.handleDelete, CustemElement = props.CustemElement, TextElement = props.TextElement, ImageElement = props.ImageElement, VideoElement = props.VideoElement, AudioElement = props.AudioElement, FileElement = props.FileElement, MergerElement = props.MergerElement, LocationElement = props.LocationElement, FaceElement = props.FaceElement, className = props.className, propsFilter = props.filter, isShowTime = props.isShowTime, isShowRead = props.isShowRead, plugin = props.plugin, prefix = props.prefix, suffix = props.suffix, customName = props.customName, showAvatar = props.showAvatar, showName = props.showName, customAvatar = props.customAvatar, isShowProgress = props.isShowProgress, Progress = props.Progress; var _a = ComponentContext.useComponentContext('UIMessage'), ContextMessagePlugins = _a.MessagePlugins, ContextMessageContext = _a.MessageContext; var messageConfig = ChatStateContext.useChatStateContext().messageConfig; var UIMessageUIComponent = propUIMessage || UIMessageDefault.UIMessageDefault; var MessagePlugins$1 = propMessagePlugins || ContextMessagePlugins || MessagePlugins.MessagePlugins; var MessageContext$1 = propMessageContext || ContextMessageContext || MessageContext.MessageContext; var filter = propsFilter || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.filter); var message = propsMessage || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.message); if (filter) { filter(message); } var messageContextValue = { message: message, handleDelete: handleDelete || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.handleDelete), CustemElement: CustemElement || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.CustemElement), TextElement: TextElement || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.TextElement), ImageElement: ImageElement || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.ImageElement), VideoElement: VideoElement || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.VideoElement), AudioElement: AudioElement || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.AudioElement), FileElement: FileElement || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.FileElement), MergerElement: MergerElement || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.MergerElement), LocationElement: LocationElement || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.LocationElement), FaceElement: FaceElement || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.FaceElement), isShowTime: isShowTime || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.isShowTime), isShowRead: isShowRead || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.isShowRead), plugin: plugin || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.plugin), prefix: prefix || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.prefix), suffix: suffix || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.suffix), customName: customName || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.customName), showAvatar: showAvatar || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.showAvatar), showName: showName || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.showName), customAvatar: customAvatar || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.customAvatar), isShowProgress: isShowProgress || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.isShowProgress), Progress: Progress || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.Progress), }; return (React__default["default"].createElement(UIMessageContext.UIMessageContextProvider, { value: messageContextValue }, React__default["default"].createElement(UIMessageUIComponent, { message: message, isShowTime: false, MessageContext: MessageContext$1, MessagePlugins: MessagePlugins$1, className: className || (messageConfig === null || messageConfig === void 0 ? void 0 : messageConfig.className) }))); } var MemoizedUIMessage = React__default["default"].memo(UIMessageWithContext); function UIMessage(props) { var message = props.message; var handleDelMessage = useMessageHandler.useMessageHandler({ message: message }).handleDelMessage; return (React__default["default"].createElement(MemoizedUIMessage, tslib.__assign({ handleDelete: handleDelMessage }, props))); } exports.UIMessage = UIMessage; //# sourceMappingURL=UIMessage.js.map