Compare commits

..

No commits in common. "1dea2f76addf8008679be6c210d17ca40f0ca697" and "64d52b071db2621a4e7efb8f16ed71350215226c" have entirely different histories.

3 changed files with 8 additions and 18 deletions

View File

@ -1,7 +1,7 @@
<template>
<div class="event">
<div v-if="event.type==='m.room.message'" :class="type==='send'?'messageSend':'messageReceive'" class="message">
<reply-event :event="replyEvent" v-if="replyEvent"/>
<reply-event :event="replyEvent"/>
<div v-if="event.content.msgtype==='m.text'" v-html="parseMessage(event.content.body)"/>
<div v-else-if="event.content.msgtype==='m.notice'" class="notice" v-html="parseMessage(event.content.body)"/>

View File

@ -8,21 +8,12 @@ export function solveTextLinks(text){
}
return `${space}<a href="${hyperlink}" target="_blank">${url}</a>`;
}
);
)
}
export function solveMarkdownLinks(text){
return (text || '').replace(
/\[([\w\s\d/\\._+-]+)]\(((?:\/|https?:\/\/)[\w\d/.?=#_+-]+)\)/gi,
(match, text, url)=>{
return `<a href="${url}" target="_blank">${text}</a>`;
}
);
}
export function fixHtml(text){
return text.replace(/>.*\n/gm, '').trim()
export function parseMessage(msg){
return solveTextLinks(
msg.replace(/>.*\n/gm, '').trim()
.replace(/</g, '&lt')
.replace(/>/g, '&gt');
}
export function parseMessage(text){
return solveMarkdownLinks(solveTextLinks(fixHtml(text)));
.replace(/>/g, '&gt')
);
}

View File

@ -26,7 +26,6 @@ export function getPreviewUrl(mxcUrl, size = 64, resizeMethod = 'crop'){
}
export function getMediaUrl(mxcUrl){
if (!mxcUrl) return undefined;
let mxc = parseMXC.parse(mxcUrl);
return `${matrix.baseUrl}/_matrix/media/r0/download/${
mxc.homeserver}/${mxc.id}`;