many fixes
This commit is contained in:
@@ -330,7 +330,7 @@ export function TaskDetail({ id }: { id: number }) {
|
||||
|
||||
<div className="panel">
|
||||
<span className="panel-label">Run control</span>
|
||||
<div className="stat-row">
|
||||
<div className="stat-row" aria-live="polite">
|
||||
<div className="stat ok">
|
||||
<span className="val mono-num">{totals.copied}</span>
|
||||
<span className="lbl">copied</span>
|
||||
@@ -348,7 +348,7 @@ export function TaskDetail({ id }: { id: number }) {
|
||||
<span className="lbl">accounts</span>
|
||||
</div>
|
||||
</div>
|
||||
{error && <div className="error-banner">{error}</div>}
|
||||
{error && <div className="error-banner" role="alert">{error}</div>}
|
||||
<div className="btn-row" style={{ marginTop: 16 }}>
|
||||
<button className="btn" onClick={onTest} disabled={busy !== null || accounts.length === 0}>
|
||||
{busy === 'test' ? 'Testing…' : 'Test connections'}
|
||||
@@ -415,10 +415,10 @@ export function TaskDetail({ id }: { id: number }) {
|
||||
|
||||
<div className="divider-label">or bulk import</div>
|
||||
<div className="upload-row">
|
||||
<button className="btn file-btn" disabled={busy !== null}>
|
||||
<label className={`btn file-btn${busy !== null ? ' is-disabled' : ''}`}>
|
||||
{busy === 'import' ? 'Importing…' : 'Upload CSV'}
|
||||
<input ref={fileInputRef} type="file" accept=".csv,text/csv" onChange={onFileChosen} disabled={busy !== null} />
|
||||
</button>
|
||||
</label>
|
||||
<button type="button" className="link-btn" onClick={downloadExampleCSV}>
|
||||
download example.csv
|
||||
</button>
|
||||
@@ -432,7 +432,7 @@ export function TaskDetail({ id }: { id: number }) {
|
||||
clear log
|
||||
</button>
|
||||
)}
|
||||
<div className="log-pane">
|
||||
<div className="log-pane" role="log" aria-live="polite" aria-relevant="additions" aria-label="Event log">
|
||||
{log.length === 0 ? (
|
||||
<div className="log-empty">awaiting events over websocket…</div>
|
||||
) : (
|
||||
@@ -501,8 +501,15 @@ export function TaskDetail({ id }: { id: number }) {
|
||||
const scanning = lv.scanned != null && lv.scanTotal != null && lv.scanned < lv.scanTotal
|
||||
return (
|
||||
<div className="acct-progress">
|
||||
<div className="pbar">
|
||||
<span className="pbar-fill" style={{ width: `${pct}%` }} />
|
||||
<div
|
||||
className="pbar"
|
||||
role="progressbar"
|
||||
aria-valuenow={pct}
|
||||
aria-valuemin={0}
|
||||
aria-valuemax={100}
|
||||
aria-label={`Copy progress${lv.folder ? `: ${lv.folder}` : ''}`}
|
||||
>
|
||||
<span className="pbar-fill" style={{ transform: `scaleX(${pct / 100})` }} />
|
||||
</div>
|
||||
<span className="pmeta mono-num">
|
||||
{done}/{lv.total} ({pct}%) · {lv.speed >= 1 ? Math.round(lv.speed) : lv.speed.toFixed(1)}/s · ETA {fmtDuration(eta)}
|
||||
|
||||
Reference in New Issue
Block a user