From dc8e54842f55c1c6116406e2bd54ace023c67cad Mon Sep 17 00:00:00 2001 From: Manish Gupta Date: Fri, 8 Mar 2024 10:13:16 -0500 Subject: [PATCH] landing page chain filter fix --- components/home/LandingUserBaseChart.tsx | 9 +++++---- components/layout/LandingChart.tsx | 10 +++++++--- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/components/home/LandingUserBaseChart.tsx b/components/home/LandingUserBaseChart.tsx index 3b523211..d6f988b1 100644 --- a/components/home/LandingUserBaseChart.tsx +++ b/components/home/LandingUserBaseChart.tsx @@ -6,7 +6,7 @@ import Heading from "@/components/layout/Heading"; import Subheading from "@/components/layout/Subheading"; import useSWR from "swr"; import { MasterResponse } from "@/types/api/MasterResponse"; -import { AllChains, AllChainsByKeys } from "@/lib/chains"; +import { AllChains, AllChainsByKeys, Get_SupportedChainKeys } from "@/lib/chains"; import { LandingPageMetricsResponse } from "@/types/api/LandingPageMetricsResponse"; import LandingChart from "@/components/layout/LandingChart"; import LandingMetricsTable from "@/components/layout/LandingMetricsTable"; @@ -69,13 +69,13 @@ export default function LandingUserBaseChart() { }, [data, landing, selectedMetric, selectedTimeInterval]); const chains = useMemo(() => { - if (!data) return []; + if (!data || !master) return []; return AllChains.filter( (chain) => - Object.keys(data.chains).includes(chain.key) && chain.key != "ethereum", + Object.keys(data.chains).includes(chain.key) && Get_SupportedChainKeys(master) && chain.key != "ethereum", ); - }, [data]); + }, [data, master]); const [selectedChains, setSelectedChains] = useState( AllChains.map((chain) => chain.key), @@ -104,6 +104,7 @@ export default function LandingUserBaseChart() { data: data.chains[chain].data.data, }; })} + master={master} sources={landing.data.metrics.user_base.source} cross_chain_users={data.cross_chain_users} cross_chain_users_comparison={data.cross_chain_users_comparison} diff --git a/components/layout/LandingChart.tsx b/components/layout/LandingChart.tsx index e1c1b691..167f66ac 100644 --- a/components/layout/LandingChart.tsx +++ b/components/layout/LandingChart.tsx @@ -18,7 +18,7 @@ import { useLocalStorage, useSessionStorage } from "usehooks-ts"; import { useTheme } from "next-themes"; import { debounce, merge } from "lodash"; import { Switch } from "../Switch"; -import { AllChainsByKeys, EnabledChainsByKeys } from "@/lib/chains"; +import { AllChainsByKeys, EnabledChainsByKeys, Get_SupportedChainKeys } from "@/lib/chains"; import d3 from "d3"; import { Icon } from "@iconify/react"; import { Tooltip, TooltipContent, TooltipTrigger } from "./Tooltip"; @@ -184,6 +184,7 @@ const baseOptions: Highcharts.Options = { export default function LandingChart({ data, + master, cross_chain_users, cross_chain_users_comparison, latest_total, @@ -199,6 +200,7 @@ export default function LandingChart({ // showTimeIntervals = true, { data: any; + master: any; cross_chain_users: number; cross_chain_users_comparison: number; latest_total: number; @@ -616,6 +618,8 @@ export default function LandingChart({ const tooltipFormatter = useCallback( function (this: any) { + if (!master) + return; const { x, points } = this; const date = new Date(x); const dateString = ` @@ -675,7 +679,7 @@ export default function LandingChart({ const { series, y, percentage } = point; const { name } = series; - return Object.keys(EnabledChainsByKeys).includes(name); + return Object.keys(Get_SupportedChainKeys(master)).includes(name); }) .map((point: any) => { const { series, y, percentage } = point; @@ -733,7 +737,7 @@ export default function LandingChart({ return tooltip + tooltipPoints + tooltipEnd; }, - [formatNumber, selectedMetric, selectedScale, theme], + [formatNumber, selectedMetric, selectedScale, theme, master], ); const tooltipPositioner =