icgc-argo / dac-ui Goto Github PK
View Code? Open in Web Editor NEWDevelopment of the ICGC ARGO Data Access Control UI
Home Page: https://daco.icgc-argo.org/
License: GNU Affero General Public License v3.0
Development of the ICGC ARGO Data Access Control UI
Home Page: https://daco.icgc-argo.org/
License: GNU Affero General Public License v3.0
Goal: To build Section F: IT Agreement section with the agreement validation.
Zeplin: https://zpl.io/bL99vpm
To build the modal that is triggered when admin clicks the Request Revisions button from #55
Note, the revisions requested email that gets triggered will be built in this epic: https://github.com/icgc-argo/dac-ui/issues/65)
When the application loads for the DACO Admin role, they have an extra actions bar with three buttons
Zeplin: https://zpl.io/2jq8Z96
Goal: To build Section A: Applicant Info section with working local validation.
Zeplin links:
Form: https://zpl.io/bz3mDAX
Form with errors: https://zpl.io/254W3G3
You can see a lot of these form elements and validation happening on this ARGO form: https://platform-ui.qa.argo.cancercollaboratory.org/submission/program/create
Local Validation
Goal: To build Section E: Ethics: form, validation, empty ethics letter table+full table views + file upload
Zeplin links:
Applicant chooses option 1: https://zpl.io/29mmLkB
Applicant chooses option 2, with empty table: https://zpl.io/VYqqeye
Error state when not uploading a file: https://zpl.io/ad33gDE
Uploaded files table: https://zpl.io/bPEEe5m
Applicant chooses option 2:
This is similar to what was done in Section C, but with a file upload instead of a modal form.
Local Validations
This epic covers the UI for the following features:
Set up the toast infrastructure that can capture the success/failure states and holding it while updating the page.
UI ticket that follows: #414
@rosibaj commented on Fri Apr 23 2021
DACO Admin Dashboard
URL: daco.icgc-argo.org/applications/
Scope: DACO-REVIEW.WRITE // can see all applications and update them
Application Page
URL: daco.icgc-argo.org/applications/{APP-ID}
The menu states can be found in this zeplin: https://zpl.io/bW8zNzk
Goal: Add the DACO Admin actions bar to the top of the application page, and load the application in DACO REVIEW state with all sections locked.
NOTE: Ignore the Customize Expiry date field for now. To be built after MVP
Goal: To set up the card for a started application, and have multiple states ready with the correct static data.
Have the following application cards set up with dummy data:
Draft
, Sign&Submit
, DACO Review
, Approved
, Revisions Needed
, Rejected
, Closed
(before approval), Closed
(after approval).
Global card elements
Institution: to be specified
Custom Elements
Approved
card has an Expiry date on the top right. Zeplin: https://zpl.io/2ZMEE7JGoal: Using the endpoint from: icgc-argo/dac-api#1
Hook up the data in this table: #8
Here is the specific endpoint that we have for this available data: https://dac.qa.argo.cancercollaboratory.org/api/api-docs/#/Application/get_applications_
Goal: To build Section B: Institutional Representative section with working local validation.
Zeplin links:
Form: https://zpl.io/VYqO9yM
Form with errors: I didn't mock this one up but please use same errors from #17
You can see a lot of these form elements and validation happening on this ARGO form: https://platform-ui.qa.argo.cancercollaboratory.org/submission/program/create
Local Validation
Note: the functionality for the "address same as applicant" will come later when application can be saved
For each application state make sure the progress bar is reflected correctly on the application itself and dashboard card
GET endpoint
Each of these states are covered
Small access card
(note: for revisions requested the mockup says "revisions needed". You can keep it as revisions requested
. So the above labels are what should be shown in the progress bar UI)
This epic covers the following features:
Goal: To build Section C: Add/Edit a collaborator modal with working local validation.
Zeplin links:
Blank Modal: https://zpl.io/VDggJG3
Form with errors: https://zpl.io/V4NNpZ4
Valid form: https://zpl.io/bARRJwp
Note: Justin has made a lot of these fields and validations work in section A and B, please reuse what you can.
Authorized Personnel
then show Position Title
field as the last field. If the applicant chooses Authorized Student
then show Pursuing Degree
field as the last field. This defaults to showing Position Title
field.Local Validation See errors in https://zpl.io/V4NNpZ4
Correctly filled out form: https://zpl.io/bARRJwp
- [ ] 9. Once the form has valid entries, the "Add Collaborator" button is enabled. Note: moved to follow-up ticket
Goal: Make the export table
button work.
Discussed in meeting on Oct 12 with Rosi and Ann - this is probably not necessary anymore. We can revisit other ways to communicate metrics with DACO in the future
Goal: Hookup the sign and submit section
finalized
pdf button mid test should download the finalized PDF (same as button at top)delete
trashcan button on the pdf tableGoal: To build Section C: Collaborators: empty table+full table views.
Zeplin links:
Empty View: https://zpl.io/bARRyKP
With Collaborators: https://zpl.io/a7PP8DM
With collaborators. This is very similar to ARGO Program > Manage Program > Users section table. Please refer to this for implementation.
To hookup the primary affiliation validations that span sections A, B, and C.
If Section A primary affiliation is filled out, for section B and any collaborator added in section C - those primary affiliation values must match exactly. If they don't then show the error (listing the Primary Affiliation of section A within the error text)
If Section A primary affiliation is not filled out, and the applicant fills out the primary affiliation in section B, don't show any error. Then if they go back to section A and fill out a different primary affiliation, show the error in the section B primary affiliation field (listing the Primary Affiliation of section A within the error text).
If section A primary affiliation is not filled out, and the applicant adds a collaborator in section C, they can add that collaborator for any primary affiliation they fill out. If the applicant then fills out a different primary affiliation in section A than what was added for that collaborator, show the error in section C that primary affiliations much match.
**So section table would look like this (rows of table with errors are shaded red) **: Zeplin: https://zpl.io/amLBY43
When user clicks the edit pencil for that collaborator, the edit modal would look like:
To be able to add, edit and remove Collaborators to the application, with the correct table of content states shown
icgc-argo/dac-api#9
PATCH for Edit: https://dac.qa.argo.cancercollaboratory.org/api/api-docs/#/Application/patch_applications__id__collaborators__collaboratorId_
Show the remove collaborator confirmation modal Zeplin: https://zpl.io/agmGZXQ
when the applicant clicks "Remove collaborator", close the modal, remove the collaborator from the application and from the collaborator table. (success toast will be done in this ticket: #27)
Loading/refresh bugs
Goal: To build Section G: Data Access Agreement section with the agreement validation.
Zeplin: https://zpl.io/2EQQ5vx
Goal: To set up the basic structure of the application page
Zeplin: https://zpl.io/2y3AnAy
Goal: To set up the applicant dashboard and basic cards. You will need the following designs:
To build the UI for the pdf with a version that adds a watermark "DRAFT" on top
DRAFT
stateTo complete the admin approval flow and transition the application to the correct state.
Note, the approval email that gets triggered will be built in the email epic here: https://github.com/icgc-argo/dac-ui/issues/68
(All emails to be built and triggered in this epic: https://github.com/icgc-argo/dac-ui/issues/65)
APPROVED
statewill be hooked up in this ticket #58
Goal: The layout and style for the homepage: zeplin: https://zpl.io/aMoJPZR
ARGO logo
and ICGC ARGO
text link to https://platform.icgc-argo.org/ (open in a new window) and the ICGC logo
and ICGC 25K Data Portal
links to https://dcc.icgc.org/ (open in a new window). The PCAWG
text links to https://dcc.icgc.org/pcawg (open in a new window)faqs
link TBD)eligible project team
link TBD)Note: the banner image is still being decided on. Let me know if you need a placeholder image
This ticket also includes the Ethics section for after the application is approved.
Goal: To set up the DACO Admin Dashboard and build the applications table.
zeplin: https://zpl.io/2v3JkR5
Have a look at the ARGO component library, there are a lot of tables that have already been built.
All behaviours outlined on the wiki are working, which include:
Note: saving and editing for collaborators is broken out into this ticket; #52
And ethics in this ticket; #58
As explained here: https://wiki.oicr.on.ca/display/icgcargotech/DACO+Technical+Specifications
we are going to change the label of the download button depending on the state of the application.
This epic covers the following features:
Goal: To set up the basic structure of the application page
Zeplin: https://zpl.io/2y3AnAy
To have the following elements on the page
close application
and download pdf
for now)(table of contents will be built in this ticket #15)
This epic covers the following features:
DRAFT
state, and a watermark will display over each page of the pdf. Download button label: Draft PDF
SIGN AND SUBMIT
state, a finalized pdf can be downloaded with the correct data and no watermark. Download button label: Finalized PDF
Signed PDF
See more information about Application Form Download PDF button on the wiki specs: https://wiki.oicr.on.ca/display/icgcargotech/DACO+Technical+Specifications
Goal: To build Section H: Appendices section with the agreement validation.
Zeplin: https://zpl.io/aR444oN
For the user who has never logged in before, there's an informative modal to help them ensure they login with the correct google address.
Zeplin: https://zpl.io/aR4J13K
This epic covers the following features:
DRAFT
state of an application will be correctly reported as well as all application header data.SIGN AND SUBMIT
state will be reported correctly and the user will be able to access the last form section.DACO REVIEW
state (pdf storing happens in this epic: #57)To have the applicant click the "Create an Application" button and link to a blank draft application form with a unique id.
https://dac.qa.argo.cancercollaboratory.org/api/api-docs/#/Application/post_applications_
Most of the links will need to wait until when the content is on icgc-argo.org and docs.icgc-argo.org
Goal: To build the final "Sign & Submit" section, file upload, validation
Zeplin links:
No file uploaded: https://zpl.io/bL999dM
File uploaded: https://zpl.io/2GjjjAE
NOTE: THE INSTRUCTIONS SHOULD BE 1, 2, 3 NOT 1, 2, 4. oops
Finalized pdf
button - will eventually download the finalized application to signLocal Validations
Applicant uploads a file:
https://zpl.io/2GjjjAE
Goal: To build the introduction section with the agreement validation.
Zeplin: https://zpl.io/2y3AnAy
@rosibaj commented on Fri Apr 23 2021
To complete the request revisions flow and transition the application to the correct state.
Note, the request revisions email that gets triggered will be built in the email epic: https://github.com/icgc-argo/dac-ui/issues/65)
This was built here: #63
REVISIONS REQUESTED
stateGoal: To set up the application progress bar component in storybook.
There's a similar component for ARGO to utilize: https://argo-ui-storybook.netlify.app/?path=/story/uikit-progress--progress-bar
These will be added to the dashboard card and the application page titlebar.
Have the following progress bars set up for the following application states
UI zeplin links can be found: #64
Goal: To build the table of contents component for the application.
Something similar has been done in the platform, so have a look at this:
Note about icons: There's an icon library in storybook you can utilize throughout this Epic. I'm not sure if this is being kept up to date? https://argo-ui-storybook.netlify.app/?path=/story/uikit-icon--all-icons
Zeplin: https://zpl.io/2y3AnAy
@caravinci - here's the added notes about these icons and states:
An application loads from the dashboard links or admin dashboard table in the correct state with the correct header metadata.
Progress bar data hookup is covered here: #50
Goal: To build Section D: Project Info section with working local validation.
Zeplin links:
Blank form: https://zpl.io/br3q8Z1
Form with errors1: https://zpl.io/V0ooDew
Form with errors2: https://zpl.io/aR448MK
Completed form with an extra publication: https://zpl.io/br336o5
You can see a lot of these form elements and validation happening on this ARGO form: https://platform-ui.qa.argo.cancercollaboratory.org/submission/program/create
Manage Program
in the sidebar, then click Add users
. The add users modal accepts more than one user at a time.Local Validation
In this mockup: https://zpl.io/V0ooDew you will see
And seen in this mockup: https://zpl.io/aR448MK
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.