1#[derive(Debug, Clone)]
65pub enum Message {
66 AutostartEnabled,
68 AutostartEnabledUser,
69 AutostartDisabled,
70 AutostartAlreadyDisabled,
71 AutostartEnableFailed(String),
72 AutostartDisableFailed(String),
73 AutostartStatus(String),
74 AutostartNotImplemented,
75 AutostartRequiresAdmin,
76 AutostartCheckingAlternative,
77
78 TaskCreated,
80 TaskUpdated,
81 TaskDeleted,
82 TaskNotFound,
83 TaskCreateFailed,
84 TaskUpdateFailed,
85 TaskDeleteFailed,
86 TasksDeletedCount(usize),
87 TasksNotFoundForDate(String),
88 TasksNotFoundSad,
89 TasksHeader,
90 TasksIncompleteHeader,
91 TasksGitlabHeader,
92 TasksJiraHeader,
93 TasksDiscoverySummary {
95 incomplete: usize,
96 jira: usize,
97 gitlab: usize,
98 },
99 TasksDiscoverySeparator,
101 TasksDiscoverySearchingIncomplete,
102 TasksDiscoveryFetchingExternal,
103 NoTaskIdsProvided,
104 TasksNotFoundForIds(Vec<i32>),
105 TasksToBeDeleted,
106 ConfirmDeleteTask,
107 ConfirmDeleteTasks(usize),
108 ConfirmDeleteAllTodayTasks(usize),
109 ConfirmDeleteAllTodayTasksFinal,
110 NoTasksForToday,
111 TaskNotFoundWithId(i32),
112 CurrentTaskState,
113 TaskEditPreview,
114 ConfirmTaskUpdate,
115 NoChangesDetected,
116 NoTasksSelected,
117 SelectTasksToEdit,
118 EditingTask(String),
119 TaskUpdatedWithName(String),
120 TaskSkippedNoChanges(String),
121 TaskEditingCompleted,
122 PromptTaskNameEdit,
123 PromptTaskCommentEdit,
124 PromptTaskCompletenessEdit,
125 TaskCompletenessRange,
126
127 WorkdayEnded,
129 WorkdayNotFound,
130 WorkdayNotFoundForDate(String),
131 WorkdayCreateFailed,
132 WorkdayStarting(String), WorkdayCouldNotFindAfterFinalizing(String), ConfigSaved,
137 ConfigDeleted,
138 ConfigLoaded,
139 ConfigFileNotFound,
140 ConfigParseError,
141 ConfigSaveError,
142 ConfigModuleGitLab,
143 ConfigModuleJira,
144 ConfigModuleSiServer,
145 ConfigModuleMonitor,
146 ConfigModuleServer,
147 ConfigModuleProductivity,
148 ConfigModuleTaskDiscovery,
149 ConfigModuleJiraInbox,
150 TaskDiscoveryIgnoreListHeader,
151 TaskDiscoveryIgnoreListEmpty,
152 TaskDiscoveryIgnoreNameAdded(String),
153 TaskDiscoveryIgnoreNameExists(String),
154 TaskDiscoveryIgnoreNamesAdded(usize),
155
156 DailyReportSent(String), MonthlyReportSent(String), MonthlyReportTriggered,
160 ReportSendFailed(String), MonthlyReportSendFailed(String), ReportHeader(String), WorkingHoursForMonth(String), ExportingData(String, String), ExportCompleted(String), ExportingAllData,
169 ExportFailed(String), TemplateCreated(String),
173 TemplateUpdated(String),
174 TemplateDeleted(String),
175 TemplateNotFound(String),
176 TemplateAlreadyExists(String),
177 TemplateCreateFailed,
178 NoTemplatesFound,
179 TemplateListHeader,
180 SelectTemplateToEdit,
181 SelectTemplateToDelete,
182 ConfirmDeleteTemplate(String),
183 EditingTemplate(String),
184 NoTemplatesMatchingQuery(String),
185 TemplateSearchResults(String),
186 SelectTemplateAction,
187 PromptTemplateName,
188 PromptTemplateTaskName,
189 PromptTemplateComment,
190 PromptTemplateCompleteness,
191 CreatingTaskFromTemplate(String),
192 SelectTemplate,
193 CreateTemplateFirst,
194
195 TagCreated(String),
197 TagUpdated(String),
198 TagDeleted(String),
199 TagNotFound(String),
200 TagAlreadyExists(String),
201 NoTagsFound,
202 TagListHeader,
203 EditingTag(String),
204 SelectTagAction,
205 SelectTagToEdit,
206 SelectTagToDelete,
207 ConfirmDeleteTag(String),
208 ConfirmDeleteTagWithTasks(String, usize), PromptTagName,
210 PromptTagColor,
211 NoTasksWithTag(String),
212 TasksWithTag(String),
213 TagsAddedToTask(String),
214
215 ShortIntervalsDetected(usize, String), NoShortIntervalsFound(u64), ShortIntervalsToRemove(usize), RemovingPauses(usize), ShortIntervalsCleared(usize), NoRemovablePausesFound,
222 UpdatedReport,
223 PromptMinWorkInterval,
224
225 SelectAdjustmentMode,
227 PromptAdjustmentMinutes,
228 PromptPauseStartTime,
229 ConfirmTimeAdjustment,
230 TimeAdjustmentApplied,
231 AdjustmentPreview,
232 InvalidAdjustmentTooMuchTime,
233 InvalidPauseOutsideWorkday,
234 WorkdayUpdateFailed,
235
236 PausesTitle(String),
238
239 MonitorStarted {
241 pause_threshold: u64,
242 poll_interval: u64,
243 activity_threshold: u64,
244 },
245 MonitorStopped,
246 MonitorStartFailed,
247 MonitorStopFailed,
248 MonitorExitedNormally,
249 MonitorShuttingDown,
250 MonitorError(String),
251 MonitorTaskPanicked(String),
252 PauseStarted,
253 PauseEnded,
254
255 WatcherStarted(u32), WatcherStopped(u32), WatcherStoppedSuccessfully,
259 WatcherNotRunning,
260 WatcherNotRunningPidNotFound,
261 WatcherStartingForeground,
262 WatcherStoppingExisting(String), WatcherFailedToStopExisting(String), WatcherFailedToStop(u32), WatcherReceivedSigterm,
266 WatcherReceivedSigint,
267 WatcherReceivedCtrlC,
268 WatcherCtrlCListenFailed(String), WatcherSignalHandlingNotSupported,
270 DaemonModeNotSupported,
271 FailedToGetCurrentExecutable,
272 FailedToCreateSigtermHandler,
273 FailedToCreateSigintHandler,
274
275 UpdateAvailable {
277 app_name: String,
278 latest: String,
279 },
280 UpdateCompleted {
281 app_name: String,
282 version: String,
283 },
284 NoUpdateRequired,
285 UpdateDownloadUrlNotSet,
286 WatcherStoppingForUpdate,
287 WatcherRestartingAfterUpdate,
288 WatcherStoppingForConfig,
289 WatcherRestartingAfterConfig,
290 WatcherRestarted,
291 WatcherRestartFailed {
292 error: String,
293 },
294 UpdateBinaryNotFoundInArchive,
295
296 WrongPassword(i32), InvalidCredentials,
299 SessionExpired,
300 AuthenticationFailed(String), JiraAuthenticateFailed,
302 LoginFailed,
303 CredentialsNotSet,
304
305 ApiConnectionFailed,
307 ApiAuthFailed,
308 ApiRequestFailed,
309 GitlabFetchFailed(String), GitlabUserIdFailed(String), JiraFetchFailed(String), SiServerConfigNotFound,
313 SiServerSessionFailed(String), SiServerRestDatesFailed(String), SiServerRestDatesParsingFailed(String), DbConnectionFailed,
319 DbQueryFailed,
320 DbMigrationFailed,
321 DatabaseOperationFailed {
322 operation: String,
323 error: String,
324 },
325 NoIdSet,
326
327 FileNotFound,
329 FileReadError,
330 FileWriteError,
331 InvalidPidFileContent,
332 DataStoragePathError,
333
334 PathConfigured,
336 PathConfigWarning {
337 error: String,
338 },
339 PathQueryFailed(String), PathSetFailed,
341 PathRegistryQueryError {
342 status: String,
343 },
344 PathRegistryUpdateError {
345 status: String,
346 stderr: String,
347 },
348 FailedToJoinPaths,
349 FailedToExecuteRegQuery,
350 FailedToParseRegOutput,
351 FailedToGetPathFromReg,
352 FailedToExecuteRegSet,
353 FailedToOpenProcess(u32), FailedToTerminateProcess(u32), ProcessNotFound,
356 ProcessTerminationNotSupported,
357
358 MonthlyProductivity(f64), LowProductivityWarning {
361 current: f64,
362 threshold: f64,
363 needed_break_minutes: u64,
364 },
365 ProductivityTooLowToSend {
366 current: f64,
367 threshold: f64,
368 needed_break_minutes: u64,
369 },
370 BreakCreated {
371 start_time: String,
372 end_time: String,
373 duration_minutes: u64,
374 },
375 BreakCreateFailed(String),
376 BreakSuggestionCommand {
377 auto_minutes: u64,
378 },
379 BreakInteractivePrompt,
380 BreakDurationPrompt {
381 min_duration: u64,
382 max_duration: u64,
383 },
384 BreakPlacementOptions,
385 BreakOptionSelected(usize),
386 BreakConflictsWithPauses,
387 NoValidBreakPlacement,
388 ProductivityRecalculated(f64),
389
390 EncryptionKeyMustBeSet,
392 EncryptionIvMustBeSet,
393
394 PromptTaskName,
396 TaskNameMergedFromPaste,
397 PromptTaskComment,
398 PromptTaskCompleteness,
399 PromptGitlabToken,
400 PromptGitlabUrl,
401 PromptJiraLogin,
402 PromptJiraUrl,
403 PromptJiraPassword,
404 PromptSiLogin,
405 PromptSiAuthUrl,
406 PromptSiApiUrl,
407 PromptSiPassword,
408 PromptMinPauseDuration,
409 PromptPauseThreshold,
410 PromptPollInterval,
411 PromptActivityThreshold,
412 PromptMinProductivityThreshold,
413 PromptWorkdayHours,
414 PromptMinWorkdayFraction,
415 PromptMinBreakDuration,
416 PromptMaxBreakDuration,
417 PromptServerApiUrl,
418 PromptServerAuthToken,
419 PromptConfirmDelete,
420 PromptSelectOptions,
421 PromptSelectModules,
422 PromptSelectTasks,
423 PromptSelectTasksToEdit,
424 PromptSelectTasksToImport,
425 PromptSelectTasksToIgnore,
426 PromptSelectIgnoreNamesToRemove,
427 PromptAddIgnoreName,
428
429 OperationCompleted,
431 OperationCancelled,
432 DataExported,
433 BackupCreated,
434 InvalidInput,
435 PermissionDenied,
436
437 ErrorSendingEvents(String), ErrorSendingMonthlyReport(String), ErrorInRdevListener(String), ErrorRequestingRestDates(String), SelectingTask(String), SelectedTaskFormat(String, i32), JiraInboxRequiresJiraConfig,
449 JiraInboxEmpty,
450 JiraInboxListHeader,
451 JiraInboxSynced {
452 fetched: usize,
453 new_count: usize,
454 updated: usize,
455 },
456 JiraInboxNewIssues(usize),
457 JiraInboxNotFound(String),
458 JiraInboxPinned(String),
459 JiraInboxUnpinned(String),
460 JiraInboxDismissed(String),
461 JiraInboxOpened(String),
462 JiraInboxTaken(String),
463 JiraInboxOpenFailed(String),
464 PromptJiraInboxEnabled,
465 PromptJiraInboxPollInterval,
466 PromptJiraInboxNotify,
467 PromptJiraInboxSortFieldId,
468 PromptJiraInboxSortFieldLabel,
469 PromptJiraInboxExtraFieldId,
470 PromptJiraInboxExtraFieldLabel,
471
472 MigrationsFound(usize), RunningMigration(u32, String), MigrationCompleted(u32), MigrationFailed(u32, String), AllMigrationsCompleted,
478 DatabaseVersion(u32),
479 DatabaseUpToDate,
480 DatabaseNeedsUpdate,
481 MigrationHistory,
482 NothingToRollback,
483 RollingBack(u32, u32), RollbackCompleted(u32), }