mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-09 16:13:31 +01:00
refactor(ActionsManager): register actions without using class name (#11047)
This commit is contained in:
@@ -39,12 +39,12 @@ async function writeClientActionImports() {
|
|||||||
|
|
||||||
const actionName = file.slice(0, -3);
|
const actionName = file.slice(0, -3);
|
||||||
|
|
||||||
lines.push(` this.register(require('./${file}').${actionName}Action);`);
|
lines.push(` this.${actionName} = this.load(require('./${file}').${actionName}Action);`);
|
||||||
}
|
}
|
||||||
|
|
||||||
lines.push(' }\n');
|
lines.push(' }\n');
|
||||||
lines.push(' register(Action) {');
|
lines.push(' load(Action) {');
|
||||||
lines.push(" this[Action.name.replace(/Action$/, '')] = new Action(this.client);");
|
lines.push(' return new Action(this.client);');
|
||||||
lines.push(' }');
|
lines.push(' }');
|
||||||
lines.push('}\n');
|
lines.push('}\n');
|
||||||
lines.push('exports.ActionsManager = ActionsManager;\n');
|
lines.push('exports.ActionsManager = ActionsManager;\n');
|
||||||
|
|||||||
@@ -13,50 +13,62 @@ class ActionsManager {
|
|||||||
constructor(client) {
|
constructor(client) {
|
||||||
this.client = client;
|
this.client = client;
|
||||||
|
|
||||||
this.register(require('./ChannelCreate.js').ChannelCreateAction);
|
this.ChannelCreate = this.load(require('./ChannelCreate.js').ChannelCreateAction);
|
||||||
this.register(require('./ChannelDelete.js').ChannelDeleteAction);
|
this.ChannelDelete = this.load(require('./ChannelDelete.js').ChannelDeleteAction);
|
||||||
this.register(require('./ChannelUpdate.js').ChannelUpdateAction);
|
this.ChannelUpdate = this.load(require('./ChannelUpdate.js').ChannelUpdateAction);
|
||||||
this.register(require('./GuildChannelsPositionUpdate.js').GuildChannelsPositionUpdateAction);
|
this.GuildChannelsPositionUpdate = this.load(
|
||||||
this.register(require('./GuildEmojiCreate.js').GuildEmojiCreateAction);
|
require('./GuildChannelsPositionUpdate.js').GuildChannelsPositionUpdateAction,
|
||||||
this.register(require('./GuildEmojiDelete.js').GuildEmojiDeleteAction);
|
);
|
||||||
this.register(require('./GuildEmojiUpdate.js').GuildEmojiUpdateAction);
|
this.GuildEmojiCreate = this.load(require('./GuildEmojiCreate.js').GuildEmojiCreateAction);
|
||||||
this.register(require('./GuildEmojisUpdate.js').GuildEmojisUpdateAction);
|
this.GuildEmojiDelete = this.load(require('./GuildEmojiDelete.js').GuildEmojiDeleteAction);
|
||||||
this.register(require('./GuildMemberRemove.js').GuildMemberRemoveAction);
|
this.GuildEmojiUpdate = this.load(require('./GuildEmojiUpdate.js').GuildEmojiUpdateAction);
|
||||||
this.register(require('./GuildMemberUpdate.js').GuildMemberUpdateAction);
|
this.GuildEmojisUpdate = this.load(require('./GuildEmojisUpdate.js').GuildEmojisUpdateAction);
|
||||||
this.register(require('./GuildRoleCreate.js').GuildRoleCreateAction);
|
this.GuildMemberRemove = this.load(require('./GuildMemberRemove.js').GuildMemberRemoveAction);
|
||||||
this.register(require('./GuildRoleDelete.js').GuildRoleDeleteAction);
|
this.GuildMemberUpdate = this.load(require('./GuildMemberUpdate.js').GuildMemberUpdateAction);
|
||||||
this.register(require('./GuildRolesPositionUpdate.js').GuildRolesPositionUpdateAction);
|
this.GuildRoleCreate = this.load(require('./GuildRoleCreate.js').GuildRoleCreateAction);
|
||||||
this.register(require('./GuildScheduledEventDelete.js').GuildScheduledEventDeleteAction);
|
this.GuildRoleDelete = this.load(require('./GuildRoleDelete.js').GuildRoleDeleteAction);
|
||||||
this.register(require('./GuildScheduledEventUserAdd.js').GuildScheduledEventUserAddAction);
|
this.GuildRolesPositionUpdate = this.load(require('./GuildRolesPositionUpdate.js').GuildRolesPositionUpdateAction);
|
||||||
this.register(require('./GuildScheduledEventUserRemove.js').GuildScheduledEventUserRemoveAction);
|
this.GuildScheduledEventDelete = this.load(
|
||||||
this.register(require('./GuildSoundboardSoundDelete.js').GuildSoundboardSoundDeleteAction);
|
require('./GuildScheduledEventDelete.js').GuildScheduledEventDeleteAction,
|
||||||
this.register(require('./GuildStickerCreate.js').GuildStickerCreateAction);
|
);
|
||||||
this.register(require('./GuildStickerDelete.js').GuildStickerDeleteAction);
|
this.GuildScheduledEventUserAdd = this.load(
|
||||||
this.register(require('./GuildStickerUpdate.js').GuildStickerUpdateAction);
|
require('./GuildScheduledEventUserAdd.js').GuildScheduledEventUserAddAction,
|
||||||
this.register(require('./GuildStickersUpdate.js').GuildStickersUpdateAction);
|
);
|
||||||
this.register(require('./GuildUpdate.js').GuildUpdateAction);
|
this.GuildScheduledEventUserRemove = this.load(
|
||||||
this.register(require('./InteractionCreate.js').InteractionCreateAction);
|
require('./GuildScheduledEventUserRemove.js').GuildScheduledEventUserRemoveAction,
|
||||||
this.register(require('./MessageCreate.js').MessageCreateAction);
|
);
|
||||||
this.register(require('./MessageDelete.js').MessageDeleteAction);
|
this.GuildSoundboardSoundDelete = this.load(
|
||||||
this.register(require('./MessageDeleteBulk.js').MessageDeleteBulkAction);
|
require('./GuildSoundboardSoundDelete.js').GuildSoundboardSoundDeleteAction,
|
||||||
this.register(require('./MessagePollVoteAdd.js').MessagePollVoteAddAction);
|
);
|
||||||
this.register(require('./MessagePollVoteRemove.js').MessagePollVoteRemoveAction);
|
this.GuildStickerCreate = this.load(require('./GuildStickerCreate.js').GuildStickerCreateAction);
|
||||||
this.register(require('./MessageReactionAdd.js').MessageReactionAddAction);
|
this.GuildStickerDelete = this.load(require('./GuildStickerDelete.js').GuildStickerDeleteAction);
|
||||||
this.register(require('./MessageReactionRemove.js').MessageReactionRemoveAction);
|
this.GuildStickerUpdate = this.load(require('./GuildStickerUpdate.js').GuildStickerUpdateAction);
|
||||||
this.register(require('./MessageReactionRemoveAll.js').MessageReactionRemoveAllAction);
|
this.GuildStickersUpdate = this.load(require('./GuildStickersUpdate.js').GuildStickersUpdateAction);
|
||||||
this.register(require('./MessageReactionRemoveEmoji.js').MessageReactionRemoveEmojiAction);
|
this.GuildUpdate = this.load(require('./GuildUpdate.js').GuildUpdateAction);
|
||||||
this.register(require('./MessageUpdate.js').MessageUpdateAction);
|
this.InteractionCreate = this.load(require('./InteractionCreate.js').InteractionCreateAction);
|
||||||
this.register(require('./StageInstanceCreate.js').StageInstanceCreateAction);
|
this.MessageCreate = this.load(require('./MessageCreate.js').MessageCreateAction);
|
||||||
this.register(require('./StageInstanceDelete.js').StageInstanceDeleteAction);
|
this.MessageDelete = this.load(require('./MessageDelete.js').MessageDeleteAction);
|
||||||
this.register(require('./StageInstanceUpdate.js').StageInstanceUpdateAction);
|
this.MessageDeleteBulk = this.load(require('./MessageDeleteBulk.js').MessageDeleteBulkAction);
|
||||||
this.register(require('./ThreadCreate.js').ThreadCreateAction);
|
this.MessagePollVoteAdd = this.load(require('./MessagePollVoteAdd.js').MessagePollVoteAddAction);
|
||||||
this.register(require('./ThreadMembersUpdate.js').ThreadMembersUpdateAction);
|
this.MessagePollVoteRemove = this.load(require('./MessagePollVoteRemove.js').MessagePollVoteRemoveAction);
|
||||||
this.register(require('./TypingStart.js').TypingStartAction);
|
this.MessageReactionAdd = this.load(require('./MessageReactionAdd.js').MessageReactionAddAction);
|
||||||
this.register(require('./UserUpdate.js').UserUpdateAction);
|
this.MessageReactionRemove = this.load(require('./MessageReactionRemove.js').MessageReactionRemoveAction);
|
||||||
|
this.MessageReactionRemoveAll = this.load(require('./MessageReactionRemoveAll.js').MessageReactionRemoveAllAction);
|
||||||
|
this.MessageReactionRemoveEmoji = this.load(
|
||||||
|
require('./MessageReactionRemoveEmoji.js').MessageReactionRemoveEmojiAction,
|
||||||
|
);
|
||||||
|
this.MessageUpdate = this.load(require('./MessageUpdate.js').MessageUpdateAction);
|
||||||
|
this.StageInstanceCreate = this.load(require('./StageInstanceCreate.js').StageInstanceCreateAction);
|
||||||
|
this.StageInstanceDelete = this.load(require('./StageInstanceDelete.js').StageInstanceDeleteAction);
|
||||||
|
this.StageInstanceUpdate = this.load(require('./StageInstanceUpdate.js').StageInstanceUpdateAction);
|
||||||
|
this.ThreadCreate = this.load(require('./ThreadCreate.js').ThreadCreateAction);
|
||||||
|
this.ThreadMembersUpdate = this.load(require('./ThreadMembersUpdate.js').ThreadMembersUpdateAction);
|
||||||
|
this.TypingStart = this.load(require('./TypingStart.js').TypingStartAction);
|
||||||
|
this.UserUpdate = this.load(require('./UserUpdate.js').UserUpdateAction);
|
||||||
}
|
}
|
||||||
|
|
||||||
register(Action) {
|
load(Action) {
|
||||||
this[Action.name.replace(/Action$/, '')] = new Action(this.client);
|
return new Action(this.client);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user