ZeppelinBot / Zeppelin

Zeppelin is a moderation bot for Discord, designed with large servers and reliability in mind.
https://zeppelin.gg/
Other
389 stars 192 forks source link

Feat/application commands #455

Open LilyBergonzat opened 8 months ago

LilyBergonzat commented 8 months ago

I started from Obliie's pull request and started implementing slash commands.

Break down of the commits

I think it makes sense to review this per commit. The first few ones are Obliie's, and the merge commit, so I will omit those and only explain mine.

First commit: WIP: Note Slash Command

I needed a proof of concept. I took the Note command because it seemed simple enough, but not too simple.

Second commit: feat: first batch of emojis 🎉

I can't believe I am noticing just now that I had a brainfart while writing the name of this commit... I was so glad I wanted to name it "First batch of slash commands", but then I felt like it needed an emoji. I guess somewhere along the line I typed "emojis" instead of "slash commands" :') . But yeah, this is supposed to be the first batch of slash commands.

Following the note command's proof of concept, I did the same thing on all the other commands of the ModActions plugin. It was a huge amount of work and I had to modify a bunch of util functions!

Third commit: Added Discord attachment link reaction, fixed emoji configuration and moved util functions

This one felt like it would get the best of me, it seemed so easy but ended up being so much work. Discord attachment links are only valid for a limited amount of time (I thought it was a month, but turns out it's like two weeks? Or maybe a week only? But anyways they said it could change so yeah), so basically using those links for case archives is no bueno.

Conclusion

This is a huge pull request. I was not able to test everything and make sure there are no bugs. I tested what I could, obviously, but I wouldn't be surprised if we were to find a lot of bugs in this, even I am not enough people to test this many cases.

I think what I will do is merge this on VANGUARD, and let our mods do the testing. They will probably find bugs, I will fix them in this PR and merge again on VANGUARD. Eventually, we should have a pretty stable version!

cla-bot[bot] commented 8 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

cla-bot[bot] commented 8 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

cla-bot[bot] commented 8 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

cla-bot[bot] commented 8 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

cla-bot[bot] commented 8 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

cla-bot[bot] commented 8 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

TheKodeToad commented 8 months ago

Not sure if feedback is wanted but perhaps ephemeral commands should be optional in some way? Otherwise you don't really have parity with the message commands where they were publicly visible (which I think was quite nice for transparency or even for moderators to find out who is spamming reminders :P)

cla-bot[bot] commented 8 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

cla-bot[bot] commented 8 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

cla-bot[bot] commented 8 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

cla-bot[bot] commented 8 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

cla-bot[bot] commented 7 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

cla-bot[bot] commented 7 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

cla-bot[bot] commented 7 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

cla-bot[bot] commented 7 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

cla-bot[bot] commented 7 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

cla-bot[bot] commented 7 months ago

Thank you for contributing to Zeppelin! We require contributors to sign our Contributor License Agreement (CLA). To let us review and merge your code, please visit https://github.com/ZeppelinBot/CLA to sign the CLA!

Pukimaa commented 7 months ago

Also I noticed that even though knub was updated in the package lock, it wasn't in the package.json itself, thus the newest version was not installed and there were some type errors. You might wanna fix that too.

Dragory commented 2 months ago

I've just merged this to the "next" branch, though GitHub won't recognize the PR as merged until that is also merged into master.

Thank you again for the absolutely amazing work on this PR!