-
Notifications
You must be signed in to change notification settings - Fork 26
feat: implement presentation verification and request handling #1367
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
feat: implement presentation verification and request handling #1367
Conversation
- Updated credential server to include new endpoints for verifying IPEX presentations and fetching presentation requests. - Enhanced the request presentation modal to manage presentation requests and their statuses. - Introduced a new PresentationStatus component for better UI representation of request statuses. - Added polling mechanism for verifying presentation status in the UI. - Updated package dependencies and configuration files accordingly.
|
Is this PR still a draft? |
|
@sdisalvo-crd Apologies it's ready for me review, and it's not done yet - I told Duc I'd try to pick it up if I could today so we can get it deployed asap. Feel free to check out the UI elements if you'd like but it doesn't need a deep review - if I can get it done tonight I will deploy to demo for testing |
| ): Promise<void> { | ||
| const client: SignifyClient = req.app.get("signifyClient"); | ||
|
|
||
| const exchanges = await client.exchanges().list(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
exchanges().list() needs to be paginated if we aren't searching for a specific ID. Does the filter not work at all?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm, paginating doesn't work well with .list() because as more exns come in, the order seems to change, not sure why.
If I add a sort: ['-dt'] (which needs ts-ignore) I get a stable list but /ipex/apply does not seem to be indexed in the DB, maybe because we sent it and didn't receive it. Possibly a bug in KERIA.
I'm going to leave this for now and see if I can fix it later, or if we'll just add a "reset" button to get a fresh client for the verifier
...es/credential-server-ui/src/components/RequestPresentationModal/RequestPresentationModal.tsx
Outdated
Show resolved
Hide resolved
...es/credential-server-ui/src/components/RequestPresentationModal/RequestPresentationModal.tsx
Outdated
Show resolved
Hide resolved
…ing mechanism - Updated the credential API to correct the handling of `ipexApplySaid` and improve verification logic. - Removed the `usePresentationVerification` hook and replaced it with a new `usePresentationPolling` hook for better management of presentation request statuses. - Enhanced the RequestPresentationModal to utilize the new polling mechanism and simplified state management. - Updated the connections slice to include new properties for presentation requests. - Cleaned up unused code and improved overall structure for better maintainability.
services/credential-server-ui/src/hooks/usePresentationPolling.ts
Outdated
Show resolved
Hide resolved
| ); | ||
|
|
||
| dispatch( | ||
| savePresentationRequest({ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why did we change to fetching all again?
Description
Please include a summary of the changes and a brief description about this PR.
Checklist before requesting a review
Issue ticket number and link
Testing & Validation
Design Review
Screen.Recording.2025-10-01.at.17.25.15.mov