From b7bd1e05eebe61f4c16539c5fb00f75382e02e01 Mon Sep 17 00:00:00 2001 From: Luc Mcgrady Date: Thu, 19 Jun 2025 22:17:45 +0100 Subject: [PATCH] Add: Frontend --- ts/routes/deck-options/FsrsOptions.svelte | 6 ++++- ts/routes/deck-options/SimulatorModal.svelte | 24 ++++++++++++++++---- ts/routes/deck-options/choices.ts | 14 ++++++++++++ 3 files changed, 38 insertions(+), 6 deletions(-) diff --git a/ts/routes/deck-options/FsrsOptions.svelte b/ts/routes/deck-options/FsrsOptions.svelte index f573a0278..21602682c 100644 --- a/ts/routes/deck-options/FsrsOptions.svelte +++ b/ts/routes/deck-options/FsrsOptions.svelte @@ -7,7 +7,10 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html ComputeRetentionProgress, type ComputeParamsProgress, } from "@generated/anki/collection_pb"; - import { SimulateFsrsReviewRequest } from "@generated/anki/scheduler_pb"; + import { + CMRRTarget, + SimulateFsrsReviewRequest, + } from "@generated/anki/scheduler_pb"; import { computeFsrsParams, evaluateParams, @@ -94,6 +97,7 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html newCardsIgnoreReviewLimit: $newCardsIgnoreReviewLimit, easyDaysPercentages: $config.easyDaysPercentages, reviewOrder: $config.reviewOrder, + target: CMRRTarget.memorised, }); const DESIRED_RETENTION_LOW_THRESHOLD = 0.8; diff --git a/ts/routes/deck-options/SimulatorModal.svelte b/ts/routes/deck-options/SimulatorModal.svelte index 64b712560..18a864fed 100644 --- a/ts/routes/deck-options/SimulatorModal.svelte +++ b/ts/routes/deck-options/SimulatorModal.svelte @@ -18,21 +18,23 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html import { renderSimulationChart } from "../graphs/simulator"; import { computeOptimalRetention, simulateFsrsReview } from "@generated/backend"; import { runWithBackendProgress } from "@tslib/progress"; - import type { - ComputeOptimalRetentionResponse, - SimulateFsrsReviewRequest, - SimulateFsrsReviewResponse, + import { + CMRRTarget, + type ComputeOptimalRetentionResponse, + type SimulateFsrsReviewRequest, + type SimulateFsrsReviewResponse, } from "@generated/anki/scheduler_pb"; import type { DeckOptionsState } from "./lib"; import SwitchRow from "$lib/components/SwitchRow.svelte"; import GlobalLabel from "./GlobalLabel.svelte"; import SpinBoxFloatRow from "./SpinBoxFloatRow.svelte"; - import { reviewOrderChoices } from "./choices"; + import { CMRRTargetChoices, reviewOrderChoices } from "./choices"; import EnumSelectorRow from "$lib/components/EnumSelectorRow.svelte"; import { DeckConfig_Config_LeechAction } from "@generated/anki/deck_config_pb"; import EasyDaysInput from "./EasyDaysInput.svelte"; import Warning from "./Warning.svelte"; import type { ComputeRetentionProgress } from "@generated/anki/collection_pb"; + import Item from "$lib/components/Item.svelte"; export let shown = false; export let state: DeckOptionsState; @@ -410,6 +412,18 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html {#if computingRetention}
{computeRetentionProgressString}
{/if} + + + + + {"Target: "} + + +