diff --git a/src/utils/changelog.js b/src/utils/changelog.js
index a590a12..8dee259 100644
--- a/src/utils/changelog.js
+++ b/src/utils/changelog.js
@@ -14,6 +14,17 @@
const config = [
+ {
+ version: 5.5,
+ title: "Oopsies!",
+ shortTitle: "",
+ date: "25/07/2019",
+ headColor: "rgba(15, 65, 70, 0.77)",
+ fix: [
+ 'Removed codeblock highlighter due to some problems. Will be back in the future.',
+ ],
+ },
+
{
version: 5.4,
title: "Bug Fixes!",
diff --git a/src/utils/messageFormatter.js b/src/utils/messageFormatter.js
index 0d9cbe3..1f3d7ef 100644
--- a/src/utils/messageFormatter.js
+++ b/src/utils/messageFormatter.js
@@ -2,8 +2,6 @@ import Formatter from 'futoji'
import twemoji from 'twemoji'
import emojiParser from '@/utils/emojiParser';
import config from "@/config.js";
-import hljs from 'highlight.js'
-import { escape as escapeHTML, unescape as unescapeHTML } from 'validator'
const futoji = new Formatter();
const emojiFormatter = new Formatter();
@@ -13,23 +11,24 @@ emojiFormatter.addTransformer({
symbol: ':',
padding: false,
recursive: false,
- validate: text => /.+?&(.+?)/.test(text),
+ validate: text => /.+?&(.+?)/.test(text),
transformer: owo
})
function owo (text) {
- const split = escapeHTML(text).split('&');
+ const split = text.split('&');
if (!split || split.length <= 1) return `:${text}:`;
const url = split[split.length - 1].slice(4);
return ``
}
+
futoji.addTransformer({
name: 'custom emoji',
symbol: ':',
padding: false,
recursive: false,
- validate: text => /.+?&(.+?)/.test(text),
+ validate: text => /.+?&(.+?)/.test(text),
transformer: text => {
const formattedInner = emojiFormatter.format(text);
return owo(formattedInner);
@@ -37,85 +36,80 @@ futoji.addTransformer({
}
})
+
+
futoji.addTransformer({
name: 'url',
open: 'http',
close: ' ',
recursive: false,
validate: text => /(https?:\/\/[^\s]+)/g.test('http' + text),
- transformer: text => 'http' + escapeHTML(text) + ' '
+ transformer: text => 'http' + text + ' '
})
+
futoji.addTransformer({
name: 'bold-and-italic',
symbol: '***',
- transformer: text => `${escapeHTML(text)}`
+ transformer: text => `${text}`
})
futoji.addTransformer({
name: 'bold',
symbol: '**',
- transformer: text => `${escapeHTML(text)}`
+ transformer: text => `${text}`
})
futoji.addTransformer({
name: 'italic',
symbol: '*',
- transformer: text => `${escapeHTML(text)}`
+ transformer: text => `${text}`
})
futoji.addTransformer({
name: 'underline',
symbol: '__',
- transformer: text => `${escapeHTML(text)}`
+ transformer: text => `${text}`
})
futoji.addTransformer({
name: 'italic',
symbol: '_',
- transformer: text => `${escapeHTML(text)}`
+ transformer: text => `${text}`
})
futoji.addTransformer({
name: 'srike',
symbol: '~~',
- transformer: text => `
${escapeHTML(text).trim()}`
+ transformer: text => `${text.trim()}`
})
futoji.addTransformer({
name: 'code-block',
symbol: '```',
recursive: false,
- transformer: text => {
- let formatted = formatCode(text)
-
- let highlighted
- if(formatted.lang.length === 0) {
- return `
${escapeHTML(formatted.code)}${highlighted.value}${formatCode(text).trim()}${escapeHTML(text)}`,
+ transformer: text => `${text}`,
})
export default (message) => {
+
message = futoji.format(escapeHtml(message + ' ')).trim();
message = emojiParser.replaceEmojis(message);
+
return message;
}
+
+
+
/**
- * format code to get language and code
+ * format code to add syntax highlighting
*/
function formatCode(text) {
// matches if word until newline
@@ -126,19 +120,14 @@ function formatCode(text) {
let language = nameRegex.exec(text)[1]
let newText = text.replace(nameRegex, '')
- return {
- lang: language,
- code: newText
- }
+ // TODO: format newText with language
+
+ return newText
}
- return {
- lang: '',
- code: text.replace(/^\n/, '')
- }
+ return text
}
-// todo: replace with well tested / faster method
function escapeHtml(unsafe) {
return unsafe
.replace(/&/g, "&")