UNPKG

auth.gg

Version:
80 lines (59 loc) 2.64 kB
const { Structures } = require("discord.js"); const ButtonCollector = require('./ButtonCollector'); const APIMessage = require('../../v12/Classes/APIMessage').APIMessage; const BaseMessageComponent = require('../../v12/Classes/interfaces/BaseMessageComponent'); class Message extends Structures.get("Message") { _patch(data) { super._patch(data); this.components = (data.components || []).map(c => BaseMessageComponent.create(c, this.client)); return this; } createButtonCollector(filter, options = {}) { return new ButtonCollector(this, filter, options); } awaitButtons(filter, options = {}) { return new Promise((resolve, reject) => { const collector = this.createButtonCollector(filter, options); collector.once('end', (buttons, reason) => { if (options.errors && options.errors.includes(reason)) { reject(buttons); } else { resolve(buttons); } }); }) } reply(content, options) { return this.channel.send( content instanceof APIMessage ? content : APIMessage.transformOptions(content, options, { reply: { messageReference: this, failIfNotExists: options?.failIfNotExists ?? content?.failIfNotExists ?? true, }, }), ); } edit(content, options = {}) { if (this.components.length > 0 && options !== null && options.component === undefined && options.components === undefined) { options.components = this.components.map(c => BaseMessageComponent.create(c, this.client)); } options = content instanceof APIMessage ? content : APIMessage.create(this, content, options); return this.channel.messages.edit(this.id, options); } } module.exports = Message; //Developed By OldModz95#7213 // https://discord.gg/3t2568W //====CREDIT==== // System Button created by AngeloCore // https://www.npmjs.com/package/discord-buttons // System Button nuggies by Nuggies-bot //https://github.com/Nuggies-bot/nuggies-npm //https://www.npmjs.com/package/nuggies //============ // La base des plugins ont étais développer par leur créateur. // J'ai apporté beaucoup de modification par apport au bot que je voulais faire. // The basis of the plugins were developed by their creator. // I made a lot of changes for the bot I wanted to do.