From 5248f137a53e981e6c6207c212688fbd08e2cdc9 Mon Sep 17 00:00:00 2001 From: Stephen Smith Date: Mon, 9 May 2022 23:39:57 -0400 Subject: [PATCH] 19049: Clean up participant select display, show UUIDs Arvados-DCO-1.1-Signed-off-by: Stephen Smith --- src/models/user.ts | 10 +++++++--- src/store/virtual-machines/virtual-machines-actions.ts | 2 +- .../sharing-dialog/participant-select.tsx | 4 ++-- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/models/user.ts b/src/models/user.ts index 2857bce6..9b3d97d8 100644 --- a/src/models/user.ts +++ b/src/models/user.ts @@ -32,12 +32,16 @@ export const getUserFullname = (user: User) => { : ""; }; -export const getUserDisplayName = (user: User, withEmail = false) => { +export const getUserDisplayName = (user: User, withEmail = false, withUuid = false) => { const displayName = getUserFullname(user) || user.email || user.username || user.uuid; + let parts: string[] = [displayName]; if (withEmail && user.email && displayName !== user.email) { - return `${displayName} <<${user.email}>>`; + parts.push(`<${user.email}>`); } - return displayName; + if (withUuid) { + parts.push(`(${user.uuid})`); + } + return parts.join(' '); }; export interface UserResource extends Resource, User { diff --git a/src/store/virtual-machines/virtual-machines-actions.ts b/src/store/virtual-machines/virtual-machines-actions.ts index 7034b4a5..35cf8d53 100644 --- a/src/store/virtual-machines/virtual-machines-actions.ts +++ b/src/store/virtual-machines/virtual-machines-actions.ts @@ -125,7 +125,7 @@ export const openEditVirtualMachineLoginDialog = (permissionUuid: string) => const user = await services.userService.get(login.tailUuid); dispatch(initialize(VIRTUAL_MACHINE_ADD_LOGIN_FORM, { [VIRTUAL_MACHINE_UPDATE_LOGIN_UUID_FIELD]: permissionUuid, - [VIRTUAL_MACHINE_ADD_LOGIN_USER_FIELD]: {name: getUserDisplayName(user, true), uuid: login.tailUuid}, + [VIRTUAL_MACHINE_ADD_LOGIN_USER_FIELD]: {name: getUserDisplayName(user, true, true), uuid: login.tailUuid}, [VIRTUAL_MACHINE_ADD_LOGIN_GROUPS_FIELD]: login.properties.groups, })); dispatch(dialogActions.OPEN_DIALOG( {id: VIRTUAL_MACHINE_ADD_LOGIN_DIALOG, data: {updating: true}} )); diff --git a/src/views-components/sharing-dialog/participant-select.tsx b/src/views-components/sharing-dialog/participant-select.tsx index 402faa7f..c7b540cd 100644 --- a/src/views-components/sharing-dialog/participant-select.tsx +++ b/src/views-components/sharing-dialog/participant-select.tsx @@ -43,9 +43,9 @@ interface ParticipantSelectState { const getDisplayName = (item: GroupResource | UserResource) => { switch (item.kind) { case ResourceKind.USER: - return getUserDisplayName(item, true); + return getUserDisplayName(item, true, true); case ResourceKind.GROUP: - return item.name; + return item.name + `(${`(${(item as Resource).uuid})`})`; default: return (item as Resource).uuid; } -- 2.30.2