1#[derive(Debug, Clone)]
22pub enum Message {
23 AutostartEnabled,
25 AutostartEnabledUser,
26 AutostartDisabled,
27 AutostartAlreadyDisabled,
28 AutostartEnableFailed(String),
29 AutostartDisableFailed(String),
30 AutostartStatus(String),
31 AutostartRequiresAdmin,
32 AutostartCheckingAlternative,
33
34 TaskCreated,
36 TaskUpdated,
37 TaskNotFound,
38 TaskUpdateFailed,
39 TasksDeletedCount(usize),
40 TasksNotFoundForDate(String),
41 TasksNotFoundSad,
42 TasksHeader,
43 TasksDiscoverySummary {
45 incomplete: usize,
46 jira: usize,
47 gitlab: usize,
48 },
49 TasksDiscoverySeparator,
51 TasksDiscoverySearchingIncomplete,
52 TasksDiscoveryFetchingExternal,
53 NoTaskIdsProvided,
54 TasksNotFoundForIds(Vec<i32>),
55 TasksToBeDeleted,
56 ConfirmDeleteTask,
57 ConfirmDeleteTasks(usize),
58 ConfirmDeleteAllTodayTasks(usize),
59 ConfirmDeleteAllTodayTasksFinal,
60 NoTasksForToday,
61 TaskNotFoundWithId(i32),
62 CurrentTaskState,
63 TaskEditPreview,
64 ConfirmTaskUpdate,
65 NoChangesDetected,
66 NoTasksSelected,
67 SelectTasksToEdit,
68 EditingTask(String),
69 TaskUpdatedWithName(String),
70 TaskSkippedNoChanges(String),
71 TaskEditingCompleted,
72 PromptTaskNameEdit,
73 PromptTaskCommentEdit,
74 PromptTaskCompletenessEdit,
75 TaskCompletenessRange,
76
77 WorkdayEnded,
79 WorkdayNotFoundForDate(String),
80 WorkdayCreateFailed,
81 WorkdayStarting(String), WorkdayCouldNotFindAfterFinalizing(String), ConfigSaved,
86 ConfigDeleted,
87 ConfigParseError,
88 ConfigSaveError,
89 ConfigModuleGitLab,
90 ConfigModuleJira,
91 ConfigModuleSiServer,
92 ConfigModuleMonitor,
93 ConfigModuleServer,
94 ConfigModuleProductivity,
95 ConfigModuleTaskDiscovery,
96 ConfigModuleJiraInbox,
97 TaskDiscoveryIgnoreListHeader,
98 TaskDiscoveryIgnoreListEmpty,
99 TaskDiscoveryIgnoreNameAdded(String),
100 TaskDiscoveryIgnoreNameExists(String),
101 TaskDiscoveryIgnoreNamesAdded(usize),
102
103 DailyReportSent(String), MonthlyReportSent(String), MonthlyReportTriggered,
107 ReportSendFailed(String), MonthlyReportSendFailed(String), ReportHeader(String), WorkingHoursForMonth(String), ExportingData(String, String), ExportCompleted(String), ExportingAllData,
116
117 TemplateCreated(String),
119 TemplateUpdated(String),
120 TemplateDeleted(String),
121 TemplateNotFound(String),
122 TemplateAlreadyExists(String),
123 TemplateCreateFailed,
124 NoTemplatesFound,
125 TemplateListHeader,
126 SelectTemplateToEdit,
127 SelectTemplateToDelete,
128 ConfirmDeleteTemplate(String),
129 EditingTemplate(String),
130 NoTemplatesMatchingQuery(String),
131 TemplateSearchResults(String),
132 SelectTemplateAction,
133 PromptTemplateName,
134 PromptTemplateTaskName,
135 PromptTemplateComment,
136 PromptTemplateCompleteness,
137 CreatingTaskFromTemplate(String),
138 SelectTemplate,
139 CreateTemplateFirst,
140
141 TagCreated(String),
143 TagUpdated(String),
144 TagDeleted(String),
145 TagNotFound(String),
146 TagAlreadyExists(String),
147 NoTagsFound,
148 TagListHeader,
149 EditingTag(String),
150 SelectTagAction,
151 SelectTagToEdit,
152 SelectTagToDelete,
153 ConfirmDeleteTag(String),
154 ConfirmDeleteTagWithTasks(String, usize), PromptTagName,
156 PromptTagColor,
157 NoTasksWithTag(String),
158 TasksWithTag(String),
159 TagsAddedToTask(String),
160
161 ShortIntervalsDetected(usize, String), PromptMinWorkInterval,
164
165 WorkdayUpdateFailed,
167
168 PausesTitle(String),
170
171 MonitorStarted {
173 pause_threshold: u64,
174 poll_interval: u64,
175 activity_threshold: u64,
176 },
177 MonitorExitedNormally,
178 MonitorShuttingDown,
179 MonitorError(String),
180 MonitorTaskPanicked(String),
181 PauseStarted,
182 PauseEnded,
183
184 WatcherStarted(u32), WatcherStopped(u32), WatcherNotRunning,
188 WatcherNotRunningPidNotFound,
189 WatcherStartingForeground,
190 WatcherStoppingExisting(String), WatcherFailedToStopExisting(String), WatcherReceivedSigterm,
193 WatcherReceivedSigint,
194 WatcherReceivedCtrlC,
195 WatcherCtrlCListenFailed(String), WatcherSignalHandlingNotSupported,
197 DaemonModeNotSupported,
198 FailedToGetCurrentExecutable,
199 FailedToCreateSigtermHandler,
200 FailedToCreateSigintHandler,
201
202 UpdateAvailable {
204 app_name: String,
205 latest: String,
206 },
207 UpdateCompleted {
208 app_name: String,
209 version: String,
210 },
211 NoUpdateRequired,
212 UpdateDownloadUrlNotSet,
213 UpdateLatestTagNotFound(String),
214 WatcherStoppingForUpdate,
215 WatcherRestartingAfterUpdate,
216 WatcherStoppingForConfig,
217 WatcherRestartingAfterConfig,
218 WatcherRestarted,
219 WatcherRestartFailed {
220 error: String,
221 },
222 UpdateBinaryNotFoundInArchive,
223
224 WrongPassword(i32), GitlabFetchFailed(String), GitlabUserIdFailed(String), JiraFetchFailed(String), SiServerConfigNotFound,
232 SiServerSessionFailed(String), SiServerRestDatesFailed(String), SiServerRestDatesParsingFailed(String), KaslServerReached {
238 url: String,
239 version: String,
240 },
241 KaslServerConnected {
242 user_name: String,
243 agent_name: String,
244 },
245 KaslServerConfigured(String), KaslServerDatabaseUnhealthy(String), KaslServerUnreachable(String), KaslServerTokenRejected(String), KaslServerUrlNeedsScheme(String), KaslServerTokenEmpty,
251 KaslServerTokenMissing,
252 KaslServerTokenNotRemoved(String), KaslServerNotConnected,
254 KaslServerDisconnected,
255 KaslServerNoDayToPush(String), KaslServerDayPushed {
257 date: String,
258 pauses: usize,
259 tasks: usize,
260 },
261 KaslServerTasksDeleted(u64), KaslServerPushRejected(String), KaslServerPushTokenRejected(String), KaslServerPushRetryable(String), KaslServerDayQueued(String), KaslServerQueueEmpty,
267 KaslServerQueueOwed(i64), KaslServerQueueEntry {
269 date: String,
270 attempts: i32,
271 last_error: Option<String>,
272 },
273 KaslServerQueueSending(usize), KaslServerDayRefused {
275 date: String,
276 reason: String,
277 },
278 KaslServerDayDeferred {
279 date: String,
280 reason: String,
281 },
282 KaslServerFlushSummary {
283 accepted: usize,
284 refused: usize,
285 deferred: usize,
286 },
287 KaslServerBackfillRange {
288 from: String,
289 to: String,
290 days: usize,
291 },
292 KaslServerBackfillNoDays {
293 from: String,
294 to: String,
295 },
296 KaslServerBackfillOrderReversed, DatabaseOperationFailed {
300 operation: String,
301 error: String,
302 },
303 NoIdSet,
304
305 FileNotFound,
307 InvalidPidFileContent,
308
309 PathConfigured,
311 PathConfigWarning {
312 error: String,
313 },
314 PathRegistryQueryError {
315 status: String,
316 },
317 PathRegistryUpdateError {
318 status: String,
319 stderr: String,
320 },
321 FailedToJoinPaths,
322 FailedToExecuteRegQuery,
323 FailedToParseRegOutput,
324 FailedToGetPathFromReg,
325 FailedToExecuteRegSet,
326 FailedToOpenProcess(u32), FailedToTerminateProcess(u32), ProcessTerminationNotSupported,
329
330 MonthlyProductivity(f64), LowProductivityWarning {
333 current: f64,
334 threshold: f64,
335 },
336 ProductivityTooLowToSend {
337 current: f64,
338 threshold: f64,
339 },
340 ManualPauseCreated {
341 start_time: String,
342 end_time: String,
343 duration_minutes: u64,
344 },
345 ManualPauseOverlaps {
346 start_time: String,
347 end_time: String,
348 },
349 ManualPauseRemoved(i32),
350 ManualPauseNotFound(i32),
351
352 PromptTaskName,
356 TaskNameMergedFromPaste,
357 PromptTaskComment,
358 PromptTaskCompleteness,
359 PromptMinPauseDuration,
360 PromptPauseThreshold,
361 PromptPollInterval,
362 PromptActivityThreshold,
363 PromptMinProductivityThreshold,
364 PromptWorkdayHours,
365 PromptMinWorkdayFraction,
366 PromptServerApiUrl,
367 PromptServerAuthToken,
368 PromptKaslServerUrl,
369 PromptKaslServerToken,
370 PromptSelectModules,
371 PromptSelectTasksToImport,
372 PromptSelectTasksToIgnore,
373 PromptSelectIgnoreNamesToRemove,
374 PromptAddIgnoreName,
375
376 OperationCompleted,
378 OperationCancelled,
379 InvalidInput,
380 PermissionDenied,
381 DeprecatedCommand(&'static str, &'static str), ErrorSendingEvents(String), ErrorSendingMonthlyReport(String), ErrorInRdevListener(String), ErrorRequestingRestDates(String), SelectingTask(String), JiraInboxRequiresJiraConfig,
394 JiraInboxEmpty,
395 JiraInboxListHeader,
396 JiraInboxSynced {
397 fetched: usize,
398 new_count: usize,
399 changed: usize,
400 gone: usize,
401 },
402 JiraInboxNewIssues(usize),
403 JiraInboxNotFound(String),
404 JiraInboxPinned(String),
405 JiraInboxUnpinned(String),
406 JiraInboxDismissed(String),
407 JiraInboxOpened(String),
408 JiraInboxTaken(String),
409
410 JiraInboxAlreadyTaken(String, String),
412
413 JiraInboxSummary {
415 total: i64,
416 fresh: i64,
417 taken: i64,
418 },
419 JiraInboxOpenFailed(String),
420 PromptJiraInboxEnabled,
421 PromptJiraInboxPollInterval,
422 PromptJiraInboxNotify,
423 PromptJiraInboxSortFieldId,
424 PromptJiraInboxSortFieldLabel,
425 PromptJiraInboxExtraFieldId,
426 PromptJiraInboxExtraFieldLabel,
427
428 MigrationsFound(usize), RunningMigration(u32, String), MigrationCompleted(u32), MigrationFailed(u32, String), AllMigrationsCompleted,
434 DatabaseVersion(u32),
435 DatabaseUpToDate,
436 DatabaseNeedsUpdate,
437 MigrationHistory,
438 NothingToRollback,
439 RollingBack(u32, u32), RollbackCompleted(u32), }