feat(frontend): add remove button to pending and submitted file cards

Lets users drop an uploaded file from the UI list before or after
conversion, without cancelling anything server-side.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-31 16:47:18 +02:00
co-authored by Claude Sonnet 5
parent 987af80286
commit a7a91a7a2e
6 changed files with 60 additions and 4 deletions
+10 -1
View File
@@ -1,3 +1,4 @@
import { X } from '@phosphor-icons/react';
import { formatBytes } from '../utils/formatBytes.js';
import { fileTypeMeta } from '../utils/fileFamily.js';
@@ -32,7 +33,7 @@ function RangeField({ label, value, min, max, onChange }) {
);
}
export function FileConfigCard({ item, index, t, onTargetFormatChange, onQualityChange, onIconSizeChange }) {
export function FileConfigCard({ item, index, t, onTargetFormatChange, onQualityChange, onIconSizeChange, onRemove }) {
const { Icon, colorVar } = fileTypeMeta(extensionOf(item.file.name));
return (
@@ -43,6 +44,14 @@ export function FileConfigCard({ item, index, t, onTargetFormatChange, onQuality
</span>
<span className="file-tile-name">{item.file.name}</span>
<span className="file-tile-size">{formatBytes(item.file.size)}</span>
<button
type="button"
className="file-remove-button"
onClick={() => onRemove(index)}
aria-label={t('common.remove')}
>
<X size={16} weight="bold" />
</button>
</div>
{item.targets.length > 0 ? (