From f5a7dbf1e849b6dc38fe2cb9290701ff21982f8e Mon Sep 17 00:00:00 2001 From: Pihkaal Date: Tue, 12 May 2026 16:28:08 +0200 Subject: [PATCH] feat(discord-bot): add fdp command --- apps/discord-bot/assets/poop.png | Bin 0 -> 88973 bytes apps/discord-bot/package.json | 3 +- apps/discord-bot/src/commands/fdp.ts | 48 +++++ apps/discord-bot/src/commands/index.ts | 2 + pnpm-lock.yaml | 285 +++++++++++++++++++++++++ 5 files changed, 337 insertions(+), 1 deletion(-) create mode 100644 apps/discord-bot/assets/poop.png create mode 100644 apps/discord-bot/src/commands/fdp.ts diff --git a/apps/discord-bot/assets/poop.png b/apps/discord-bot/assets/poop.png new file mode 100644 index 0000000000000000000000000000000000000000..74fd8f0feba31cae4fbbb66855800a9b170e57c3 GIT binary patch literal 88973 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 literal 0 HcmV?d00001 diff --git a/apps/discord-bot/package.json b/apps/discord-bot/package.json index c98e777..7626e9f 100644 --- a/apps/discord-bot/package.json +++ b/apps/discord-bot/package.json @@ -15,9 +15,10 @@ "typescript": "^5.7.2" }, "dependencies": { - "@lbf-bot/utils": "workspace:*", "@lbf-bot/database": "workspace:*", + "@lbf-bot/utils": "workspace:*", "discord.js": "^14.21.0", + "sharp": "^0.34.5", "zod": "4.1.11" } } diff --git a/apps/discord-bot/src/commands/fdp.ts b/apps/discord-bot/src/commands/fdp.ts new file mode 100644 index 0000000..8b052ba --- /dev/null +++ b/apps/discord-bot/src/commands/fdp.ts @@ -0,0 +1,48 @@ +import { AttachmentBuilder } from "discord.js"; +import sharp from "sharp"; +import { dirname, join } from "node:path"; +import { fileURLToPath } from "node:url"; +import { noMention } from "~/discord"; +import type { Command } from "./index"; + +const POOP_PATH = join(dirname(fileURLToPath(import.meta.url)), "../../assets/poop.png"); + +export const fdpCommand: Command = { + help: "Essaie et tu verras", + handler: async (message) => { + const avatarUrl = message.author.displayAvatarURL({ size: 512, extension: "png" }); + + const avatarBuffer = Buffer.from(await (await fetch(avatarUrl)).arrayBuffer()); + + const { width: avatarWidth, height: avatarHeight } = await sharp(avatarBuffer).metadata(); + if (!avatarWidth || !avatarHeight) return; + + const poopWidth = Math.floor(avatarWidth / 2); + const poopBuffer = await sharp(POOP_PATH).resize({ width: poopWidth }).toBuffer(); + const { height: poopHeight } = await sharp(poopBuffer).metadata(); + if (!poopHeight) return; + + const overlap = Math.floor(poopHeight / 4); + const poopLeft = Math.floor((avatarWidth - poopWidth) / 2); + + const result = await sharp({ + create: { + width: avatarWidth, + height: avatarHeight + poopHeight - overlap, + channels: 4, + background: { r: 0, g: 0, b: 0, alpha: 0 }, + }, + }) + .composite([ + { input: avatarBuffer, top: poopHeight - overlap, left: 0 }, + { input: poopBuffer, top: 0, left: poopLeft }, + ]) + .webp() + .toBuffer(); + + await message.reply({ + ...noMention, + files: [new AttachmentBuilder(result, { name: "fdp.webp" })], + }); + }, +}; diff --git a/apps/discord-bot/src/commands/index.ts b/apps/discord-bot/src/commands/index.ts index 6c42a1a..f41baec 100644 --- a/apps/discord-bot/src/commands/index.ts +++ b/apps/discord-bot/src/commands/index.ts @@ -1,4 +1,5 @@ import type { Message, OmitPartialGroupDMChannel } from "discord.js"; +import { fdpCommand } from "./fdp"; import { pingCommand } from "./ping"; import { trackCommand } from "./tracking"; import { iconeCommand } from "./icone"; @@ -18,6 +19,7 @@ export type Command = { }; export const commands: Record = { + fdp: fdpCommand, ping: pingCommand, track: trackCommand, icone: iconeCommand, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0b46881..d915a31 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -26,6 +26,9 @@ importers: discord.js: specifier: ^14.21.0 version: 14.25.1 + sharp: + specifier: ^0.34.5 + version: 0.34.5 zod: specifier: 4.1.11 version: 4.1.11 @@ -123,6 +126,9 @@ packages: '@drizzle-team/brocli@0.10.2': resolution: {integrity: sha512-z33Il7l5dKjUgGULTqBsQBQwckHh5AbIuxhdsIxDDiZAzBOrZO6q9ogcWC65kU382AfynTfgNumVcNIjuIua6w==} + '@emnapi/runtime@1.10.0': + resolution: {integrity: sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==} + '@esbuild-kit/core-utils@3.3.2': resolution: {integrity: sha512-sPRAnw9CdSsRmEtnsl2WXWdyquogVpB3yZ3dgwJfe8zrOzTsV7cJvmwrKVa+0ma5BoiGJ+BoqkMvawbayKUsqQ==} deprecated: 'Merged into tsx: https://tsx.is' @@ -625,6 +631,143 @@ packages: resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==} engines: {node: '>=18.18'} + '@img/colour@1.1.0': + resolution: {integrity: sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==} + engines: {node: '>=18'} + + '@img/sharp-darwin-arm64@0.34.5': + resolution: {integrity: sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [darwin] + + '@img/sharp-darwin-x64@0.34.5': + resolution: {integrity: sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [darwin] + + '@img/sharp-libvips-darwin-arm64@1.2.4': + resolution: {integrity: sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==} + cpu: [arm64] + os: [darwin] + + '@img/sharp-libvips-darwin-x64@1.2.4': + resolution: {integrity: sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==} + cpu: [x64] + os: [darwin] + + '@img/sharp-libvips-linux-arm64@1.2.4': + resolution: {integrity: sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==} + cpu: [arm64] + os: [linux] + + '@img/sharp-libvips-linux-arm@1.2.4': + resolution: {integrity: sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==} + cpu: [arm] + os: [linux] + + '@img/sharp-libvips-linux-ppc64@1.2.4': + resolution: {integrity: sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==} + cpu: [ppc64] + os: [linux] + + '@img/sharp-libvips-linux-riscv64@1.2.4': + resolution: {integrity: sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==} + cpu: [riscv64] + os: [linux] + + '@img/sharp-libvips-linux-s390x@1.2.4': + resolution: {integrity: sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==} + cpu: [s390x] + os: [linux] + + '@img/sharp-libvips-linux-x64@1.2.4': + resolution: {integrity: sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==} + cpu: [x64] + os: [linux] + + '@img/sharp-libvips-linuxmusl-arm64@1.2.4': + resolution: {integrity: sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==} + cpu: [arm64] + os: [linux] + + '@img/sharp-libvips-linuxmusl-x64@1.2.4': + resolution: {integrity: sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==} + cpu: [x64] + os: [linux] + + '@img/sharp-linux-arm64@0.34.5': + resolution: {integrity: sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + + '@img/sharp-linux-arm@0.34.5': + resolution: {integrity: sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm] + os: [linux] + + '@img/sharp-linux-ppc64@0.34.5': + resolution: {integrity: sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [ppc64] + os: [linux] + + '@img/sharp-linux-riscv64@0.34.5': + resolution: {integrity: sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [riscv64] + os: [linux] + + '@img/sharp-linux-s390x@0.34.5': + resolution: {integrity: sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [s390x] + os: [linux] + + '@img/sharp-linux-x64@0.34.5': + resolution: {integrity: sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + + '@img/sharp-linuxmusl-arm64@0.34.5': + resolution: {integrity: sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + + '@img/sharp-linuxmusl-x64@0.34.5': + resolution: {integrity: sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + + '@img/sharp-wasm32@0.34.5': + resolution: {integrity: sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [wasm32] + + '@img/sharp-win32-arm64@0.34.5': + resolution: {integrity: sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [win32] + + '@img/sharp-win32-ia32@0.34.5': + resolution: {integrity: sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [ia32] + os: [win32] + + '@img/sharp-win32-x64@0.34.5': + resolution: {integrity: sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [win32] + '@ioredis/commands@1.4.0': resolution: {integrity: sha512-aFT2yemJJo+TZCmieA7qnYGQooOS7QfNmYrzGtsYd3g9j5iDP8AimYYAesf79ohjbLG12XxC4nG5DyEnC88AsQ==} @@ -802,6 +945,10 @@ packages: resolution: {integrity: sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==} engines: {node: '>=0.10'} + detect-libc@2.1.2: + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} + engines: {node: '>=8'} + dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -1271,6 +1418,10 @@ packages: engines: {node: '>=10'} hasBin: true + sharp@0.34.5: + resolution: {integrity: sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -1438,6 +1589,11 @@ snapshots: '@drizzle-team/brocli@0.10.2': {} + '@emnapi/runtime@1.10.0': + dependencies: + tslib: 2.8.1 + optional: true + '@esbuild-kit/core-utils@3.3.2': dependencies: esbuild: 0.18.20 @@ -1716,6 +1872,102 @@ snapshots: '@humanwhocodes/retry@0.4.3': {} + '@img/colour@1.1.0': {} + + '@img/sharp-darwin-arm64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-darwin-arm64': 1.2.4 + optional: true + + '@img/sharp-darwin-x64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-darwin-x64': 1.2.4 + optional: true + + '@img/sharp-libvips-darwin-arm64@1.2.4': + optional: true + + '@img/sharp-libvips-darwin-x64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-arm64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-arm@1.2.4': + optional: true + + '@img/sharp-libvips-linux-ppc64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-riscv64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-s390x@1.2.4': + optional: true + + '@img/sharp-libvips-linux-x64@1.2.4': + optional: true + + '@img/sharp-libvips-linuxmusl-arm64@1.2.4': + optional: true + + '@img/sharp-libvips-linuxmusl-x64@1.2.4': + optional: true + + '@img/sharp-linux-arm64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm64': 1.2.4 + optional: true + + '@img/sharp-linux-arm@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm': 1.2.4 + optional: true + + '@img/sharp-linux-ppc64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-ppc64': 1.2.4 + optional: true + + '@img/sharp-linux-riscv64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-riscv64': 1.2.4 + optional: true + + '@img/sharp-linux-s390x@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-s390x': 1.2.4 + optional: true + + '@img/sharp-linux-x64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-x64': 1.2.4 + optional: true + + '@img/sharp-linuxmusl-arm64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-arm64': 1.2.4 + optional: true + + '@img/sharp-linuxmusl-x64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-x64': 1.2.4 + optional: true + + '@img/sharp-wasm32@0.34.5': + dependencies: + '@emnapi/runtime': 1.10.0 + optional: true + + '@img/sharp-win32-arm64@0.34.5': + optional: true + + '@img/sharp-win32-ia32@0.34.5': + optional: true + + '@img/sharp-win32-x64@0.34.5': + optional: true + '@ioredis/commands@1.4.0': {} '@nodelib/fs.scandir@2.1.5': @@ -1910,6 +2162,8 @@ snapshots: denque@2.1.0: {} + detect-libc@2.1.2: {} + dir-glob@3.0.1: dependencies: path-type: 4.0.0 @@ -2362,6 +2616,37 @@ snapshots: semver@7.8.0: {} + sharp@0.34.5: + dependencies: + '@img/colour': 1.1.0 + detect-libc: 2.1.2 + semver: 7.8.0 + optionalDependencies: + '@img/sharp-darwin-arm64': 0.34.5 + '@img/sharp-darwin-x64': 0.34.5 + '@img/sharp-libvips-darwin-arm64': 1.2.4 + '@img/sharp-libvips-darwin-x64': 1.2.4 + '@img/sharp-libvips-linux-arm': 1.2.4 + '@img/sharp-libvips-linux-arm64': 1.2.4 + '@img/sharp-libvips-linux-ppc64': 1.2.4 + '@img/sharp-libvips-linux-riscv64': 1.2.4 + '@img/sharp-libvips-linux-s390x': 1.2.4 + '@img/sharp-libvips-linux-x64': 1.2.4 + '@img/sharp-libvips-linuxmusl-arm64': 1.2.4 + '@img/sharp-libvips-linuxmusl-x64': 1.2.4 + '@img/sharp-linux-arm': 0.34.5 + '@img/sharp-linux-arm64': 0.34.5 + '@img/sharp-linux-ppc64': 0.34.5 + '@img/sharp-linux-riscv64': 0.34.5 + '@img/sharp-linux-s390x': 0.34.5 + '@img/sharp-linux-x64': 0.34.5 + '@img/sharp-linuxmusl-arm64': 0.34.5 + '@img/sharp-linuxmusl-x64': 0.34.5 + '@img/sharp-wasm32': 0.34.5 + '@img/sharp-win32-arm64': 0.34.5 + '@img/sharp-win32-ia32': 0.34.5 + '@img/sharp-win32-x64': 0.34.5 + shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0