Fix relative link handling in Element Desktop (#7708)

This commit is contained in:
Michael Telatynski 2022-02-03 08:55:49 +00:00 committed by GitHub
parent f0446a23d5
commit 760d269671
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 3 deletions

View file

@ -132,9 +132,9 @@ const escapeRegExp = function(string): string {
};
// Recognise URLs from both our local and official Element deployments.
// Anyone else really should be using matrix.to.
// Anyone else really should be using matrix.to. vector:// allowed to support Element Desktop relative links.
export const ELEMENT_URL_PATTERN =
"^(?:https?://)?(?:" +
"^(?:vector://|https?://)?(?:" +
escapeRegExp(window.location.host + window.location.pathname) + "|" +
"(?:www\\.)?(?:riot|vector)\\.im/(?:app|beta|staging|develop)/|" +
"(?:app|beta|staging|develop)\\.element\\.io/" +

View file

@ -362,7 +362,11 @@ export function tryTransformEntityToPermalink(entity: string): string {
* @returns {string} The transformed permalink or original URL if unable.
*/
export function tryTransformPermalinkToLocalHref(permalink: string): string {
if (!permalink.startsWith("http:") && !permalink.startsWith("https:") && !permalink.startsWith("matrix:")) {
if (!permalink.startsWith("http:") &&
!permalink.startsWith("https:") &&
!permalink.startsWith("matrix:") &&
!permalink.startsWith("vector:") // Element Desktop
) {
return permalink;
}