
Upload provides the UI for selecting files, drag-and-drop upload areas, and file progress displays. It emits selected files through fileSelected, but the application is responsible for validation, uploading to a backend, retrying, deleting, and persisting uploaded file records.