From 8917a356844f4fd2958d2802c00c8170cebf6da7 Mon Sep 17 00:00:00 2001 From: Bhav Beri Date: Sat, 9 Nov 2024 13:10:14 +0530 Subject: [PATCH] Match sorting on the changelog page to the cc members page --- src/app/changelog/page.jsx | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/app/changelog/page.jsx b/src/app/changelog/page.jsx index 54c5bbd2..cb08a54d 100644 --- a/src/app/changelog/page.jsx +++ b/src/app/changelog/page.jsx @@ -36,6 +36,24 @@ export default async function Changelog({ searchParams }) { }) ?.filter((member) => { return member.roles.length > 0; + }) + ?.sort((a, b) => { + const roleNameA = a.roles[0]?.name.toLowerCase(); + const roleNameB = b.roles[0]?.name.toLowerCase(); + if (roleNameA.includes("lead") && !roleNameB.includes("lead")) { + return -1; + } + if (roleNameB.includes("lead") && !roleNameA.includes("lead")) { + return 1; + } + if (roleNameA.includes("advisor") && !roleNameB.includes("advisor")) { + return 1; + } + if (roleNameB.includes("advisor") && !roleNameA.includes("advisor")) { + return -1; + } + + return 0; }); const status = await fetch(getNginxFile("json/status.json"), { @@ -140,7 +158,7 @@ const filterRoles = (roles, filterWords) => { const { name, endYear } = role; const lowercaseName = name.toLowerCase(); return filterWords.some( - (word) => lowercaseName.includes(word) && endYear === null, + (word) => lowercaseName.includes(word) && endYear === null ); }); if (filteredRoles?.length > 0)