diff options
Diffstat (limited to 'src/server.ts')
| -rw-r--r-- | src/server.ts | 24 |
1 files changed, 6 insertions, 18 deletions
diff --git a/src/server.ts b/src/server.ts index ce7e8c7..2252ea7 100644 --- a/src/server.ts +++ b/src/server.ts @@ -16,7 +16,11 @@ import { } from "./reddit.ts"; import type { TimePeriod } from "./discord/types.ts"; import type { Environment, DiscordEmbed } from "./discord/interfaces.ts"; -import { createPostEmbed, createComplaintEmbed } from "./discord/embeds.ts"; +import { + createPostEmbed, + createComplaintEmbed, + createRoleDistributionEmbed, +} from "./discord/embeds.ts"; import { JSONResponse } from "./discord/responses.ts"; import { verifyDiscordRequest } from "./discord/verification.ts"; @@ -432,23 +436,7 @@ router.post("/", async (request: Request, environment: Environment) => { }, }); - const totalMembers = roleDistribution.reduce( - (sum, role) => sum + role.count, - 0, - ); - const embed: DiscordEmbed = { - title: "🎨 Colour Role Distribution", - description: `Total members with colour roles: **${totalMembers}**`, - color: 0x5865F2, - fields: roleDistribution.map((role) => ({ - name: role.name, - value: `${role.count} member${role.count !== 1 ? "s" : ""}`, - inline: true, - })), - footer: { - text: "Sorted by member count (highest to lowest)", - }, - }; + const embed = createRoleDistributionEmbed(roleDistribution); return new JSONResponse({ type: InteractionResponseType.CHANNEL_MESSAGE_WITH_SOURCE, |