matrix-react-sdk
Version:
SDK for matrix.org using React
85 lines (65 loc) • 9.12 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _react = _interopRequireDefault(require("react"));
var _HtmlUtils = require("../../../HtmlUtils");
var _languageHandler = require("../../../languageHandler");
var _FormattingUtils = require("../../../utils/FormattingUtils");
var _replaceableComponent = require("../../../utils/replaceableComponent");
var _Tooltip = _interopRequireDefault(require("../elements/Tooltip"));
var _MatrixClientContext = _interopRequireDefault(require("../../../contexts/MatrixClientContext"));
var _dec, _class, _class2, _temp;
let ReactionsRowButtonTooltip = (_dec = (0, _replaceableComponent.replaceableComponent)("views.messages.ReactionsRowButtonTooltip"), _dec(_class = (_temp = _class2 = class ReactionsRowButtonTooltip extends _react.default.PureComponent
/*:: <IProps>*/
{
render() {
const {
content,
reactionEvents,
mxEvent,
visible
} = this.props;
const room = this.context.getRoom(mxEvent.getRoomId());
let tooltipLabel;
if (room) {
const senders = [];
for (const reactionEvent of reactionEvents) {
const member = room.getMember(reactionEvent.getSender());
const name = member ? member.name : reactionEvent.getSender();
senders.push(name);
}
const shortName = (0, _HtmlUtils.unicodeToShortcode)(content);
tooltipLabel = /*#__PURE__*/_react.default.createElement("div", null, (0, _languageHandler._t)("<reactors/><reactedWith>reacted with %(shortName)s</reactedWith>", {
shortName
}, {
reactors: () => {
return /*#__PURE__*/_react.default.createElement("div", {
className: "mx_Tooltip_title"
}, (0, _FormattingUtils.formatCommaSeparatedList)(senders, 6));
},
reactedWith: sub => {
if (!shortName) {
return null;
}
return /*#__PURE__*/_react.default.createElement("div", {
className: "mx_Tooltip_sub"
}, sub);
}
}));
}
let tooltip;
if (tooltipLabel) {
tooltip = /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
visible: visible,
label: tooltipLabel
});
}
return tooltip;
}
}, (0, _defineProperty2.default)(_class2, "contextType", _MatrixClientContext.default), _temp)) || _class);
exports.default = ReactionsRowButtonTooltip;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdzL21lc3NhZ2VzL1JlYWN0aW9uc1Jvd0J1dHRvblRvb2x0aXAudHN4Il0sIm5hbWVzIjpbIlJlYWN0aW9uc1Jvd0J1dHRvblRvb2x0aXAiLCJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJyZW5kZXIiLCJjb250ZW50IiwicmVhY3Rpb25FdmVudHMiLCJteEV2ZW50IiwidmlzaWJsZSIsInByb3BzIiwicm9vbSIsImNvbnRleHQiLCJnZXRSb29tIiwiZ2V0Um9vbUlkIiwidG9vbHRpcExhYmVsIiwic2VuZGVycyIsInJlYWN0aW9uRXZlbnQiLCJtZW1iZXIiLCJnZXRNZW1iZXIiLCJnZXRTZW5kZXIiLCJuYW1lIiwicHVzaCIsInNob3J0TmFtZSIsInJlYWN0b3JzIiwicmVhY3RlZFdpdGgiLCJzdWIiLCJ0b29sdGlwIiwiTWF0cml4Q2xpZW50Q29udGV4dCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFnQkE7O0FBR0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7SUFhcUJBLHlCLFdBRHBCLGdEQUFxQiwwQ0FBckIsQyxtQ0FBRCxNQUNxQkEseUJBRHJCLFNBQ3VEQyxlQUFNQztBQUQ3RDtBQUNtRjtBQUcvRUMsRUFBQUEsTUFBTSxHQUFHO0FBQ0wsVUFBTTtBQUFFQyxNQUFBQSxPQUFGO0FBQVdDLE1BQUFBLGNBQVg7QUFBMkJDLE1BQUFBLE9BQTNCO0FBQW9DQyxNQUFBQTtBQUFwQyxRQUFnRCxLQUFLQyxLQUEzRDtBQUVBLFVBQU1DLElBQUksR0FBRyxLQUFLQyxPQUFMLENBQWFDLE9BQWIsQ0FBcUJMLE9BQU8sQ0FBQ00sU0FBUixFQUFyQixDQUFiO0FBQ0EsUUFBSUMsWUFBSjs7QUFDQSxRQUFJSixJQUFKLEVBQVU7QUFDTixZQUFNSyxPQUFPLEdBQUcsRUFBaEI7O0FBQ0EsV0FBSyxNQUFNQyxhQUFYLElBQTRCVixjQUE1QixFQUE0QztBQUN4QyxjQUFNVyxNQUFNLEdBQUdQLElBQUksQ0FBQ1EsU0FBTCxDQUFlRixhQUFhLENBQUNHLFNBQWQsRUFBZixDQUFmO0FBQ0EsY0FBTUMsSUFBSSxHQUFHSCxNQUFNLEdBQUdBLE1BQU0sQ0FBQ0csSUFBVixHQUFpQkosYUFBYSxDQUFDRyxTQUFkLEVBQXBDO0FBQ0FKLFFBQUFBLE9BQU8sQ0FBQ00sSUFBUixDQUFhRCxJQUFiO0FBQ0g7O0FBQ0QsWUFBTUUsU0FBUyxHQUFHLG1DQUFtQmpCLE9BQW5CLENBQWxCO0FBQ0FTLE1BQUFBLFlBQVksZ0JBQUcsMENBQU0seUJBQ2pCLGtFQURpQixFQUVqQjtBQUNJUSxRQUFBQTtBQURKLE9BRmlCLEVBS2pCO0FBQ0lDLFFBQUFBLFFBQVEsRUFBRSxNQUFNO0FBQ1osOEJBQU87QUFBSyxZQUFBLFNBQVMsRUFBQztBQUFmLGFBQ0YsK0NBQXlCUixPQUF6QixFQUFrQyxDQUFsQyxDQURFLENBQVA7QUFHSCxTQUxMO0FBTUlTLFFBQUFBLFdBQVcsRUFBR0MsR0FBRCxJQUFTO0FBQ2xCLGNBQUksQ0FBQ0gsU0FBTCxFQUFnQjtBQUNaLG1CQUFPLElBQVA7QUFDSDs7QUFDRCw4QkFBTztBQUFLLFlBQUEsU0FBUyxFQUFDO0FBQWYsYUFDRkcsR0FERSxDQUFQO0FBR0g7QUFiTCxPQUxpQixDQUFOLENBQWY7QUFxQkg7O0FBRUQsUUFBSUMsT0FBSjs7QUFDQSxRQUFJWixZQUFKLEVBQWtCO0FBQ2RZLE1BQUFBLE9BQU8sZ0JBQUcsNkJBQUMsZ0JBQUQ7QUFBUyxRQUFBLE9BQU8sRUFBRWxCLE9BQWxCO0FBQTJCLFFBQUEsS0FBSyxFQUFFTTtBQUFsQyxRQUFWO0FBQ0g7O0FBRUQsV0FBT1ksT0FBUDtBQUNIOztBQTdDOEUsQyx3REFDMURDLDRCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbkNvcHlyaWdodCAyMDE5LCAyMDIxIFRoZSBNYXRyaXgub3JnIEZvdW5kYXRpb24gQy5JLkMuXG5cbkxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG55b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG5Zb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcblxuICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG5Vbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG5kaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG5XSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cblNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbmxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgTWF0cml4RXZlbnQgfSBmcm9tIFwibWF0cml4LWpzLXNkay9zcmMvbW9kZWxzL2V2ZW50XCI7XG5cbmltcG9ydCB7IHVuaWNvZGVUb1Nob3J0Y29kZSB9IGZyb20gJy4uLy4uLy4uL0h0bWxVdGlscyc7XG5pbXBvcnQgeyBfdCB9IGZyb20gJy4uLy4uLy4uL2xhbmd1YWdlSGFuZGxlcic7XG5pbXBvcnQgeyBmb3JtYXRDb21tYVNlcGFyYXRlZExpc3QgfSBmcm9tICcuLi8uLi8uLi91dGlscy9Gb3JtYXR0aW5nVXRpbHMnO1xuaW1wb3J0IHsgcmVwbGFjZWFibGVDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vLi4vdXRpbHMvcmVwbGFjZWFibGVDb21wb25lbnRcIjtcbmltcG9ydCBUb29sdGlwIGZyb20gXCIuLi9lbGVtZW50cy9Ub29sdGlwXCI7XG5pbXBvcnQgTWF0cml4Q2xpZW50Q29udGV4dCBmcm9tIFwiLi4vLi4vLi4vY29udGV4dHMvTWF0cml4Q2xpZW50Q29udGV4dFwiO1xuXG5pbnRlcmZhY2UgSVByb3BzIHtcbiAgICAvLyBUaGUgZXZlbnQgd2UncmUgZGlzcGxheWluZyByZWFjdGlvbnMgZm9yXG4gICAgbXhFdmVudDogTWF0cml4RXZlbnQ7XG4gICAgLy8gVGhlIHJlYWN0aW9uIGNvbnRlbnQgLyBrZXkgLyBlbW9qaVxuICAgIGNvbnRlbnQ6IHN0cmluZztcbiAgICAvLyBBIFNldCBvZiBNYXRyaXggcmVhY3Rpb24gZXZlbnRzIGZvciB0aGlzIGtleVxuICAgIHJlYWN0aW9uRXZlbnRzOiBTZXQ8TWF0cml4RXZlbnQ+O1xuICAgIHZpc2libGU6IGJvb2xlYW47XG59XG5cbkByZXBsYWNlYWJsZUNvbXBvbmVudChcInZpZXdzLm1lc3NhZ2VzLlJlYWN0aW9uc1Jvd0J1dHRvblRvb2x0aXBcIilcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJlYWN0aW9uc1Jvd0J1dHRvblRvb2x0aXAgZXh0ZW5kcyBSZWFjdC5QdXJlQ29tcG9uZW50PElQcm9wcz4ge1xuICAgIHN0YXRpYyBjb250ZXh0VHlwZSA9IE1hdHJpeENsaWVudENvbnRleHQ7XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICAgIGNvbnN0IHsgY29udGVudCwgcmVhY3Rpb25FdmVudHMsIG14RXZlbnQsIHZpc2libGUgfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgICAgY29uc3Qgcm9vbSA9IHRoaXMuY29udGV4dC5nZXRSb29tKG14RXZlbnQuZ2V0Um9vbUlkKCkpO1xuICAgICAgICBsZXQgdG9vbHRpcExhYmVsO1xuICAgICAgICBpZiAocm9vbSkge1xuICAgICAgICAgICAgY29uc3Qgc2VuZGVycyA9IFtdO1xuICAgICAgICAgICAgZm9yIChjb25zdCByZWFjdGlvbkV2ZW50IG9mIHJlYWN0aW9uRXZlbnRzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWVtYmVyID0gcm9vbS5nZXRNZW1iZXIocmVhY3Rpb25FdmVudC5nZXRTZW5kZXIoKSk7XG4gICAgICAgICAgICAgICAgY29uc3QgbmFtZSA9IG1lbWJlciA/IG1lbWJlci5uYW1lIDogcmVhY3Rpb25FdmVudC5nZXRTZW5kZXIoKTtcbiAgICAgICAgICAgICAgICBzZW5kZXJzLnB1c2gobmFtZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBzaG9ydE5hbWUgPSB1bmljb2RlVG9TaG9ydGNvZGUoY29udGVudCk7XG4gICAgICAgICAgICB0b29sdGlwTGFiZWwgPSA8ZGl2PntfdChcbiAgICAgICAgICAgICAgICBcIjxyZWFjdG9ycy8+PHJlYWN0ZWRXaXRoPnJlYWN0ZWQgd2l0aCAlKHNob3J0TmFtZSlzPC9yZWFjdGVkV2l0aD5cIixcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHNob3J0TmFtZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcmVhY3RvcnM6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiA8ZGl2IGNsYXNzTmFtZT1cIm14X1Rvb2x0aXBfdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Zm9ybWF0Q29tbWFTZXBhcmF0ZWRMaXN0KHNlbmRlcnMsIDYpfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+O1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICByZWFjdGVkV2l0aDogKHN1YikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFzaG9ydE5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiA8ZGl2IGNsYXNzTmFtZT1cIm14X1Rvb2x0aXBfc3ViXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3N1Yn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgKX08L2Rpdj47XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgdG9vbHRpcDtcbiAgICAgICAgaWYgKHRvb2x0aXBMYWJlbCkge1xuICAgICAgICAgICAgdG9vbHRpcCA9IDxUb29sdGlwIHZpc2libGU9e3Zpc2libGV9IGxhYmVsPXt0b29sdGlwTGFiZWx9IC8+O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRvb2x0aXA7XG4gICAgfVxufVxuIl19