diff --git a/src/components/FluxNote.vue b/src/components/FluxNote.vue index cfcd468..a49386b 100644 --- a/src/components/FluxNote.vue +++ b/src/components/FluxNote.vue @@ -200,6 +200,8 @@ $header-height: 40px; } .note { + display: flex; + flex-direction: column; text-align: justify; overflow-y: auto; height: 100vh; diff --git a/src/modules/card/components/FlipCard.vue b/src/modules/card/components/FlipCard.vue index 3ab0bba..f647bb6 100644 --- a/src/modules/card/components/FlipCard.vue +++ b/src/modules/card/components/FlipCard.vue @@ -3,7 +3,7 @@ import { ref } from 'vue' import { Card } from '../models/Card' defineProps<{ card: Card }>() -const emit = defineEmits(['success', 'fail']) +const emit = defineEmits<{ success: []; fail: [] }>() const flipped = ref(false) const flip = () => (flipped.value = !flipped.value) @@ -43,7 +43,7 @@ $border-radius: 0.5rem; padding: 0 1rem; margin: auto; user-select: none; - transition: 0.1s; + transition: 0.3s; perspective: 1500px; &:hover { diff --git a/src/modules/card/components/FlipCardList.vue b/src/modules/card/components/FlipCardList.vue new file mode 100644 index 0000000..66b3380 --- /dev/null +++ b/src/modules/card/components/FlipCardList.vue @@ -0,0 +1,68 @@ + + + + + diff --git a/src/modules/card/hooks/useSpacedRepetitionCards.ts b/src/modules/card/hooks/useSpacedRepetitionCards.ts index 9079e7e..3271d0d 100644 --- a/src/modules/card/hooks/useSpacedRepetitionCards.ts +++ b/src/modules/card/hooks/useSpacedRepetitionCards.ts @@ -13,7 +13,7 @@ import { computed, nextTick, watch } from 'vue' const MAX_LEVEL = 10 -interface Repetition { +export interface Repetition { repetition: RepetitionCard card: Card } @@ -80,22 +80,6 @@ export const useSpacedRepetitionCards = () => { { immediate: false } ) - const failRepetition = async (cardId: string) => { - const repetition = await data.get( - cardId - ) - if (!repetition) { - return - } - - await data.update({ - ...repetition, - repeatDate: addDays(new Date(), 1) - }) - - await execute() - } - const successRepetition = async (cardId: string) => { const repetition = await data.get( cardId @@ -104,13 +88,13 @@ export const useSpacedRepetitionCards = () => { return } + const newLevel = repetition.level + 1 + await data.update({ ...repetition, - level: Math.min(repetition.level, MAX_LEVEL), - repeatDate: addDays(new Date(), repetition.level) + level: Math.min(newLevel, MAX_LEVEL), + repeatDate: addDays(new Date(), newLevel) }) - - await execute() } watch( @@ -122,7 +106,7 @@ export const useSpacedRepetitionCards = () => { { immediate: true } ) - watch(cardFiles, () => execute(), { immediate: true }) + watch(cardFiles, () => execute()) - return { cards, failRepetition, successRepetition, isLoading: !isReady } + return { cards, successRepetition, isLoading: !isReady } } diff --git a/src/views/SpacedRepetitionCard.vue b/src/views/SpacedRepetitionCard.vue index 12b0a63..e473a54 100644 --- a/src/views/SpacedRepetitionCard.vue +++ b/src/views/SpacedRepetitionCard.vue @@ -1,40 +1,28 @@