cometchat-react-ui-kit2
Version:
CometChat UI Kit for React App
104 lines (103 loc) • 4.08 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.CometChatWhiteboardBubble = void 0;
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _hooks = require("./hooks");
var _style = require("./style");
var _ = require("../../../");
/**
*
* CometChatWhiteboardBubble is UI component for collaborative whiteboard message bubble.
*
* @version 1.0.0
* @author CometChatTeam
* @copyright © 2022 CometChat Inc.
*
*/
var CometChatWhiteboardBubble = function CometChatWhiteboardBubble(props) {
var _React$useState = _react["default"].useState(null),
_React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2),
whiteboardURL = _React$useState2[0],
setWhiteboardURL = _React$useState2[1];
var theme = new _.CometChatTheme(props.theme) || new _.CometChatTheme({});
var launchCollaborativeWhiteboard = function launchCollaborativeWhiteboard() {
try {
if (whiteboardURL && whiteboardURL.length) {
window.open(whiteboardURL, "", "fullscreen=yes, scrollbars=auto");
}
} catch (error) {
_.CometChatMessageEvents.emit(_.CometChatMessageEvents.onMessageError, error);
}
};
var getWhiteboardMessage = function getWhiteboardMessage() {
return /*#__PURE__*/_react["default"].createElement("div", {
style: (0, _style.messageKitWhiteBoardBlockStyle)(props, theme),
className: "message__kit__blocks"
}, /*#__PURE__*/_react["default"].createElement("div", {
style: (0, _style.messageWhiteBoardBlockStyle)(props),
className: "message__message-blocks"
}, /*#__PURE__*/_react["default"].createElement("p", {
style: (0, _style.messageWhiteBoardTitleStyle)(props, theme),
className: "message__message-title"
}, props.title), /*#__PURE__*/_react["default"].createElement("i", {
style: (0, _style.messageWhiteBoardIconStyle)(props, theme),
className: "message__message-icon"
})), /*#__PURE__*/_react["default"].createElement("div", {
className: "message__message-subtitle",
style: (0, _style.messageSubtitleWrapperStyle)(props, theme)
}, /*#__PURE__*/_react["default"].createElement("p", {
className: "message__subtitle",
style: (0, _style.messageWiteboardSubtitleStyle)(props, theme)
}, props.subTitle)), /*#__PURE__*/_react["default"].createElement("div", {
className: "message__separator",
style: (0, _style.seperatorStyle)(props, theme)
}, ""), /*#__PURE__*/_react["default"].createElement("ul", {
style: (0, _style.messageWhiteBoardBtnStyle)(props),
className: "message__message-button"
}, /*#__PURE__*/_react["default"].createElement("li", {
style: (0, _style.messageWhiteBoardBtnItemStyle)(props, theme),
onClick: launchCollaborativeWhiteboard
}, /*#__PURE__*/_react["default"].createElement("p", {
style: (0, _style.messageBtnItemTextStyle)(props)
}, props.buttonText))));
};
(0, _hooks.Hooks)(props, setWhiteboardURL);
return getWhiteboardMessage();
};
exports.CometChatWhiteboardBubble = CometChatWhiteboardBubble;
CometChatWhiteboardBubble.defaultProps = {
messageObject: null,
title: "",
subTitle: "",
buttonText: "",
iconURL: "",
whiteboardURL: "",
style: {
width: "",
height: "",
iconTint: "",
titleFont: "",
titleColor: "",
background: "",
subTitleFont: "",
subTitleColor: "",
borderRadius: "",
buttonTextColor: "",
buttonTextFont: "",
buttonBackground: ""
}
};
CometChatWhiteboardBubble.propTypes = {
messageObject: _propTypes["default"].object,
title: _propTypes["default"].string,
iconURL: _propTypes["default"].string,
subTitle: _propTypes["default"].string,
buttonText: _propTypes["default"].string,
whiteboardURL: _propTypes["default"].string,
style: _propTypes["default"].object
};