From 470eb458460f477343cc528b1de5367b6c499085 Mon Sep 17 00:00:00 2001 From: kampffrosch94 Date: Mon, 25 Nov 2024 22:02:40 +0100 Subject: [PATCH] add new vocab count --- .../CoverageOverview/CODeckList.svelte | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/components/CoverageOverview/CODeckList.svelte b/src/components/CoverageOverview/CODeckList.svelte index dcf8648..44a4a7b 100644 --- a/src/components/CoverageOverview/CODeckList.svelte +++ b/src/components/CoverageOverview/CODeckList.svelte @@ -9,11 +9,22 @@ export let decks: DeckWithVocabState[]; export let startTime: number; + function compute_new_count(deck: DeckWithVocabState): number { + let count = 0; + for (const v of deck.vocabs) { + if (v.state[0] === "new") { + count++; + } + } + return count; + } + let min_coverage = 0; let absolute_min_words = 0; let absolute_max_words = 0; let absolute_min_vocabs = 0; let absolute_max_vocabs = 0; + let absolute_max_new = 0; let custom_learnahead = 200; let decks_with_coverage = decks.map((deck) => { let lc_custom = learnAheadCoverage(deck.vocabs, custom_learnahead); @@ -23,6 +34,7 @@ lc_100: learnAheadCoverage(deck.vocabs, 100), lc_custom: lc_custom, cliff: lc_custom - deck.learning_coverage, + new_count: compute_new_count(deck), }; }); console.log(`[${Date.now() - startTime}] Done with coverage prediction`); @@ -40,6 +52,7 @@ lc_100: learnAheadCoverage(deck.vocabs, 100), lc_custom: lc_custom, cliff: lc_custom - deck.learning_coverage, + new_count: compute_new_count(deck), }; }); handler = new DataHandler(decks_with_coverage); @@ -58,6 +71,9 @@ absolute_max_vocabs = decks_with_coverage .map((it) => it.vocab_count) .reduce((acc, curr) => Math.max(acc, curr)); + absolute_max_new = decks_with_coverage + .map((it) => it.new_count) + .reduce((acc, curr) => Math.max(acc, curr)); } @@ -74,6 +90,7 @@ Custom learnahead: Name Vocab Words + New
Count Coverage Learning @@ -99,6 +116,7 @@ Custom learnahead: min={absolute_min_words} max={absolute_max_words} /> + @@ -113,6 +131,7 @@ Custom learnahead: {row.name} {row.vocab_count} {row.word_count} + {row.new_count} {row.known_coverage.toFixed(2)} {row.learning_coverage.toFixed(2)} {row.lc_50.toFixed(2)}