Fix missing overtime print

This commit is contained in:
Marko Korhonen 2023-11-23 17:49:34 +02:00
parent cd891bf6a0
commit bb79ecdaa1
Signed by: FunctionalHacker
GPG key ID: A7F78BCB859CD890
3 changed files with 7 additions and 7 deletions

View file

@ -1,6 +1,5 @@
import chalk from 'chalk'; import chalk from 'chalk';
import { Duration } from 'dayjs/plugin/duration'; import { Duration } from 'dayjs/plugin/duration';
import getConfig from './config';
import { parseDuration, parseTimestamp } from './parse'; import { parseDuration, parseTimestamp } from './parse';
import * as readline from 'readline/promises'; import * as readline from 'readline/promises';
import { formatDuration, formatTime } from './format'; import { formatDuration, formatTime } from './format';
@ -110,10 +109,10 @@ const input = async (config: WtcConfig): Promise<WtcPromptResult> => {
const unLogged = worked.subtract(logged); const unLogged = worked.subtract(logged);
const workLeft = workDayDuration.subtract(worked); const workLeft = workDayDuration.subtract(worked);
let workLeftMinutes = workLeft.asMinutes(); let workLeftMinutes = workLeft.asMinutes();
let workedOverTime: Duration | undefined; let workedOvertime: Duration | undefined;
if (workLeftMinutes < 0) { if (workLeftMinutes < 0) {
workedOverTime = dayjs.duration(Math.round(workLeftMinutes * -1), 'minutes'); workedOvertime = dayjs.duration(Math.round(workLeftMinutes * -1), 'minutes');
} }
return { return {
@ -125,6 +124,7 @@ const input = async (config: WtcConfig): Promise<WtcPromptResult> => {
hadLunch, hadLunch,
worked, worked,
workLeft, workLeft,
workedOvertime,
}; };
} finally { } finally {
rl.close(); rl.close();

View file

@ -10,7 +10,7 @@ const output = (result: WtcPromptResult, config: WtcConfig) => {
const msg = message(config.language); const msg = message(config.language);
const fmtDuration = formatDuration(config.language); const fmtDuration = formatDuration(config.language);
const hoursRounded = getHoursRoundedStr(config.language); const hoursRounded = getHoursRoundedStr(config.language);
const { startedAt, stoppedAt, stoppedWorking, worked, unLogged, workLeft, workedOverTime } = result; const { startedAt, stoppedAt, stoppedWorking, worked, unLogged, workLeft, workedOvertime } = result;
log(); log();
log(msg(MessageKey.startedWorking), formatTimestamp(startedAt)); log(msg(MessageKey.startedWorking), formatTimestamp(startedAt));
log( log(
@ -33,8 +33,8 @@ const output = (result: WtcPromptResult, config: WtcConfig) => {
if (workLeft.asMinutes() > 0) { if (workLeft.asMinutes() > 0) {
log(msg(MessageKey.workLeft, chalk.green(fmtDuration(workLeft)))); log(msg(MessageKey.workLeft, chalk.green(fmtDuration(workLeft))));
} else if (workedOverTime) { } else if (workedOvertime) {
log(msg(MessageKey.workedOvertime, chalk.green(fmtDuration(workedOverTime)))); log(msg(MessageKey.workedOvertime, chalk.green(fmtDuration(workedOvertime))));
} }
}; };

View file

@ -10,5 +10,5 @@ export interface WtcPromptResult {
hadLunch: boolean; hadLunch: boolean;
worked: Duration; worked: Duration;
workLeft: Duration; workLeft: Duration;
workedOverTime?: Duration; workedOvertime?: Duration;
} }