Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ORD-5.5.1] Templates page #262

Open
yauhen-karmyzau opened this issue Feb 6, 2025 · 0 comments
Open

[ORD-5.5.1] Templates page #262

yauhen-karmyzau opened this issue Feb 6, 2025 · 0 comments
Assignees
Labels
Front-end Ticket for front-end development.

Comments

@yauhen-karmyzau
Copy link

yauhen-karmyzau commented Feb 6, 2025

User Story # ORD-5.5

2. Revision History

Version Date Description
V1.0 31.01.2025 Separated this part from ORD-5.5 Template saving function.

3. User Story

AS A user,
I WANT to be able to access and manage my templates on one page,
SO THAT I can prepare, modify, delete, add, and use templates for creating new reactions and performing "Enumerate" function.

4. Acceptance Criteria (*TO BE FINALIZED)

User Role AC# GIVEN WHEN THEN
User 1 User is on Contribute landing page and wants to open the template User navigates to the "Templates" section at the left side of the Contribute page and clicks on it (Pic. 1) The system opens "Templates" page where the list is available with the following details: Template Name, Amount and Names of setup Variables, Last Modified Date, Remove button, Download JSON, Download Variables in CSV, as well as Reaction template preview (same as in ORD-5.1.1.1) (Pic. 2). The templates are sorted based on the most recent "last modified" date.
User 2 User is on "Templates" section and wants to open the specific template User clicks on this template's name The system opens this template page with all details available for view and preparation (AC#2).
User 3 User is on "Templates" section has several templates that do not fit into view page User navigates to the pagination at the bottom of the section and clicks on it The system opens the new pages with other available templates that are not shown on the current page
User 4 User is on "Templates" page and wants to Delete it User navigates to the Remove button and clicks on it The confirmation modal opens where user needs to confirm the deletion by clicking "Ok" for yes or "Cancel" for no.
User 5 User is on "Templates" page and wants to Download it in JSON format User navigates to the "Download Template in JSON" button and clicks on it The system initiates the download. Upon the completion of the download it ensures the template is complete and uncorrupted.
User 6 User is on "Templates" page and wants to see the Templates size (number of templates) The user navigates to the "Templates" main heading on the page. The system always shows the number near Templates heading that indicates the total quantity of templates (number is not live updated).
User 7 User is on "Templates" section and wants to search the specific template User navigates to the search field and enters name The system searches the template, provides suggestions, and allows user to choose and open the template page with all details available for view and preparation.
User 8 User is on "Templates" page and wants to upload the template in the system (Upload function is similar to ORD-6.1.1 Reaction Import). User clicks on "New Template" (Upload JSON file) button The system opens a new modal with Attach file field (with a written alert of max upload size 15 MB and small informative text under it to mention the allowed file format (.json)).
User 9 A new modal with Attach file field is open The user clicks on that field The system opens the user's local download folder with the ability to navigate to other folders to choose the file to attach. The system allows attachment of .json file type of max 15 MB size
User 10 User selected the file to import The file's size is up to 15 MB and of the allowed format The system uploads the file and displays the successfully uploaded file name. The user then clicks on "Import Template" or "Cancel" to save or not the action and to close the modal to be redirected back to the "Templates" page.
User 11 User selected the file to import The file's size is more than 15 MB or some error during the uploading process occurs The system shows a notification informing the user about that.
User 12 User imported the file and was redirected to that specific Template page The user navigates back to the overall "Templates" page and observes the templates list The system updates the templates list view with this new template and when this template is opened it is shown in the same format as other templates (AC#2).
User 13 User is on Contribute landing page User clicks on "Templates", but there are no templates available yet The system displays the empty state in Templates with text "There are no templates yet" (Pic. 3).
User 14 User is on "Templates" page User navigates to the Last Modified information The system shows the date and time of the last modification made to the template (all actions setting, removing the variables, for example, if user used download csv or json functions these are not considered as actions that change the template). Last modification date and time should be shown in the format according to the user's time zone.

Image
Pic. 1

Image
Pic. 2

5. User Interaction and Design

UI Elements Description (*TO BE FINALIZED)

Name Type Description
Templates Section Section Section in the Contribute page listing all the user's templates
Remove Button Button Button to delete a specific template
Pagination Navigation Controls at the bottom of the My Templates section to navigate through different template pages
Confirmation Modal Modal Popup modal to confirm the deletion of a template with Delete and Cancel buttons
Ok Button Button Button to confirm the deletion action.
Cancel Button Button Button to cancel the ongoing action and close the modal or sidebar.
Upload Button Button Button to initiate uploading a new template file
Attach File Field File Input Input field to attach the .json file
Import Template Button Button Button to confirm the importing of a template file
Notification Message Notification An alert or notification to inform the user about issues like file size exceedance or upload errors
Templates Count Display Text Numerical display next to the My Templates heading showing the total number of templates, which is not live updated.
Templates List View List View Display of templates in the Templates section
Search Field Input Field Field where the user can input a template name to search
Download Template in JSON Button Button Button that allows the user to download the template in JSON format.
Empty Templates Display Notification Message displayed when no templates are available to show stating "There are no templates yet".

6. Non-functional requirements

  • Scalability (NFR-4): The system should be planned for potential increases in user load up to 50 concurrent users without performance degradation.
  • Disaster Recovery (NFR-3): The system should have automated backups for the templates information.

7. Assumptions

  • Users have a basic understanding of chemical components and the data involved, as well as the general use case of template - enumeration process.

8. Dependencies

  • Specific Template Page ORD-5.5
  • Contribute page ORD-3.1

9. Out of Scope

# Description User Story
1 Reaction sections save as separate Templates ORD-8 (Full scope)
2 Enumerate button and all Enumerate function ORD-9.5
3 Variables section at the top of the page, download CSV covered in Prepare for Enumeration ORD-9.3

10. Questions

# Question Address to Whom Answer
1 Upload size limit 15 MB? Dev team and User Confirmed with dev team
2 Case to confirm: Templates will be used for 2 purposes - reaction creation and enumeration. Users can save and download templates as JSON files. These templates are user-specific and do not undergo validation. Sharing the template will be possible through download and then upload of the JSON file. Create and Download csv file (all the variables names) to fill the data - enumeration.? User Validation is not expected. Check about json with Steven. Overall flow is ok for MVP
3 Discuss Matching page (Pic. 29 - Discovery phase) use cases and importance Dev team and User Matching helps to perform additional check before enumeration provides user with more work with app interface during enumeration, which is good. Templates fields could be switched to the left side. Generally, matching is adding value and can be very helpful.
4 29.01.2025 Confirm that for enumeration template creation only valid reaction will be used User It's OK to have an invalid reaction as the template if the fields that will be templated will then be made valid. Instead of enforcing a "valid reaction" rule, a warning can be displayed when creating a template from an invalid reaction, allowing the user to decide whether to proceed.
5 29.01.2025 Confirm what use case is expected to be more often for Download button: Download template in json format or Download csv of Variables columns? This button to be put on the main Templates page. User Add both.
@yauhen-karmyzau yauhen-karmyzau added this to the Reaction templates milestone Feb 6, 2025
@yauhen-karmyzau yauhen-karmyzau added the Front-end Ticket for front-end development. label Feb 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Front-end Ticket for front-end development.
Projects
None yet
Development

No branches or pull requests

2 participants