mirror of
https://github.com/discordeno/discordeno.git
synced 2026-05-30 15:30:07 +00:00
* Inital Docs * Finish Design * Finish Design * Add FILE Structure' * Add Not Ready Template * Update Template * Add Command Manager and first Command ping * Add Command Manager and first Command ping * Add Embeds Guide & EventManager * INITIAL FINISH: GUIDE * FIX TYPOS, LTS's Review, sidebar_position * Update site/docs/nodejs/getting-started.md Co-authored-by: Skillz4Killz <23035000+Skillz4Killz@users.noreply.github.com> * Fixed Position? Add some comments on template, add changes in review * Add Interaction Handling, Modals * format files * Update site/docs/nodejs/getting-started.md 1 Co-authored-by: Skillz4Killz <23035000+Skillz4Killz@users.noreply.github.com> * Update site/docs/nodejs/CommandHandler/command-manager.md Co-authored-by: Skillz4Killz <23035000+Skillz4Killz@users.noreply.github.com> * Fix Review things * itoh's suggestions The guide looks very very veery good overall I like it. This commit adds my personal style of writing. Please review it 🙏. PS: I hope these are not too many changes .-. * deno fmt Co-authored-by: meister03 <root@_HOSTNAME_> Co-authored-by: ITOH <to@itoh.at> Co-authored-by: Skillz4Killz <23035000+Skillz4Killz@users.noreply.github.com>
58 lines
1.5 KiB
JavaScript
58 lines
1.5 KiB
JavaScript
const Message = require("./Message");
|
|
|
|
class Responses {
|
|
constructor(data) {
|
|
this.manager = data.manager;
|
|
this.args = this._validateArguments(data.args);
|
|
this.replied = false;
|
|
}
|
|
|
|
async reply(content) {
|
|
// When just a string is passed, we assume it's the content -> transform to correct formatted payload
|
|
if (typeof content === "string") content = { content };
|
|
if (this.interaction) {
|
|
if (this.replied) return this.followUp(content);
|
|
const reply = await this.interaction.reply(content);
|
|
|
|
//Assign properties to the response
|
|
const response = new Message(this.client, reply);
|
|
|
|
this.replied = true;
|
|
return response;
|
|
}
|
|
if (this.message) {
|
|
if (this.replied) return this.followUp(content);
|
|
|
|
const msg = await this.message.channel.send(content);
|
|
|
|
//Assign properties to the response
|
|
const response = new Message(this.client, msg);
|
|
this.replied = true;
|
|
return response;
|
|
}
|
|
}
|
|
|
|
async followUp(content) {
|
|
if (this.interaction) {
|
|
const reply = await this.interaction.followUp(content);
|
|
const response = new Message(this.client, reply);
|
|
return response;
|
|
}
|
|
if (this.message) {
|
|
const msg = await this.message.channel.send(content);
|
|
const response = new Message(this.client, msg);
|
|
return response;
|
|
}
|
|
}
|
|
|
|
onError(error) {
|
|
return this.reply({ content: `A unknown Error happend: \n> ${error}` });
|
|
}
|
|
|
|
_validateArguments(args) {
|
|
this.args = args;
|
|
return args;
|
|
}
|
|
}
|
|
module.exports = Responses;
|