cometchat-react-ui-kit2
Version:
CometChat UI Kit for React App
81 lines (77 loc) • 3.54 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.CometChatMessagePreview = void 0;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _ = require("../..");
var _style = require("./style");
var _close = _interopRequireDefault(require("./resources/close.svg"));
/**
*
* CometChatMessagePreview
*
* @version 1.0.0
* @author CometChatTeam
* @copyright © 2022 CometChat Inc.
*
*/
var CometChatMessagePreview = function CometChatMessagePreview(props) {
var messageText = props.messagePreviewSubtitle;
var theme = new _.CometChatTheme(props.theme || {});
//xss extensions data
var xssData = (0, _.getExtensionsData)(props.messageObject, _.ExtensionConstants.xssFilter);
if (xssData && xssData.hasOwnProperty(_.ExtensionConstants.sanitizedText) && xssData.hasOwnProperty(_.ExtensionConstants.hasXSS) && xssData.hasXSS === _.ExtensionConstants.yes) {
messageText = xssData.sanitized_text;
}
//datamasking extensions data
var maskedData = (0, _.getExtensionsData)(props.messageObject, _.ExtensionConstants.dataMasking);
if (maskedData && maskedData.hasOwnProperty(_.ExtensionConstants.data) && maskedData.data.hasOwnProperty(_.ExtensionConstants.sensitiveData) && maskedData.data.hasOwnProperty(_.ExtensionConstants.messageMasked) && maskedData.data.sensitive_data === _.ExtensionConstants.yes) {
messageText = maskedData.data.message_masked;
}
//profanity extensions data
var profaneData = (0, _.getExtensionsData)(props.messageObject, _.ExtensionConstants.profanityFilter);
if (profaneData && profaneData.hasOwnProperty(_.ExtensionConstants.profanity) && profaneData.hasOwnProperty(_.ExtensionConstants.messageClean) && profaneData.profanity === _.ExtensionConstants.yes) {
messageText = profaneData.message_clean;
}
return /*#__PURE__*/_react["default"].createElement("div", {
style: (0, _style.editPreviewContainerStyle)(props, theme)
}, /*#__PURE__*/_react["default"].createElement("div", {
style: (0, _style.previewHeadingStyle)()
}, /*#__PURE__*/_react["default"].createElement("div", {
style: (0, _style.previewTitleStyle)(props, theme)
}, props.messagePreviewTitle), /*#__PURE__*/_react["default"].createElement("span", {
style: (0, _style.previewCloseStyle)(props),
onClick: props.onCloseClick
})), /*#__PURE__*/_react["default"].createElement("div", {
style: (0, _style.previewSubTitleStyle)(props, theme)
}, messageText));
};
exports.CometChatMessagePreview = CometChatMessagePreview;
CometChatMessagePreview.defaultProps = {
messagePreviewTitle: "",
messagePreviewSubtitle: "",
closeIconURL: _close["default"],
onCloseClick: null,
style: {
widht: "100%",
height: "auto",
border: "3px solid RGBA(20, 20, 20, 0.11)",
background: "RGBA(255,255,255)",
borderRadius: "none",
messagePreviewTitleFont: "500 12px Inter, sans-serif",
messagePreviewTitleColor: "RGB(20, 20, 20)",
messagePreviewSubtitleColor: "RGBA(20, 20, 20, 0.6)",
messagePreviewSubtitleFont: "400 13px Inter, sans-serif",
closeIconTint: "RGBA(20, 20, 20, 0.46)"
}
};
CometChatMessagePreview.propTypes = {
messagePreviewTitle: _propTypes["default"].string,
messagePreviewSubtitle: _propTypes["default"].string,
closeIconURL: _propTypes["default"].string,
onCloseClick: _propTypes["default"].func,
style: _propTypes["default"].object
};