blob: 2e1416d1db3a9a3eb1b57de59ba301e671a5e8dc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
// Copyright (c) 2015 Spinpunch, Inc. All Rights Reserved.
// See License.txt for license information.
const Constants = require('../utils/constants.jsx');
const UserStore = require('../stores/user_store.jsx');
export function formatText(text, options = {}) {
let output = sanitize(text);
// TODO autolink @mentions
// TODO highlight mentions of self
// TODO autolink urls
// TODO highlight search terms
// TODO autolink hashtags
// TODO leave space for markdown
if (options.singleline) {
output = output.replace('\n', ' ');
} else {
output = output.replace('\n', '<br />');
}
return output;
}
export function sanitize(text) {
let output = text;
// normal string.replace only does a single occurrance so use a regex instead
output = output.replace(/&/g, '&');
output = output.replace(/</g, '<');
output = output.replace(/>/g, '>');
return output;
}
|