summaryrefslogtreecommitdiff
path: root/src/services/note/create.ts
diff options
context:
space:
mode:
authorMeiMei <30769358+mei23@users.noreply.github.com>2019-01-23 04:49:16 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2019-01-23 04:49:16 +0900
commitfa124abbe26abca49bd33f4eec49e691c5d029f9 (patch)
tree19a317ed96a8c4c5ee535508a4295ef6456fb967 /src/services/note/create.ts
parentFix types (diff)
downloadsharkey-fa124abbe26abca49bd33f4eec49e691c5d029f9.tar.gz
sharkey-fa124abbe26abca49bd33f4eec49e691c5d029f9.tar.bz2
sharkey-fa124abbe26abca49bd33f4eec49e691c5d029f9.zip
Supports Twemoji / CustomEmoji in poll (#3960)
* Supports Twemoji / CustomEmoji in poll * extract emojis in polls
Diffstat (limited to 'src/services/note/create.ts')
-rw-r--r--src/services/note/create.ts10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/services/note/create.ts b/src/services/note/create.ts
index 4b9f8215e1..d3c8699b26 100644
--- a/src/services/note/create.ts
+++ b/src/services/note/create.ts
@@ -1,5 +1,5 @@
import es from '../../db/elasticsearch';
-import Note, { pack, INote } from '../../models/note';
+import Note, { pack, INote, IChoice } from '../../models/note';
import User, { isLocalUser, IUser, isRemoteUser, IRemoteUser, ILocalUser } from '../../models/user';
import { publishMainStream, publishHomeTimelineStream, publishLocalTimelineStream, publishHybridTimelineStream, publishGlobalTimelineStream, publishUserListStream, publishHashtagStream } from '../../stream';
import Following from '../../models/following';
@@ -25,7 +25,7 @@ import notesChart from '../../chart/notes';
import perUserNotesChart from '../../chart/per-user-notes';
import activeUsersChart from '../../chart/active-users';
-import { erase } from '../../prelude/array';
+import { erase, concat } from '../../prelude/array';
import insertNoteUnread from './unread';
import registerInstance from '../register-instance';
import Instance from '../../models/instance';
@@ -157,7 +157,11 @@ export default async (user: IUser, data: Option, silent = false) => new Promise<
if (!tags || !emojis || !mentionedUsers) {
const tokens = data.text ? parse(data.text) : [];
const cwTokens = data.cw ? parse(data.cw) : [];
- const combinedTokens = tokens.concat(cwTokens);
+ const choiceTokens = data.poll && data.poll.choices
+ ? concat((data.poll.choices as IChoice[]).map(choice => parse(choice.text)))
+ : [];
+
+ const combinedTokens = tokens.concat(cwTokens).concat(choiceTokens);
tags = data.apHashtags || extractHashtags(combinedTokens);