fix(web): resolve TypeScript errors in ClientView
Some checks failed
Build Multi-Platform Binaries / build-frontend (push) Successful in 27s
Build Multi-Platform Binaries / build-binaries (amd64, linux, client, true) (push) Successful in 1m29s
Build Multi-Platform Binaries / build-binaries (amd64, darwin, server, false) (push) Successful in 1m37s
Build Multi-Platform Binaries / build-binaries (amd64, windows, client, true) (push) Successful in 1m29s
Build Multi-Platform Binaries / build-binaries (amd64, linux, server, true) (push) Successful in 2m1s
Build Multi-Platform Binaries / build-binaries (arm, 7, linux, client, true) (push) Successful in 1m21s
Build Multi-Platform Binaries / build-binaries (amd64, windows, server, true) (push) Successful in 1m49s
Build Multi-Platform Binaries / build-binaries (arm64, darwin, server, false) (push) Successful in 2m1s
Build Multi-Platform Binaries / build-binaries (arm, 7, linux, server, true) (push) Successful in 2m14s
Build Multi-Platform Binaries / build-binaries (arm64, windows, server, false) (push) Has been cancelled
Build Multi-Platform Binaries / build-binaries (arm64, linux, server, true) (push) Has been cancelled
Build Multi-Platform Binaries / build-binaries (arm64, linux, client, true) (push) Has been cancelled

- Remove unused imports (ImageOutline, TerminalOutline, ShellResult)
- Add null coalescing for array access in shell history

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-06 22:42:05 +08:00
parent 5cee8daabc
commit b7a1a249a4

View File

@@ -5,7 +5,7 @@ import {
ArrowBackOutline, CreateOutline, TrashOutline, ArrowBackOutline, CreateOutline, TrashOutline,
PushOutline, AddOutline, StorefrontOutline, PushOutline, AddOutline, StorefrontOutline,
ExtensionPuzzleOutline, SettingsOutline, RefreshOutline, ExtensionPuzzleOutline, SettingsOutline, RefreshOutline,
ImageOutline, TerminalOutline, PlayOutline PlayOutline
} from '@vicons/ionicons5' } from '@vicons/ionicons5'
import GlassModal from '../components/GlassModal.vue' import GlassModal from '../components/GlassModal.vue'
import GlassTag from '../components/GlassTag.vue' import GlassTag from '../components/GlassTag.vue'
@@ -18,7 +18,7 @@ import {
getStorePlugins, installStorePlugin, getRuleSchemas, startClientPlugin, restartClientPlugin, stopClientPlugin, deleteClientPlugin, getStorePlugins, installStorePlugin, getRuleSchemas, startClientPlugin, restartClientPlugin, stopClientPlugin, deleteClientPlugin,
checkClientUpdate, applyClientUpdate, getClientSystemStats, getVersionInfo, checkClientUpdate, applyClientUpdate, getClientSystemStats, getVersionInfo,
getClientScreenshot, executeClientShell, getClientScreenshot, executeClientShell,
type UpdateInfo, type SystemStats, type ScreenshotData, type ShellResult type UpdateInfo, type SystemStats, type ScreenshotData
} from '../api' } from '../api'
import type { ProxyRule, ClientPlugin, ConfigField, StorePluginInfo, RuleSchemasMap } from '../types' import type { ProxyRule, ClientPlugin, ConfigField, StorePluginInfo, RuleSchemasMap } from '../types'
import InlineLogPanel from '../components/InlineLogPanel.vue' import InlineLogPanel from '../components/InlineLogPanel.vue'
@@ -286,16 +286,16 @@ const executeShell = async () => {
const handleShellHistory = (direction: 'up' | 'down') => { const handleShellHistory = (direction: 'up' | 'down') => {
if (shellHistory.value.length === 0) return if (shellHistory.value.length === 0) return
if (direction === 'up') { if (direction === 'up') {
if (historyIndex.value < shellHistory.value.length - 1) { if (historyIndex.value < shellHistory.value.length - 1) {
historyIndex.value++ historyIndex.value++
shellCommand.value = shellHistory.value[historyIndex.value] shellCommand.value = shellHistory.value[historyIndex.value] || ''
} }
} else { } else {
if (historyIndex.value > 0) { if (historyIndex.value > 0) {
historyIndex.value-- historyIndex.value--
shellCommand.value = shellHistory.value[historyIndex.value] shellCommand.value = shellHistory.value[historyIndex.value] || ''
} else if (historyIndex.value === 0) { } else if (historyIndex.value === 0) {
historyIndex.value = -1 historyIndex.value = -1
shellCommand.value = '' shellCommand.value = ''