3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-03-15 05:41:51 +00:00

Move available plugins to a separate file from index.ts

This commit is contained in:
Dragory 2019-05-25 14:40:00 +03:00
parent 8467e9703a
commit 0f1ee84c46
2 changed files with 68 additions and 57 deletions

View file

@ -66,37 +66,11 @@ moment.tz.setDefault("UTC");
import { Client } from "eris";
import { connect } from "./data/db";
// Global plugins
import { BotControlPlugin } from "./plugins/BotControl";
import { LogServerPlugin } from "./plugins/LogServer";
// Guild plugins
import { ModActionsPlugin } from "./plugins/ModActions";
import { UtilityPlugin } from "./plugins/Utility";
import { LogsPlugin } from "./plugins/Logs";
import { PostPlugin } from "./plugins/Post";
import { ReactionRolesPlugin } from "./plugins/ReactionRoles";
import { CensorPlugin } from "./plugins/Censor";
import { PersistPlugin } from "./plugins/Persist";
import { SpamPlugin } from "./plugins/Spam";
import { TagsPlugin } from "./plugins/Tags";
import { MessageSaverPlugin } from "./plugins/MessageSaver";
import { CasesPlugin } from "./plugins/Cases";
import { MutesPlugin } from "./plugins/Mutes";
import { SlowmodePlugin } from "./plugins/Slowmode";
import { StarboardPlugin } from "./plugins/Starboard";
import { NameHistoryPlugin } from "./plugins/NameHistory";
import { AutoReactionsPlugin } from "./plugins/AutoReactionsPlugin";
import { PingableRolesPlugin } from "./plugins/PingableRolesPlugin";
import { SelfGrantableRolesPlugin } from "./plugins/SelfGrantableRolesPlugin";
import { RemindersPlugin } from "./plugins/Reminders";
import { errorMessage, successMessage } from "./utils";
import { availablePlugins, availableGlobalPlugins, basePlugins } from "./plugins/availablePlugins";
import { ZeppelinPlugin } from "./plugins/ZeppelinPlugin";
import { customArgumentTypes } from "./customArgumentTypes";
import { errorMessage, successMessage } from "./utils";
import { startUptimeCounter } from "./uptime";
import { UsernameSaver } from "./plugins/UsernameSaver";
import { WelcomeMessagePlugin } from "./plugins/WelcomeMessage";
// Run latest database migrations
logger.info("Running database migrations");
@ -115,36 +89,9 @@ connect().then(async conn => {
}
});
const basePlugins = ["message_saver", "name_history", "cases", "mutes"];
const bot = new Knub(client, {
plugins: [
// Base plugins (always enabled)
MessageSaverPlugin,
NameHistoryPlugin,
CasesPlugin,
MutesPlugin,
// Regular plugins
UtilityPlugin,
ModActionsPlugin,
LogsPlugin,
PostPlugin,
ReactionRolesPlugin,
CensorPlugin,
PersistPlugin,
SpamPlugin,
TagsPlugin,
SlowmodePlugin,
StarboardPlugin,
AutoReactionsPlugin,
PingableRolesPlugin,
SelfGrantableRolesPlugin,
RemindersPlugin,
WelcomeMessagePlugin,
],
globalPlugins: [BotControlPlugin, LogServerPlugin, UsernameSaver],
plugins: availablePlugins,
globalPlugins: availableGlobalPlugins,
options: {
/**

View file

@ -0,0 +1,64 @@
import { MessageSaverPlugin } from "./MessageSaver";
import { NameHistoryPlugin } from "./NameHistory";
import { CasesPlugin } from "./Cases";
import { MutesPlugin } from "./Mutes";
import { UtilityPlugin } from "./Utility";
import { ModActionsPlugin } from "./ModActions";
import { LogsPlugin } from "./Logs";
import { PostPlugin } from "./Post";
import { ReactionRolesPlugin } from "./ReactionRoles";
import { CensorPlugin } from "./Censor";
import { PersistPlugin } from "./Persist";
import { SpamPlugin } from "./Spam";
import { TagsPlugin } from "./Tags";
import { SlowmodePlugin } from "./Slowmode";
import { StarboardPlugin } from "./Starboard";
import { AutoReactionsPlugin } from "./AutoReactionsPlugin";
import { PingableRolesPlugin } from "./PingableRolesPlugin";
import { SelfGrantableRolesPlugin } from "./SelfGrantableRolesPlugin";
import { RemindersPlugin } from "./Reminders";
import { WelcomeMessagePlugin } from "./WelcomeMessage";
import { BotControlPlugin } from "./BotControl";
import { LogServerPlugin } from "./LogServer";
import { UsernameSaver } from "./UsernameSaver";
/**
* Plugins available to be loaded for individual guilds
*/
export const availablePlugins = [
MessageSaverPlugin,
NameHistoryPlugin,
CasesPlugin,
MutesPlugin,
UtilityPlugin,
ModActionsPlugin,
LogsPlugin,
PostPlugin,
ReactionRolesPlugin,
CensorPlugin,
PersistPlugin,
SpamPlugin,
TagsPlugin,
SlowmodePlugin,
StarboardPlugin,
AutoReactionsPlugin,
PingableRolesPlugin,
SelfGrantableRolesPlugin,
RemindersPlugin,
WelcomeMessagePlugin,
];
/**
* Plugins that are always loaded (subset of the names of the plugins in availablePlugins)
*/
export const basePlugins = [
MessageSaverPlugin.pluginName,
NameHistoryPlugin.pluginName,
CasesPlugin.pluginName,
MutesPlugin.pluginName,
];
/**
* Available global plugins (can't be loaded per-guild, only globally)
*/
export const availableGlobalPlugins = [BotControlPlugin, LogServerPlugin, UsernameSaver];