matrix-react-sdk
Version:
SDK for matrix.org using React
70 lines (67 loc) • 9.36 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _languageHandler = require("../../../languageHandler");
var _KeyVerificationStateObserver = require("../../../utils/KeyVerificationStateObserver");
var _EventTileBubble = _interopRequireDefault(require("./EventTileBubble"));
var _MatrixClientContext = require("../../../contexts/MatrixClientContext");
/*
Copyright 2024 New Vector Ltd.
Copyright 2019, 2020 , 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.
*/
/**
* Event tile created when we receive an m.key.verification.request event.
*
* Displays a simple message saying that a verification was requested, either by
* this user or someone else.
*
* EventTileFactory has logic meaning we only display this tile if the request
* was sent to/from this user.
*/
const MKeyVerificationRequest = ({
mxEvent,
timestamp
}) => {
const client = (0, _MatrixClientContext.useMatrixClientContext)();
if (!client) {
throw new Error("Attempting to render verification request without a client context!");
}
const myUserId = client.getSafeUserId();
const content = mxEvent.getContent();
const sender = mxEvent.getSender();
const receiver = content.to;
const roomId = mxEvent.getRoomId();
if (!sender) {
throw new Error("Verification request did not include a sender!");
}
if (!roomId) {
throw new Error("Verification request did not include a room ID!");
}
let title;
let subtitle;
const sentByMe = sender === myUserId;
if (sentByMe) {
title = (0, _languageHandler._t)("timeline|m.key.verification.request|you_started");
subtitle = (0, _KeyVerificationStateObserver.userLabelForEventRoom)(client, receiver, roomId);
} else {
const name = (0, _KeyVerificationStateObserver.getNameForEventRoom)(client, sender, roomId);
title = (0, _languageHandler._t)("timeline|m.key.verification.request|user_wants_to_verify", {
name
});
subtitle = (0, _KeyVerificationStateObserver.userLabelForEventRoom)(client, sender, roomId);
}
return /*#__PURE__*/_react.default.createElement(_EventTileBubble.default, {
className: "mx_cryptoEvent mx_cryptoEvent_icon",
title: title,
subtitle: subtitle,
timestamp: timestamp
}, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null));
};
var _default = exports.default = MKeyVerificationRequest;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9sYW5ndWFnZUhhbmRsZXIiLCJfS2V5VmVyaWZpY2F0aW9uU3RhdGVPYnNlcnZlciIsIl9FdmVudFRpbGVCdWJibGUiLCJfTWF0cml4Q2xpZW50Q29udGV4dCIsIk1LZXlWZXJpZmljYXRpb25SZXF1ZXN0IiwibXhFdmVudCIsInRpbWVzdGFtcCIsImNsaWVudCIsInVzZU1hdHJpeENsaWVudENvbnRleHQiLCJFcnJvciIsIm15VXNlcklkIiwiZ2V0U2FmZVVzZXJJZCIsImNvbnRlbnQiLCJnZXRDb250ZW50Iiwic2VuZGVyIiwiZ2V0U2VuZGVyIiwicmVjZWl2ZXIiLCJ0byIsInJvb21JZCIsImdldFJvb21JZCIsInRpdGxlIiwic3VidGl0bGUiLCJzZW50QnlNZSIsIl90IiwidXNlckxhYmVsRm9yRXZlbnRSb29tIiwibmFtZSIsImdldE5hbWVGb3JFdmVudFJvb20iLCJkZWZhdWx0IiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsIkZyYWdtZW50IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvdmlld3MvbWVzc2FnZXMvTUtleVZlcmlmaWNhdGlvblJlcXVlc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5Db3B5cmlnaHQgMjAyNCBOZXcgVmVjdG9yIEx0ZC5cbkNvcHlyaWdodCAyMDE5LCAyMDIwICwgMjAyMyBUaGUgTWF0cml4Lm9yZyBGb3VuZGF0aW9uIEMuSS5DLlxuXG5TUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQUdQTC0zLjAtb25seSBPUiBHUEwtMy4wLW9ubHlcblBsZWFzZSBzZWUgTElDRU5TRSBmaWxlcyBpbiB0aGUgcmVwb3NpdG9yeSByb290IGZvciBmdWxsIGRldGFpbHMuXG4qL1xuXG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyBNYXRyaXhFdmVudCB9IGZyb20gXCJtYXRyaXgtanMtc2RrL3NyYy9tYXRyaXhcIjtcblxuaW1wb3J0IHsgX3QgfSBmcm9tIFwiLi4vLi4vLi4vbGFuZ3VhZ2VIYW5kbGVyXCI7XG5pbXBvcnQgeyBnZXROYW1lRm9yRXZlbnRSb29tLCB1c2VyTGFiZWxGb3JFdmVudFJvb20gfSBmcm9tIFwiLi4vLi4vLi4vdXRpbHMvS2V5VmVyaWZpY2F0aW9uU3RhdGVPYnNlcnZlclwiO1xuaW1wb3J0IEV2ZW50VGlsZUJ1YmJsZSBmcm9tIFwiLi9FdmVudFRpbGVCdWJibGVcIjtcbmltcG9ydCB7IHVzZU1hdHJpeENsaWVudENvbnRleHQgfSBmcm9tIFwiLi4vLi4vLi4vY29udGV4dHMvTWF0cml4Q2xpZW50Q29udGV4dFwiO1xuXG5pbnRlcmZhY2UgUHJvcHMge1xuICAgIG14RXZlbnQ6IE1hdHJpeEV2ZW50O1xuICAgIHRpbWVzdGFtcD86IEpTWC5FbGVtZW50O1xufVxuXG5pbnRlcmZhY2UgTUtleVZlcmlmaWNhdGlvblJlcXVlc3RDb250ZW50IHtcbiAgICBib2R5Pzogc3RyaW5nO1xuICAgIGZvcm1hdD86IHN0cmluZztcbiAgICBmb3JtYXR0ZWRfYm9keT86IHN0cmluZztcbiAgICBmcm9tX2RldmljZTogc3RyaW5nO1xuICAgIG1ldGhvZHM6IEFycmF5PHN0cmluZz47XG4gICAgbXNndHlwZTogXCJtLmtleS52ZXJpZmljYXRpb24ucmVxdWVzdFwiO1xuICAgIHRvOiBzdHJpbmc7XG59XG5cbi8qKlxuICogRXZlbnQgdGlsZSBjcmVhdGVkIHdoZW4gd2UgcmVjZWl2ZSBhbiBtLmtleS52ZXJpZmljYXRpb24ucmVxdWVzdCBldmVudC5cbiAqXG4gKiBEaXNwbGF5cyBhIHNpbXBsZSBtZXNzYWdlIHNheWluZyB0aGF0IGEgdmVyaWZpY2F0aW9uIHdhcyByZXF1ZXN0ZWQsIGVpdGhlciBieVxuICogdGhpcyB1c2VyIG9yIHNvbWVvbmUgZWxzZS5cbiAqXG4gKiBFdmVudFRpbGVGYWN0b3J5IGhhcyBsb2dpYyBtZWFuaW5nIHdlIG9ubHkgZGlzcGxheSB0aGlzIHRpbGUgaWYgdGhlIHJlcXVlc3RcbiAqIHdhcyBzZW50IHRvL2Zyb20gdGhpcyB1c2VyLlxuICovXG5jb25zdCBNS2V5VmVyaWZpY2F0aW9uUmVxdWVzdDogUmVhY3QuRkM8UHJvcHM+ID0gKHsgbXhFdmVudCwgdGltZXN0YW1wIH0pID0+IHtcbiAgICBjb25zdCBjbGllbnQgPSB1c2VNYXRyaXhDbGllbnRDb250ZXh0KCk7XG5cbiAgICBpZiAoIWNsaWVudCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJBdHRlbXB0aW5nIHRvIHJlbmRlciB2ZXJpZmljYXRpb24gcmVxdWVzdCB3aXRob3V0IGEgY2xpZW50IGNvbnRleHQhXCIpO1xuICAgIH1cblxuICAgIGNvbnN0IG15VXNlcklkID0gY2xpZW50LmdldFNhZmVVc2VySWQoKTtcbiAgICBjb25zdCBjb250ZW50OiBNS2V5VmVyaWZpY2F0aW9uUmVxdWVzdENvbnRlbnQgPSBteEV2ZW50LmdldENvbnRlbnQoKTtcbiAgICBjb25zdCBzZW5kZXIgPSBteEV2ZW50LmdldFNlbmRlcigpO1xuICAgIGNvbnN0IHJlY2VpdmVyID0gY29udGVudC50bztcbiAgICBjb25zdCByb29tSWQgPSBteEV2ZW50LmdldFJvb21JZCgpO1xuXG4gICAgaWYgKCFzZW5kZXIpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiVmVyaWZpY2F0aW9uIHJlcXVlc3QgZGlkIG5vdCBpbmNsdWRlIGEgc2VuZGVyIVwiKTtcbiAgICB9XG4gICAgaWYgKCFyb29tSWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiVmVyaWZpY2F0aW9uIHJlcXVlc3QgZGlkIG5vdCBpbmNsdWRlIGEgcm9vbSBJRCFcIik7XG4gICAgfVxuXG4gICAgbGV0IHRpdGxlOiBzdHJpbmc7XG4gICAgbGV0IHN1YnRpdGxlOiBzdHJpbmc7XG5cbiAgICBjb25zdCBzZW50QnlNZSA9IHNlbmRlciA9PT0gbXlVc2VySWQ7XG4gICAgaWYgKHNlbnRCeU1lKSB7XG4gICAgICAgIHRpdGxlID0gX3QoXCJ0aW1lbGluZXxtLmtleS52ZXJpZmljYXRpb24ucmVxdWVzdHx5b3Vfc3RhcnRlZFwiKTtcbiAgICAgICAgc3VidGl0bGUgPSB1c2VyTGFiZWxGb3JFdmVudFJvb20oY2xpZW50LCByZWNlaXZlciwgcm9vbUlkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBuYW1lID0gZ2V0TmFtZUZvckV2ZW50Um9vbShjbGllbnQsIHNlbmRlciwgcm9vbUlkKTtcbiAgICAgICAgdGl0bGUgPSBfdChcInRpbWVsaW5lfG0ua2V5LnZlcmlmaWNhdGlvbi5yZXF1ZXN0fHVzZXJfd2FudHNfdG9fdmVyaWZ5XCIsIHsgbmFtZSB9KTtcbiAgICAgICAgc3VidGl0bGUgPSB1c2VyTGFiZWxGb3JFdmVudFJvb20oY2xpZW50LCBzZW5kZXIsIHJvb21JZCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgICAgPEV2ZW50VGlsZUJ1YmJsZVxuICAgICAgICAgICAgY2xhc3NOYW1lPVwibXhfY3J5cHRvRXZlbnQgbXhfY3J5cHRvRXZlbnRfaWNvblwiXG4gICAgICAgICAgICB0aXRsZT17dGl0bGV9XG4gICAgICAgICAgICBzdWJ0aXRsZT17c3VidGl0bGV9XG4gICAgICAgICAgICB0aW1lc3RhbXA9e3RpbWVzdGFtcH1cbiAgICAgICAgPlxuICAgICAgICAgICAgPD48Lz5cbiAgICAgICAgPC9FdmVudFRpbGVCdWJibGU+XG4gICAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IE1LZXlWZXJpZmljYXRpb25SZXF1ZXN0O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBUUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBR0EsSUFBQUMsZ0JBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLDZCQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxnQkFBQSxHQUFBSixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUksb0JBQUEsR0FBQUosT0FBQTtBQWRBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQXlCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNSyx1QkFBd0MsR0FBR0EsQ0FBQztFQUFFQyxPQUFPO0VBQUVDO0FBQVUsQ0FBQyxLQUFLO0VBQ3pFLE1BQU1DLE1BQU0sR0FBRyxJQUFBQywyQ0FBc0IsRUFBQyxDQUFDO0VBRXZDLElBQUksQ0FBQ0QsTUFBTSxFQUFFO0lBQ1QsTUFBTSxJQUFJRSxLQUFLLENBQUMscUVBQXFFLENBQUM7RUFDMUY7RUFFQSxNQUFNQyxRQUFRLEdBQUdILE1BQU0sQ0FBQ0ksYUFBYSxDQUFDLENBQUM7RUFDdkMsTUFBTUMsT0FBdUMsR0FBR1AsT0FBTyxDQUFDUSxVQUFVLENBQUMsQ0FBQztFQUNwRSxNQUFNQyxNQUFNLEdBQUdULE9BQU8sQ0FBQ1UsU0FBUyxDQUFDLENBQUM7RUFDbEMsTUFBTUMsUUFBUSxHQUFHSixPQUFPLENBQUNLLEVBQUU7RUFDM0IsTUFBTUMsTUFBTSxHQUFHYixPQUFPLENBQUNjLFNBQVMsQ0FBQyxDQUFDO0VBRWxDLElBQUksQ0FBQ0wsTUFBTSxFQUFFO0lBQ1QsTUFBTSxJQUFJTCxLQUFLLENBQUMsZ0RBQWdELENBQUM7RUFDckU7RUFDQSxJQUFJLENBQUNTLE1BQU0sRUFBRTtJQUNULE1BQU0sSUFBSVQsS0FBSyxDQUFDLGlEQUFpRCxDQUFDO0VBQ3RFO0VBRUEsSUFBSVcsS0FBYTtFQUNqQixJQUFJQyxRQUFnQjtFQUVwQixNQUFNQyxRQUFRLEdBQUdSLE1BQU0sS0FBS0osUUFBUTtFQUNwQyxJQUFJWSxRQUFRLEVBQUU7SUFDVkYsS0FBSyxHQUFHLElBQUFHLG1CQUFFLEVBQUMsaURBQWlELENBQUM7SUFDN0RGLFFBQVEsR0FBRyxJQUFBRyxtREFBcUIsRUFBQ2pCLE1BQU0sRUFBRVMsUUFBUSxFQUFFRSxNQUFNLENBQUM7RUFDOUQsQ0FBQyxNQUFNO0lBQ0gsTUFBTU8sSUFBSSxHQUFHLElBQUFDLGlEQUFtQixFQUFDbkIsTUFBTSxFQUFFTyxNQUFNLEVBQUVJLE1BQU0sQ0FBQztJQUN4REUsS0FBSyxHQUFHLElBQUFHLG1CQUFFLEVBQUMsMERBQTBELEVBQUU7TUFBRUU7SUFBSyxDQUFDLENBQUM7SUFDaEZKLFFBQVEsR0FBRyxJQUFBRyxtREFBcUIsRUFBQ2pCLE1BQU0sRUFBRU8sTUFBTSxFQUFFSSxNQUFNLENBQUM7RUFDNUQ7RUFFQSxvQkFDSXJCLE1BQUEsQ0FBQThCLE9BQUEsQ0FBQUMsYUFBQSxDQUFDMUIsZ0JBQUEsQ0FBQXlCLE9BQWU7SUFDWkUsU0FBUyxFQUFDLG9DQUFvQztJQUM5Q1QsS0FBSyxFQUFFQSxLQUFNO0lBQ2JDLFFBQVEsRUFBRUEsUUFBUztJQUNuQmYsU0FBUyxFQUFFQTtFQUFVLGdCQUVyQlQsTUFBQSxDQUFBOEIsT0FBQSxDQUFBQyxhQUFBLENBQUEvQixNQUFBLENBQUE4QixPQUFBLENBQUFHLFFBQUEsTUFBSSxDQUNTLENBQUM7QUFFMUIsQ0FBQztBQUFDLElBQUFDLFFBQUEsR0FBQUMsT0FBQSxDQUFBTCxPQUFBLEdBRWF2Qix1QkFBdUIiLCJpZ25vcmVMaXN0IjpbXX0=