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