mirror of
https://gitlab.com/qwerinope/qweribot.git
synced 2026-02-04 13:56:57 +01:00
proper formatting and linting YAY, change cheer constructor to take object
This commit is contained in:
@@ -1,36 +1,40 @@
|
||||
import { Command, sendMessage } from "lib/commandUtils";
|
||||
import { getKDLeaderboard } from "db/dbUser";
|
||||
import { Command, sendMessage } from "lib/commandUtils";
|
||||
import User from "user";
|
||||
|
||||
type KD = { user: User; kd: number; };
|
||||
type KD = { user: User; kd: number };
|
||||
|
||||
export default new Command({
|
||||
name: 'monthlykdleaderboard',
|
||||
aliases: ['monthlyleaderboard', 'kdleaderboard', 'leaderboard'],
|
||||
usertype: 'chatter',
|
||||
execution: async msg => {
|
||||
const monthdata = new Date().toISOString().slice(0, 7);
|
||||
name: "monthlykdleaderboard",
|
||||
aliases: ["monthlyleaderboard", "kdleaderboard", "leaderboard"],
|
||||
usertype: "chatter",
|
||||
execution: async (msg) => {
|
||||
const monthdata = new Date().toISOString().slice(0, 7);
|
||||
|
||||
const rawKD = await getKDLeaderboard(monthdata);
|
||||
if (rawKD.length === 0) {
|
||||
await sendMessage(`No users on leaderboard yet!`, msg.messageId);
|
||||
return;
|
||||
};
|
||||
const rawKD = await getKDLeaderboard(monthdata);
|
||||
if (rawKD.length === 0) {
|
||||
await sendMessage(`No users on leaderboard yet!`, msg.messageId);
|
||||
return;
|
||||
}
|
||||
|
||||
const userKDs: KD[] = [];
|
||||
await Promise.all(rawKD.map(async userRecord => {
|
||||
const user = await User.initUserId(userRecord.userId.toString());
|
||||
if (!user) return;
|
||||
userKDs.push({ user, kd: userRecord.KD })
|
||||
}));
|
||||
const userKDs: KD[] = [];
|
||||
await Promise.all(
|
||||
rawKD.map(async (userRecord) => {
|
||||
const user = await User.initUserId(userRecord.userId.toString());
|
||||
if (!user) return;
|
||||
userKDs.push({ user, kd: userRecord.KD });
|
||||
}),
|
||||
);
|
||||
|
||||
userKDs.sort((a, b) => b.kd - a.kd);
|
||||
userKDs.sort((a, b) => b.kd - a.kd);
|
||||
|
||||
const txt: string[] = [];
|
||||
for (let i = 0; i < (userKDs.length < 10 ? userKDs.length : 10); i++) {
|
||||
txt.push(`${i + 1}. ${userKDs[i]?.user.displayName}: ${userKDs[i]?.kd.toFixed(2)}`);
|
||||
};
|
||||
const txt: string[] = [];
|
||||
for (let i = 0; i < (userKDs.length < 10 ? userKDs.length : 10); i++) {
|
||||
txt.push(
|
||||
`${i + 1}. ${userKDs[i]?.user.displayName}: ${userKDs[i]?.kd.toFixed(2)}`,
|
||||
);
|
||||
}
|
||||
|
||||
await sendMessage(`Monthly leaderboard: ${txt.join(' | ')}`, msg.messageId);
|
||||
}
|
||||
await sendMessage(`Monthly leaderboard: ${txt.join(" | ")}`, msg.messageId);
|
||||
},
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user