cometchat-react-ui-kit2
Version:
CometChat UI Kit for React App
45 lines (44 loc) • 2.48 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.Hooks = void 0;
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
var _react = _interopRequireDefault(require("react"));
var _ = require("../../..");
var Hooks = function Hooks(props, setQuestion, setOptions, setVoteCount, setPollId) {
_react["default"].useEffect(function () {
var _props$pollQuestion, _props$pollQuestion$t;
if (props !== null && props !== void 0 && props.pollQuestion && props !== null && props !== void 0 && (_props$pollQuestion = props.pollQuestion) !== null && _props$pollQuestion !== void 0 && (_props$pollQuestion$t = _props$pollQuestion.trim()) !== null && _props$pollQuestion$t !== void 0 && _props$pollQuestion$t.length) {
setQuestion(props.pollQuestion);
} else if (props !== null && props !== void 0 && props.messageObject) {
var pollsData = (0, _.getExtensionsData)(props.messageObject, _.MetadataConstants.extensions.polls);
if (pollsData && pollsData.question && pollsData.question.trim().length) {
setQuestion(pollsData.question);
}
}
}, [props.pollQuestion, props.messageObject, setQuestion]);
_react["default"].useEffect(function () {
if (props.options && props.options.length) {
setOptions(props.pollOptions);
} else if (props.messageObject) {
var pollsData = (0, _.getExtensionsData)(props.messageObject, _.MetadataConstants.extensions.polls);
if (pollsData && pollsData.results && pollsData.results.options && (0, _typeof2["default"])(pollsData.results.options) === "object" && Object.keys(pollsData.results.options).length) {
setOptions(pollsData.results.options);
}
}
}, [props.pollOptions, props.messageObject, setOptions, props.options]);
_react["default"].useEffect(function () {
if (props.totalVoteCount && props.totalVoteCount.length) {
setVoteCount(props.totalVoteCount);
} else if (props.messageObject) {
var pollsData = (0, _.getExtensionsData)(props.messageObject, _.MetadataConstants.extensions.polls);
setPollId(pollsData.id);
if (pollsData && pollsData.results && pollsData.results.total && pollsData.results.total > 0) {
setVoteCount(pollsData.results.total);
}
}
}, [props.totalVoteCount, props.messageObject, setVoteCount, setPollId]);
};
exports.Hooks = Hooks;