From b0eae49eaa8eb24bc9a323eae904208fa063d551 Mon Sep 17 00:00:00 2001 From: anatawa12 Date: Tue, 5 Sep 2023 19:29:52 +0900 Subject: [PATCH] feat(frontend): remove renote with by admin privilege (#11789) --- CHANGELOG.md | 1 + packages/frontend/src/components/MkNote.vue | 27 ++++++++++++--------- 2 files changed, 17 insertions(+), 11 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4274d6005..97ea4a8d0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -35,6 +35,7 @@ - Enhance: ノート検索にローカルのみ検索可能なオプションの追加 - Enhance: AiScriptで`LOCALE`として現在の設定言語を取得できるように - Enhance: Renote自体を通報できるように +- Enhance: Renoteを管理者権限で削除可能に - `$[rainbow ]`記法が、動きのあるMFMが無効になっていても使用できるようになりました - Playの操作を行うAPI TokenをAPIコンソールから発行できるように - Fix: サーバー情報画面(`/instance-info/{domain}`)でブロックができないのを修正 diff --git a/packages/frontend/src/components/MkNote.vue b/packages/frontend/src/components/MkNote.vue index d98a6da0d..85af667fb 100644 --- a/packages/frontend/src/components/MkNote.vue +++ b/packages/frontend/src/components/MkNote.vue @@ -425,22 +425,26 @@ async function clip() { } function showRenoteMenu(viaKeyboard = false): void { + function getUnrenote(): MenuItem { + return { + text: i18n.ts.unrenote, + icon: 'ti ti-trash', + danger: true, + action: () => { + os.api('notes/delete', { + noteId: note.id, + }); + isDeleted.value = true; + }, + }; + } + 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; - }, - }, + getUnrenote(), ], renoteTime.value, { viaKeyboard: viaKeyboard, }); @@ -449,6 +453,7 @@ function showRenoteMenu(viaKeyboard = false): void { getCopyNoteLinkMenu(note, i18n.ts.copyLinkRenote), null, getAbuseNoteMenu(note, i18n.ts.reportAbuseRenote), + $i.isModerator || $i.isAdmin ? getUnrenote() : undefined, ], renoteTime.value, { viaKeyboard: viaKeyboard, });