Skip to content
Snippets Groups Projects
Unverified Commit 7bb9885c authored by gabriellsh's avatar gabriellsh Committed by GitHub
Browse files

fix: Hide System Messages for room requires refresh (#28584)

parent b86b6d12
No related merge requests found
...@@ -6,11 +6,21 @@ import { useCallback, useMemo } from 'react'; ...@@ -6,11 +6,21 @@ import { useCallback, useMemo } from 'react';
import { ChatMessage } from '../../../../../app/models/client'; import { ChatMessage } from '../../../../../app/models/client';
import { useReactiveValue } from '../../../../hooks/useReactiveValue'; import { useReactiveValue } from '../../../../hooks/useReactiveValue';
import { useRoom } from '../../contexts/RoomContext';
const mergeHideSysMessages = (
sysMesArray1: Array<MessageTypesValues>,
sysMesArray2: Array<MessageTypesValues>,
): Array<MessageTypesValues> => {
return Array.from(new Set([...sysMesArray1, ...sysMesArray2]));
};
export const useMessages = ({ rid }: { rid: IRoom['_id'] }): IMessage[] => { export const useMessages = ({ rid }: { rid: IRoom['_id'] }): IMessage[] => {
const hideSysMes = useSetting<MessageTypesValues[]>('Hide_System_Messages'); const hideSysMesSetting = useSetting<MessageTypesValues[]>('Hide_System_Messages') ?? [];
const room = useRoom();
const hideRoomSysMes: Array<MessageTypesValues> = Array.isArray(room.sysMes) ? room.sysMes : [];
const hideSysMessages = useStableArray(Array.isArray(hideSysMes) ? hideSysMes : []); const hideSysMessages = useStableArray(mergeHideSysMessages(hideSysMesSetting, hideRoomSysMes));
const query: Mongo.Query<IMessage> = useMemo( const query: Mongo.Query<IMessage> = useMemo(
() => ({ () => ({
......
...@@ -36,7 +36,8 @@ export interface IRoom extends IRocketChatRecord { ...@@ -36,7 +36,8 @@ export interface IRoom extends IRocketChatRecord {
reactWhenReadOnly?: boolean; reactWhenReadOnly?: boolean;
sysMes?: MessageTypesValues[]; // TODO: this boolean might be an accident
sysMes?: MessageTypesValues[] | boolean;
u: Pick<IUser, '_id' | 'username' | 'name'>; u: Pick<IUser, '_id' | 'username' | 'name'>;
uids?: Array<string>; uids?: Array<string>;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment