TypeDoc API
Plugins
Plugin Discord
Classes
Denyparser

Class: DenyParser

The blacklist tag will attempt to convert the given parameter into a channel, role, or user using name or Id. If the user running the tag is in the targeted channel or has 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 user, role or channel requirements can be given, and should be split by a ,.

Example

{deny(user,role,channel):response}

Aliases: denylist, blacklist

Example

{deny(Moderator)}
{deny(#general, #chat):This tag can't be run in #general and #chat.}
{deny(757425366209134764, 668713062186090506, 737961895356792882):You aren't allowed to use this tag.}

Developers need to add the check themselves.

Example

const { Interpreter } = require("tagscript")
const { DenyParser } = require("tagscript-plugin-discord")
 
const ts = new Interpreter(new DenyParser())
 
const result = await ts.run("{require(id1, id2):You aren't allowed to use this tag.}")
 
if (result.actions.deny.ids.includes(interaction.user.id)) {
// add channel, role check here or check using name instead of id
return interaction.reply(result.actions.deny.message)
}

Hierarchy

Implements

Constructors

constructor

new DenyParser()

Overrides

BaseParser.constructor

Properties

acceptedNames

Protected acceptedNames: string[]

Inherited from

BaseParser.acceptedNames


requiredParameter

Protected requiredParameter: boolean

Inherited from

BaseParser.requiredParameter


requiredPayload

Protected requiredPayload: boolean

Inherited from

BaseParser.requiredPayload

Methods

parse

parse(ctx): null | ""

Parses the given tag.

Parameters

NameTypeDescription
ctxContextThe context of the tag.

Returns

null | ""

Implementation of

IParser.parse


willAccept

willAccept(ctx): boolean

Whether the parser can handle the given tag.

Parameters

NameTypeDescription
ctxContextThe context of the tag.

Returns

boolean

Implementation of

IParser.willAccept

Inherited from

BaseParser.willAccept