Skip to content

Feat: Added role icons, and gave some care to forums. - #33

Open
LittleEngineer wants to merge 19 commits into
Botloader:masterfrom
LittleEngineer:master
Open

Feat: Added role icons, and gave some care to forums.#33
LittleEngineer wants to merge 19 commits into
Botloader:masterfrom
LittleEngineer:master

Conversation

@LittleEngineer

@LittleEngineer LittleEngineer commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

Here's the promised support for role icons. As well as some extra stuff for forums.

Features:

  • Roles:
    • Role icons can now be set/unset
    • Role emojis can now be unset by passing null when editing the role
  • Forum:
    • Forum tags can now be created/updated (a snowflake of zero does not cause any errors)
    • Default reaction emoji can be set
    • Default layout can be set
    • Default sorting order can be set
  • Public threads:
    • A pinned property is now available to check if a forum thread is pinned
    • Helper methods to both pin and unpin forum threads
  • Text/forum channels now have channel flags

Regarding the public threads, I'm a bit unsure if it would be better to expose the full channel flags, even though only the pinned property exists on it. A possible downside of not exposing the full flags is that using the pin/unpin methods could wipe out any additional flags Discord may (or may not) decide to add in the future. Also, it appears trying to pin another post requires the old one to be unpinned. I'm not too sure on how to find which one the currently pinned thread is.

Edit: I also updated the Cargo.toml file to reference your own branch of Twilight rather than mine, and updated the Cargo.lock file (a consequence of needing to resolve a merge conflict).

Multiple components have been updated:
* Twilight has been updated to version 17.1 which brings with it new components for both messages and modals.
* User and message command validation now correctly allows mixed case and space characters.
* VSCode extension has been updated to allow typings data to be downloaded from a different botloader bost.
…mmand permissions with the command builders.
Added validation to ensure forwarded messages originate from the same guild a message is being created within.
…ed common code for resolving interaction data to a common class of helper functions. Component code has also altered to remove multiple constructors except for on the Label component for convenience when using text input components.
Added a `setRequired` method for select menu components, and rectified workers crashing as a result of the premium button style missing (`todo!()`). Without this, VM workers would crash at random and require a full scheduler restart.
@jonastar

Copy link
Copy Markdown
Contributor

There's been some changes to the repo, I've also added a changelog.md where you can attach the changelog you made in the unreleased section (feel free to reference this PR as well in the changelog)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants