3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-05-10 12:25:02 +00:00

Update to new Knub 30 beta. Code clean-up.

This commit is contained in:
Dragory 2020-10-01 01:43:38 +03:00
parent 5d579446c5
commit 2f470dc37a
No known key found for this signature in database
GPG key ID: 5F387BA66DF8AAC1
299 changed files with 1075 additions and 1004 deletions

View file

@ -1,9 +1,9 @@
import { zeppelinPlugin } from "../ZeppelinPluginBlueprint";
import { zeppelinGuildPlugin } from "../ZeppelinPluginBlueprint";
import { PluginOptions } from "knub";
import { ConfigSchema, ReactionRolesPluginType } from "./types";
import { GuildReactionRoles } from "src/data/GuildReactionRoles";
import { GuildSavedMessages } from "src/data/GuildSavedMessages";
import { Queue } from "src/Queue";
import { GuildReactionRoles } from "../../data/GuildReactionRoles";
import { GuildSavedMessages } from "../../data/GuildSavedMessages";
import { Queue } from "../../Queue";
import { autoRefreshLoop } from "./util/autoRefreshLoop";
import { InitReactionRolesCmd } from "./commands/InitReactionRolesCmd";
import { RefreshReactionRolesCmd } from "./commands/RefreshReactionRolesCmd";
@ -31,7 +31,7 @@ const defaultOptions: PluginOptions<ReactionRolesPluginType> = {
],
};
export const ReactionRolesPlugin = zeppelinPlugin<ReactionRolesPluginType>()("reaction_roles", {
export const ReactionRolesPlugin = zeppelinGuildPlugin<ReactionRolesPluginType>()("reaction_roles", {
showInDocs: true,
info: {
prettyName: "Reaction roles",

View file

@ -1,6 +1,6 @@
import { reactionRolesCmd } from "../types";
import { commandTypeHelpers as ct } from "../../../commandTypes";
import { sendErrorMessage, sendSuccessMessage } from "src/pluginUtils";
import { sendErrorMessage, sendSuccessMessage } from "../../../pluginUtils";
import { TextChannel } from "eris";
export const ClearReactionRolesCmd = reactionRolesCmd({

View file

@ -2,7 +2,7 @@ import { reactionRolesCmd, TReactionRolePair } from "../types";
import { commandTypeHelpers as ct } from "../../../commandTypes";
import { sendErrorMessage, sendSuccessMessage } from "../../../pluginUtils";
import { TextChannel } from "eris";
import { RecoverablePluginError, ERRORS } from "src/RecoverablePluginError";
import { RecoverablePluginError, ERRORS } from "../../../RecoverablePluginError";
import { canUseEmoji, isDiscordRESTError, noop } from "../../../utils";
import { applyReactionRoleReactionsToMessage } from "../util/applyReactionRoleReactionsToMessage";
import { canReadChannel } from "../../../utils/canReadChannel";

View file

@ -1,6 +1,6 @@
import { reactionRolesCmd } from "../types";
import { commandTypeHelpers as ct } from "../../../commandTypes";
import { sendErrorMessage, sendSuccessMessage } from "src/pluginUtils";
import { sendErrorMessage, sendSuccessMessage } from "../../../pluginUtils";
import { refreshReactionRoles } from "../util/refreshReactionRoles";
export const RefreshReactionRolesCmd = reactionRolesCmd({

View file

@ -1,11 +1,11 @@
import { reactionRolesEvent } from "../types";
import { resolveMember, noop, sleep } from "src/utils";
import { reactionRolesEvt } from "../types";
import { resolveMember, noop, sleep } from "../../../utils";
import { addMemberPendingRoleChange } from "../util/addMemberPendingRoleChange";
import { Message } from "eris";
const CLEAR_ROLES_EMOJI = "❌";
export const AddReactionRoleEvt = reactionRolesEvent({
export const AddReactionRoleEvt = reactionRolesEvt({
event: "messageReactionAdd",
async listener(meta) {

View file

@ -1,8 +1,8 @@
import * as t from "io-ts";
import { BasePluginType, eventListener, command, PluginData } from "knub";
import { GuildSavedMessages } from "src/data/GuildSavedMessages";
import { GuildReactionRoles } from "src/data/GuildReactionRoles";
import { Queue } from "src/Queue";
import { BasePluginType, guildEventListener, guildCommand } from "knub";
import { GuildSavedMessages } from "../../data/GuildSavedMessages";
import { GuildReactionRoles } from "../../data/GuildReactionRoles";
import { Queue } from "../../Queue";
export const ConfigSchema = t.type({
auto_refresh_interval: t.number,
@ -41,5 +41,5 @@ export interface ReactionRolesPluginType extends BasePluginType {
};
}
export const reactionRolesCmd = command<ReactionRolesPluginType>();
export const reactionRolesEvent = eventListener<ReactionRolesPluginType>();
export const reactionRolesCmd = guildCommand<ReactionRolesPluginType>();
export const reactionRolesEvt = guildEventListener<ReactionRolesPluginType>();

View file

@ -1,12 +1,12 @@
import { PluginData } from "knub";
import { GuildPluginData } from "knub";
import { ReactionRolesPluginType, RoleChangeMode, PendingMemberRoleChanges } from "../types";
import { resolveMember } from "src/utils";
import { logger } from "src/logger";
import { resolveMember } from "../../../utils";
import { logger } from "../../../logger";
const ROLE_CHANGE_BATCH_DEBOUNCE_TIME = 1500;
export async function addMemberPendingRoleChange(
pluginData: PluginData<ReactionRolesPluginType>,
pluginData: GuildPluginData<ReactionRolesPluginType>,
memberId: string,
mode: RoleChangeMode,
roleId: string,

View file

@ -1,9 +1,9 @@
import { PluginData } from "knub";
import { GuildPluginData } from "knub";
import { ReactionRolesPluginType } from "../types";
import { ReactionRole } from "src/data/entities/ReactionRole";
import { ReactionRole } from "../../../data/entities/ReactionRole";
import { TextChannel } from "eris";
import { isDiscordRESTError, sleep, isSnowflake } from "src/utils";
import { logger } from "src/logger";
import { isDiscordRESTError, sleep, isSnowflake } from "../../../utils";
import { logger } from "../../../logger";
import { LogsPlugin } from "../../Logs/LogsPlugin";
import { LogType } from "../../../data/LogType";
@ -13,7 +13,7 @@ const CLEAR_ROLES_EMOJI = "❌";
* @return Errors encountered while applying reaction roles, if any
*/
export async function applyReactionRoleReactionsToMessage(
pluginData: PluginData<ReactionRolesPluginType>,
pluginData: GuildPluginData<ReactionRolesPluginType>,
channelId: string,
messageId: string,
reactionRoles: ReactionRole[],

View file

@ -1,8 +1,8 @@
import { PluginData } from "knub";
import { GuildPluginData } from "knub";
import { ReactionRolesPluginType } from "../types";
import { runAutoRefresh } from "./runAutoRefresh";
export async function autoRefreshLoop(pluginData: PluginData<ReactionRolesPluginType>, interval: number) {
export async function autoRefreshLoop(pluginData: GuildPluginData<ReactionRolesPluginType>, interval: number) {
pluginData.state.autoRefreshTimeout = setTimeout(async () => {
await runAutoRefresh(pluginData);
autoRefreshLoop(pluginData, interval);

View file

@ -1,9 +1,9 @@
import { ReactionRolesPluginType } from "../types";
import { PluginData } from "knub";
import { GuildPluginData } from "knub";
import { applyReactionRoleReactionsToMessage } from "./applyReactionRoleReactionsToMessage";
export async function refreshReactionRoles(
pluginData: PluginData<ReactionRolesPluginType>,
pluginData: GuildPluginData<ReactionRolesPluginType>,
channelId: string,
messageId: string,
) {

View file

@ -1,8 +1,8 @@
import { PluginData } from "knub";
import { GuildPluginData } from "knub";
import { ReactionRolesPluginType } from "../types";
import { refreshReactionRoles } from "./refreshReactionRoles";
export async function runAutoRefresh(pluginData: PluginData<ReactionRolesPluginType>) {
export async function runAutoRefresh(pluginData: GuildPluginData<ReactionRolesPluginType>) {
// Refresh reaction roles on all reaction role messages
const reactionRoles = await pluginData.state.reactionRoles.all();
const idPairs = new Set(reactionRoles.map(r => `${r.channel_id}-${r.message_id}`));