cometchat-react-ui-kit2
Version:
CometChat UI Kit for React App
88 lines (85 loc) • 3.41 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.CometChatPollOptionBubble = void 0;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _style = require("./style");
var _ = require("../../../");
var _checkmark = _interopRequireDefault(require("./resources/checkmark.svg"));
var _this = void 0;
var CometChatPollOptionBubble = function CometChatPollOptionBubble(props) {
var checkmarkIcon = props.optionIconURL || _checkmark["default"];
var theme = new _.CometChatTheme(props.theme) || new _.CometChatTheme({});
var width = "0%";
var renderItems = null;
var checkIcon = null;
/*** check icon */
checkIcon = /*#__PURE__*/_react["default"].createElement("span", {
className: "poll__option_checkmark",
style: (0, _style.checkIconStyle)(props, checkmarkIcon, theme)
});
/** check vote count */
if (!isNaN(parseInt(props.votePercent))) {
width = props.votePercent;
renderItems = /*#__PURE__*/_react["default"].createElement("div", {
className: "poll__option",
style: (0, _style.answerWrapperStyle)(props, theme)
}, /*#__PURE__*/_react["default"].createElement("p", {
className: "poll__option__title",
style: (0, _style.pollOptionTitleStyle)(props, theme)
}, props.optionText), /*#__PURE__*/_react["default"].createElement("span", {
className: "poll__option__percent",
style: (0, _style.pollOptionPercentTextStyle)(props, theme)
}, width));
} else {
renderItems = /*#__PURE__*/_react["default"].createElement("div", {
className: "poll__option",
style: (0, _style.answerWrapperStyle)(props, width)
}, checkIcon, /*#__PURE__*/_react["default"].createElement("p", {
className: "poll__option__title",
style: (0, _style.pollOptionTitleStyle)(props, theme)
}, props.optionText));
}
return /*#__PURE__*/_react["default"].createElement("li", {
className: "poll__option__wrapper",
style: (0, _style.pollAnswerStyle)(props, theme),
onClick: props.onClick.bind(_this, props.optionId)
}, /*#__PURE__*/_react["default"].createElement("div", {
className: "poll__option__percent",
style: (0, _style.pollPercentStyle)(props, width, theme)
}, " "), renderItems);
};
exports.CometChatPollOptionBubble = CometChatPollOptionBubble;
CometChatPollOptionBubble.defaultProps = {
optionText: null,
votePercent: null,
optionId: "",
optionIconURL: "",
style: {
pollOptionsFont: "",
pollOptionsColor: "rgb(230, 230, 230)",
pollOptionsBackground: "#fff",
iconTint: "RGBA(20, 20, 20, 0.46)",
pollOptionTextFont: "400 15px Inter,sans-serfi",
pollOptionTextColor: "rgb(20,20,20)",
pollOptionBackground: "#fff",
optionIconTint: "RGBA(20, 20, 20, 0.46)",
selectedPollOptionBackground: null,
pollOptionBorder: "none",
votePercentTextFont: "400 15px Inter,sans-serfi",
votePercentTextColor: "rgb(20,20,20)"
},
loggedInUser: {},
onClick: null
};
CometChatPollOptionBubble.propTypes = {
optionText: _propTypes["default"].string,
votePercent: _propTypes["default"].string,
optionId: _propTypes["default"].string,
style: _propTypes["default"].object,
loggedInUser: _propTypes["default"].object,
onClick: _propTypes["default"].func
};