feat(scheduled-tasks): add cron syntax support to task editor dialog (#1593)
Adds a 'Cron' schedule type option to the scheduled task editor, allowing users to create and edit cron-based schedules through the UI. - Add cron expression input with inline validation (cron-parser) - Show next 4 upcoming run times as a preview - Provide clickable example chips (every 5min, hourly, Monday 9am, etc.) - Preserve cron expressions when editing existing cron tasks - Add cron.ts utility module for validation and next-run computation - Add i18n keys across all 8 locale files Closes #1586 Co-authored-by: Bohdan Triapitsyn <artmore@protonmail.com>
This commit is contained in:
committed by
GitHub
co-authored by
Bohdan Triapitsyn
parent
e904abda04
commit
e402cd75f5
@@ -295,6 +295,7 @@ export const dict: Record<I18nKey, string> = {
|
||||
'sessions.scheduledTasks.editor.scheduleType.daily': 'Codziennie',
|
||||
'sessions.scheduledTasks.editor.scheduleType.weekly': 'Co tydzień',
|
||||
'sessions.scheduledTasks.editor.scheduleType.once': 'Jednorazowo',
|
||||
'sessions.scheduledTasks.editor.scheduleType.cron': 'Cron',
|
||||
'sessions.scheduledTasks.editor.date.label': 'Data',
|
||||
'sessions.scheduledTasks.editor.date.placeholder': 'Wybierz datę',
|
||||
'sessions.scheduledTasks.editor.date.previousMonth': 'Poprzedni miesiąc',
|
||||
@@ -333,6 +334,17 @@ export const dict: Record<I18nKey, string> = {
|
||||
'sessions.scheduledTasks.editor.validation.atLeastOneTime': 'Dodaj przynajmniej jeden prawidłowy czas',
|
||||
'sessions.scheduledTasks.editor.validation.atLeastOneWeekday': 'Wybierz przynajmniej jeden dzień tygodnia',
|
||||
'sessions.scheduledTasks.editor.validation.timezoneRequired': 'Strefa czasowa jest wymagana',
|
||||
'sessions.scheduledTasks.editor.validation.cronRequired': 'Wyrażenie cron jest wymagane',
|
||||
'sessions.scheduledTasks.editor.validation.cronInvalid': 'Nieprawidłowe wyrażenie cron',
|
||||
'sessions.scheduledTasks.editor.cronExpression.label': 'Wyrażenie cron',
|
||||
'sessions.scheduledTasks.editor.cronExpression.placeholder': '*/5 * * * *',
|
||||
'sessions.scheduledTasks.editor.cronExpression.nextRuns': 'Następne uruchomienia',
|
||||
'sessions.scheduledTasks.editor.cronExpression.examples': 'Przykłady',
|
||||
'sessions.scheduledTasks.editor.cronExpression.examples.every5min': 'Co 5 minut',
|
||||
'sessions.scheduledTasks.editor.cronExpression.examples.everyHour': 'Co godzinę',
|
||||
'sessions.scheduledTasks.editor.cronExpression.examples.monday9am': 'W każdy poniedziałek o 9:00',
|
||||
'sessions.scheduledTasks.editor.cronExpression.examples.9am5pm': 'Codziennie o 9:00 i 17:00',
|
||||
'sessions.scheduledTasks.editor.cronExpression.examples.firstOfMonth': 'Pierwszego dnia każdego miesiąca',
|
||||
'multirun.launcher.title': 'Nowe wielokrotne uruchomienie',
|
||||
'multirun.launcher.actions.closeEsc': 'Zamknij (Esc)',
|
||||
'multirun.launcher.actions.cancel': 'Anuluj',
|
||||
|
||||
Reference in New Issue
Block a user