From 8ce374818c76a477e03508a28acdddd374d33ac0 Mon Sep 17 00:00:00 2001 From: Schalli Date: Wed, 5 Aug 2026 09:37:26 +0200 Subject: [PATCH] feat(260805-d0r): membership-origin badge on chips (D-19/D-20) - Reuses admin.groups.members.sourceManual/.sourceLdap -- no new i18n key - Badge markup copied verbatim from GroupMembersModal.tsx (blue for LDAP, neutral gray otherwise), same visual language on both surfaces --- .../admin/users/components/UserAccessModal.tsx | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/apps/web/src/app/(portal)/admin/users/components/UserAccessModal.tsx b/apps/web/src/app/(portal)/admin/users/components/UserAccessModal.tsx index 1b2bc13..c3be598 100644 --- a/apps/web/src/app/(portal)/admin/users/components/UserAccessModal.tsx +++ b/apps/web/src/app/(portal)/admin/users/components/UserAccessModal.tsx @@ -48,6 +48,7 @@ interface UserAccessModalProps { export function UserAccessModal({ userId, username, onClose }: UserAccessModalProps) { const t = useTranslations('admin.users.grants'); const tCommon = useTranslations('common'); + const tMembers = useTranslations('admin.groups.members'); const [rows, setRows] = useState(null); const [groups, setGroups] = useState(null); @@ -162,6 +163,15 @@ export function UserAccessModal({ userId, username, onClose }: UserAccessModalPr className="flex items-center gap-2 rounded-md border border-border px-3 py-1.5 text-sm" > {group.name} + + {group.source === 'LDAP' ? tMembers('sourceLdap') : tMembers('sourceManual')} + ))}