diff --git a/apps/meteor/client/components/UserInfo/UserInfo.stories.tsx b/apps/meteor/client/components/UserInfo/UserInfo.stories.tsx index 815b11a00089b..81e32c7f6cd31 100644 --- a/apps/meteor/client/components/UserInfo/UserInfo.stories.tsx +++ b/apps/meteor/client/components/UserInfo/UserInfo.stories.tsx @@ -42,6 +42,14 @@ WithVoiceCallExtension.args = { export const WithABACAttributes = Template.bind({}); WithABACAttributes.args = { - // @ts-expect-error - abacAttributes is not yet implemented in Users properties - abacAttributes: ['Classified', 'Top Secret', 'Confidential'], + abacAttributes: [ + { + key: 'Classified', + values: ['Top Secret', 'Confidential'], + }, + { + key: 'Security_Clearance', + values: ['Top Secret', 'Confidential'], + }, + ], }; diff --git a/apps/meteor/client/components/UserInfo/UserInfo.tsx b/apps/meteor/client/components/UserInfo/UserInfo.tsx index 1974ecaaf38b6..28a82c3835da1 100644 --- a/apps/meteor/client/components/UserInfo/UserInfo.tsx +++ b/apps/meteor/client/components/UserInfo/UserInfo.tsx @@ -192,7 +192,7 @@ const UserInfo = ({ {abacAttributes && abacAttributes.length > 0 && ( {t('ABAC_Attributes')} - attribute.key)} /> + )} {userCustomFields?.map( diff --git a/apps/meteor/client/components/UserInfo/UserInfoABACAttributes.tsx b/apps/meteor/client/components/UserInfo/UserInfoABACAttributes.tsx index b9cf2870d3d64..952e7a9afc693 100644 --- a/apps/meteor/client/components/UserInfo/UserInfoABACAttributes.tsx +++ b/apps/meteor/client/components/UserInfo/UserInfoABACAttributes.tsx @@ -1,20 +1,23 @@ +import type { IAbacAttributeDefinition } from '@rocket.chat/core-typings'; import { Box, Margins } from '@rocket.chat/fuselage'; import UserInfoABACAttribute from './UserInfoABACAttribute'; type UserInfoABACAttributesProps = { - abacAttributes: string[]; + abacAttributes: IAbacAttributeDefinition[]; }; const UserInfoABACAttributes = ({ abacAttributes }: UserInfoABACAttributesProps) => { return ( - {abacAttributes.map((attribute, index) => ( - - - - ))} + {abacAttributes.map((attribute, index) => + attribute.values.map((value) => ( + + + + )), + )} ); diff --git a/apps/meteor/client/components/UserInfo/__snapshots__/UserInfo.spec.tsx.snap b/apps/meteor/client/components/UserInfo/__snapshots__/UserInfo.spec.tsx.snap index b1f97ca39716c..9fbd5f41c59eb 100644 --- a/apps/meteor/client/components/UserInfo/__snapshots__/UserInfo.spec.tsx.snap +++ b/apps/meteor/client/components/UserInfo/__snapshots__/UserInfo.spec.tsx.snap @@ -509,21 +509,36 @@ exports[`renders WithABACAttributes without crashing 1`] = ` > + > + Top Secret + + + + + Confidential + + > + Top Secret + + > + Confidential +