From 1556f9f4902df71fb07c6f730bc0fe7f91e7e10f Mon Sep 17 00:00:00 2001 From: NAME-ASHWANIYADAV <22ashwaniyadav@gmail.com> Date: Thu, 29 Jan 2026 18:20:03 +0000 Subject: [PATCH 1/4] fix: add missing abacAttributes to useRoomIcon Pick type --- apps/meteor/client/hooks/useRoomIcon.spec.tsx | 24 +++++++------------ apps/meteor/client/hooks/useRoomIcon.tsx | 3 +-- 2 files changed, 9 insertions(+), 18 deletions(-) diff --git a/apps/meteor/client/hooks/useRoomIcon.spec.tsx b/apps/meteor/client/hooks/useRoomIcon.spec.tsx index 785ded7d19215..2bedd0766feef 100644 --- a/apps/meteor/client/hooks/useRoomIcon.spec.tsx +++ b/apps/meteor/client/hooks/useRoomIcon.spec.tsx @@ -6,59 +6,51 @@ const mockRooms = { t: 'c', name: 'public', teamMain: false, - // @ts-expect-error TODO: Implement ABAC attributes in rooms - abacAttributes: false, + abacAttributes: undefined, }), private: createFakeRoom({ t: 'p', name: 'private', teamMain: false, - // @ts-expect-error TODO: Implement ABAC attributes in rooms - abacAttributes: false, + abacAttributes: undefined, }), team: createFakeRoom({ t: 'c', name: 'team', teamMain: true, - // @ts-expect-error TODO: Implement ABAC attributes in rooms - abacAttributes: false, + abacAttributes: undefined, }), direct: createFakeRoom({ t: 'd', name: 'direct', teamMain: false, - // @ts-expect-error TODO: Implement ABAC attributes in rooms - abacAttributes: false, + abacAttributes: undefined, }), directMultiple: createFakeRoom({ t: 'd', name: 'direct-multiple', teamMain: false, - // @ts-expect-error TODO: Implement ABAC attributes in rooms - abacAttributes: false, + abacAttributes: undefined, uids: ['user1', 'user2', 'user3'], }), federated: createFakeRoom({ t: 'c', name: 'federated', teamMain: false, - // @ts-expect-error TODO: Implement ABAC attributes in rooms - abacAttributes: false, + abacAttributes: undefined, federated: true, }), abacRoom: createFakeRoom({ t: 'c', name: 'abac-room', teamMain: false, - // @ts-expect-error TODO: Implement ABAC attributes in rooms - abacAttributes: true, + abacAttributes: [{ _id: 'attr1', name: 'test', values: ['value1'] }], }), abacTeamRoom: createFakeRoom({ t: 'c', name: 'abac-team-room', teamMain: true, - // @ts-expect-error TODO: Implement ABAC attributes in rooms - abacAttributes: true, + abacAttributes: [{ _id: 'attr2', name: 'test', values: ['value2'] }], }), }; diff --git a/apps/meteor/client/hooks/useRoomIcon.tsx b/apps/meteor/client/hooks/useRoomIcon.tsx index 54a9b7982e147..6d090d7d8f66c 100644 --- a/apps/meteor/client/hooks/useRoomIcon.tsx +++ b/apps/meteor/client/hooks/useRoomIcon.tsx @@ -6,9 +6,8 @@ import type { ComponentProps, ReactElement } from 'react'; import { ReactiveUserStatus } from '../components/UserStatus'; export const useRoomIcon = ( - room: Pick, + room: Pick, ): ComponentProps | ReactElement | null => { - // @ts-expect-error TODO: Implement ABAC attributes in rooms if (room.abacAttributes) { if (room.teamMain) { return { name: 'team-shield' }; From 6c476178ad8dbbcfcc9055d426964f475d7d6bbd Mon Sep 17 00:00:00 2001 From: NAME-ASHWANIYADAV <22ashwaniyadav@gmail.com> Date: Thu, 29 Jan 2026 19:16:53 +0000 Subject: [PATCH 2/4] fix: correct IAbacAttributeDefinition type structure and add changeset --- .changeset/fix-use-room-icon-abac-type.md | 5 +++++ apps/meteor/client/hooks/useRoomIcon.spec.tsx | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changeset/fix-use-room-icon-abac-type.md diff --git a/.changeset/fix-use-room-icon-abac-type.md b/.changeset/fix-use-room-icon-abac-type.md new file mode 100644 index 0000000000000..a96f40bba218f --- /dev/null +++ b/.changeset/fix-use-room-icon-abac-type.md @@ -0,0 +1,5 @@ +--- +'@rocket.chat/meteor': patch +--- + +Fixed outdated `@ts-expect-error` in `useRoomIcon` hook by adding `abacAttributes` to the Pick type and updating test fixtures to use proper types diff --git a/apps/meteor/client/hooks/useRoomIcon.spec.tsx b/apps/meteor/client/hooks/useRoomIcon.spec.tsx index 2bedd0766feef..d814070ff8f58 100644 --- a/apps/meteor/client/hooks/useRoomIcon.spec.tsx +++ b/apps/meteor/client/hooks/useRoomIcon.spec.tsx @@ -44,13 +44,13 @@ const mockRooms = { t: 'c', name: 'abac-room', teamMain: false, - abacAttributes: [{ _id: 'attr1', name: 'test', values: ['value1'] }], + abacAttributes: [{ key: 'department', values: ['engineering'] }], }), abacTeamRoom: createFakeRoom({ t: 'c', name: 'abac-team-room', teamMain: true, - abacAttributes: [{ _id: 'attr2', name: 'test', values: ['value2'] }], + abacAttributes: [{ key: 'team', values: ['core'] }], }), }; From ccf7439f1d2b17ddacaacfd6267e49bb36bab23b Mon Sep 17 00:00:00 2001 From: ashwani yadav <22ashwaniyadav@gmail.com> Date: Mon, 2 Feb 2026 21:42:27 +0530 Subject: [PATCH 3/4] chore: remove unnecessary abacAttributes undefined from test fixtures --- apps/meteor/client/hooks/useRoomIcon.spec.tsx | 6 ------ 1 file changed, 6 deletions(-) diff --git a/apps/meteor/client/hooks/useRoomIcon.spec.tsx b/apps/meteor/client/hooks/useRoomIcon.spec.tsx index d814070ff8f58..8345d850074ab 100644 --- a/apps/meteor/client/hooks/useRoomIcon.spec.tsx +++ b/apps/meteor/client/hooks/useRoomIcon.spec.tsx @@ -6,38 +6,32 @@ const mockRooms = { t: 'c', name: 'public', teamMain: false, - abacAttributes: undefined, }), private: createFakeRoom({ t: 'p', name: 'private', teamMain: false, - abacAttributes: undefined, }), team: createFakeRoom({ t: 'c', name: 'team', teamMain: true, - abacAttributes: undefined, }), direct: createFakeRoom({ t: 'd', name: 'direct', teamMain: false, - abacAttributes: undefined, }), directMultiple: createFakeRoom({ t: 'd', name: 'direct-multiple', teamMain: false, - abacAttributes: undefined, uids: ['user1', 'user2', 'user3'], }), federated: createFakeRoom({ t: 'c', name: 'federated', teamMain: false, - abacAttributes: undefined, federated: true, }), abacRoom: createFakeRoom({ From 9436fe3f34a8baa863d90fa3ac24e9c3e262b746 Mon Sep 17 00:00:00 2001 From: ASHWANI YADAV <22ashwaniyadav@gmail.com> Date: Thu, 5 Feb 2026 00:52:38 +0530 Subject: [PATCH 4/4] Delete .changeset/fix-use-room-icon-abac-type.md --- .changeset/fix-use-room-icon-abac-type.md | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 .changeset/fix-use-room-icon-abac-type.md diff --git a/.changeset/fix-use-room-icon-abac-type.md b/.changeset/fix-use-room-icon-abac-type.md deleted file mode 100644 index a96f40bba218f..0000000000000 --- a/.changeset/fix-use-room-icon-abac-type.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@rocket.chat/meteor': patch ---- - -Fixed outdated `@ts-expect-error` in `useRoomIcon` hook by adding `abacAttributes` to the Pick type and updating test fixtures to use proper types