Skip to main content
Version: 1.x

ModalKit

ModalKit​

A builder for creating modals with additional features like interaction collectors and event handling. This class extends the ModalBuilder from discord.js and adds methods for handling interactions. It allows you to set a handler for when the modal is submitted, filter interactions, and handle the end of the interaction collector.

Signature
class ModalKit extends ModalBuilder {
onSubmit(handler: CommandKitModalBuilderInteractionCollectorDispatch, data?: CommandKitModalBuilderInteractionCollectorDispatchContextData) => this;
onEnd(handler: CommandKitModalBuilderOnEnd) => this;
onError(handler: EventInterceptorErrorHandler) => this;
filter(predicate: ModalKitPredicate) => this;
dispose() => ;
}
  • Extends: ModalBuilder

onSubmit​

Sets the handler to run when the modal is submitted.

Example

const modal = new ModalKit()
.setTitle('My Modal')
.setCustomId('my-modal')
.filter((interaction) => interaction.user.id === '1234567890')
.onSubmit(async (interaction) => {
await interaction.reply('You submitted the modal!');
})
.addComponents(actionRow1, actionRow2);

onEnd​

method
(handler: CommandKitModalBuilderOnEnd) => this

Sets the handler to run when the interaction collector ends.

onError​

method
(handler: EventInterceptorErrorHandler) => this

Sets the handler to run when the interaction collector ends.

filter​

method
(predicate: ModalKitPredicate) => this

Sets a filter for the interaction collector.

dispose​

method
() =>

Disposes of the modal collector and cleans up resources.