From b67206dd65aebdc106bdadd1c707b2eab9c1aa69 Mon Sep 17 00:00:00 2001 From: palashgdev Date: Fri, 10 Feb 2023 18:02:37 +0530 Subject: [PATCH] fix: graph component is memorised (#2223) --- frontend/src/components/Graph/index.tsx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/frontend/src/components/Graph/index.tsx b/frontend/src/components/Graph/index.tsx index 2b6435d106..8bc8ee4109 100644 --- a/frontend/src/components/Graph/index.tsx +++ b/frontend/src/components/Graph/index.tsx @@ -25,7 +25,8 @@ import * as chartjsAdapter from 'chartjs-adapter-date-fns'; import annotationPlugin from 'chartjs-plugin-annotation'; import dayjs from 'dayjs'; import { useIsDarkMode } from 'hooks/useDarkMode'; -import React, { useCallback, useEffect, useRef } from 'react'; +import isEqual from 'lodash-es/isEqual'; +import React, { memo, useCallback, useEffect, useRef } from 'react'; import { hasData } from './hasData'; import { getAxisLabelColor } from './helpers'; @@ -374,4 +375,7 @@ Graph.defaultProps = { onDragSelect: undefined, dragSelectColor: undefined, }; -export default Graph; + +export default memo(Graph, (prevProps, nextProps) => + isEqual(prevProps.data, nextProps.data), +);