1dbc773aee
* feat(chat): improve messages rendering This commit adds memoization and comparsion functions to the chat pages and chat messages to prevent whole chat re-renders and unnecessary message re-renders caused by React's default shallow comparsion mechanism. The comparsion functions ensure that only the pertinent message attributes trigger a component's re-render. Messages sent by a user are not updated (re-rendered) when their role change. In other words, the chat messages reflect the user's role at the time the message was sent. Altering the message to reflect the user's current role could confuse participants, as it would modify the context of the past conversation. This behavior has been validated by the UI/UX team and brings benefits such as performance improvements and consistent behavior with how playback handles such messages. * fix linter errors |
||
---|---|---|
.. | ||
about | ||
actions-bar | ||
activity-check | ||
app | ||
audio | ||
banner-bar | ||
breakout-join-confirmation/breakout-join-confirmation-graphql | ||
breakout-room | ||
chat | ||
click-outside | ||
common | ||
components-data/plugin-context | ||
connection-manager | ||
connection-status | ||
context-providers | ||
custom-styles | ||
debug-window | ||
dropdown | ||
emoji-picker | ||
emoji-rain | ||
end-meeting-confirmation | ||
error-screen | ||
external-video-player | ||
floating-window | ||
generic-content | ||
join-handler | ||
layout | ||
learning-dashboard | ||
legacy | ||
lock-viewers | ||
media | ||
meeting-ended | ||
mobile-app-modal/mobile-app-modal-graphql | ||
muted-alert | ||
nav-bar | ||
notes | ||
notifications | ||
notifications-bar | ||
pads/pads-graphql | ||
plugins/plugin-button | ||
plugins-engine | ||
poll | ||
polling | ||
presence-adapter | ||
presentation | ||
raisehand-notifier | ||
recording | ||
reload-button | ||
screenreader-alert | ||
screenshare | ||
settings | ||
settings-loader | ||
shortcut-help | ||
sidebar-content | ||
sidebar-navigation | ||
text-input | ||
timer | ||
user-avatar | ||
user-list | ||
user-reaction | ||
video-preview | ||
video-provider | ||
waiting-users | ||
wake-lock | ||
webcam | ||
whiteboard |