From 251a432d8a29fc3033037ab7338ef1145553a93b Mon Sep 17 00:00:00 2001 From: guru_sainath Date: Sat, 13 Apr 2024 22:18:34 +0530 Subject: [PATCH] [WEB-1000] fix: handled edge case for color on custom analytics state_group (#4185) * chore: handled edge case for color on custom analytics state_group * fix: error handler --- web/helpers/analytics.helper.ts | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/web/helpers/analytics.helper.ts b/web/helpers/analytics.helper.ts index 781d16f29..22c361ad2 100644 --- a/web/helpers/analytics.helper.ts +++ b/web/helpers/analytics.helper.ts @@ -1,12 +1,12 @@ // nivo import { BarDatum } from "@nivo/bar"; +import { IAnalyticsData, IAnalyticsParams, IAnalyticsResponse, TStateGroups } from "@plane/types"; // helpers import { DATE_KEYS } from "@/constants/analytics"; import { MONTHS_LIST } from "@/constants/calendar"; import { STATE_GROUPS } from "@/constants/state"; import { addSpaceIfCamelCase, capitalizeFirstLetter, generateRandomColor } from "@/helpers/string.helper"; // types -import { IAnalyticsData, IAnalyticsParams, IAnalyticsResponse, TStateGroups } from "@plane/types"; // constants export const convertResponseToBarGraphData = ( @@ -36,8 +36,8 @@ export const convertResponseToBarGraphData = ( name: DATE_KEYS.includes(params.x_axis) ? renderMonthAndYear(key) : params.x_axis === "priority" || params.x_axis === "state__group" - ? capitalizeFirstLetter(key) - : key, + ? capitalizeFirstLetter(key) + : key, ...segments, }); } else { @@ -49,8 +49,8 @@ export const convertResponseToBarGraphData = ( name: DATE_KEYS.includes(params.x_axis) ? renderMonthAndYear(item.dimension) : params.x_axis === "priority" || params.x_axis === "state__group" - ? capitalizeFirstLetter(item.dimension ?? "None") - : item.dimension ?? "None", + ? capitalizeFirstLetter(item.dimension ?? "None") + : item.dimension ?? "None", [yAxisKey]: item[yAxisKey] ?? 0, }); } @@ -75,7 +75,7 @@ export const generateBarColor = ( if (params[type] === "labels__id") color = analytics?.extras.label_details.find((l) => l.labels__id === value)?.labels__color ?? undefined; - if (params[type] === "state__group") color = STATE_GROUPS[value.toLowerCase() as TStateGroups].color; + if (params[type] === "state__group") color = STATE_GROUPS[value.toLowerCase() as TStateGroups]?.color ?? undefined; if (params[type] === "priority") { const priority = value.toLowerCase(); @@ -84,12 +84,12 @@ export const generateBarColor = ( priority === "urgent" ? "#ef4444" : priority === "high" - ? "#f97316" - : priority === "medium" - ? "#eab308" - : priority === "low" - ? "#22c55e" - : "#ced4da"; + ? "#f97316" + : priority === "medium" + ? "#eab308" + : priority === "low" + ? "#22c55e" + : "#ced4da"; } return color ?? generateRandomColor(value);