mirror of
https://github.com/ZeppelinBot/Zeppelin.git
synced 2025-03-15 05:41:51 +00:00
Show self-grantable roles in docs, add configuration guide
This commit is contained in:
parent
401eb21b3e
commit
5f8c42f575
1 changed files with 54 additions and 2 deletions
|
@ -1,7 +1,7 @@
|
|||
import { decorators as d, IPluginOptions } from "knub";
|
||||
import { GuildChannel, Message, Role, TextChannel } from "eris";
|
||||
import { asSingleLine, chunkArray, errorMessage, sorter, successMessage, tDeepPartial, trimLines } from "../utils";
|
||||
import { ZeppelinPlugin } from "./ZeppelinPlugin";
|
||||
import { trimPluginDescription, ZeppelinPlugin } from "./ZeppelinPlugin";
|
||||
import * as t from "io-ts";
|
||||
|
||||
const RoleMap = t.record(t.string, t.array(t.string));
|
||||
|
@ -30,9 +30,61 @@ const defaultSelfGrantableRoleEntry: t.TypeOf<typeof PartialRoleEntry> = {
|
|||
|
||||
export class SelfGrantableRolesPlugin extends ZeppelinPlugin<TConfigSchema> {
|
||||
public static pluginName = "self_grantable_roles";
|
||||
public static showInDocs = false;
|
||||
public static showInDocs = true;
|
||||
public static configSchema = ConfigSchema;
|
||||
|
||||
public static pluginInfo = {
|
||||
prettyName: "Self-grantable roles",
|
||||
description: trimPluginDescription(`
|
||||
Allows users to grant themselves roles via a command
|
||||
`),
|
||||
configurationGuide: trimPluginDescription(`
|
||||
### Basic configuration
|
||||
In this example, users can add themselves platform roles on the channel 473087035574321152 by using the
|
||||
\`!role\` command. For example, \`!role pc ps4\` to add both the "pc" and "ps4" roles as specified below.
|
||||
|
||||
~~~yml
|
||||
self_grantable_roles:
|
||||
config:
|
||||
entries:
|
||||
basic:
|
||||
roles:
|
||||
"543184300250759188": ["pc", "computer"]
|
||||
"534710505915547658": ["ps4", "ps", "playstation"]
|
||||
"473085927053590538": ["xbox", "xb1", "xb"]
|
||||
overrides:
|
||||
- channel: "473087035574321152"
|
||||
config:
|
||||
entries:
|
||||
basic:
|
||||
roles:
|
||||
can_use: true
|
||||
~~~
|
||||
|
||||
### Maximum number of roles
|
||||
This is identical to the basic example above, but users can only choose 1 role.
|
||||
|
||||
~~~yml
|
||||
self_grantable_roles:
|
||||
config:
|
||||
entries:
|
||||
basic:
|
||||
roles:
|
||||
"543184300250759188": ["pc", "computer"]
|
||||
"534710505915547658": ["ps4", "ps", "playstation"]
|
||||
"473085927053590538": ["xbox", "xb1", "xb"]
|
||||
max_roles: 1
|
||||
overrides:
|
||||
- channel: "473087035574321152"
|
||||
config:
|
||||
entries:
|
||||
basic:
|
||||
roles:
|
||||
can_use: true
|
||||
~~~
|
||||
`),
|
||||
};
|
||||
|
||||
public static getStaticDefaultOptions(): IPluginOptions<TConfigSchema> {
|
||||
return {
|
||||
config: {
|
||||
|
|
Loading…
Add table
Reference in a new issue