mirror of
https://github.com/makeplane/plane
synced 2024-06-14 14:31:34 +00:00
fix: x-axis labels overlapping in mobile view
This commit is contained in:
parent
c7616fda11
commit
960bf03ac1
@ -65,7 +65,7 @@ export const AnalyticsScope: React.FC<Props> = ({ defaultAnalytics }) => (
|
||||
);
|
||||
},
|
||||
}}
|
||||
margin={{ top: 20 }}
|
||||
margin={{ top: 20, right: 20 }}
|
||||
theme={{
|
||||
axis: {},
|
||||
}}
|
||||
|
@ -6,12 +6,27 @@ import emptyGraph from "public/empty-state/empty_graph.svg";
|
||||
import { IDefaultAnalyticsResponse } from "@plane/types";
|
||||
// constants
|
||||
import { MONTHS_LIST } from "constants/calendar";
|
||||
import { useEffect, useState } from "react";
|
||||
|
||||
type Props = {
|
||||
defaultAnalytics: IDefaultAnalyticsResponse;
|
||||
};
|
||||
|
||||
export const AnalyticsYearWiseIssues: React.FC<Props> = ({ defaultAnalytics }) => (
|
||||
export const AnalyticsYearWiseIssues: React.FC<Props> = ({ defaultAnalytics }) => {
|
||||
// states
|
||||
const [width, setWidth] = useState(window.innerWidth);
|
||||
useEffect(() => {
|
||||
// event listener to update the width
|
||||
window.addEventListener("resize", () => {
|
||||
if (width <= 768 && window.innerWidth > 768) {
|
||||
setWidth(window.innerWidth);
|
||||
} else if (width >= 768 && window.innerWidth < 768) {
|
||||
setWidth(window.innerWidth);
|
||||
}
|
||||
});
|
||||
}, []);
|
||||
|
||||
return (
|
||||
<div className="rounded-[10px] border border-custom-border-200 py-3">
|
||||
<h1 className="px-3 text-base font-medium">Issues closed in a year</h1>
|
||||
{defaultAnalytics.issue_completed_month_wise.length > 0 ? (
|
||||
@ -23,16 +38,22 @@ export const AnalyticsYearWiseIssues: React.FC<Props> = ({ defaultAnalytics }) =
|
||||
data: Object.entries(MONTHS_LIST).map(([index, month]) => ({
|
||||
x: month.shortTitle,
|
||||
y:
|
||||
defaultAnalytics.issue_completed_month_wise.find((data) => data.month === parseInt(index, 10))?.count ||
|
||||
0,
|
||||
defaultAnalytics.issue_completed_month_wise.find((data) => data.month === parseInt(index, 10))
|
||||
?.count || 0,
|
||||
})),
|
||||
},
|
||||
]}
|
||||
axisBottom={{
|
||||
// if width is less than 768px, rotate the x-axis labels
|
||||
...(width < 768 && {
|
||||
tickRotation: -45,
|
||||
}),
|
||||
}}
|
||||
customYAxisTickValues={defaultAnalytics.issue_completed_month_wise.map((data) => data.count)}
|
||||
height="300px"
|
||||
colors={(datum) => datum.color}
|
||||
curve="monotoneX"
|
||||
margin={{ top: 20 }}
|
||||
margin={{ top: 20, right: 20 }}
|
||||
enableSlices="x"
|
||||
sliceTooltip={(datum) => (
|
||||
<div className="rounded-md border border-custom-border-200 bg-custom-background-80 p-2 text-xs">
|
||||
@ -57,3 +78,4 @@ export const AnalyticsYearWiseIssues: React.FC<Props> = ({ defaultAnalytics }) =
|
||||
)}
|
||||
</div>
|
||||
);
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user