matrix-react-sdk
Version:
SDK for matrix.org using React
71 lines (67 loc) • 9.7 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.PollDetail = void 0;
var _react = _interopRequireDefault(require("react"));
var _languageHandler = require("../../../../languageHandler");
var _dispatcher = _interopRequireDefault(require("../../../../dispatcher/dispatcher"));
var _actions = require("../../../../dispatcher/actions");
var _AccessibleButton = _interopRequireDefault(require("../../elements/AccessibleButton"));
var _MPollBody = _interopRequireDefault(require("../../messages/MPollBody"));
/*
Copyright 2024 New Vector Ltd.
Copyright 2023 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.
*/
const NOOP = () => {};
/**
* Content of PollHistory when a specific poll is selected
*/
const PollDetail = ({
poll,
permalinkCreator,
requestModalClose
}) => {
// link to end event for ended polls
const eventIdToLinkTo = poll.isEnded ? poll.endEventId : poll.pollId;
const linkToTimeline = permalinkCreator.forEvent(eventIdToLinkTo);
const onLinkClick = e => {
if (e.ctrlKey || e.metaKey) {
// native behavior for link on ctrl/cmd + click
return;
}
// otherwise handle navigation in the app
e.preventDefault();
_dispatcher.default.dispatch({
action: _actions.Action.ViewRoom,
event_id: eventIdToLinkTo,
highlighted: true,
room_id: poll.roomId,
metricsTrigger: undefined // room doesn't change
});
requestModalClose();
};
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_MPollBody.default, {
mxEvent: poll.rootEvent,
permalinkCreator: permalinkCreator,
onHeightChanged: NOOP,
onMessageAllowed: NOOP
// MPollBody doesn't use this
// and MessageEvent only defines it for eligible events
// should be fixed on IBodyProps types
// cheat to fulfil the type here
,
mediaEventHelper: {}
}), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_AccessibleButton.default, {
kind: "link_inline",
element: "a",
href: linkToTimeline,
onClick: onLinkClick,
rel: "noreferrer noopener"
}, (0, _languageHandler._t)("right_panel|poll|view_in_timeline"))));
};
exports.PollDetail = PollDetail;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9sYW5ndWFnZUhhbmRsZXIiLCJfZGlzcGF0Y2hlciIsIl9hY3Rpb25zIiwiX0FjY2Vzc2libGVCdXR0b24iLCJfTVBvbGxCb2R5IiwiTk9PUCIsIlBvbGxEZXRhaWwiLCJwb2xsIiwicGVybWFsaW5rQ3JlYXRvciIsInJlcXVlc3RNb2RhbENsb3NlIiwiZXZlbnRJZFRvTGlua1RvIiwiaXNFbmRlZCIsImVuZEV2ZW50SWQiLCJwb2xsSWQiLCJsaW5rVG9UaW1lbGluZSIsImZvckV2ZW50Iiwib25MaW5rQ2xpY2siLCJlIiwiY3RybEtleSIsIm1ldGFLZXkiLCJwcmV2ZW50RGVmYXVsdCIsImRpc3BhdGNoZXIiLCJkaXNwYXRjaCIsImFjdGlvbiIsIkFjdGlvbiIsIlZpZXdSb29tIiwiZXZlbnRfaWQiLCJoaWdobGlnaHRlZCIsInJvb21faWQiLCJyb29tSWQiLCJtZXRyaWNzVHJpZ2dlciIsInVuZGVmaW5lZCIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50IiwiRnJhZ21lbnQiLCJteEV2ZW50Iiwicm9vdEV2ZW50Iiwib25IZWlnaHRDaGFuZ2VkIiwib25NZXNzYWdlQWxsb3dlZCIsIm1lZGlhRXZlbnRIZWxwZXIiLCJraW5kIiwiZWxlbWVudCIsImhyZWYiLCJvbkNsaWNrIiwicmVsIiwiX3QiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvdmlld3MvcG9sbHMvcG9sbEhpc3RvcnkvUG9sbERldGFpbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLypcbkNvcHlyaWdodCAyMDI0IE5ldyBWZWN0b3IgTHRkLlxuQ29weXJpZ2h0IDIwMjMgVGhlIE1hdHJpeC5vcmcgRm91bmRhdGlvbiBDLkkuQy5cblxuU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFHUEwtMy4wLW9ubHkgT1IgR1BMLTMuMC1vbmx5XG5QbGVhc2Ugc2VlIExJQ0VOU0UgZmlsZXMgaW4gdGhlIHJlcG9zaXRvcnkgcm9vdCBmb3IgZnVsbCBkZXRhaWxzLlxuKi9cblxuaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgUG9sbCB9IGZyb20gXCJtYXRyaXgtanMtc2RrL3NyYy9tYXRyaXhcIjtcblxuaW1wb3J0IHsgX3QgfSBmcm9tIFwiLi4vLi4vLi4vLi4vbGFuZ3VhZ2VIYW5kbGVyXCI7XG5pbXBvcnQgZGlzcGF0Y2hlciBmcm9tIFwiLi4vLi4vLi4vLi4vZGlzcGF0Y2hlci9kaXNwYXRjaGVyXCI7XG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vLi4vZGlzcGF0Y2hlci9hY3Rpb25zXCI7XG5pbXBvcnQgeyBWaWV3Um9vbVBheWxvYWQgfSBmcm9tIFwiLi4vLi4vLi4vLi4vZGlzcGF0Y2hlci9wYXlsb2Fkcy9WaWV3Um9vbVBheWxvYWRcIjtcbmltcG9ydCB7IFJvb21QZXJtYWxpbmtDcmVhdG9yIH0gZnJvbSBcIi4uLy4uLy4uLy4uL3V0aWxzL3Blcm1hbGlua3MvUGVybWFsaW5rc1wiO1xuaW1wb3J0IHsgTWVkaWFFdmVudEhlbHBlciB9IGZyb20gXCIuLi8uLi8uLi8uLi91dGlscy9NZWRpYUV2ZW50SGVscGVyXCI7XG5pbXBvcnQgQWNjZXNzaWJsZUJ1dHRvbiwgeyBCdXR0b25FdmVudCB9IGZyb20gXCIuLi8uLi9lbGVtZW50cy9BY2Nlc3NpYmxlQnV0dG9uXCI7XG5pbXBvcnQgTVBvbGxCb2R5IGZyb20gXCIuLi8uLi9tZXNzYWdlcy9NUG9sbEJvZHlcIjtcblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgICBwb2xsOiBQb2xsO1xuICAgIHJlcXVlc3RNb2RhbENsb3NlOiAoKSA9PiB2b2lkO1xuICAgIHBlcm1hbGlua0NyZWF0b3I6IFJvb21QZXJtYWxpbmtDcmVhdG9yO1xufVxuXG5jb25zdCBOT09QID0gKCk6IHZvaWQgPT4ge307XG5cbi8qKlxuICogQ29udGVudCBvZiBQb2xsSGlzdG9yeSB3aGVuIGEgc3BlY2lmaWMgcG9sbCBpcyBzZWxlY3RlZFxuICovXG5leHBvcnQgY29uc3QgUG9sbERldGFpbDogUmVhY3QuRkM8UHJvcHM+ID0gKHsgcG9sbCwgcGVybWFsaW5rQ3JlYXRvciwgcmVxdWVzdE1vZGFsQ2xvc2UgfSkgPT4ge1xuICAgIC8vIGxpbmsgdG8gZW5kIGV2ZW50IGZvciBlbmRlZCBwb2xsc1xuICAgIGNvbnN0IGV2ZW50SWRUb0xpbmtUbyA9IHBvbGwuaXNFbmRlZCA/IHBvbGwuZW5kRXZlbnRJZCEgOiBwb2xsLnBvbGxJZDtcbiAgICBjb25zdCBsaW5rVG9UaW1lbGluZSA9IHBlcm1hbGlua0NyZWF0b3IuZm9yRXZlbnQoZXZlbnRJZFRvTGlua1RvKTtcblxuICAgIGNvbnN0IG9uTGlua0NsaWNrID0gKGU6IEJ1dHRvbkV2ZW50KTogdm9pZCA9PiB7XG4gICAgICAgIGlmICgoZSBhcyBSZWFjdC5Nb3VzZUV2ZW50KS5jdHJsS2V5IHx8IChlIGFzIFJlYWN0Lk1vdXNlRXZlbnQpLm1ldGFLZXkpIHtcbiAgICAgICAgICAgIC8vIG5hdGl2ZSBiZWhhdmlvciBmb3IgbGluayBvbiBjdHJsL2NtZCArIGNsaWNrXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgLy8gb3RoZXJ3aXNlIGhhbmRsZSBuYXZpZ2F0aW9uIGluIHRoZSBhcHBcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBkaXNwYXRjaGVyLmRpc3BhdGNoPFZpZXdSb29tUGF5bG9hZD4oe1xuICAgICAgICAgICAgYWN0aW9uOiBBY3Rpb24uVmlld1Jvb20sXG4gICAgICAgICAgICBldmVudF9pZDogZXZlbnRJZFRvTGlua1RvLFxuICAgICAgICAgICAgaGlnaGxpZ2h0ZWQ6IHRydWUsXG4gICAgICAgICAgICByb29tX2lkOiBwb2xsLnJvb21JZCxcbiAgICAgICAgICAgIG1ldHJpY3NUcmlnZ2VyOiB1bmRlZmluZWQsIC8vIHJvb20gZG9lc24ndCBjaGFuZ2VcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmVxdWVzdE1vZGFsQ2xvc2UoKTtcbiAgICB9O1xuICAgIHJldHVybiAoXG4gICAgICAgIDw+XG4gICAgICAgICAgICA8TVBvbGxCb2R5XG4gICAgICAgICAgICAgICAgbXhFdmVudD17cG9sbC5yb290RXZlbnR9XG4gICAgICAgICAgICAgICAgcGVybWFsaW5rQ3JlYXRvcj17cGVybWFsaW5rQ3JlYXRvcn1cbiAgICAgICAgICAgICAgICBvbkhlaWdodENoYW5nZWQ9e05PT1B9XG4gICAgICAgICAgICAgICAgb25NZXNzYWdlQWxsb3dlZD17Tk9PUH1cbiAgICAgICAgICAgICAgICAvLyBNUG9sbEJvZHkgZG9lc24ndCB1c2UgdGhpc1xuICAgICAgICAgICAgICAgIC8vIGFuZCBNZXNzYWdlRXZlbnQgb25seSBkZWZpbmVzIGl0IGZvciBlbGlnaWJsZSBldmVudHNcbiAgICAgICAgICAgICAgICAvLyBzaG91bGQgYmUgZml4ZWQgb24gSUJvZHlQcm9wcyB0eXBlc1xuICAgICAgICAgICAgICAgIC8vIGNoZWF0IHRvIGZ1bGZpbCB0aGUgdHlwZSBoZXJlXG4gICAgICAgICAgICAgICAgbWVkaWFFdmVudEhlbHBlcj17e30gYXMgdW5rbm93biBhcyBNZWRpYUV2ZW50SGVscGVyfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxiciAvPlxuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8QWNjZXNzaWJsZUJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBraW5kPVwibGlua19pbmxpbmVcIlxuICAgICAgICAgICAgICAgICAgICBlbGVtZW50PVwiYVwiXG4gICAgICAgICAgICAgICAgICAgIGhyZWY9e2xpbmtUb1RpbWVsaW5lfVxuICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXtvbkxpbmtDbGlja31cbiAgICAgICAgICAgICAgICAgICAgcmVsPVwibm9yZWZlcnJlciBub29wZW5lclwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7X3QoXCJyaWdodF9wYW5lbHxwb2xsfHZpZXdfaW5fdGltZWxpbmVcIil9XG4gICAgICAgICAgICAgICAgPC9BY2Nlc3NpYmxlQnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvPlxuICAgICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBUUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBR0EsSUFBQUMsZ0JBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLFdBQUEsR0FBQUgsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFHLFFBQUEsR0FBQUgsT0FBQTtBQUlBLElBQUFJLGlCQUFBLEdBQUFMLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBSyxVQUFBLEdBQUFOLHNCQUFBLENBQUFDLE9BQUE7QUFsQkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBb0JBLE1BQU1NLElBQUksR0FBR0EsQ0FBQSxLQUFZLENBQUMsQ0FBQzs7QUFFM0I7QUFDQTtBQUNBO0FBQ08sTUFBTUMsVUFBMkIsR0FBR0EsQ0FBQztFQUFFQyxJQUFJO0VBQUVDLGdCQUFnQjtFQUFFQztBQUFrQixDQUFDLEtBQUs7RUFDMUY7RUFDQSxNQUFNQyxlQUFlLEdBQUdILElBQUksQ0FBQ0ksT0FBTyxHQUFHSixJQUFJLENBQUNLLFVBQVUsR0FBSUwsSUFBSSxDQUFDTSxNQUFNO0VBQ3JFLE1BQU1DLGNBQWMsR0FBR04sZ0JBQWdCLENBQUNPLFFBQVEsQ0FBQ0wsZUFBZSxDQUFDO0VBRWpFLE1BQU1NLFdBQVcsR0FBSUMsQ0FBYyxJQUFXO0lBQzFDLElBQUtBLENBQUMsQ0FBc0JDLE9BQU8sSUFBS0QsQ0FBQyxDQUFzQkUsT0FBTyxFQUFFO01BQ3BFO01BQ0E7SUFDSjtJQUNBO0lBQ0FGLENBQUMsQ0FBQ0csY0FBYyxDQUFDLENBQUM7SUFDbEJDLG1CQUFVLENBQUNDLFFBQVEsQ0FBa0I7TUFDakNDLE1BQU0sRUFBRUMsZUFBTSxDQUFDQyxRQUFRO01BQ3ZCQyxRQUFRLEVBQUVoQixlQUFlO01BQ3pCaUIsV0FBVyxFQUFFLElBQUk7TUFDakJDLE9BQU8sRUFBRXJCLElBQUksQ0FBQ3NCLE1BQU07TUFDcEJDLGNBQWMsRUFBRUMsU0FBUyxDQUFFO0lBQy9CLENBQUMsQ0FBQztJQUVGdEIsaUJBQWlCLENBQUMsQ0FBQztFQUN2QixDQUFDO0VBQ0Qsb0JBQ0laLE1BQUEsQ0FBQW1DLE9BQUEsQ0FBQUMsYUFBQSxDQUFBcEMsTUFBQSxDQUFBbUMsT0FBQSxDQUFBRSxRQUFBLHFCQUNJckMsTUFBQSxDQUFBbUMsT0FBQSxDQUFBQyxhQUFBLENBQUM3QixVQUFBLENBQUE0QixPQUFTO0lBQ05HLE9BQU8sRUFBRTVCLElBQUksQ0FBQzZCLFNBQVU7SUFDeEI1QixnQkFBZ0IsRUFBRUEsZ0JBQWlCO0lBQ25DNkIsZUFBZSxFQUFFaEMsSUFBSztJQUN0QmlDLGdCQUFnQixFQUFFakM7SUFDbEI7SUFDQTtJQUNBO0lBQ0E7SUFBQTtJQUNBa0MsZ0JBQWdCLEVBQUUsQ0FBQztFQUFpQyxDQUN2RCxDQUFDLGVBQ0YxQyxNQUFBLENBQUFtQyxPQUFBLENBQUFDLGFBQUEsV0FBSyxDQUFDLGVBQ05wQyxNQUFBLENBQUFtQyxPQUFBLENBQUFDLGFBQUEsMkJBQ0lwQyxNQUFBLENBQUFtQyxPQUFBLENBQUFDLGFBQUEsQ0FBQzlCLGlCQUFBLENBQUE2QixPQUFnQjtJQUNiUSxJQUFJLEVBQUMsYUFBYTtJQUNsQkMsT0FBTyxFQUFDLEdBQUc7SUFDWEMsSUFBSSxFQUFFNUIsY0FBZTtJQUNyQjZCLE9BQU8sRUFBRTNCLFdBQVk7SUFDckI0QixHQUFHLEVBQUM7RUFBcUIsR0FFeEIsSUFBQUMsbUJBQUUsRUFBQyxtQ0FBbUMsQ0FDekIsQ0FDakIsQ0FDUCxDQUFDO0FBRVgsQ0FBQztBQUFDQyxPQUFBLENBQUF4QyxVQUFBLEdBQUFBLFVBQUEiLCJpZ25vcmVMaXN0IjpbXX0=