Moved formatters to seperate file
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
import { ChatInputCommandInteraction } from "discord.js"
|
import { ChatInputCommandInteraction } from "discord.js"
|
||||||
import { devMessage, embedColor } from "~/config/options.js"
|
import { devMessage, embedColor } from "~/config/options.js"
|
||||||
import { IGuildData } from "~/interfaces"
|
import { IGuildData } from "~/interfaces"
|
||||||
|
import { numberFormatter } from "~/utils/Functions/intlFormaters.js"
|
||||||
import { getGuild, getIGN, getPlayer, getUUID, guildLevel } from "~/utils/Hypixel.js"
|
import { getGuild, getIGN, getPlayer, getUUID, guildLevel } from "~/utils/Hypixel.js"
|
||||||
|
|
||||||
export default async function guildInfo(interaction: ChatInputCommandInteraction): Promise<void> {
|
export default async function guildInfo(interaction: ChatInputCommandInteraction): Promise<void> {
|
||||||
@@ -107,7 +108,7 @@ export default async function guildInfo(interaction: ChatInputCommandInteraction
|
|||||||
const guildCreated = new Date(guildCreatedMS)
|
const guildCreated = new Date(guildCreatedMS)
|
||||||
const guildTag = guild!.tag
|
const guildTag = guild!.tag
|
||||||
const guildExpUnformatted = guild!.exp
|
const guildExpUnformatted = guild!.exp
|
||||||
const guildExp = new Intl.NumberFormat("en-US").format(guildExpUnformatted)
|
const guildExp = numberFormatter.format(guildExpUnformatted)
|
||||||
const guildLvl = guildLevel(guildExpUnformatted)
|
const guildLvl = guildLevel(guildExpUnformatted)
|
||||||
const guildMembers = guild!.members
|
const guildMembers = guild!.members
|
||||||
const guildCreatedTime = guildCreated.toLocaleString("hr-HR", {})
|
const guildCreatedTime = guildCreated.toLocaleString("hr-HR", {})
|
||||||
@@ -123,10 +124,10 @@ export default async function guildInfo(interaction: ChatInputCommandInteraction
|
|||||||
})
|
})
|
||||||
|
|
||||||
const totalGuildMembersWeeklyXPUnformatted = guildMembersWeeklyXP.reduce((a, b) => a + b, 0)
|
const totalGuildMembersWeeklyXPUnformatted = guildMembersWeeklyXP.reduce((a, b) => a + b, 0)
|
||||||
const totalGuildMembersWeeklyXP = new Intl.NumberFormat("en-US").format(totalGuildMembersWeeklyXPUnformatted)
|
const totalGuildMembersWeeklyXP = numberFormatter.format(totalGuildMembersWeeklyXPUnformatted)
|
||||||
|
|
||||||
const averageGuildMembersWeeklyXPUnformatted = Math.round(totalGuildMembersWeeklyXPUnformatted / 7)
|
const averageGuildMembersWeeklyXPUnformatted = Math.round(totalGuildMembersWeeklyXPUnformatted / 7)
|
||||||
const averageGuildMembersWeeklyXP = new Intl.NumberFormat("en-US").format(averageGuildMembersWeeklyXPUnformatted)
|
const averageGuildMembersWeeklyXP = numberFormatter.format(averageGuildMembersWeeklyXPUnformatted)
|
||||||
|
|
||||||
await interaction.editReply({
|
await interaction.editReply({
|
||||||
embeds: [{
|
embeds: [{
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import { ChatInputCommandInteraction } from "discord.js"
|
import { ChatInputCommandInteraction } from "discord.js"
|
||||||
import { devMessage, embedColor } from "~/config/options.js"
|
import { devMessage, embedColor } from "~/config/options.js"
|
||||||
|
import { numberFormatter } from "~/utils/Functions/intlFormaters.js"
|
||||||
import { getGuild, getHeadURL, getPlayer, getUUID } from "~/utils/Hypixel.js"
|
import { getGuild, getHeadURL, getPlayer, getUUID } from "~/utils/Hypixel.js"
|
||||||
|
|
||||||
export default async function guildMember(interaction: ChatInputCommandInteraction): Promise<void> {
|
export default async function guildMember(interaction: ChatInputCommandInteraction): Promise<void> {
|
||||||
@@ -101,13 +102,13 @@ export default async function guildMember(interaction: ChatInputCommandInteracti
|
|||||||
const guildRank = guildMember!.rank
|
const guildRank = guildMember!.rank
|
||||||
const memberGexp = guildMember!.expHistory
|
const memberGexp = guildMember!.expHistory
|
||||||
const allDaysGexp = Object.keys(memberGexp).map(key => {
|
const allDaysGexp = Object.keys(memberGexp).map(key => {
|
||||||
return ("**➺ " + key + ":** " + "`" + new Intl.NumberFormat("en-US").format(memberGexp[key]) + "`" + "\n")
|
return ("**➺ " + key + ":** " + "`" + numberFormatter.format(memberGexp[key]) + "`" + "\n")
|
||||||
})
|
})
|
||||||
const expValue = allDaysGexp.join("")
|
const expValue = allDaysGexp.join("")
|
||||||
const totalWeeklyGexpUnformatted = Object.values(memberGexp).reduce((a, b) => a + b, 0)
|
const totalWeeklyGexpUnformatted = Object.values(memberGexp).reduce((a, b) => a + b, 0)
|
||||||
const totalWeeklyGexp = new Intl.NumberFormat("en-US").format(totalWeeklyGexpUnformatted)
|
const totalWeeklyGexp = numberFormatter.format(totalWeeklyGexpUnformatted)
|
||||||
const averageWeeklyGexpUnformatted = Math.round(totalWeeklyGexpUnformatted / 7)
|
const averageWeeklyGexpUnformatted = Math.round(totalWeeklyGexpUnformatted / 7)
|
||||||
const averageWeeklyGexp = new Intl.NumberFormat("en-US").format(averageWeeklyGexpUnformatted)
|
const averageWeeklyGexp = numberFormatter.format(averageWeeklyGexpUnformatted)
|
||||||
|
|
||||||
const guildMemberJoinMS = guildMember!.joined
|
const guildMemberJoinMS = guildMember!.joined
|
||||||
const guildMemberJoinTime = new Date(guildMemberJoinMS)
|
const guildMemberJoinTime = new Date(guildMemberJoinMS)
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
import { ChatInputCommandInteraction } from "discord.js"
|
import { ChatInputCommandInteraction } from "discord.js"
|
||||||
import { devMessage, embedColor } from "~/config/options.js"
|
import { devMessage, embedColor } from "~/config/options.js"
|
||||||
import { IGuildData } from "~/interfaces"
|
import { IGuildData } from "~/interfaces"
|
||||||
|
import { numberFormatter } from "~/utils/Functions/intlFormaters.js"
|
||||||
import { getGuild, getIGN, getPlayer, getUUID } from "~/utils/Hypixel.js"
|
import { getGuild, getIGN, getPlayer, getUUID } from "~/utils/Hypixel.js"
|
||||||
import { redis } from "~/utils/Illegitimate.js"
|
import { redis } from "~/utils/Illegitimate.js"
|
||||||
|
|
||||||
@@ -113,10 +114,10 @@ export default async function guildTop(interaction: ChatInputCommandInteraction)
|
|||||||
const gexpTodayUnformatted = guildMembers.map(member => {
|
const gexpTodayUnformatted = guildMembers.map(member => {
|
||||||
return member.expHistory[Object.keys(member.expHistory)[0]]
|
return member.expHistory[Object.keys(member.expHistory)[0]]
|
||||||
}).reduce((a, b) => a + b, 0)
|
}).reduce((a, b) => a + b, 0)
|
||||||
const gexpToday = new Intl.NumberFormat("en-US").format(gexpTodayUnformatted)
|
const gexpToday = numberFormatter.format(gexpTodayUnformatted)
|
||||||
|
|
||||||
const averageGuildMemberGEXPUnformatted = Math.floor(gexpTodayUnformatted / guildMembers.length)
|
const averageGuildMemberGEXPUnformatted = Math.floor(gexpTodayUnformatted / guildMembers.length)
|
||||||
const averageGuildMemberGEXP = new Intl.NumberFormat("en-US").format(averageGuildMemberGEXPUnformatted)
|
const averageGuildMemberGEXP = numberFormatter.format(averageGuildMemberGEXPUnformatted)
|
||||||
|
|
||||||
const allMembersDailyGEXP = guildMembers.map(member => {
|
const allMembersDailyGEXP = guildMembers.map(member => {
|
||||||
return {
|
return {
|
||||||
@@ -177,7 +178,7 @@ export default async function guildTop(interaction: ChatInputCommandInteraction)
|
|||||||
const sliceSize = amount / 4
|
const sliceSize = amount / 4
|
||||||
|
|
||||||
for (let i = 0; i < amount; i++) {
|
for (let i = 0; i < amount; i++) {
|
||||||
const gexp = new Intl.NumberFormat("en-US").format(topMembers[i].gexp)
|
const gexp = numberFormatter.format(topMembers[i].gexp)
|
||||||
const ign = guildData.find(member => member.uuid === topMembers[i].uuid)?.ign
|
const ign = guildData.find(member => member.uuid === topMembers[i].uuid)?.ign
|
||||||
|
|
||||||
const position = i + 1
|
const position = i + 1
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ import { TextChannel } from "discord.js"
|
|||||||
import { devMessage, embedColor, guildLogChannel, hypixelGuildID } from "~/config/options.js"
|
import { devMessage, embedColor, guildLogChannel, hypixelGuildID } from "~/config/options.js"
|
||||||
import { ICron, IGuildData } from "~/interfaces"
|
import { ICron, IGuildData } from "~/interfaces"
|
||||||
import { color } from "~/utils/Functions/colors.js"
|
import { color } from "~/utils/Functions/colors.js"
|
||||||
|
import { numberFormatter } from "~/utils/Functions/intlFormaters.js"
|
||||||
import { getGuild, getIGN } from "~/utils/Hypixel.js"
|
import { getGuild, getIGN } from "~/utils/Hypixel.js"
|
||||||
import { client } from "~/utils/Illegitimate.js"
|
import { client } from "~/utils/Illegitimate.js"
|
||||||
|
|
||||||
@@ -39,7 +40,7 @@ async function guildWeekly() {
|
|||||||
|
|
||||||
for (let i = 0; i < allMembersGexpSorted.length; i++) {
|
for (let i = 0; i < allMembersGexpSorted.length; i++) {
|
||||||
const ign = await getIGN(allMembersGexpSorted[i].uuid)
|
const ign = await getIGN(allMembersGexpSorted[i].uuid)
|
||||||
const gexp = new Intl.NumberFormat("en-US").format(allMembersGexpSorted[i].exp)
|
const gexp = numberFormatter.format(allMembersGexpSorted[i].exp)
|
||||||
const position = i + 1
|
const position = i + 1
|
||||||
guildMembersList.push("**#" + position + " " + ign + ":** `" + gexp + "`")
|
guildMembersList.push("**#" + position + " " + ign + ":** `" + gexp + "`")
|
||||||
}
|
}
|
||||||
@@ -65,8 +66,8 @@ async function guildWeekly() {
|
|||||||
const averageGuildMembersDailyXPUnformatted = totalGuildMembersWeeklyXPUnformatted / 7
|
const averageGuildMembersDailyXPUnformatted = totalGuildMembersWeeklyXPUnformatted / 7
|
||||||
|
|
||||||
// final values
|
// final values
|
||||||
const totalGuildMembersWeeklyXP = new Intl.NumberFormat("en-US").format(totalGuildMembersWeeklyXPUnformatted)
|
const totalGuildMembersWeeklyXP = numberFormatter.format(totalGuildMembersWeeklyXPUnformatted)
|
||||||
const averageGuildMembersWeeklyXP = new Intl.NumberFormat("en-US").format(averageGuildMembersDailyXPUnformatted)
|
const averageGuildMembersWeeklyXP = numberFormatter.format(averageGuildMembersDailyXPUnformatted)
|
||||||
|
|
||||||
await message.edit({
|
await message.edit({
|
||||||
embeds: [{
|
embeds: [{
|
||||||
|
|||||||
3
src/utils/Functions/intlFormaters.ts
Normal file
3
src/utils/Functions/intlFormaters.ts
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
const numberFormatter = new Intl.NumberFormat("en-US")
|
||||||
|
|
||||||
|
export { numberFormatter }
|
||||||
Reference in New Issue
Block a user