diff --git a/web/src/components/ClearUpHistoryData.vue b/web/src/components/ClearUpHistoryData.vue new file mode 100644 index 000000000..dff2778dd --- /dev/null +++ b/web/src/components/ClearUpHistoryData.vue @@ -0,0 +1,60 @@ + + + + + diff --git a/web/src/lang/connections.ts b/web/src/lang/connections.ts index b97ca37e7..6e4688345 100644 --- a/web/src/lang/connections.ts +++ b/web/src/lang/connections.ts @@ -429,4 +429,14 @@ export default { en: 'The Broker has actively disconnected, Reason: {reason} (Code: {reasonCode})', ja: 'サーバーから積極的に接続が切断されました, Reason: {reason} (Code: {reasonCode})', }, + cleanHistoryData: { + zh: '清除历史数据', + en: 'Clean history data', + ja: 'クリーンな履歴データ', + }, + cleanHistorySuccess: { + zh: '清除历史数据成功', + en: 'Clear history successfully', + ja: '履歴を正常にクリアする', + }, } diff --git a/web/src/lang/settings.ts b/web/src/lang/settings.ts index f28ecabf3..df4ea271b 100644 --- a/web/src/lang/settings.ts +++ b/web/src/lang/settings.ts @@ -49,6 +49,26 @@ export default { en: 'Advanced', ja: '詳細', }, + dataBackup: { + zh: '数据备份', + en: 'Data backup', + ja: 'データバックアップ', + }, + dataRecovery: { + zh: '数据恢复', + en: 'Data recovery', + ja: 'データ復旧', + }, + historyCleanup: { + zh: '清除历史数据', + en: 'Clear history data', + ja: '履歴データをクリアする', + }, + cleanHistoryDialogMessage: { + zh: '即将删除所有连接中的历史消息记录、发送端记录的发布消息、主题、保留标志及历史连接配置。确定吗?', + en: 'This will delete all historical message records in connections, messages published by the sender, topics, retain flags, and past connection configurations. Confirm?', + ja: '接続内のすべての過去のメッセージ記録、送信者によって公開されたメッセージ、トピック、保持フラグ、および過去の接続設定を削除しようとしています。確認してください。', + }, autoResub: { zh: '自动恢复订阅', en: 'Auto resubscribe', diff --git a/web/src/utils/api/setting.ts b/web/src/utils/api/setting.ts index 47fe13722..22712417e 100644 --- a/web/src/utils/api/setting.ts +++ b/web/src/utils/api/setting.ts @@ -8,4 +8,11 @@ export const setSettings = (key: string, value: string | boolean | number): stri return db.set(key, value) } +export const cleanHistoryData = (): void => { + db.set('connections', []) + db.set('headersHistory', []) + db.set('payloadsHistory', []) + db.set('suggestConnections', []) +} + export default {} diff --git a/web/src/views/settings/index.vue b/web/src/views/settings/index.vue index 921ec51c9..6c4033ff7 100644 --- a/web/src/views/settings/index.vue +++ b/web/src/views/settings/index.vue @@ -157,14 +157,43 @@ + +
+
{{ $t('settings.advanced') }}
+ + + + + + + + + + + + + + +
@@ -238,7 +273,8 @@ export default class Settings extends Vue { user-select: none; .settings-general, - .settings-appearance { + .settings-appearance, + .settings-advanced { max-width: 836px; margin: 0 auto; }