Class: RequiredParser
The require tag will attempt to convert the given parameter into a channel, user
or role, using name or Id. If the user running the tag is not in the targeted
channel or doesn't have the targeted role or their id isn't same as targeted user's id, the tag will stop processing and
it will send the response if one is given. Multiple role, user or channel
requirements can be given, and should be split by a ,
.
Aliases: allowlist, whitelist
Example
{require(user,role,channel):response}
Example
{require(Moderator)}
{require(#general, #bot-commands):This tag can only be run in #general and #bot-cmds.}
{require(757425366209134764, 668713062186090506, 737961895356792882):You aren't allowed to use this tag.}
Developers need to add the check themselves.
Example
const { Interpreter } = require("tagscript")
const { RequiredParser } = require("tagscript-plugin-discord")
const ts = new Interpreter(new RequiredParser())
const result = await ts.run("{require(id1, id2):You aren't allowed to use this tag.}")
if (!result.actions.require.ids.includes(interaction.user.id)) {
// add channel, role check here or check using name instead of id
return interaction.reply(result.actions.require.message)
}
Hierarchy
-
↳
RequiredParser
Implements
Constructors
constructor
• new RequiredParser()
Overrides
Properties
acceptedNames
• Protected
acceptedNames: string
[]
Inherited from
requiredParameter
• Protected
requiredParameter: boolean
Inherited from
requiredPayload
• Protected
requiredPayload: boolean
Inherited from
Methods
parse
▸ parse(ctx
): null
| ""
Parses the given tag.
Parameters
Name | Type | Description |
---|---|---|
ctx | Context | The context of the tag. |
Returns
null
| ""
Implementation of
willAccept
▸ willAccept(ctx
): boolean
Whether the parser can handle the given tag.
Parameters
Name | Type | Description |
---|---|---|
ctx | Context | The context of the tag. |
Returns
boolean