feat(docs): bunch of updates and changes and crap
All checks were successful
Pylint / Pylint (3.11) (push) Successful in 43s
All checks were successful
Pylint / Pylint (3.11) (push) Successful in 43s
This commit is contained in:
parent
dd4e319a0a
commit
b7da03f701
9 changed files with 369 additions and 113 deletions
4
.docs/.markdownlint.json
Normal file
4
.docs/.markdownlint.json
Normal file
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"MD013": false,
|
||||
"MD007": { "indent": 4 }
|
||||
}
|
|
@ -1,95 +0,0 @@
|
|||
# Aurora
|
||||
|
||||
Aurora is a fully-featured moderation system. It is heavily inspired by GalacticBot, and is designed to be a more user-friendly alternative to Red's core Mod cogs.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
[p]repo add seacogs https://coastalcommits.com/SeaswimmerTheFsh/SeaCogs
|
||||
[p]cog install seacogs aurora
|
||||
[p]cog load aurora
|
||||
```
|
||||
|
||||
## Commands List
|
||||
|
||||
### Slash Commands
|
||||
|
||||
#### Moderation Commands
|
||||
|
||||
- `/note` - Add a note to a user
|
||||
- Arguments:
|
||||
- `target` - Accepts User IDs and mentions - This is who you're adding a note to
|
||||
- `reason` - Reason for adding a note to the user
|
||||
- `silent` - ***Optional*** - Toggles if the bot will try to send a direct message to the targeted user - Set to the value set by the `[p]moderationset dm` command by default
|
||||
- `/warn` - Warn a user
|
||||
- Arguments:
|
||||
- `target` - Accepts User IDs and mentions - This is who you're warning
|
||||
- `reason` - Reason for warning the user
|
||||
- `silent` - ***Optional*** - Toggles if the bot will try to send a direct message to the targeted user - Set to the value set by the `[p]moderationset dm` command by default
|
||||
- `/mute` - Mute a member - Doesn't work if the member is already muted!
|
||||
- Arguments:
|
||||
- `target` - Accepts User IDs and mentions - Must be in the discord server - This is who you're muting
|
||||
- `duration` - Accepts any combination of duration units, as shown below - Maximum duration of [28 days](https://discord.com/developers/docs/resources/guild#modify-guild-member-json-params)
|
||||
- ``2 d``
|
||||
- ``2 days``
|
||||
- ``1w``
|
||||
- ``1 week``
|
||||
- ``1w 4 days 3h 67minutes``
|
||||
- ``2w5d7h24m``
|
||||
- `reason` - Reason for muting the member
|
||||
- `silent` - ***Optional*** - Toggles if the bot will try to send a direct message to the targeted member - Set to the value set by the `[p]moderationset dm` command by default
|
||||
- `/unmute` - Unmute a member - Only works if the member is muted!
|
||||
- Arguments:
|
||||
- `target` - Accepts User IDs and mentions - Must be in the discord server - This is who you're unmuting
|
||||
- `reason` - ***Optional*** - Reason for unmuting the member
|
||||
- `silent` - ***Optional*** - Toggles if the bot will try to send a direct message to the targeted member - Set to the value set by the `[p]moderationset dm` command by default
|
||||
- `/ban` - Ban a user - Doesn't work if the user is already banned
|
||||
- Arguments:
|
||||
- `target` - Accepts User IDs and mentions - This is who you're banning
|
||||
- `reason` - Reason for banning the user
|
||||
- `duration` - ***Optional*** - Accepts any combination of duration units, as shown in the mute command
|
||||
- `silent` - ***Optional*** - Toggles if the bot will try to send a direct message to the targeted user - Set to the value set by the `[p]moderationset dm` command by default
|
||||
- `/unban` - Unban a user - Only works if the user is banned!
|
||||
- Arguments:
|
||||
- `target` - Accepts User IDs and mentions - This is who you're unbanning
|
||||
- `reason` - ***Optional*** - Reason for unbanning the user
|
||||
- `silent` - ***Optional*** - Toggles if the bot will try to send a direct message to the targeted user - Set to the value set by the `[p]moderationset dm` command by default
|
||||
|
||||
#### Case Commands
|
||||
|
||||
- `/case` - Check the details of a specific case, by case number
|
||||
- Arguments:
|
||||
- `case_number` - Accepts case numbers - See `/history` to get a list of these
|
||||
- `ephemeral` - ***Optional*** - Toggles if the response message will be hidden or not - Defaults to `false`
|
||||
- `/history` - Checks the list of cases for a target, a moderator, or for the server
|
||||
- Arguments - *All arguments of this command are optional*:
|
||||
- `target` - Accepts User IDs and mentions - This is whose moderations you're querying - overrides `moderator` if both are given
|
||||
- `moderator` - Accepts User IDs and mentions - This is the moderator whose moderations you're querying
|
||||
- `pagesize` - Determines how many cases to list per `page` - Defaults to `5` - Maximum of `25`
|
||||
- `page` - Determines which page to check
|
||||
- `ephemeral` - Toggles if the response message will be hidden or not - Defaults to `false`
|
||||
- `export` - Exports the moderation history of the entire server in a `.json` file - Defaults to `false`
|
||||
- Notes:
|
||||
- If `target` and `moderator` are not used, this command will query by all moderations in the server.
|
||||
- `/resolve` - Resolves a case/moderation
|
||||
- Arguments:
|
||||
- `case_number` - Accepts case numbers - See `/history` to get a list of these
|
||||
- `reason` - ***Optional*** - Reason for resolving the case
|
||||
- Notes:
|
||||
- If a `TEMPBAN` or `MUTE` is resolved before it expires, or a `BAN` is resolved, the targeted user will be unbanned/unmuted.
|
||||
- Please resolve cases instead of unmuting/unbanning!
|
||||
|
||||
### Text Commands
|
||||
|
||||
- `[p]moderationset`
|
||||
- This command handles the configuration for the Moderation cog
|
||||
- Sub-commands:
|
||||
- `[p]moderationset dm` - Server Administrator only - Per Guild
|
||||
- This command toggles if the `silent` argument in Moderation slash commands will default to `true` or `false`. Defaults to `false`.
|
||||
- `[p]moderationset ignorebots` - Server Administrator only - Per Guild
|
||||
- This command toggles if the Moderation cog will automatically log moderations from other bots. Defaults to `false`.
|
||||
- `[p]moderationset mysql` - Bot Owner only - Per Bot
|
||||
- This command sends a direct message to the user with a modal to configure the MySQL settings.
|
||||
- **This cog <ins>REQUIRES</ins> a configured MySQL database to function.**
|
||||
- `[p]timedeltaconvert`
|
||||
- Uses the same logic as `/mute` and `/unban` to generate timedeltas from human-readable input.
|
52
.docs/aurora/case-commands.md
Normal file
52
.docs/aurora/case-commands.md
Normal file
|
@ -0,0 +1,52 @@
|
|||
# Case Commands
|
||||
|
||||
/// admonition | These commands are slash commands.
|
||||
type: warning
|
||||
Please make sure to enable them with [`[p]slash enable <command>`](https://docs.discord.red/en/stable/cog_guides/core.html#slash-enable), then sync them with [`[p]slash sync`](https://docs.discord.red/en/stable/cog_guides/core.html#slash-sync).
|
||||
///
|
||||
|
||||
## history
|
||||
|
||||
/// admonition | All of the arguments for this command are optional.
|
||||
type: info
|
||||
///
|
||||
|
||||
- Usage: `/history [target] [moderator] [pagesize] [page] [ephemeral] [inline] [export]`
|
||||
- If both `target` and `moderator` are not present, all moderations for the server will be queried.
|
||||
- `target:` User whose infractions to query, overrides moderator if both are given
|
||||
- `moderator:` Moderator whose infractions to query
|
||||
- `pagesize:` Amount of infractions to list per page
|
||||
- `page:` Page to select
|
||||
- `ephemeral:` Hide the command response
|
||||
- `inline:` Display infractions in a grid arrangement
|
||||
- `export:` Exports the server's entire moderation history to a JSON file
|
||||
|
||||
List previous infractions.
|
||||
|
||||
## resolve
|
||||
|
||||
- Usage: `/resolve <case> [reason]`
|
||||
- `case:` (Required) Case number of the case you're trying to resolve
|
||||
- `reason:` (Optional) Reason for resolving case
|
||||
|
||||
Resolve a specific case.
|
||||
|
||||
## case
|
||||
|
||||
- Usage: `/case <case> [ephemeral] [evidenceformat] [changes] [export]`
|
||||
- `case:` (Required) What case are you looking up?
|
||||
- `ephemeral:` (Optional) Hide the command response
|
||||
- `evidenceformat:` (Optional) …
|
||||
- `changes:` (Optional) List the changes made to the case
|
||||
- `export:` (Optional) Export the case to a JSON file or codeblock
|
||||
|
||||
Check the details of a specific case.
|
||||
|
||||
## edit
|
||||
|
||||
- Usage: `/edit <case> <reason> [duration]`
|
||||
- `case:` (Required) What case are you editing?
|
||||
- `reason:` (Required) What is the new reason?
|
||||
- `duration:` (Optional) What is the new duration? Does not reapply the moderation if it has already expired.
|
||||
|
||||
Edit the reason of a specific case.
|
204
.docs/aurora/configuration.md
Normal file
204
.docs/aurora/configuration.md
Normal file
|
@ -0,0 +1,204 @@
|
|||
# Configuration
|
||||
|
||||
## auroraset
|
||||
- Usage: `[p]auroraset`
|
||||
- Aliases: `moderationset, modset, moderationsettings, aurorasettings, and auroraconfig`
|
||||
|
||||
Manage moderation commands.
|
||||
|
||||
### auroraset ignorebots
|
||||
- Usage: `[p]auroraset ignorebots`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Toggle if the cog should ignore other bots' moderations.
|
||||
|
||||
### auroraset user
|
||||
- Usage: `[p]auroraset user`
|
||||
|
||||
Manage configurations for user configuration options.
|
||||
|
||||
#### auroraset user history
|
||||
- Usage: `[p]auroraset user history`
|
||||
|
||||
Manage configuration for the /history command.
|
||||
|
||||
##### auroraset user history inline
|
||||
- Usage: `[p]auroraset user history inline`
|
||||
|
||||
Manage configuration for the /history command's inline argument.
|
||||
|
||||
###### auroraset user history inline toggle
|
||||
- Usage: `[p]auroraset user history inline toggle <enabled>`
|
||||
|
||||
Enable the /history command's inline argument by default.
|
||||
|
||||
##### auroraset user history inline pagesize
|
||||
- Usage: `[p]auroraset user history inline pagesize <pagesize>`
|
||||
|
||||
Set the amount of cases to display per page.
|
||||
|
||||
#### auroraset user history pagesize
|
||||
- Usage: `[p]auroraset user history pagesize <pagesize>`
|
||||
|
||||
Set the amount of cases to display per page.
|
||||
|
||||
#### auroraset user history ephemeral
|
||||
- Usage: `[p]auroraset user history ephemeral <enabled>`
|
||||
- Aliases: `hidden and hide`
|
||||
|
||||
Toggle if the /history command should be ephemeral.
|
||||
|
||||
### auroraset user autoevidence
|
||||
- Usage: `[p]auroraset user autoevidence <enabled>`
|
||||
|
||||
Toggle if the evidenceformat codeblock should be sent automatically.
|
||||
|
||||
## auroraset server
|
||||
- Usage: `[p]auroraset server`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Manage default configurations for user configuration options, per server.
|
||||
|
||||
### auroraset server history
|
||||
- Usage: `[p]auroraset server history`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Manage configuration for the /history command.
|
||||
|
||||
#### auroraset server history inline
|
||||
- Usage: `[p]auroraset server history inline`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Manage configuration for the /history command's inline argument.
|
||||
|
||||
##### auroraset server history inline pagesize
|
||||
- Usage: `[p]auroraset server history inline pagesize <pagesize>`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Set the amount of cases to display per page.
|
||||
|
||||
##### auroraset server history inline toggle
|
||||
- Usage: `[p]auroraset server history inline toggle <enabled>`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Enable the /history command's inline argument by default.
|
||||
|
||||
#### auroraset server history ephemeral
|
||||
- Usage: `[p]auroraset server history ephemeral <enabled>`
|
||||
- Restricted to: `ADMIN`
|
||||
- Aliases: `hidden and hide`
|
||||
|
||||
Toggle if the /history command should be ephemeral.
|
||||
|
||||
#### auroraset server history pagesize
|
||||
- Usage: `[p]auroraset server history pagesize <pagesize>`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Set the amount of cases to display per page.
|
||||
|
||||
### auroraset server autoevidence
|
||||
- Usage: `[p]auroraset server autoevidence <enabled>`
|
||||
|
||||
Toggle if the evidenceformat codeblock should be sent automatically.
|
||||
|
||||
## auroraset showmoderator
|
||||
- Usage: `[p]auroraset showmoderator`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Toggle if the cog should show the moderator in the case embed when dming a user.
|
||||
|
||||
## auroraset immunity
|
||||
- Usage: `[p]auroraset immunity`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Manage configuration for immune roles.
|
||||
|
||||
### auroraset immunity add
|
||||
- Usage: `[p]auroraset immunity add <role>`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Add a role to the immune roles list.
|
||||
|
||||
### auroraset immunity remove
|
||||
- Usage: `[p]auroraset immunity remove <role>`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Remove a role from the immune roles list.
|
||||
|
||||
### auroraset immunity list
|
||||
- Usage: `[p]auroraset immunity list`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
List all immune roles.
|
||||
|
||||
## auroraset permissions
|
||||
- Usage: `[p]auroraset permissions`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Toggle whether the bot will check for discord permissions.
|
||||
|
||||
## auroraset logchannel
|
||||
- Usage: `[p]auroraset logchannel [channel=None]`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Set a channel to log infractions to.
|
||||
|
||||
## auroraset import
|
||||
- Usage: `[p]auroraset import`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Import moderations from other bots.
|
||||
|
||||
### auroraset import galacticbot
|
||||
- Usage: `[p]auroraset import galacticbot`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Import moderations from GalacticBot.
|
||||
|
||||
### auroraset import aurora
|
||||
- Usage: `[p]auroraset import aurora`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Import moderations from another bot using Aurora.
|
||||
|
||||
## auroraset dm
|
||||
- Usage: `[p]auroraset dm`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Toggle automatically messaging moderated users.<br/><br/>This option can be overridden by specifying the `silent` argument in any moderation command.
|
||||
|
||||
## auroraset list
|
||||
- Usage: `[p]auroraset list`
|
||||
- Aliases: `view and show`
|
||||
|
||||
List all moderation settings.
|
||||
|
||||
## auroraset blacklist
|
||||
- Usage: `[p]auroraset blacklist`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Manage configuration for the /blacklist command.
|
||||
|
||||
### auroraset blacklist list
|
||||
- Usage: `[p]auroraset blacklist list`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
List all blacklist types.
|
||||
|
||||
### auroraset blacklist remove
|
||||
- Usage: `[p]auroraset blacklist remove <role>`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Remove a role's blacklist type.
|
||||
|
||||
### auroraset blacklist add
|
||||
- Usage: `[p]auroraset blacklist add <role> <duration>`
|
||||
- Restricted to: `ADMIN`
|
||||
|
||||
Add a role to the blacklist.
|
||||
|
||||
# timedeltaconvert
|
||||
- Usage: `[p]timedeltaconvert <duration>`
|
||||
- Aliases: `tdc`
|
||||
|
||||
This command converts a duration to a [`timedelta`](https://docs.python.org/3/library/datetime.html#datetime.timedelta) Python object.<br/><br/>**Example usage**<br/>`[p]timedeltaconvert 1 day 15hr 82 minutes 52s`<br/>**Output**<br/>`1 day, 16:22:52`
|
11
.docs/aurora/index.md
Normal file
11
.docs/aurora/index.md
Normal file
|
@ -0,0 +1,11 @@
|
|||
# Aurora
|
||||
|
||||
Aurora is a fully-featured moderation system. It is heavily inspired by GalacticBot, and is designed to be a more user-friendly alternative to Red's core Mod cogs.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
[p]repo add seacogs https://coastalcommits.com/SeaswimmerTheFsh/SeaCogs
|
||||
[p]cog install seacogs aurora
|
||||
[p]cog load aurora
|
||||
```
|
82
.docs/aurora/moderation-commands.md
Normal file
82
.docs/aurora/moderation-commands.md
Normal file
|
@ -0,0 +1,82 @@
|
|||
# Moderation Commands
|
||||
|
||||
/// admonition | These commands are slash commands.
|
||||
type: warning
|
||||
Please make sure to enable them with [`[p]slash enable <command>`](https://docs.discord.red/en/stable/cog_guides/core.html#slash-enable), then sync them with [`[p]slash sync`](https://docs.discord.red/en/stable/cog_guides/core.html#slash-sync).
|
||||
///
|
||||
|
||||
## note
|
||||
|
||||
- Usage: `/note <target> <reason> [silent]`
|
||||
- `target:` (Required) Who are you noting?
|
||||
- `reason:` (Required) Why are you noting this user?
|
||||
- `silent:` (Optional) Should the user be messaged?
|
||||
|
||||
Add a note to a user.
|
||||
|
||||
## warn
|
||||
|
||||
- Usage: `/warn <target> <reason> [silent]`
|
||||
- `target:` (Required) Who are you warning?
|
||||
- `reason:` (Required) Why are you warning this user?
|
||||
- `silent:` (Optional) Should the user be messaged?
|
||||
|
||||
Warn a user.
|
||||
|
||||
## blacklist
|
||||
|
||||
- Usage: `/blacklist <target> <role> <reason> [silent]`
|
||||
- `target:` (Required) Who are you blacklisting?
|
||||
- `role:` (Required) What blacklist type are you applying to the target?
|
||||
- `reason:` (Required) Why are you blacklisting this user?
|
||||
- `silent:` (Optional) Should the user be messaged?
|
||||
|
||||
Add a blacklist role to a user.
|
||||
|
||||
## mute
|
||||
|
||||
- Usage: `/mute <target> <duration> <reason> [silent]`
|
||||
- `target:` (Required) Who are you unbanning?
|
||||
- `duration:` (Required) How long are you muting this user for?
|
||||
- `reason:` (Required) Why are you unbanning this user?
|
||||
- `silent:` (Optional) Should the user be messaged?
|
||||
|
||||
Mute a user.
|
||||
|
||||
## unmute
|
||||
|
||||
- Usage: `/unmute <target> [reason] [silent]`
|
||||
- `target:` (Required) Who are you unmuting?
|
||||
- `reason:` (Optional) Why are you unmuting this user?
|
||||
- `silent:` (Optional) Should the user be messaged?
|
||||
|
||||
Unmute a user.
|
||||
|
||||
## kick
|
||||
|
||||
- Usage: `/kick <target> <reason> [silent]`
|
||||
- `target:` (Required) Who are you kicking?
|
||||
- `reason:` (Required) Why are you kicking this user?
|
||||
- `silent:` (Optional) Should the user be messaged?
|
||||
|
||||
Kick a user.
|
||||
|
||||
## ban
|
||||
|
||||
- Usage: `/ban <target> <reason> [duration] [delete_messages] [silent]`
|
||||
- `target:` (Required) Who are you banning?
|
||||
- `reason:` (Required) Why are you banning this user?
|
||||
- `duration:` (Optional) How long are you banning this user for?
|
||||
- `delete_messages:` (Optional) How many days of messages to delete?
|
||||
- `silent:` (Optional) Should the user be messaged?
|
||||
|
||||
Ban a user.
|
||||
|
||||
## unban
|
||||
|
||||
- Usage: `/unban <target> [reason] [silent]`
|
||||
- `target:` (Required) Who are you unbanning?
|
||||
- `reason:` (Optional) Why are you unbanning this user?
|
||||
- `silent:` (Optional) Should the user be messaged?
|
||||
|
||||
Unban a user.
|
|
@ -12,16 +12,16 @@ Nerdify allows you to nerdify other people's text.
|
|||
|
||||
## Commands
|
||||
|
||||
### `[p]nerdify`
|
||||
### nerdify
|
||||
|
||||
::: nerdify.nerdify.Nerdify.nerdify
|
||||
- Usage: `[p]nerdify [text]`
|
||||
- Aliases: `nerd`
|
||||
|
||||
Nerdify the replied to message, previous message, or your own text.
|
||||
If `[text]` is not provided, the bot will try to nerdify either the previous message or the replied to message, if the invocation message is a reply.
|
||||
|
||||
## Method Reference
|
||||
|
||||
### `nerdify_text`
|
||||
|
||||
::: nerdify.nerdify.Nerdify.nerdify_text
|
||||
|
||||
### `type_message`
|
||||
|
||||
::: nerdify.nerdify.Nerdify.type_message
|
||||
|
|
12
mkdocs.yml
12
mkdocs.yml
|
@ -11,13 +11,17 @@ site_description: Documentation for my Red-DiscordBot Cogs.
|
|||
|
||||
nav:
|
||||
- Home: index.md
|
||||
- Aurora: aurora.md
|
||||
- Aurora:
|
||||
- Home: aurora/index.md
|
||||
- Moderation Commands: aurora/moderation-commands.md
|
||||
- Case Commands: aurora/case-commands.md
|
||||
- Configuration: aurora/configuration.md
|
||||
- Nerdify: nerdify.md
|
||||
|
||||
plugins:
|
||||
- git-authors
|
||||
- search
|
||||
# - social
|
||||
- social
|
||||
- git-revision-date-localized:
|
||||
enable_creation_date: true
|
||||
type: timeago
|
||||
|
@ -30,7 +34,8 @@ plugins:
|
|||
docstring_options:
|
||||
ignore_imit_summary: true
|
||||
summary: true
|
||||
show_root_toc_entry: false
|
||||
show_root_toc_entry: true
|
||||
show_root_heading: true
|
||||
filters:
|
||||
- "!^___"
|
||||
|
||||
|
@ -63,6 +68,7 @@ theme:
|
|||
- content.code.annotate
|
||||
- content.code.copy
|
||||
- navigation.instant
|
||||
- navigation.tabs
|
||||
- search.suggest
|
||||
- search.highlight
|
||||
- search.share
|
||||
|
|
|
@ -21,15 +21,7 @@ class Nerdify(commands.Cog):
|
|||
|
||||
@commands.command(aliases=["nerd"])
|
||||
async def nerdify(self, ctx: commands.Context, *, text: Optional[str] = None) -> None:
|
||||
"""Nerdify the replied to message, previous message, or your own text.
|
||||
|
||||
Example:
|
||||
``[p]nerdify hello world!``
|
||||
> "hello world!" :nerd:
|
||||
|
||||
Args:
|
||||
text: The text to nerdify. If not provided, the bot will try to nerdify either the previous message or the replied to message, if the invocation message is a reply.
|
||||
"""
|
||||
"""Nerdify the replied to message, previous message, or your own text."""
|
||||
if not text:
|
||||
if hasattr(ctx.message, "reference") and ctx.message.reference:
|
||||
with suppress(
|
||||
|
|
Loading…
Reference in a new issue