diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2018-11-09 13:47:28 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2018-11-09 13:47:28 +0900 |
| commit | 51ba738c4b3c8769ffb896d921f48793c72c5c5e (patch) | |
| tree | c75bb8198f9fe04f19f4073bad746d8d545448d1 /src/remote/activitypub/models/note.ts | |
| parent | Fix i18n (diff) | |
| parent | Add group function (#3175) (diff) | |
| download | misskey-51ba738c4b3c8769ffb896d921f48793c72c5c5e.tar.gz misskey-51ba738c4b3c8769ffb896d921f48793c72c5c5e.tar.bz2 misskey-51ba738c4b3c8769ffb896d921f48793c72c5c5e.zip | |
Merge branch 'develop' of https://github.com/syuilo/misskey into develop
Diffstat (limited to 'src/remote/activitypub/models/note.ts')
| -rw-r--r-- | src/remote/activitypub/models/note.ts | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/src/remote/activitypub/models/note.ts b/src/remote/activitypub/models/note.ts index f9380eb4f4..ce9a4daf16 100644 --- a/src/remote/activitypub/models/note.ts +++ b/src/remote/activitypub/models/note.ts @@ -13,7 +13,7 @@ import htmlToMFM from '../../../mfm/html-to-mfm'; import Emoji from '../../../models/emoji'; import { ITag } from './tag'; import { toUnicode } from 'punycode'; -import { unique } from '../../../prelude/array'; +import { unique, concat, setDifference } from '../../../prelude/array'; const log = debug('misskey:activitypub'); @@ -179,15 +179,9 @@ async function extractEmojis(tags: ITag[], host_: string) { ); } -async function extractMentionedUsers(actor: IRemoteUser, to: string[], cc: string[], resolver: Resolver ) { - let uris = [] as string[]; - - if (to) uris.concat(to); - if (cc) uris.concat(cc); - - uris = uris.filter(x => x !== 'https://www.w3.org/ns/activitystreams#Public'); - uris = uris.filter(x => x !== `${actor.uri}/followers`); - uris = unique(uris); +async function extractMentionedUsers(actor: IRemoteUser, to: string[], cc: string[], resolver: Resolver) { + const ignoreUris = ['https://www.w3.org/ns/activitystreams#Public', `${actor.uri}/followers`]; + const uris = setDifference(unique(concat([to || [], cc || []])), ignoreUris); const users = await Promise.all( uris.map(async uri => await resolvePerson(uri, null, resolver).catch(() => null)) |