From 32839357f57c735a9c5e52dfe3d368dab9d8b3fc Mon Sep 17 00:00:00 2001 From: Henry Jameson Date: Wed, 5 Mar 2025 02:50:44 +0200 Subject: [PATCH] restore the status history item --- .../buttons_definitions.js | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/src/components/status_action_buttons/buttons_definitions.js b/src/components/status_action_buttons/buttons_definitions.js index d2a70708f..ecd4def70 100644 --- a/src/components/status_action_buttons/buttons_definitions.js +++ b/src/components/status_action_buttons/buttons_definitions.js @@ -1,5 +1,7 @@ import { useEditStatusStore } from 'src/stores/editStatus.js' import { useReportsStore } from 'src/stores/reports.js' +import { useStatusHistoryStore } from 'src/stores/statusHistory.js' + const PRIVATE_SCOPES = new Set(['private', 'direct']) const PUBLIC_SCOPES = new Set(['public', 'unlisted']) export const BUTTONS = [{ @@ -139,6 +141,34 @@ export const BUTTONS = [{ return dispatch('bookmark', { id: status.id }) } } +}, { + // ========= + // EDIT HISTORY + // ========= + name: 'editHistory', + icon: 'history', + label: 'status.status_history', + if ({ status, state }) { + return state.instance.editingAvailable && + status.edited_at !== null + }, + action ({ status }) { + const originalStatus = { ...status } + const stripFieldsList = [ + 'attachments', + 'created_at', + 'emojis', + 'text', + 'raw_html', + 'nsfw', + 'poll', + 'summary', + 'summary_raw_html' + ] + stripFieldsList.forEach(p => delete originalStatus[p]) + useStatusHistoryStore().openStatusHistoryModal(originalStatus) + return Promise.resolve() + } }, { // ========= // EDIT