diff options
| author | Fuwn <[email protected]> | 2025-10-05 20:23:17 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2025-10-05 20:23:17 -0700 |
| commit | 63dc8ef713a3c3ad240ddd40799bc2807ee8d7d6 (patch) | |
| tree | 6ac5b66eeb36b4519ea3ac62dbbd0d124266c563 /packages | |
| parent | fix(gateway:voiceConnection): Improve error handling (diff) | |
| download | umabotdiscord-63dc8ef713a3c3ad240ddd40799bc2807ee8d7d6.tar.xz umabotdiscord-63dc8ef713a3c3ad240ddd40799bc2807ee8d7d6.zip | |
feat(gateway:pin): Unpin if pinned
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/gateway/src/commands/pin.ts | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/packages/gateway/src/commands/pin.ts b/packages/gateway/src/commands/pin.ts index 1667c50..a6babc3 100644 --- a/packages/gateway/src/commands/pin.ts +++ b/packages/gateway/src/commands/pin.ts @@ -73,13 +73,37 @@ export const handlePinCommand = async (message: Message) => { } if (targetMessage.pinned) { - await replyWithCleanup(message, "❌ Message is already pinned."); - + await message.delete(); + await targetMessage.unpin(); + + if (targetChannel.isTextBased()) { + const replyMessage = await (targetChannel as any).send("📌 Message unpinned successfully."); + + setTimeout(async () => { + try { + await replyMessage.delete(); + } catch (error) { + console.error("Failed to delete unpin confirmation message:", error); + } + }, 5000); + } return; } await message.delete(); await targetMessage.pin(); + + if (targetChannel.isTextBased()) { + const replyMessage = await (targetChannel as any).send("📌 Message pinned successfully."); + + setTimeout(async () => { + try { + await replyMessage.delete(); + } catch (error) { + console.error("Failed to delete pin confirmation message:", error); + } + }, 5000); + } } catch (error) { console.error("Error pinning message:", error); |