diff --git a/main.ts b/main.ts index 1ab0840..40e6c0b 100644 --- a/main.ts +++ b/main.ts @@ -18,6 +18,7 @@ import { startCopy, startDelete, startMove, + startPurge, startSync, } from './lib/rclone/api' import { compareVersions } from './lib/rclone/common' @@ -390,6 +391,7 @@ async function handleTask(task: ScheduledTask) { deleteEmptyDstDirs, fs, rmDirs, + remote, } = task.args switch (task.type) { @@ -427,6 +429,14 @@ async function handleTask(task: ScheduledTask) { _filter, }) break + case 'purge': + await startPurge({ + fs, + remote, + _filter, + _config, + }) + break default: break } diff --git a/types/task.d.ts b/types/task.d.ts index 31b0563..26192e8 100644 --- a/types/task.d.ts +++ b/types/task.d.ts @@ -1,6 +1,6 @@ export interface ScheduledTask { id: string - type: 'delete' | 'sync' | 'copy' | 'move' + type: 'delete' | 'sync' | 'copy' | 'move' | 'purge' cron: string isRunning: boolean isEnabled: boolean