Linkify mxc:// URLs as links to your media repo (#11213)
This commit is contained in:
parent
7b3d0ad209
commit
6e99b2fca3
1 changed files with 8 additions and 1 deletions
|
@ -19,7 +19,7 @@ import * as linkifyjs from "linkifyjs";
|
||||||
import { EventListeners, Opts, registerCustomProtocol, registerPlugin } from "linkifyjs";
|
import { EventListeners, Opts, registerCustomProtocol, registerPlugin } from "linkifyjs";
|
||||||
import linkifyElement from "linkify-element";
|
import linkifyElement from "linkify-element";
|
||||||
import linkifyString from "linkify-string";
|
import linkifyString from "linkify-string";
|
||||||
import { User } from "matrix-js-sdk/src/matrix";
|
import { getHttpUriForMxc, User } from "matrix-js-sdk/src/matrix";
|
||||||
|
|
||||||
import {
|
import {
|
||||||
parsePermalink,
|
parsePermalink,
|
||||||
|
@ -186,6 +186,11 @@ export const options: Opts = {
|
||||||
|
|
||||||
formatHref: function (href: string, type: Type | string): string {
|
formatHref: function (href: string, type: Type | string): string {
|
||||||
switch (type) {
|
switch (type) {
|
||||||
|
case "url":
|
||||||
|
if (href.startsWith("mxc://") && MatrixClientPeg.get()) {
|
||||||
|
return getHttpUriForMxc(MatrixClientPeg.get()!.baseUrl, href);
|
||||||
|
}
|
||||||
|
// fallthrough
|
||||||
case Type.RoomAlias:
|
case Type.RoomAlias:
|
||||||
case Type.UserId:
|
case Type.UserId:
|
||||||
default: {
|
default: {
|
||||||
|
@ -270,6 +275,8 @@ PERMITTED_URL_SCHEMES.forEach((scheme) => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
registerCustomProtocol("mxc", false);
|
||||||
|
|
||||||
export const linkify = linkifyjs;
|
export const linkify = linkifyjs;
|
||||||
export const _linkifyElement = linkifyElement;
|
export const _linkifyElement = linkifyElement;
|
||||||
export const _linkifyString = linkifyString;
|
export const _linkifyString = linkifyString;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue