Fix: Hide progress display when clearing order numbers and remove progress text from LogPanel

This commit is contained in:
Misaka_Company
2026-03-05 10:12:09 +08:00
parent 302018f631
commit e0d7559cf7
3 changed files with 22 additions and 16 deletions

View File

@@ -1,11 +1,9 @@
import React, { useEffect, useRef } from 'react' import React, { useEffect, useRef } from 'react'
import { Terminal } from 'lucide-react' import { Terminal } from 'lucide-react'
import type { LogEntry, LogLevel } from '../../stores/extractorStore' import type { LogEntry, LogLevel } from '../../stores/extractorStore'
import type { ExtractionProgress } from '../../stores/extractorStore'
interface LogPanelProps { interface LogPanelProps {
logs: LogEntry[] logs: LogEntry[]
progress: ExtractionProgress | null
onClear: () => void onClear: () => void
} }
@@ -24,7 +22,7 @@ const getLogColor = (level: LogLevel): string => {
} }
} }
const LogPanel: React.FC<LogPanelProps> = ({ logs, progress, onClear }) => { const LogPanel: React.FC<LogPanelProps> = ({ logs, onClear }) => {
const logsEndRef = useRef<HTMLDivElement>(null) const logsEndRef = useRef<HTMLDivElement>(null)
useEffect(() => { useEffect(() => {
@@ -38,8 +36,6 @@ const LogPanel: React.FC<LogPanelProps> = ({ logs, progress, onClear }) => {
<Terminal size={16} /> <Terminal size={16} />
<span></span> <span></span>
</div> </div>
<div className="flex items-center gap-3">
<span className="text-xs text-slate-500">: {progress?.progress || 0}%</span>
<button <button
className="text-xs text-slate-400 hover:text-white transition-colors" className="text-xs text-slate-400 hover:text-white transition-colors"
onClick={onClear} onClick={onClear}
@@ -47,7 +43,6 @@ const LogPanel: React.FC<LogPanelProps> = ({ logs, progress, onClear }) => {
</button> </button>
</div> </div>
</div>
<div className="flex-1 p-4 font-mono text-sm overflow-y-auto leading-relaxed"> <div className="flex-1 p-4 font-mono text-sm overflow-y-auto leading-relaxed">
{logs.length === 0 ? ( {logs.length === 0 ? (
<div className="text-slate-500 text-center py-8">...</div> <div className="text-slate-500 text-center py-8">...</div>

View File

@@ -94,6 +94,7 @@ export function useExtractor() {
startExtraction, startExtraction,
clearLogs, clearLogs,
setError, setError,
setComplete setComplete,
resetState
} }
} }

View File

@@ -10,8 +10,17 @@ const ExtractorPage: React.FC = () => {
return sessionStorage.getItem('extractor_orderNumbers') || '' return sessionStorage.getItem('extractor_orderNumbers') || ''
}) })
const { isRunning, progress, error, logs, startExtraction, clearLogs, setError, isComplete } = const {
useExtractor() isRunning,
progress,
error,
logs,
startExtraction,
clearLogs,
setError,
isComplete,
setComplete
} = useExtractor()
useEffect(() => { useEffect(() => {
sessionStorage.setItem('extractor_orderNumbers', orderNumbers) sessionStorage.setItem('extractor_orderNumbers', orderNumbers)
@@ -31,6 +40,7 @@ const ExtractorPage: React.FC = () => {
const handleReset = () => { const handleReset = () => {
setOrderNumbers('') setOrderNumbers('')
setError(null) setError(null)
setComplete(false)
clearLogs() clearLogs()
} }
@@ -93,7 +103,7 @@ const ExtractorPage: React.FC = () => {
/> />
)} )}
<LogPanel logs={logs} progress={progress} onClear={clearLogs} /> <LogPanel logs={logs} onClear={clearLogs} />
</div> </div>
</div> </div>
) )