serval-admin: serval-builds: add user name#3897
Conversation
This patch adds the user's name to the Requesting user card. A re-ordering of the card's items is planned for followup.
There was a problem hiding this comment.
Pull request overview
Adds the user’s “name” field to the “Requesting user” details card in Serval Administration’s Serval Builds view, by extending the requester identity lookup and rendering the new value in the expanded-row details UI.
Changes:
- Added a
requesterName()helper and extended the cached requester identity to includename. - Rendered “Name” in the “Requesting user” card and avoided a template variable name collision.
- Added a unit test verifying requester name is loaded from user data.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
src/SIL.XForge.Scripture/ClientApp/src/app/serval-administration/serval-builds.component.ts |
Extends requester identity lookup to include name and exposes requesterName() for the template. |
src/SIL.XForge.Scripture/ClientApp/src/app/serval-administration/serval-builds.component.html |
Displays requester “Name” in the expanded “Requesting user” card. |
src/SIL.XForge.Scripture/ClientApp/src/app/serval-administration/serval-builds.component.spec.ts |
Adds test coverage for loading requester name and updates test user fixtures accordingly. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| private requesterIdentity( | ||
| requesterSFUserId: string | undefined | ||
| ): Observable<{ displayName?: string; emailAddress?: string }> { | ||
| ): Observable<{ name?: string; displayName?: string; emailAddress?: string }> { | ||
| if (requesterSFUserId == null) { | ||
| return of({}); | ||
| } | ||
|
|
||
| const requesterKey: string = requesterSFUserId; | ||
| const cached$: Observable<{ displayName?: string; emailAddress?: string }> | undefined = | ||
| const cached$: Observable<{ name?: string; displayName?: string; emailAddress?: string }> | undefined = | ||
| this.requesterIdentityCache.get(requesterKey); |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #3897 +/- ##
=======================================
Coverage 80.96% 80.96%
=======================================
Files 632 632
Lines 40788 40790 +2
Branches 6590 6609 +19
=======================================
+ Hits 33025 33027 +2
+ Misses 6738 6725 -13
- Partials 1025 1038 +13 ☔ View full report in Codecov by Sentry. |
Nateowami
left a comment
There was a problem hiding this comment.
@Nateowami reviewed 3 files and all commit messages, and made 1 comment.
Reviewable status: all files reviewed, 1 unresolved discussion (waiting on marksvc).
This patch adds the user's name to the Requesting user card. A
re-ordering of the card's items is planned for followup.
Screenshot of Requesting user card:

This change is