From 9b746f3eb5fcefd1ce75f0b9d10e800c240bfc86 Mon Sep 17 00:00:00 2001 From: Aya Morisawa Date: Wed, 26 Dec 2018 23:05:47 +0900 Subject: Make reactions removable Co-authored-by: syuilo Resolve #367, resolve #2260, close #3503 --- src/server/api/endpoints/notes/reactions/delete.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/server/api') diff --git a/src/server/api/endpoints/notes/reactions/delete.ts b/src/server/api/endpoints/notes/reactions/delete.ts index 367538bed5..40139afee1 100644 --- a/src/server/api/endpoints/notes/reactions/delete.ts +++ b/src/server/api/endpoints/notes/reactions/delete.ts @@ -2,6 +2,8 @@ import $ from 'cafy'; import ID, { transform } from '../../../../../misc/cafy-id import Reaction from '../../../../../models/note-reaction'; import Note from '../../../../../models/note'; import define from '../../../define'; +import { publishNoteStream } from '../../../../../stream'; +const ms = require('ms'); export const meta = { desc: { @@ -13,6 +15,12 @@ export const meta = { kind: 'reaction-write', + limit: { + duration: ms('1hour'), + max: 5, + minInterval: ms('3sec') + }, + params: { noteId: { validator: $.type(ID), @@ -60,4 +68,9 @@ export default define(meta, (ps, user) => new Promise(async (res, rej) => { Note.update({ _id: note._id }, { $inc: dec }); + + publishNoteStream(note._id, 'unreacted', { + reaction: exist.reaction, + userId: user._id + }); })); -- cgit v1.2.3-freya