From bab8de9dfec1636f4168f7a4f0243f6a3e6db820 Mon Sep 17 00:00:00 2001 From: Julien Calixte Date: Sun, 12 Jul 2020 22:03:01 +0200 Subject: [PATCH] :lipstick: (interval) better interval look --- src/components/DevSession.vue | 6 +++--- src/components/IntervalInput.vue | 23 +++-------------------- src/components/ZoneMusic.vue | 6 +++--- src/hooks/useInterval.ts | 29 ++++++++++++++++++++++++++++- src/styles/app.scss | 2 +- src/styles/variables.scss | 2 +- 6 files changed, 39 insertions(+), 29 deletions(-) diff --git a/src/components/DevSession.vue b/src/components/DevSession.vue index 618d6e1..bf047d5 100644 --- a/src/components/DevSession.vue +++ b/src/components/DevSession.vue @@ -1,7 +1,7 @@ @@ -20,7 +20,7 @@ export default defineComponent({ diff --git a/src/hooks/useInterval.ts b/src/hooks/useInterval.ts index 6870ef5..f72e2f0 100644 --- a/src/hooks/useInterval.ts +++ b/src/hooks/useInterval.ts @@ -1,13 +1,40 @@ import { useGetters, useActions } from 'vuex-composition-helpers' import { GetterTree } from 'vuex' import { State, RootActions } from '@/store' +import { computed } from '@vue/composition-api' + +const MIN_INTERVAL = 0.5 export const useInterval = () => { const { interval } = useGetters>(['interval']) const { setInterval } = useActions(['setInterval']) + const minus = () => { + if (interval.value > MIN_INTERVAL) { + setInterval(Math.max(interval.value - 1, MIN_INTERVAL)) + } + } + + const plus = () => { + setInterval(Math.floor(interval.value + 1)) + } + + const label = computed(() => { + if (interval.value > 1) { + return `${interval.value} minutes` + } + + if (interval.value === MIN_INTERVAL) { + return '30 seconds' + } + + return `${interval.value} minute` + }) + return { interval, - setInterval + minus, + plus, + label } } diff --git a/src/styles/app.scss b/src/styles/app.scss index 8c35249..a9da012 100644 --- a/src/styles/app.scss +++ b/src/styles/app.scss @@ -1,4 +1,4 @@ -@import url('https://fonts.googleapis.com/css2?family=Fira+Mono&display=swap'); +@import url('https://fonts.googleapis.com/css2?family=DM+Mono&display=swap'); @import './variables'; @import './plume'; diff --git a/src/styles/variables.scss b/src/styles/variables.scss index 0d9fc58..72636ce 100644 --- a/src/styles/variables.scss +++ b/src/styles/variables.scss @@ -1,6 +1,6 @@ $color: #f8efba; $bgcolor: #2c3a47; -$font-family: 'Fira Mono', monospace; +$font-family: 'DM Mono', monospace; :root { --pm-app-surface-color: #{#2c3a47};