From 46b0eb46b375d2aef9404a4ab75a917f56696768 Mon Sep 17 00:00:00 2001 From: anatawa12 Date: Tue, 5 Sep 2023 17:25:08 +0900 Subject: feat(frontend): Report renote abuse (#11466) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore: add way to show renote in window / tab * feat: report abuse for renote * docs: Renote自体を通報できるように * revert: make renote time link * chore: add copy renote menu * chore: remove copy/report renote from note menu * fix: abuse menu without actual selection shown --------- Co-authored-by: syuilo --- packages/frontend/src/components/MkNote.vue | 47 ++++++++++++++++++----------- 1 file changed, 30 insertions(+), 17 deletions(-) (limited to 'packages/frontend/src/components') diff --git a/packages/frontend/src/components/MkNote.vue b/packages/frontend/src/components/MkNote.vue index 22610b2253..d98a6da0dc 100644 --- a/packages/frontend/src/components/MkNote.vue +++ b/packages/frontend/src/components/MkNote.vue @@ -29,7 +29,7 @@ SPDX-License-Identifier: AGPL-3.0-only
@@ -161,7 +161,7 @@ import { reactionPicker } from '@/scripts/reaction-picker'; import { extractUrlFromMfm } from '@/scripts/extract-url-from-mfm'; import { $i } from '@/account'; import { i18n } from '@/i18n'; -import { getNoteClipMenu, getNoteMenu } from '@/scripts/get-note-menu'; +import { getAbuseNoteMenu, getCopyNoteLinkMenu, getNoteClipMenu, getNoteMenu } from '@/scripts/get-note-menu'; import { useNoteCapture } from '@/scripts/use-note-capture'; import { deepClone } from '@/scripts/clone'; import { useTooltip } from '@/scripts/use-tooltip'; @@ -425,21 +425,34 @@ async function clip() { } function showRenoteMenu(viaKeyboard = false): void { - if (!isMyRenote) return; - pleaseLogin(); - os.popupMenu([{ - text: i18n.ts.unrenote, - icon: 'ti ti-trash', - danger: true, - action: () => { - os.api('notes/delete', { - noteId: note.id, - }); - isDeleted.value = true; - }, - }], renoteTime.value, { - viaKeyboard: viaKeyboard, - }); + if (isMyRenote) { + pleaseLogin(); + os.popupMenu([ + getCopyNoteLinkMenu(note, i18n.ts.copyLinkRenote), + null, + { + text: i18n.ts.unrenote, + icon: 'ti ti-trash', + danger: true, + action: () => { + os.api('notes/delete', { + noteId: note.id, + }); + isDeleted.value = true; + }, + }, + ], renoteTime.value, { + viaKeyboard: viaKeyboard, + }); + } else { + os.popupMenu([ + getCopyNoteLinkMenu(note, i18n.ts.copyLinkRenote), + null, + getAbuseNoteMenu(note, i18n.ts.reportAbuseRenote), + ], renoteTime.value, { + viaKeyboard: viaKeyboard, + }); + } } function focus() { -- cgit v1.2.3-freya