From e7a67ebfa0ac3db6636fc3fe94f5459456378796 Mon Sep 17 00:00:00 2001 From: Marko Korhonen Date: Thu, 23 Nov 2023 20:53:37 +0200 Subject: [PATCH] Fix displaying overlogged time as negative --- src/output.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/output.ts b/src/output.ts index 49eaa33..b300000 100644 --- a/src/output.ts +++ b/src/output.ts @@ -3,8 +3,11 @@ import { formatDuration, getHoursRoundedStr } from './format'; import { WtcPromptResult } from './types/WtcPromptResult'; import { MessageKey, message } from './i18n.js'; import WtcConfig from './types/WtcConfig'; +import duration from 'dayjs/plugin/duration.js'; +import dayjs from 'dayjs'; const { log } = console; +dayjs.extend(duration); const output = (result: WtcPromptResult, config: WtcConfig) => { const { language, timestampFormat } = config; @@ -34,7 +37,8 @@ const output = (result: WtcPromptResult, config: WtcConfig) => { unLoggedMinutes === 0 ? '' : chalk.yellow(hoursRounded(unLogged)), ); } else if (unLoggedMinutes < 0) { - log(chalk.red(msg(MessageKey.loggedOver, fmtDuration(unLogged))), chalk.yellow(hoursRounded(unLogged))); + const overLogged = dayjs.duration(Math.abs(unLogged.asMilliseconds()), 'milliseconds'); + log(chalk.red(msg(MessageKey.loggedOver, fmtDuration(overLogged)))); } if (workLeft.asMinutes() > 0) {