// ui import { LineGraph, ProfileEmptyState } from "components/ui"; // image import emptyGraph from "public/empty-state/empty_graph.svg"; // types import { IDefaultAnalyticsResponse } from "types"; // constants import { MONTHS_LIST } from "constants/calendar"; type Props = { defaultAnalytics: IDefaultAnalyticsResponse; }; export const AnalyticsYearWiseIssues: React.FC<Props> = ({ defaultAnalytics }) => ( <div className="py-3 border border-custom-border-200 rounded-[10px]"> <h1 className="px-3 text-base font-medium">Issues closed in a year</h1> {defaultAnalytics.issue_completed_month_wise.length > 0 ? ( <LineGraph data={[ { id: "issues_closed", color: "rgb(var(--color-primary-100))", data: MONTHS_LIST.map((month) => ({ x: month.label.substring(0, 3), y: defaultAnalytics.issue_completed_month_wise.find( (data) => data.month === month.value )?.count || 0, })), }, ]} customYAxisTickValues={defaultAnalytics.issue_completed_month_wise.map( (data) => data.count )} height="300px" colors={(datum) => datum.color} curve="monotoneX" margin={{ top: 20 }} enableSlices="x" sliceTooltip={(datum) => ( <div className="rounded-md border border-custom-border-200 bg-custom-background-80 p-2 text-xs"> {datum.slice.points[0].data.yFormatted} <span className="text-custom-text-200"> issues closed in </span> {datum.slice.points[0].data.xFormatted} </div> )} theme={{ background: "rgb(var(--color-background-100))", }} enableArea /> ) : ( <div className="px-7 py-4"> <ProfileEmptyState title="No Data yet" description="Close issues to view analysis of the same in the form of a graph." image={emptyGraph} /> </div> )} </div> );