aboutsummaryrefslogtreecommitdiff
path: root/src/services/entity_normalizer/entity_normalizer.service.js
diff options
context:
space:
mode:
authorHenry Jameson <me@hjkos.com>2021-08-15 16:27:41 +0300
committerHenry Jameson <me@hjkos.com>2021-08-15 16:27:41 +0300
commit17d2eed06a7c0c2a38129e36cca1e676c351abce (patch)
tree2521a727071db6f7cfe4e76f7e227dfe69b750d6 /src/services/entity_normalizer/entity_normalizer.service.js
parentb67db47c888dd45c49a49b82e7922c2bf40ed61c (diff)
parentf16658adfc897a3b07ed7f79d872acd2c3837cc8 (diff)
Merge branch 'better-still-emoji' into proper-attachments
* better-still-emoji: fix tests prevent infinite update loops remove obsolete tests removed useless code, review change, fixed bug with tall statuses fixed mentions line again remove old emoji added, everything emoji-bearing uses RichContent now richcontent support in polls, user cards and user profiles support richcontent in polls fix tests, add performance test (skipped, doesn't assert anything), tweak max mentions count made the code responsible for showing unwritten mentions actually work remove new options for style and separate line, now groups all chained mentions on a mentionsline regardless of placement. fixes spacing fix tests
Diffstat (limited to 'src/services/entity_normalizer/entity_normalizer.service.js')
-rw-r--r--src/services/entity_normalizer/entity_normalizer.service.js21
1 files changed, 6 insertions, 15 deletions
diff --git a/src/services/entity_normalizer/entity_normalizer.service.js b/src/services/entity_normalizer/entity_normalizer.service.js
index 477b861f..04bb45a4 100644
--- a/src/services/entity_normalizer/entity_normalizer.service.js
+++ b/src/services/entity_normalizer/entity_normalizer.service.js
@@ -56,16 +56,17 @@ export const parseUser = (data) => {
output.emoji = data.emojis
output.name = data.display_name
- output.name_html = addEmojis(escape(data.display_name), data.emojis)
+ output.name_html = escape(data.display_name)
output.description = data.note
- output.description_html = addEmojis(data.note, data.emojis)
+ // TODO cleanup this shit, output.description is overriden with source data
+ output.description_html = data.note
output.fields = data.fields
output.fields_html = data.fields.map(field => {
return {
- name: addEmojis(escape(field.name), data.emojis),
- value: addEmojis(field.value, data.emojis)
+ name: escape(field.name),
+ value: field.value
}
})
output.fields_text = data.fields.map(field => {
@@ -240,16 +241,6 @@ export const parseAttachment = (data) => {
return output
}
-export const addEmojis = (string, emojis) => {
- const matchOperatorsRegex = /[|\\{}()[\]^$+*?.-]/g
- return emojis.reduce((acc, emoji) => {
- const regexSafeShortCode = emoji.shortcode.replace(matchOperatorsRegex, '\\$&')
- return acc.replace(
- new RegExp(`:${regexSafeShortCode}:`, 'g'),
- `<img src='${emoji.url}' alt=':${emoji.shortcode}:' title=':${emoji.shortcode}:' class='emoji' />`
- )
- }, string)
-}
export const parseStatus = (data) => {
const output = {}
@@ -301,7 +292,7 @@ export const parseStatus = (data) => {
if (output.poll) {
output.poll.options = (output.poll.options || []).map(field => ({
...field,
- title_html: addEmojis(escape(field.title), data.emojis)
+ title_html: escape(field.title)
}))
}
output.pinned = data.pinned