UNPKG

cometchat-react-ui-kit2

Version:

CometChat UI Kit for React App

144 lines (143 loc) 7.29 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.CometChatUserProfile = void 0; var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn")); var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf")); var _react = _interopRequireDefault(require("react")); var _core = require("@emotion/core"); var _propTypes = _interopRequireDefault(require("prop-types")); var _chat = require("@cometchat-pro/chat"); var _Shared = require("../../Shared"); var _ = require("../"); var _theme = require("../../../resources/theme"); var _translator = _interopRequireDefault(require("../../../resources/localization/translator")); var _style = require("./style"); var _notify = _interopRequireDefault(require("./resources/notify.svg")); var _privacy = _interopRequireDefault(require("./resources/privacy.svg")); var _chats = _interopRequireDefault(require("./resources/chats.svg")); var _help = _interopRequireDefault(require("./resources/help.svg")); var _warning = _interopRequireDefault(require("./resources/warning.svg")); function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var CometChatUserProfile = /*#__PURE__*/function (_React$Component) { (0, _inherits2["default"])(CometChatUserProfile, _React$Component); var _super = _createSuper(CometChatUserProfile); function CometChatUserProfile(props) { var _this; (0, _classCallCheck2["default"])(this, CometChatUserProfile); _this = _super.call(this, props); _this.state = { loggedInUser: null }; _this.toastRef = /*#__PURE__*/_react["default"].createRef(); return _this; } (0, _createClass2["default"])(CometChatUserProfile, [{ key: "componentDidMount", value: function componentDidMount() { var _this2 = this; _chat.CometChat.getLoggedinUser().then(function (user) { _this2.setState({ loggedInUser: user }); })["catch"](function (error) { return _this2.toastRef.setError("SOMETHING_WRONG"); }); } }, { key: "render", value: function render() { var _this3 = this; var userProfile = null; if (this.state.loggedInUser) { //let avatar = <CometChatAvatar user={this.state.loggedInUser} />; userProfile = (0, _core.jsx)(_react["default"].Fragment, null, (0, _core.jsx)("div", { css: (0, _style.headerStyle)(this.props), className: "userinfo__header" }, (0, _core.jsx)("h4", { css: (0, _style.headerTitleStyle)(this.props), className: "header__title" }, this.props.title)), (0, _core.jsx)(_.CometChatUserProfileItem, { user: this.state.loggedInUser }), (0, _core.jsx)("div", { css: (0, _style.optionsStyle)(), className: "userinfo__options" }, (0, _core.jsx)("div", { css: (0, _style.optionTitleStyle)(this.props), className: "options__title" }, _translator["default"].translate("PREFERENCES", this.props.lang)), (0, _core.jsx)("div", { css: (0, _style.optionListStyle)(), className: "options_list" }, (0, _core.jsx)("div", { css: (0, _style.optionStyle)(_notify["default"]), className: "option option-notification" }, (0, _core.jsx)("div", { css: (0, _style.optionNameStyle)(), className: "option_name" }, _translator["default"].translate("NOTIFICATIONS", this.props.lang))), (0, _core.jsx)("div", { css: (0, _style.optionStyle)(_privacy["default"]), className: "option option-privacy" }, (0, _core.jsx)("div", { css: (0, _style.optionNameStyle)(), className: "option_name" }, _translator["default"].translate("PRIVACY_AND_SECURITY", this.props.lang))), (0, _core.jsx)("div", { css: (0, _style.optionStyle)(_chats["default"]), className: "option option-chats" }, (0, _core.jsx)("div", { css: (0, _style.optionNameStyle)(), className: "option_name" }, _translator["default"].translate("CHATS", this.props.lang)))), (0, _core.jsx)("div", { css: (0, _style.optionTitleStyle)(this.props), className: "options__title" }, _translator["default"].translate("OTHER", this.props.lang)), (0, _core.jsx)("div", { css: (0, _style.optionListStyle)(), className: "options_list" }, (0, _core.jsx)("div", { css: (0, _style.optionStyle)(_help["default"]), className: "option option-help" }, (0, _core.jsx)("div", { css: (0, _style.optionNameStyle)(), className: "option_name" }, _translator["default"].translate("HELP", this.props.lang))), (0, _core.jsx)("div", { css: (0, _style.optionStyle)(_warning["default"]), className: "option option-report" }, (0, _core.jsx)("div", { css: (0, _style.optionNameStyle)(), className: "option_name" }, _translator["default"].translate("REPORT_PROBLEM", this.props.lang)))))); } return (0, _core.jsx)("div", { css: (0, _style.userInfoScreenStyle)(this.props), className: "userinfo" }, userProfile, (0, _core.jsx)(_Shared.CometChatToastNotification, { ref: function ref(el) { return _this3.toastRef = el; } })); } }]); return CometChatUserProfile; }(_react["default"].Component); // Specifies the default values for props: exports.CometChatUserProfile = CometChatUserProfile; CometChatUserProfile.defaultProps = { lang: _translator["default"].getDefaultLanguage(), theme: _theme.theme, title: _translator["default"].translate("MORE", _translator["default"].getDefaultLanguage()), titleFont: "bold 22px Inter", titleColor: "#141414", backgroundColor: "#ffffff" }; CometChatUserProfile.propTypes = { lang: _propTypes["default"].string, theme: _propTypes["default"].object, title: _propTypes["default"].string, titleFont: _propTypes["default"].string, titleColor: _propTypes["default"].string, backgroundColor: _propTypes["default"].string };