barkey/src/remote/activitypub/kernel/like.ts
Xeltica 71878f93e4
自分のノートにリアクションを押せるように (#6506)
* resolve #6468

* リモートから来たセルフリアクションの対応
2020-07-30 20:28:35 +09:00

16 lines
623 B
TypeScript

import { IRemoteUser } from '../../../models/entities/user';
import { ILike, getApId } from '../type';
import create from '../../../services/note/reaction/create';
import { fetchNote, extractEmojis } from '../models/note';
export default async (actor: IRemoteUser, activity: ILike) => {
const targetUri = getApId(activity.object);
const note = await fetchNote(targetUri);
if (!note) return `skip: target note not found ${targetUri}`;
await extractEmojis(activity.tag || [], actor.host).catch(() => null);
await create(actor, note, activity._misskey_reaction || activity.content || activity.name);
return `ok`;
};