Upload files directly in data object
Feature Request
🥅 Goal
As a shepard user I want a comfortable drag and drop file upload on data object page so that I can quickly upload files and directly create a reference in one workflow .
🏅 Acceptance Criteria
-
The "data" section on the data object page holds a drop zone where file(s) can be dropped directly with drag and drop
-
Second possibility is to click on the "Click to upload" link that opens the local browser file dialog where I can select the files for upload.
-
Doing so opens an upload dialogue.
- The files that were already selected (or via drag and drop) are already shown here
- further files can be added
- files can be removed from the list of files to be uploaded (x or trash bin)
-
The upload dialogue forces the user to select a file container
- the file name of the first file in the list is pre-filled as default
- Existing file containers can be selected with a auto-fill helper field where you can type name or id. Only containers that are also writable shall be shown in the selection.
- the default file container is pre-selected in the dialogue
- there is a slider that allows to create a new container in the dialogue
- clicking it forces you to input name and permission ("public" "public readable" "private") for the new container
- if the selected container (existing or new) is not yet the default file container for the parent collection, there is a checkbox to assign the container as default file container.
- if the selected container is the default file container, the same checkbox is displayed as checked, but greyed out
-
the dialogue forces the user to select a name for the reference.
- the filename of the first file in the list is pre-filled as a suggestions for the selection name
- There are some tooltips shown when hovering over "Reference Name" or the container input field (see design).
-
On confirmation of the dialogue, upload and creation of the reference starts. User is notified with green toasts in case of success of the complete operation.
- user is notified if container is successfully created
- in case one of the uploads fail, no reference is created and a red error toast is shown. files already successfully uploaded already remain in the container and the error toast links to the container.
- during the file upload we make the buttons unavailable and show some kind of user feedback progress animation
⭐ Special Testing hints
💣 Out of Scope
New container view will be extended with a dropdown for container type later.
Check how much effort it is to make the upload progress cancellable. It is nice to have and not mandatory.
💡 Hints
First design in figma: https://www.figma.com/design/ivBPq71AuUl2ohFnrzHIKF/Visual-Design?node-id=2309-17174&t=0hasFxVhFsasnIzZ-0