IQSS / IQSS/dataverse-frontend
Feature Request/431 file upload page missing features
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 31
- Forks
- 26
- Avg merge
- 4d 13h
- Merged PRs (30d)
- 4
Description
Overview of the Feature Request
This issue summarizes the remaining work needed to have a fully featured file upload functionality in the new SPA UI.
Follow-up to the PR #418:
- #481
- use the new SelectMultiple component for tag selection
- implement handling of the duplicate files having either an identical content or label+name
- extend the interface of the add uploaded files call in the js-dataverse library to accept more parameters, like tags, description, etc., and make it support adding multiple files at once, i.s.o. adding files one-by-one (addUploadedFilesToDataset call), see also https://guides.dataverse.org/en/latest/developers/s3-direct-upload-api.html#direct-add-to-dataset-api. When ready, the implementation of
FileJSDataverseRepository.tsaddUploadedFilemethod can be refactored to no longer mock a file, that is not needed here, but to use a proper interface with description, restricted boolean, tags, etc. - implement turning off tagging option for the file upload use case in DV-JS client
- implement new use case needed for installations not supporting S3 tagging, but also useful for other installations: cleanup storage of a dataset
- refactor scss of src/sections/upload-dataset-files/FileUploader.module.scss to no longer contain the
!importantaddition. - improve state handling where it can be simplified in some way
- add real e2e test at least for this cases:
- Upload a single file
- Upload multiple files
- Upload multiple files and cancel one.
- And after each test navigate to the Dataset that the files were uploaded and check they exists in the Files Table
- display: contents causes an element's children to appear as if they were direct children of the element's parent, ignoring the element itself. This can be useful when a wrapper element should be ignored when using CSS grid or similar layout techniques. It's a bit fragile css hack and we should use a table here perhaps and not a Card to render the list of uploaded files.
- document differences with the JSF file upload
- implement dvwebloader using file upload page #468
What kind of user is the feature intended for?
(Example users roles: API User, Curator, Depositor, Guest, Superuser, Sysadmin)
Depositor
What inspired the request?
Uploading files feature.
What existing behavior do you want changed?
Any brand-new behavior do you want to add to Dataverse?
Uploading files feature.
Any open or closed issues related to this feature request?
#417
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the upload page and the remaining checklist items, especially FileJSDataverseRepository.ts, the DV-JS client, and the FileUploader.module.scss reference. Review the linked upload API documentation and issue #468 before choosing a remaining item. Done means the unchecked upload features are implemented and covered by the relevant upload-page tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- scss, typescript
- Domain
- frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100