in pages/milestones/[milestone].js [178:229]
milestoneIssues: formatIssueData(milestoneIssueData),
},
};
}
const Milestones = (props) => {
if (props.errorCode) {
return <Error statusCode={props.errorCode} />;
}
const router = useRouter();
const { sort, dir, milestone } = router.query;
const {
groups: { year, month, day },
} = validMilestoneRX.exec(milestone);
const milestonePagination = getMilestonePagination({
startDate: new Date(year, month - 1, day),
});
const milestoneIssuesURL = getApiURL('/api/gh-milestone-issues/', {
milestone,
});
const initialMilestoneIssues = props.milestoneIssues;
const { data: milestoneIssues } = useSWR(
milestoneIssuesURL,
async () => {
const result = await fetch(milestoneIssuesURL);
const json = await result.json();
return formatIssueData(json);
},
{ fallbackData: initialMilestoneIssues, refreshInterval: 30000 },
);
let data = milestoneIssues;
if (sort) {
data = sortData({ data, columnKey: sort, direction: dir, sortConfig });
}
return (
<div className="Milestones">
<Helmet>
<title>Milestones</title>
</Helmet>
<Navbar
variant="muted"
bg="light"
className="shadow-sm d-flex justify-content-between px-3"
sticky="top"
>
<Nav variant="pills">
<Nav.Item>
<Link
href={`/milestones/${