Expand description
Files on their way somewhere, over the Dropzone that took them.
Nothing here uploads anything: this crate has no network, the same reason
ImageViewer fetches nothing and TransportBar plays nothing. Every state
on the list is a fact the host established, and every control reports.
§A refusal is not a failure
A file the host would not take — too large, the wrong kind, past a quota —
never started, so it did not fail. UploadState::Refused is its own
state, carrying the host’s reason and offering no retry, because trying
the same file against the same rule again cannot end differently. That is
Dropzone’s own distinction between refusing and idle, carried one step
further: the zone refuses a payload while it is over the zone, and this
list keeps the refusal afterwards where the file’s row is.
UploadState::Failed is the other thing entirely: it started, it did not
finish, the host’s reason says why, and a retry is offered.
§Overall progress is only claimed when it is known
The list adds up the per-file fractions, and stops if any file that is
uploading does not have one. A file uploading against a length nobody
declared has no fraction, so the total has no extent either, and the bar
goes indeterminate exactly as ProgressBar already does rather than
inventing a percentage out of a file count.
Structs§
- Upload
- One file on the list, identified by business identity.
- Upload
List - A list of files being uploaded, optionally over the zone that took them.
Enums§
- Overall
Progress - How much of the whole batch is done, if anybody knows.
- Upload
State - Where one file has got to.