From 48f3cc419b2b293ef078ccbdf265c1261c6c7fc3 Mon Sep 17 00:00:00 2001 From: Fu Diwei Date: Fri, 7 Mar 2025 00:18:39 +0800 Subject: [PATCH] chore(ui): upgrade cron-parser --- ui/src/utils/cron.ts | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/ui/src/utils/cron.ts b/ui/src/utils/cron.ts index 79a94ddc..46d806e3 100644 --- a/ui/src/utils/cron.ts +++ b/ui/src/utils/cron.ts @@ -1,8 +1,8 @@ -import { parseExpression } from "cron-parser"; +import { CronExpressionParser } from "cron-parser"; export const validCronExpression = (expr: string): boolean => { try { - parseExpression(expr); + CronExpressionParser.parse(expr); if (expr.trim().split(" ").length !== 5) return false; // pocketbase 后端仅支持五段式的表达式 return true; @@ -15,12 +15,7 @@ export const getNextCronExecutions = (expr: string, times = 1): Date[] => { if (!validCronExpression(expr)) return []; const now = new Date(); - const cron = parseExpression(expr, { currentDate: now, iterator: true }); + const cron = CronExpressionParser.parse(expr, { currentDate: now }); - const result: Date[] = []; - for (let i = 0; i < times; i++) { - const next = cron.next(); - result.push(next.value.toDate()); - } - return result; + return cron.take(times).map((date) => date.toDate()); };