aboutsummaryrefslogtreecommitdiff
path: root/src/audio.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/audio.ts')
-rw-r--r--src/audio.ts19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/audio.ts b/src/audio.ts
new file mode 100644
index 0000000..bdf64eb
--- /dev/null
+++ b/src/audio.ts
@@ -0,0 +1,19 @@
+import * as Config from 'config'
+import * as State from 'state'
+
+const start = new Audio('sound/start.mp3')
+const stop = new Audio('sound/stop.mp3')
+const endTabata = new Audio('sound/end-tabata.mp3')
+const endTraining = new Audio('sound/end-training.mp3')
+
+export function playFromStep(config: Config.Config, state: State.State) {
+ if (state.step === State.Step.Work && state.remaining === config.work) {
+ start.play()
+ } else if (state.step === State.Step.Rest && state.remaining === config.rest) {
+ stop.play()
+ } else if (state.step === State.Step.Prepare && state.remaining === config.prepare) {
+ endTabata.play()
+ } else if (state.step === State.Step.End) {
+ endTraining.play()
+ }
+}