Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Create subcommandPermCheck plugin #113

Merged
merged 3 commits into from
Jul 11, 2024

Conversation

Peter-MJ-Parker
Copy link
Contributor

@Peter-MJ-Parker Peter-MJ-Parker commented Jul 8, 2024

This plugin was requested to be uploaded for basic sub command permission handling. Only available for slash commands and will fault out for other command types.

Plugin Submission Checklist

Before submitting your plugin, please ensure that you have followed the specifications below:

  • Your plugin code includes a JSDoc block with @plugin at the beginning and @end at the end.
  • The order of plugin metadata within the JSDoc block follows the structure provided:
    1. @plugin
    2. description
    3. @author (you can have multiple authors in this format: @author @jacoobes [<@182326315813306368>])
    4. @version (with the version number)
    5. @example (a nice example of how to use your plugin)
    6. @end

this is an example:

/** 
 * @plugin
 * filters autocomplete interaction that pass the criteria
 * @author @jacoobes [<@182326315813306368>]
 * @version 1.0.0
 * @example
 * ```ts
 * import { CommandType, commandModule } from "@sern/handler";
 * import { filterA } from '../plugins/filterA.js'
 * export default commandModule({
 *    type : CommandType.Slash,
 *    options: [
 *       {  
 *          autocomplete: true,
 *          command : {
 *             //only accept autocomplete interactions that include 'poo' in the text
 *             onEvent: [filterA(s => s.includes('poo'))],
 *             execute: (autocomplete) => {
 *                let data = [{ name: 'pooba', value: 'first' }, { name: 'pooga', value: 'second' }]
 *                autocomplete.respond(data) 
 *             }
 *          }
 *       }
 *    ],
 *    execute: (ctx, args) => {}
 * })
 * @end
 */

Plugin Submission Details

[Enter data here] this is optional

Additional Notes

[Include any additional information or notes you'd like to provide regarding your plugin submission.]

This plugin was requested to be uploaded for basic sub command permission handling. Only available for slash commands and will fault out for other command types.
plugins/subcommandPermCheck.ts Outdated Show resolved Hide resolved
plugins/subcommandPermCheck.ts Outdated Show resolved Hide resolved
plugins/subcommandPermCheck.ts Outdated Show resolved Hide resolved
Removed deconstructed interaction
Made errors more understandable
Corrected the example to use a parameter as the first object and input correct properties.
Copy link
Contributor Author

@Peter-MJ-Parker Peter-MJ-Parker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Finished reviewing and corrected conflicts.

@jacoobes jacoobes self-requested a review July 11, 2024 02:46
@jacoobes jacoobes merged commit 6309184 into sern-handler:main Jul 11, 2024
1 check passed
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