/[sudobot]/trunk/src/utils/Help.ts
ViewVC logotype

Diff of /trunk/src/utils/Help.ts

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 107 by rakin, Mon Jul 29 17:28:37 2024 UTC revision 393 by rakin, Mon Jul 29 17:29:59 2024 UTC
# Line 1  Line 1 
1    /**
2    * This file is part of SudoBot.
3    *
4    * Copyright (C) 2021-2022 OSN Inc.
5    *
6    * SudoBot is free software; you can redistribute it and/or modify it
7    * under the terms of the GNU Affero General Public License as published by
8    * the Free Software Foundation, either version 3 of the License, or
9    * (at your option) any later version.
10    *
11    * SudoBot is distributed in the hope that it will be useful, but
12    * WITHOUT ANY WARRANTY; without even the implied warranty of
13    * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14    * GNU Affero General Public License for more details.
15    *
16    * You should have received a copy of the GNU Affero General Public License
17    * along with SudoBot. If not, see <https://www.gnu.org/licenses/>.
18    */
19    
20  import { CommandHelpData } from "../types/CommandHelpData";  import { CommandHelpData } from "../types/CommandHelpData";
21    
22  export default <CommandHelpData[]> [  export default <CommandHelpData[]> [
# Line 52  export default <CommandHelpData[]> [ Line 71  export default <CommandHelpData[]> [
71          legacyCommand: true          legacyCommand: true
72      },      },
73      {      {
74            name: 'antijoin',
75            shortBrief: "Enable the AntiJoin shield.",
76            description: "Enables the AntiJoin shield.\nWhile AntiJoin is active, users will not be able to join the server (they will be kicked). This is useful when handling a raid.",
77            structure: "",
78            example: "`%%antijoin",
79            notes: null,
80            slashCommand: true,
81            legacyCommand: true
82        },
83        {
84          name: 'appeal',          name: 'appeal',
85          shortBrief: "Send a message to staff members about a punishment appeal.",          shortBrief: "Send a message to staff members about a punishment appeal.",
86          description: null,          description: null,
# Line 65  export default <CommandHelpData[]> [ Line 94  export default <CommandHelpData[]> [
94          name: 'avatar',          name: 'avatar',
95          shortBrief: "Show someone's avatar.",          shortBrief: "Show someone's avatar.",
96          description: null,          description: null,
97          structure: "[UserID|UserTag|Mention]=CURRENT_USER",          structure: "[UserID|UserTag|Mention=CURRENT_USER]",
98          example: "`%%avatar 385753607325075320`\n`%%avatar`",          example: "`%%avatar 385753607325075320`\n`%%avatar`",
99          notes: null,          notes: null,
100          slashCommand: true,          slashCommand: true,
101          legacyCommand: true          legacyCommand: true
102      },      },
103      {      {
104            name: 'avatarlookup',
105            shortBrief: "Lookup someone's avatar!",
106            description: "Lookup someone's avatar, using Google Image Search.\nThis command is a subcommand of the `/lookup` slash command.",
107            structure: "<UserID|Mention>",
108            example: "`%%avatarlookup 385753607325075320`\n`",
109            notes: null,
110            slashCommand: true,
111            legacyCommand: true
112        },
113        {
114          name: 'ban',          name: 'ban',
115          shortBrief: "Ban someone in this server.",          shortBrief: "Ban someone in this server.",
116          description: "Ban a user in this server.",          description: "Ban a user in this server.",
# Line 99  export default <CommandHelpData[]> [ Line 138  export default <CommandHelpData[]> [
138          legacyCommand: true          legacyCommand: true
139      },      },
140      {      {
         name: 'bean',  
         shortBrief: "Bean someone in this server.",  
         description: "Bean someone. It doesn't do anything except pretending.",  
         structure: "<UserID|UserTag|Mention> [Reason]",  
         example: "`%%bean 385753607325075320`\n`%%bean @Someone You are spamming a lot`",  
         notes: null,  
         slashCommand: true,  
         legacyCommand: true  
     },  
     {  
141          name: 'cat',          name: 'cat',
142          shortBrief: "Get a random kitty picture.",          shortBrief: "Get a random kitty picture.",
143          description: "Fetches a random cat picture from `thecatapi.com` API.",          description: "Fetches a random cat picture from `thecatapi.com` API.",
# Line 129  export default <CommandHelpData[]> [ Line 158  export default <CommandHelpData[]> [
158          legacyCommand: true          legacyCommand: true
159      },      },
160      {      {
161            name: 'config',
162            shortBrief: "View or change the config options.",
163            description: "Configure the bot settings. This command is for advanced users.\nIf the user only gives one argument (setting key), then the value of the setting key will be shown. Otherwise the setting key will be modified with the given parameters.",
164            structure: "<key> [value]",
165            example: "`%%config spam_filter.enabled false`\n`%%config prefix -`",
166            notes: null,
167            slashCommand: true,
168            legacyCommand: true
169        },
170        {
171          name: 'delqueue',          name: 'delqueue',
172          shortBrief: "Delete a queue job.",          shortBrief: "Delete a queue job.",
173          description: "Delete a queued command by its ID.",          description: "Delete a queued command by its ID.",
# Line 169  export default <CommandHelpData[]> [ Line 208  export default <CommandHelpData[]> [
208          legacyCommand: true          legacyCommand: true
209      },      },
210      {      {
211            name: 'embed',
212            shortBrief: "Build, send and make schemas of embeds!",
213            description: "Build, send and make schemas of embeds. Schemas are special kind of text which can be used in various commands to represent an embed.\n\n**Subcommands**:\n\n`send` - Build and send an embed from the given input.\n`schema` - Builds an embed and returns back the JSON schema of the embed so that you can use it in other places!\n`build` - Builds an embed from a JSON schema.",
214            structure: "<subcommand> <...args>",
215            example: "`/embed send title:Hello world description:This is an embed, awesome!`\n`/embed schema title:Hello world description:This is an embed, awesome!`\n`/embed build json_schema:embed:{\"title\": \"Hello world\", \"description\": \"This is an embed, awesome!\", \"fields\": []}`",
216            notes: null,
217            slashCommand: true,
218            legacyCommand: false
219        },
220        {
221          name: 'emoji',          name: 'emoji',
222          shortBrief: "Get info about an emoji. Must be guild (server) specific emoji.",          shortBrief: "Get info about an emoji.",
223          description: null,          description: null,
224          structure: "<GuildEmoji|GuildEmojiName>",          structure: "<GuildEmojiID|GuildEmoji|GuildEmojiName|ExternalEmoji|ExternalEmojiID>",
225          example: "`%%emoji check`\n`%%emoji error`",          example: "`%%emoji check`\n`%%emoji error`",
226          notes: null,          notes: null,
227          slashCommand: false,          slashCommand: false,
228          legacyCommand: true          legacyCommand: true
229      },      },
230      {      {
231            name: 'eval',
232            shortBrief: "Execute raw Javascript code.\n*This command is owner-only*.",
233            description: null,
234            structure: "<code>",
235            example: "`%%eval console.log(\"Hello world!\")`",
236            notes: null,
237            slashCommand: true,
238            legacyCommand: true
239        },
240        {
241          name: 'expire',          name: 'expire',
242          shortBrief: "Echo (re-send) a message and delete it after the given time.",          shortBrief: "Echo (re-send) a message and delete it after the given time.",
243          description: "Re-send a message from the bot and delete it automatically after the given time interval.",          description: "Re-send a message from the bot and delete it automatically after the given time interval.",
# Line 199  export default <CommandHelpData[]> [ Line 258  export default <CommandHelpData[]> [
258          legacyCommand: true          legacyCommand: true
259      },      },
260      {      {
261            name: 'guildlookup',
262            shortBrief: "Lookup any Public Discord server/guild!",
263            description: "Lookup any Public Discord server/guild!\nThis command is a subcommand of the `/lookup` slash command.",
264            structure: "<UserID|Mention>",
265            example: "`%%guildlookup 385753607325075320`\n`",
266            notes: null,
267            slashCommand: true,
268            legacyCommand: true
269        },
270        {
271            name: 'hash',
272            shortBrief: "Generate a hash of the given text input.",
273            description: null,
274            structure: "<algorithm> <input>",
275            example: "`%%hash sha1 abc`",
276            notes: null,
277            slashCommand: true,
278            legacyCommand: true
279        },
280        {
281          name: 'help',          name: 'help',
282          shortBrief: "Show this help and exit.",          shortBrief: "Show this help and exit.",
283          description: null,          description: null,
# Line 262  export default <CommandHelpData[]> [ Line 341  export default <CommandHelpData[]> [
341          name: 'lock',          name: 'lock',
342          shortBrief: "Lock a specific channel.",          shortBrief: "Lock a specific channel.",
343          description: "Makes the given channel read-only for the general members. If no channel is present, the current channel will be locked.",          description: "Makes the given channel read-only for the general members. If no channel is present, the current channel will be locked.",
344          structure: "[ChannelID|ChannelMention] [...options]",          structure: "[ChannelID|ChannelMention]",
345          example: "`%%lock 385753607325075320`\n`%%lock #general`\n`%%lock`",          example: "`%%lock 385753607325075320`\n`%%lock #general`\n`%%lock`",
346          notes: null,          notes: null,
         options: {  
             "--no-send": "Do not send a confirmation message to the locked channel",  
         },  
347          slashCommand: true,          slashCommand: true,
348          legacyCommand: true          legacyCommand: true
349      },      },
350      {      {
351          name: 'lockall',          name: 'lockall',
352          shortBrief: "Lock all the channels given in the configuration.",          shortBrief: "Lock all given channels, in-bulk.",
353          description: "Makes the given channels read-only for the general members.",          description: "Makes the given channels read-only for the general members.",
354          structure: "<...ChannelMention|ChannelIDs> [--raid] [-r=ROLEMENTION|ROLEID]",          structure: "<...ChannelMention|ChannelIDs> [--raid]",
355          example: "`%%lockall 2572562578247841786\n`%%lockall 2572562578247841786 2572562578247841782 2572562578247841783`\n`%%lockall 2572562578247841786 2572562578247841785 -r @General`",          example: "`%%lockall 2572562578247841786\n`%%lockall 2572562578247841786 2572562578247841782 2572562578247841783`\n`%%lockall 2572562578247841786 2572562578247841785`",
356          notes: null,          notes: null,
357          options: {          options: {
358              "--raid": "Lock all raid protected channels",              "--raid": "Lock all raid protected channels",
# Line 285  export default <CommandHelpData[]> [ Line 361  export default <CommandHelpData[]> [
361          legacyCommand: true          legacyCommand: true
362      },      },
363      {      {
364            name: 'lookup',
365            shortBrief: "Lookup something.",
366            description: null,
367            structure: "[ChannelID|ChannelMention]",
368            subcommands: {
369                "user": "Lookup a user around Discord",
370                "guild": "Lookup a Public Discord Server"
371            },
372            example: "`/lookup user user:384624924565405777`",
373            notes: null,
374            slashCommand: true,
375            legacyCommand: false
376        },
377        {
378          name: 'massban',          name: 'massban',
379          shortBrief: 'Mass ban (multiple) users',          shortBrief: 'Mass ban (multiple) users',
380          description: null,          description: null,
# Line 369  export default <CommandHelpData[]> [ Line 459  export default <CommandHelpData[]> [
459      },      },
460      {      {
461          name: 'profile',          name: 'profile',
462          shortBrief: 'Show server profile',          shortBrief: 'Show the server profile.',
463          description: null,          description: null,
464          structure: '[UserID|UserTag|UserMention]',          structure: '[UserID|UserTag|UserMention]',
465          example: '`%%profile`\n`%%profile @Someone`',          example: '`%%profile`\n`%%profile @Someone`',
# Line 428  export default <CommandHelpData[]> [ Line 518  export default <CommandHelpData[]> [
518          legacyCommand: true          legacyCommand: true
519      },      },
520      {      {
521            name: 'shot',
522            shortBrief: "Give a shot to a user.",
523            description: "Give a shot to a user. This command actually doesn't do anything.",
524            structure: "<UserID|UserTag|Mention> [Reason]",
525            example: "`%%shot 385753607325075320`\n`%%shot @Someone You are spamming a lot`",
526            notes: null,
527            slashCommand: true,
528            legacyCommand: true
529        },
530        {
531          name: 'softban',          name: 'softban',
532          shortBrief: "Softban a user.",          shortBrief: "Softban a user.",
533          description: "A softban means banning and unbanning a user immediately so that their messages gets deleted.",          description: "A softban means banning and unbanning a user immediately so that their messages gets deleted.",
# Line 481  export default <CommandHelpData[]> [ Line 581  export default <CommandHelpData[]> [
581          name: 'unlock',          name: 'unlock',
582          shortBrief: "Unlock a specific channel.",          shortBrief: "Unlock a specific channel.",
583          description: "Makes the given channel writable for the general members. If no channel is present, the current channel is unlocked.",          description: "Makes the given channel writable for the general members. If no channel is present, the current channel is unlocked.",
584          structure: "[ChannelID|ChannelMention] [...options]",          structure: "[ChannelID|ChannelMention]",
585          example: "`%%unlock 385753607325075320`\n`%%unlock #general`\n`%%unlock`",          example: "`%%unlock 385753607325075320`\n`%%unlock #general`\n`%%unlock`",
586          notes: null,          notes: null,
         options: {  
             "--no-send": "Do not send a confirmation message to the locked channel",  
         },  
587          slashCommand: true,          slashCommand: true,
588          legacyCommand: true          legacyCommand: true
589      },      },
590      {      {
591          name: 'unlockall',          name: 'unlockall',
592          shortBrief: "Unlock all the channels given in the configuration.",          shortBrief: "Unlock all given channels, in bulk.",
593          description: "<...ChannelMention|ChannelIDs> [--raid] [-r=ROLEMENTION|ROLEID]",          description: "<...ChannelMention|ChannelIDs> [--raid]",
594          structure: "[...options]",          structure: "[...options]",
595          example: "`%%unlockall --raid\n`%%unlockall 348764381911364631 634894637314679163795`",          example: "`%%unlockall --raid\n`%%unlockall 348764381911364631 634894637314679163795`",
596          notes: null,          notes: null,
# Line 514  export default <CommandHelpData[]> [ Line 611  export default <CommandHelpData[]> [
611          legacyCommand: true          legacyCommand: true
612      },      },
613      {      {
614            name: 'userlookup',
615            shortBrief: "Lookup any Discord user!",
616            description: "Lookup any Discord user! Doesn't matter if they are in the server or not.\nThis command is a subcommand of the `/lookup` slash command.",
617            structure: "<UserID|Mention>",
618            example: "`%%userlookup 385753607325075320`\n`",
619            notes: null,
620            slashCommand: true,
621            legacyCommand: true
622        },
623        {
624          name: 'warn',          name: 'warn',
625          shortBrief: "Warn someone in this server.",          shortBrief: "Warn someone in this server.",
626          description: null,          description: null,
# Line 539  export default <CommandHelpData[]> [ Line 646  export default <CommandHelpData[]> [
646              "view": "View information about a warning by ID"              "view": "View information about a warning by ID"
647          }          }
648      },      },
649        {
650            name: 'welcomer',
651            shortBrief: "Configure the welcomer.",
652            description: "Change the settings of the welcomer.",
653            structure: "<option(s)> [...args]",
654            example: "`%%welcomer --enable`",
655            notes: null,
656            slashCommand: false,
657            legacyCommand: true,
658            options: {
659                "--enable": "Enables the welcomer",
660                "--disable": "Disables the welcomer",
661                "--toggle": "Toggles the welcomer",
662                "--msg, --message, --custom": "Set custom welcome message. The welcome message as an argument is required.",
663                "--rm-msg, --remove-message": "Remove the custom welcome message.",
664                "--rand, --randomize": "Toggle random welcome messages.",
665                "--preview": "Preview the welcome message embed.",
666            }
667        },
668  ]  ]

Legend:
Removed from v.107  
changed lines
  Added in v.393

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26