3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-05-20 00:05:04 +00:00
zeppelin/backend/src/plugins/AutoDelete/util/scheduleNextDeletion.ts
2020-10-01 01:43:38 +03:00

14 lines
596 B
TypeScript

import { GuildPluginData } from "knub";
import { AutoDeletePluginType } from "../types";
import { deleteNextItem } from "./deleteNextItem";
export function scheduleNextDeletion(pluginData: GuildPluginData<AutoDeletePluginType>) {
if (pluginData.state.deletionQueue.length === 0) {
clearTimeout(pluginData.state.nextDeletionTimeout);
return;
}
const firstDeleteAt = pluginData.state.deletionQueue[0].deleteAt;
clearTimeout(pluginData.state.nextDeletionTimeout);
pluginData.state.nextDeletionTimeout = setTimeout(() => deleteNextItem(pluginData), firstDeleteAt - Date.now());
}