From c3d8e8ade3ba34463b57d5fa8daee0c0b5ce9016 Mon Sep 17 00:00:00 2001 From: Quentin VERDIER Date: Wed, 17 Sep 2025 18:55:01 +0200 Subject: [PATCH 1/2] =?UTF-8?q?=E2=9C=A8=20Optimize=20ChatItem=20and=20Str?= =?UTF-8?q?eamItem=20components:=20memoize=20components=20for=20performanc?= =?UTF-8?q?e=20improvements?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/gridItems/ChatItem/ChatItem.tsx | 12 ++++-------- src/components/gridItems/GridItem/GridItem.tsx | 1 + src/components/gridItems/StreamItem/StreamItem.tsx | 6 +++--- 3 files changed, 8 insertions(+), 11 deletions(-) diff --git a/src/components/gridItems/ChatItem/ChatItem.tsx b/src/components/gridItems/ChatItem/ChatItem.tsx index 4675d19..15d720c 100644 --- a/src/components/gridItems/ChatItem/ChatItem.tsx +++ b/src/components/gridItems/ChatItem/ChatItem.tsx @@ -1,4 +1,4 @@ -import { useMemo } from 'react'; +import { memo } from 'react'; import GridItem from '../GridItem/GridItem'; import ChatItemHeader from './ChatItemHeader/ChatItemHeader'; @@ -7,20 +7,16 @@ interface ChatItemProps { isDarkThemePreferred?: boolean; } -const ChatItem = ({ streamName, isDarkThemePreferred = false }: ChatItemProps) => { +const ChatItem = memo(({ streamName, isDarkThemePreferred = false }: ChatItemProps) => { const title = `Chat: ${streamName}`; - - const iframeSrc = useMemo(() => { - const darkParam = isDarkThemePreferred ? '&darkpopout' : ''; - return `https://www.twitch.tv/embed/${streamName}/chat?parent=${window.location.hostname}${darkParam}`; - }, [streamName, isDarkThemePreferred]); + const iframeSrc = `https://www.twitch.tv/embed/${streamName}/chat?parent=${window.location.hostname}${isDarkThemePreferred ? '&darkpopout' : ''}`; return ( ); -}; +}); ChatItem.displayName = 'ChatItem'; diff --git a/src/components/gridItems/GridItem/GridItem.tsx b/src/components/gridItems/GridItem/GridItem.tsx index 454b112..c13ce8e 100644 --- a/src/components/gridItems/GridItem/GridItem.tsx +++ b/src/components/gridItems/GridItem/GridItem.tsx @@ -32,6 +32,7 @@ const GridItem = memo(