Migrate Reminders to new Plugin structure

This commit is contained in:
Dark 2020-07-16 22:54:02 +02:00
parent b6257b9189
commit 7ce1ebfee2
7 changed files with 247 additions and 0 deletions

View file

@ -0,0 +1,29 @@
import { remindersCommand } from "../types";
import { sendErrorMessage, sendSuccessMessage } from "src/pluginUtils";
import { sorter } from "src/utils";
import { commandTypeHelpers as ct } from "../../../commandTypes";
export const RemindersDeleteCmd = remindersCommand({
trigger: ["reminders delete", "reminders d"],
permission: "can_use",
signature: {
num: ct.number(),
},
async run({ message: msg, args, pluginData }) {
const reminders = await pluginData.state.reminders.getRemindersByUserId(msg.author.id);
reminders.sort(sorter("remind_at"));
const lastNum = reminders.length + 1;
if (args.num > lastNum || args.num < 0) {
sendErrorMessage(pluginData, msg.channel, "Unknown reminder");
return;
}
const toDelete = reminders[args.num - 1];
await pluginData.state.reminders.delete(toDelete.id);
sendSuccessMessage(pluginData, msg.channel, "Reminder deleted");
},
});