UNPKG

@fdm-monster/server

Version:

FDM Monster is a bulk OctoPrint, Klipper, PrusaLink and BambuLab manager to set up, configure and monitor 3D printers. Our aim is to provide neat overview over your farm.

31 lines (30 loc) 1.25 kB
import { DITokens } from "./container.tokens.js"; import { TASK_PRESETS } from "./task.presets.js"; //#region src/tasks.ts /** * Register a task with a preset and timing (run immediate does not retry in case of failure) */ function registerTask(task, preset, milliseconds = 0, runImmediately = false) { let timingPreset = { ...preset }; timingPreset.milliseconds = preset.milliseconds ?? milliseconds; timingPreset.runImmediately = runImmediately ?? false; return { id: task.name ?? task, task, preset: timingPreset }; } var ServerTasks = class { static SERVER_BOOT_TASK = registerTask(DITokens.bootTask, TASK_PRESETS.PERIODIC_DISABLED, 5e3, false); static BOOT_TASKS = [ registerTask(DITokens.softwareUpdateTask, TASK_PRESETS.RUNDELAYED, 1500), registerTask(DITokens.clientDistDownloadTask, TASK_PRESETS.RUNONCE), registerTask(DITokens.socketIoTask, TASK_PRESETS.PERIODIC, 500), registerTask(DITokens.printerWebsocketTask, TASK_PRESETS.PERIODIC, 2e3, true), registerTask(DITokens.printerWebsocketRestoreTask, TASK_PRESETS.PERIODIC, 15 * 1e3, false), registerTask(DITokens.printJobAnalysisTask, TASK_PRESETS.PERIODIC, 30 * 1e3, false) ]; }; //#endregion export { ServerTasks, registerTask }; //# sourceMappingURL=tasks.js.map