From 6ca5db2cab7820445e6c8d72a84f9b0ff731fa4f Mon Sep 17 00:00:00 2001 From: Johannes Millan Date: Sun, 10 Feb 2019 13:17:54 +0100 Subject: [PATCH] feat(pomodoro): add option to play sound when break ends #138 --- src/app/features/config/config.model.ts | 1 + src/app/features/config/default-config.const.ts | 1 + src/app/features/config/form-cfgs/pomodoro-form.const.ts | 7 +++++++ src/app/features/pomodoro/store/pomodoro.effects.ts | 2 +- 4 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/app/features/config/config.model.ts b/src/app/features/config/config.model.ts index 9cda72b2d6..bffd5398d0 100644 --- a/src/app/features/config/config.model.ts +++ b/src/app/features/config/config.model.ts @@ -54,6 +54,7 @@ export type PomodoroConfig = Readonly<{ isStopTrackingOnLongBreak: boolean; isManualContinue: boolean; isPlaySound: boolean; + isPlaySoundAfterBreak: boolean; // isGoToWorkView: boolean; isPlayTick: boolean; diff --git a/src/app/features/config/default-config.const.ts b/src/app/features/config/default-config.const.ts index 3ec503751f..0df3ad320d 100644 --- a/src/app/features/config/default-config.const.ts +++ b/src/app/features/config/default-config.const.ts @@ -25,6 +25,7 @@ export const DEFAULT_CFG: GlobalConfig = { isStopTrackingOnLongBreak: true, isManualContinue: false, isPlaySound: true, + isPlaySoundAfterBreak: false, // isGoToWorkView: false, isPlayTick: false, }, diff --git a/src/app/features/config/form-cfgs/pomodoro-form.const.ts b/src/app/features/config/form-cfgs/pomodoro-form.const.ts index f0c80af83b..0b3d2c6e7f 100644 --- a/src/app/features/config/form-cfgs/pomodoro-form.const.ts +++ b/src/app/features/config/form-cfgs/pomodoro-form.const.ts @@ -46,6 +46,13 @@ export const POMODORO_FORM_CFG: ConfigFormSection = { label: 'Play sound when session is done', }, }, + { + key: 'isPlaySoundAfterBreak', + type: 'checkbox', + templateOptions: { + label: 'Play sound when break is done', + }, + }, { key: 'isPlayTick', type: 'checkbox', diff --git a/src/app/features/pomodoro/store/pomodoro.effects.ts b/src/app/features/pomodoro/store/pomodoro.effects.ts index d99705cdb0..55d2fa3c21 100644 --- a/src/app/features/pomodoro/store/pomodoro.effects.ts +++ b/src/app/features/pomodoro/store/pomodoro.effects.ts @@ -86,7 +86,7 @@ export class PomodoroEffects { ), filter(isEnabled), filter(([action, cfg, isBreak]: [FinishPomodoroSession, PomodoroConfig, boolean]) => - cfg.isPlaySound && isBreak), + (cfg.isPlaySound && isBreak) || (cfg.isPlaySoundAfterBreak && !isBreak)), tap(() => this._pomodoroService.playSessionDoneSound()), );