Compare commits

..
Author SHA1 Message Date
Krishan cc423fcc96 Don't enable e2ee from profileViewer for bridge users 2022-07-08 09:50:23 +05:30
6 changed files with 43 additions and 40 deletions

No files matched your search

+25 -22
View File
@@ -22,8 +22,7 @@
"formik": "^2.2.9",
"html-react-parser": "^2.0.0",
"katex": "^0.15.6",
"linkify-html": "^4.0.0-beta.5",
"linkifyjs": "^4.0.0-beta.5",
"linkifyjs": "^2.1.9",
"matrix-js-sdk": "^18.1.0",
"micromark": "^3.0.10",
"micromark-extension-gfm": "^2.0.1",
@@ -8291,6 +8290,12 @@
"integrity": "sha512-+az2gi/hvex7eLTMTlbRLOhH6P6WFdk2ITI8HJsaH2VqYO0I594zXSYEP+tf4FW+8Cy68ScDXoAsQdyQanv3sw==",
"dev": true
},
"node_modules/jquery": {
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.0.tgz",
"integrity": "sha512-JVzAR/AjBvVt2BmYhxRCSYysDsPcssdmTFnzyLEts9qNwmjmu4JTAMYubEfwVOSwpQ1I1sKKFcxhZCI2buerfw==",
"peer": true
},
"node_modules/js-tokens": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
@@ -8714,18 +8719,15 @@
"node": ">= 4.0.0"
}
},
"node_modules/linkify-html": {
"version": "4.0.0-beta.5",
"resolved": "https://registry.npmjs.org/linkify-html/-/linkify-html-4.0.0-beta.5.tgz",
"integrity": "sha512-7upWBgItubM1yQhO1MozvSzl2bCWModOgcc1Wd7kPpndlbR1JxmqH/N0UzmdvX6g0PX0ftnCQdYV4RZHLP9D5g==",
"peerDependencies": {
"linkifyjs": "^4.0.0-beta.1"
}
},
"node_modules/linkifyjs": {
"version": "4.0.0-beta.5",
"resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-4.0.0-beta.5.tgz",
"integrity": "sha512-j0YWN/Qd9XuReN4QdU/aMNFtfzBzyi1e07FkxEyeRjfxMKpfmMAofNT80q1vgQ4/U0WUZ/73nBOEpjdyfoUhGw=="
"version": "2.1.9",
"resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-2.1.9.tgz",
"integrity": "sha512-74ivurkK6WHvHFozVaGtQWV38FzBwSTGNmJolEgFp7QgR2bl6ArUWlvT4GcHKbPe1z3nWYi+VUdDZk16zDOVug==",
"peerDependencies": {
"jquery": ">= 1.11.0",
"react": ">= 0.14.0",
"react-dom": ">= 0.14.0"
}
},
"node_modules/load-bmfont": {
"version": "1.4.1",
@@ -20323,6 +20325,12 @@
"integrity": "sha512-+az2gi/hvex7eLTMTlbRLOhH6P6WFdk2ITI8HJsaH2VqYO0I594zXSYEP+tf4FW+8Cy68ScDXoAsQdyQanv3sw==",
"dev": true
},
"jquery": {
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.0.tgz",
"integrity": "sha512-JVzAR/AjBvVt2BmYhxRCSYysDsPcssdmTFnzyLEts9qNwmjmu4JTAMYubEfwVOSwpQ1I1sKKFcxhZCI2buerfw==",
"peer": true
},
"js-tokens": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
@@ -20687,16 +20695,11 @@
"computed-style": "~0.1.3"
}
},
"linkify-html": {
"version": "4.0.0-beta.5",
"resolved": "https://registry.npmjs.org/linkify-html/-/linkify-html-4.0.0-beta.5.tgz",
"integrity": "sha512-7upWBgItubM1yQhO1MozvSzl2bCWModOgcc1Wd7kPpndlbR1JxmqH/N0UzmdvX6g0PX0ftnCQdYV4RZHLP9D5g==",
"requires": {}
},
"linkifyjs": {
"version": "4.0.0-beta.5",
"resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-4.0.0-beta.5.tgz",
"integrity": "sha512-j0YWN/Qd9XuReN4QdU/aMNFtfzBzyi1e07FkxEyeRjfxMKpfmMAofNT80q1vgQ4/U0WUZ/73nBOEpjdyfoUhGw=="
"version": "2.1.9",
"resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-2.1.9.tgz",
"integrity": "sha512-74ivurkK6WHvHFozVaGtQWV38FzBwSTGNmJolEgFp7QgR2bl6ArUWlvT4GcHKbPe1z3nWYi+VUdDZk16zDOVug==",
"requires": {}
},
"load-bmfont": {
"version": "1.4.1",
+1 -2
View File
@@ -28,8 +28,7 @@
"formik": "^2.2.9",
"html-react-parser": "^2.0.0",
"katex": "^0.15.6",
"linkify-html": "^4.0.0-beta.5",
"linkifyjs": "^4.0.0-beta.5",
"linkifyjs": "^2.1.9",
"matrix-js-sdk": "^18.1.0",
"micromark": "^3.0.10",
"micromark-extension-gfm": "^2.0.1",
+1 -13
View File
@@ -6,7 +6,7 @@ import initMatrix from '../../../client/initMatrix';
import cons from '../../../client/state/cons';
import * as roomActions from '../../../client/action/room';
import { selectRoom } from '../../../client/action/navigation';
import { hasDMWith } from '../../../util/matrixUtil';
import { hasDMWith, hasDevices } from '../../../util/matrixUtil';
import Text from '../../atoms/text/Text';
import Button from '../../atoms/button/Button';
@@ -103,18 +103,6 @@ function InviteUser({
updateIsSearching(false);
}
async function hasDevices(userId) {
try {
const usersDeviceMap = await mx.downloadKeys([userId, mx.getUserId()]);
return Object.values(usersDeviceMap).every((userDevices) =>
Object.keys(userDevices).length > 0,
);
} catch (e) {
console.error("Error determining if it's possible to encrypt to all users: ", e);
return false;
}
}
async function createDM(userId) {
if (mx.getUserId() === userId) return;
const dmRoomId = hasDMWith(userId);
@@ -11,7 +11,7 @@ import { selectRoom, openReusableContextMenu } from '../../../client/action/navi
import * as roomActions from '../../../client/action/room';
import {
getUsername, getUsernameOfRoomMember, getPowerLabel, hasDMWith
getUsername, getUsernameOfRoomMember, getPowerLabel, hasDMWith, hasDevices
} from '../../../util/matrixUtil';
import { getEventCords } from '../../../util/common';
import colorMXID from '../../../util/colorMXID';
@@ -201,7 +201,7 @@ function ProfileFooter({ roomId, userId, onRequestClose }) {
// Create new DM
try {
setIsCreatingDM(true);
await roomActions.createDM(userId);
await roomActions.createDM(userId, await hasDevices(userId));
} catch {
if (isMountedRef.current === false) return;
setIsCreatingDM(false);
+13
View File
@@ -199,3 +199,16 @@ export function getSSKeyInfo(key) {
return undefined;
}
}
export async function hasDevices(userId) {
const mx = initMatrix.matrixClient;
try {
const usersDeviceMap = await mx.downloadKeys([userId, mx.getUserId()]);
return Object.values(usersDeviceMap).every((userDevices) =>
Object.keys(userDevices).length > 0,
);
} catch (e) {
console.error("Error determining if it's possible to encrypt to all users: ", e);
return false;
}
}
+1 -1
View File
@@ -1,7 +1,7 @@
/* eslint-disable import/prefer-default-export */
import React, { lazy, Suspense } from 'react';
import linkifyHtml from 'linkify-html';
import linkifyHtml from 'linkifyjs/html';
import parse from 'html-react-parser';
import twemoji from 'twemoji';
import { sanitizeText } from './sanitize';