UNPKG

matrix-react-sdk

Version:
58 lines (55 loc) 8.81 kB
"use strict"; 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 _compoundWeb = require("@vector-im/compound-web"); var _HtmlUtils = require("../../../HtmlUtils"); var _languageHandler = require("../../../languageHandler"); var _FormattingUtils = require("../../../utils/FormattingUtils"); var _MatrixClientContext = _interopRequireDefault(require("../../../contexts/MatrixClientContext")); var _ReactionsRow = require("./ReactionsRow"); /* Copyright 2024 New Vector Ltd. Copyright 2019-2021 The Matrix.org Foundation C.I.C. SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only Please see LICENSE files in the repository root for full details. */ class ReactionsRowButtonTooltip extends _react.default.PureComponent { render() { const { content, reactionEvents, mxEvent, children } = this.props; const room = this.context.getRoom(mxEvent.getRoomId()); if (room) { const senders = []; let customReactionName; for (const reactionEvent of reactionEvents) { const member = room.getMember(reactionEvent.getSender()); const name = member?.name ?? reactionEvent.getSender(); senders.push(name); customReactionName = this.props.customReactionImagesEnabled && _ReactionsRow.REACTION_SHORTCODE_KEY.findIn(reactionEvent.getContent()) || undefined; } const shortName = (0, _HtmlUtils.unicodeToShortcode)(content) || customReactionName; const formattedSenders = (0, _FormattingUtils.formatList)(senders, 6); const caption = shortName ? (0, _languageHandler._t)("timeline|reactions|tooltip_caption", { shortName }) : undefined; return /*#__PURE__*/_react.default.createElement(_compoundWeb.Tooltip, { description: formattedSenders, caption: caption, placement: "right" }, children); } return children; } } exports.default = ReactionsRowButtonTooltip; (0, _defineProperty2.default)(ReactionsRowButtonTooltip, "contextType", _MatrixClientContext.default); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9jb21wb3VuZFdlYiIsIl9IdG1sVXRpbHMiLCJfbGFuZ3VhZ2VIYW5kbGVyIiwiX0Zvcm1hdHRpbmdVdGlscyIsIl9NYXRyaXhDbGllbnRDb250ZXh0IiwiX1JlYWN0aW9uc1JvdyIsIlJlYWN0aW9uc1Jvd0J1dHRvblRvb2x0aXAiLCJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJyZW5kZXIiLCJjb250ZW50IiwicmVhY3Rpb25FdmVudHMiLCJteEV2ZW50IiwiY2hpbGRyZW4iLCJwcm9wcyIsInJvb20iLCJjb250ZXh0IiwiZ2V0Um9vbSIsImdldFJvb21JZCIsInNlbmRlcnMiLCJjdXN0b21SZWFjdGlvbk5hbWUiLCJyZWFjdGlvbkV2ZW50IiwibWVtYmVyIiwiZ2V0TWVtYmVyIiwiZ2V0U2VuZGVyIiwibmFtZSIsInB1c2giLCJjdXN0b21SZWFjdGlvbkltYWdlc0VuYWJsZWQiLCJSRUFDVElPTl9TSE9SVENPREVfS0VZIiwiZmluZEluIiwiZ2V0Q29udGVudCIsInVuZGVmaW5lZCIsInNob3J0TmFtZSIsInVuaWNvZGVUb1Nob3J0Y29kZSIsImZvcm1hdHRlZFNlbmRlcnMiLCJmb3JtYXRMaXN0IiwiY2FwdGlvbiIsIl90IiwiZGVmYXVsdCIsImNyZWF0ZUVsZW1lbnQiLCJUb29sdGlwIiwiZGVzY3JpcHRpb24iLCJwbGFjZW1lbnQiLCJleHBvcnRzIiwiX2RlZmluZVByb3BlcnR5MiIsIk1hdHJpeENsaWVudENvbnRleHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy92aWV3cy9tZXNzYWdlcy9SZWFjdGlvbnNSb3dCdXR0b25Ub29sdGlwLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuQ29weXJpZ2h0IDIwMjQgTmV3IFZlY3RvciBMdGQuXG5Db3B5cmlnaHQgMjAxOS0yMDIxIFRoZSBNYXRyaXgub3JnIEZvdW5kYXRpb24gQy5JLkMuXG5cblNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBR1BMLTMuMC1vbmx5IE9SIEdQTC0zLjAtb25seVxuUGxlYXNlIHNlZSBMSUNFTlNFIGZpbGVzIGluIHRoZSByZXBvc2l0b3J5IHJvb3QgZm9yIGZ1bGwgZGV0YWlscy5cbiovXG5cbmltcG9ydCBSZWFjdCwgeyBQcm9wc1dpdGhDaGlsZHJlbiB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgTWF0cml4RXZlbnQgfSBmcm9tIFwibWF0cml4LWpzLXNkay9zcmMvbWF0cml4XCI7XG5pbXBvcnQgeyBUb29sdGlwIH0gZnJvbSBcIkB2ZWN0b3ItaW0vY29tcG91bmQtd2ViXCI7XG5cbmltcG9ydCB7IHVuaWNvZGVUb1Nob3J0Y29kZSB9IGZyb20gXCIuLi8uLi8uLi9IdG1sVXRpbHNcIjtcbmltcG9ydCB7IF90IH0gZnJvbSBcIi4uLy4uLy4uL2xhbmd1YWdlSGFuZGxlclwiO1xuaW1wb3J0IHsgZm9ybWF0TGlzdCB9IGZyb20gXCIuLi8uLi8uLi91dGlscy9Gb3JtYXR0aW5nVXRpbHNcIjtcbmltcG9ydCBNYXRyaXhDbGllbnRDb250ZXh0IGZyb20gXCIuLi8uLi8uLi9jb250ZXh0cy9NYXRyaXhDbGllbnRDb250ZXh0XCI7XG5pbXBvcnQgeyBSRUFDVElPTl9TSE9SVENPREVfS0VZIH0gZnJvbSBcIi4vUmVhY3Rpb25zUm93XCI7XG5pbnRlcmZhY2UgSVByb3BzIHtcbiAgICAvLyBUaGUgZXZlbnQgd2UncmUgZGlzcGxheWluZyByZWFjdGlvbnMgZm9yXG4gICAgbXhFdmVudDogTWF0cml4RXZlbnQ7XG4gICAgLy8gVGhlIHJlYWN0aW9uIGNvbnRlbnQgLyBrZXkgLyBlbW9qaVxuICAgIGNvbnRlbnQ6IHN0cmluZztcbiAgICAvLyBBIGxpc3Qgb2YgTWF0cml4IHJlYWN0aW9uIGV2ZW50cyBmb3IgdGhpcyBrZXlcbiAgICByZWFjdGlvbkV2ZW50czogTWF0cml4RXZlbnRbXTtcbiAgICAvLyBXaGV0aGVyIHRvIHJlbmRlciBjdXN0b20gaW1hZ2UgcmVhY3Rpb25zXG4gICAgY3VzdG9tUmVhY3Rpb25JbWFnZXNFbmFibGVkPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUmVhY3Rpb25zUm93QnV0dG9uVG9vbHRpcCBleHRlbmRzIFJlYWN0LlB1cmVDb21wb25lbnQ8UHJvcHNXaXRoQ2hpbGRyZW48SVByb3BzPj4ge1xuICAgIHB1YmxpYyBzdGF0aWMgY29udGV4dFR5cGUgPSBNYXRyaXhDbGllbnRDb250ZXh0O1xuICAgIHB1YmxpYyBkZWNsYXJlIGNvbnRleHQ6IFJlYWN0LkNvbnRleHRUeXBlPHR5cGVvZiBNYXRyaXhDbGllbnRDb250ZXh0PjtcblxuICAgIHB1YmxpYyByZW5kZXIoKTogUmVhY3QuUmVhY3ROb2RlIHtcbiAgICAgICAgY29uc3QgeyBjb250ZW50LCByZWFjdGlvbkV2ZW50cywgbXhFdmVudCwgY2hpbGRyZW4gfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgICAgY29uc3Qgcm9vbSA9IHRoaXMuY29udGV4dC5nZXRSb29tKG14RXZlbnQuZ2V0Um9vbUlkKCkpO1xuICAgICAgICBpZiAocm9vbSkge1xuICAgICAgICAgICAgY29uc3Qgc2VuZGVyczogc3RyaW5nW10gPSBbXTtcbiAgICAgICAgICAgIGxldCBjdXN0b21SZWFjdGlvbk5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGZvciAoY29uc3QgcmVhY3Rpb25FdmVudCBvZiByZWFjdGlvbkV2ZW50cykge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1lbWJlciA9IHJvb20uZ2V0TWVtYmVyKHJlYWN0aW9uRXZlbnQuZ2V0U2VuZGVyKCkhKTtcbiAgICAgICAgICAgICAgICBjb25zdCBuYW1lID0gbWVtYmVyPy5uYW1lID8/IHJlYWN0aW9uRXZlbnQuZ2V0U2VuZGVyKCkhO1xuICAgICAgICAgICAgICAgIHNlbmRlcnMucHVzaChuYW1lKTtcbiAgICAgICAgICAgICAgICBjdXN0b21SZWFjdGlvbk5hbWUgPVxuICAgICAgICAgICAgICAgICAgICAodGhpcy5wcm9wcy5jdXN0b21SZWFjdGlvbkltYWdlc0VuYWJsZWQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIFJFQUNUSU9OX1NIT1JUQ09ERV9LRVkuZmluZEluKHJlYWN0aW9uRXZlbnQuZ2V0Q29udGVudCgpKSkgfHxcbiAgICAgICAgICAgICAgICAgICAgdW5kZWZpbmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3Qgc2hvcnROYW1lID0gdW5pY29kZVRvU2hvcnRjb2RlKGNvbnRlbnQpIHx8IGN1c3RvbVJlYWN0aW9uTmFtZTtcbiAgICAgICAgICAgIGNvbnN0IGZvcm1hdHRlZFNlbmRlcnMgPSBmb3JtYXRMaXN0KHNlbmRlcnMsIDYpO1xuICAgICAgICAgICAgY29uc3QgY2FwdGlvbiA9IHNob3J0TmFtZSA/IF90KFwidGltZWxpbmV8cmVhY3Rpb25zfHRvb2x0aXBfY2FwdGlvblwiLCB7IHNob3J0TmFtZSB9KSA6IHVuZGVmaW5lZDtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICA8VG9vbHRpcCBkZXNjcmlwdGlvbj17Zm9ybWF0dGVkU2VuZGVyc30gY2FwdGlvbj17Y2FwdGlvbn0gcGxhY2VtZW50PVwicmlnaHRcIj5cbiAgICAgICAgICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY2hpbGRyZW47XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQVFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLFlBQUEsR0FBQUQsT0FBQTtBQUVBLElBQUFFLFVBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLGdCQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxnQkFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssb0JBQUEsR0FBQU4sc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFNLGFBQUEsR0FBQU4sT0FBQTtBQWhCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFzQmUsTUFBTU8seUJBQXlCLFNBQVNDLGNBQUssQ0FBQ0MsYUFBYSxDQUE0QjtFQUkzRkMsTUFBTUEsQ0FBQSxFQUFvQjtJQUM3QixNQUFNO01BQUVDLE9BQU87TUFBRUMsY0FBYztNQUFFQyxPQUFPO01BQUVDO0lBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQ0MsS0FBSztJQUVqRSxNQUFNQyxJQUFJLEdBQUcsSUFBSSxDQUFDQyxPQUFPLENBQUNDLE9BQU8sQ0FBQ0wsT0FBTyxDQUFDTSxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQ3RELElBQUlILElBQUksRUFBRTtNQUNOLE1BQU1JLE9BQWlCLEdBQUcsRUFBRTtNQUM1QixJQUFJQyxrQkFBc0M7TUFDMUMsS0FBSyxNQUFNQyxhQUFhLElBQUlWLGNBQWMsRUFBRTtRQUN4QyxNQUFNVyxNQUFNLEdBQUdQLElBQUksQ0FBQ1EsU0FBUyxDQUFDRixhQUFhLENBQUNHLFNBQVMsQ0FBQyxDQUFFLENBQUM7UUFDekQsTUFBTUMsSUFBSSxHQUFHSCxNQUFNLEVBQUVHLElBQUksSUFBSUosYUFBYSxDQUFDRyxTQUFTLENBQUMsQ0FBRTtRQUN2REwsT0FBTyxDQUFDTyxJQUFJLENBQUNELElBQUksQ0FBQztRQUNsQkwsa0JBQWtCLEdBQ2IsSUFBSSxDQUFDTixLQUFLLENBQUNhLDJCQUEyQixJQUNuQ0Msb0NBQXNCLENBQUNDLE1BQU0sQ0FBQ1IsYUFBYSxDQUFDUyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQzdEQyxTQUFTO01BQ2pCO01BQ0EsTUFBTUMsU0FBUyxHQUFHLElBQUFDLDZCQUFrQixFQUFDdkIsT0FBTyxDQUFDLElBQUlVLGtCQUFrQjtNQUNuRSxNQUFNYyxnQkFBZ0IsR0FBRyxJQUFBQywyQkFBVSxFQUFDaEIsT0FBTyxFQUFFLENBQUMsQ0FBQztNQUMvQyxNQUFNaUIsT0FBTyxHQUFHSixTQUFTLEdBQUcsSUFBQUssbUJBQUUsRUFBQyxvQ0FBb0MsRUFBRTtRQUFFTDtNQUFVLENBQUMsQ0FBQyxHQUFHRCxTQUFTO01BRS9GLG9CQUNJbEMsTUFBQSxDQUFBeUMsT0FBQSxDQUFBQyxhQUFBLENBQUN2QyxZQUFBLENBQUF3QyxPQUFPO1FBQUNDLFdBQVcsRUFBRVAsZ0JBQWlCO1FBQUNFLE9BQU8sRUFBRUEsT0FBUTtRQUFDTSxTQUFTLEVBQUM7TUFBTyxHQUN0RTdCLFFBQ0ksQ0FBQztJQUVsQjtJQUVBLE9BQU9BLFFBQVE7RUFDbkI7QUFDSjtBQUFDOEIsT0FBQSxDQUFBTCxPQUFBLEdBQUFoQyx5QkFBQTtBQUFBLElBQUFzQyxnQkFBQSxDQUFBTixPQUFBLEVBakNvQmhDLHlCQUF5QixpQkFDZHVDLDRCQUFtQiIsImlnbm9yZUxpc3QiOltdfQ==