ADORSYS-GIS / ADORSYS-GIS/cloud-wallet-ui

Implement User Consent Screen

Aperta
#89 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
TypeScript
Stelle
0
Fork
0
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

### Description
Create the final consent screen before presentation submission. This screen provides a summary of what will be shared and requires explicit user confirmation.

The screen must clearly communicate the implications of sharing credentials and handle final submission preparation.

### Tasks
- [ ] Create `PresentationConsentPage` component
- [ ] Display verifier information (name, logo, client_id)
- [ ] Display credential summary (count, types)
- [ ] Display disclosure summary (total claims, selective disclosures)
- [ ] Show final claim list with credential grouping
- [ ] Display security warning about data sharing
- [ ] Implement explicit Confirm action with checkbox:
- "I consent to sharing the selected information with [Verifier Name]"
- [ ] Implement Cancel action to abort flow
- [ ] Add loading state during submission preparation
- [ ] Handle user authentication for key binding (PIN/biometric prompt)
- [ ] Display submission progress
- [ ] Prevent duplicate submissions (disable button after click)

### Consent Summary Display
```
You are about to share:
┌─────────────────────────────────────┐
│ Verifier: Example Service │
│ │
│ Credentials: 2 │
│ - PID (SD-JWT) │
│ - Membership Card (JWT VC JSON) │
│ │
│ Claims to share: 5 of 12 available │
│ - Given Name ✓ │
│ - Family Name ✓ │
│ - Date of Birth ✓ │
│ - Membership ID ✓ │
│ - Membership Level ✓ │
└─────────────────────────────────────┘

☐ I consent to sharing this information with Example Service

[Confirm] [Cancel]
```

### Key Binding Authentication
- [ ] Prompt for PIN/biometric if key binding JWT required
- [ ] Handle authentication failure gracefully
- [ ] Pass authentication result to submission

### Acceptance Criteria
- User explicitly confirms data sharing via checkbox
- User can cancel before submission
- Loading indicator displayed during submission preparation
- Duplicate submissions are prevented (button disabled after first click)
- User authentication collected for key binding when required
- Summary accurately reflects selected credentials and claims
- Clear warning about data sharing implications

### Backend Dependencies
- None (UI only, calls Ticket 8's submission)

### Related Tickets
- Ticket 6 (Claim Review) - Previous step
- Ticket 8 (Submission) - Handles actual API call

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.