diff --git a/.gitignore b/.gitignore index b512c09..25c8fdb 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ -node_modules \ No newline at end of file +node_modules +package-lock.json \ No newline at end of file diff --git a/frontend/src/App.svelte b/frontend/src/App.svelte index 9f4289b..e718bdb 100644 --- a/frontend/src/App.svelte +++ b/frontend/src/App.svelte @@ -5,15 +5,22 @@ import Message from "./components/Message.svelte"; import { Loader } from "@lucide/svelte"; - import { type Problem } from "./utils/types"; + import { type Problem, type ClosedRange, createValidRange } from "./utils/types"; + import { cacheInput, loadLastInput } from "./cacher"; - let under_diff = $state("0"); - let over_diff = $state("3854"); + const MIN_DIFF: number = 0; + const MAX_DIFF: number = 3854; + + let cachedInput : ClosedRange | null = loadLastInput(); + let currentInput : ClosedRange | null; + + let under_diff = $state(cachedInput ? cachedInput.min : MIN_DIFF); + let over_diff = $state(cachedInput ? cachedInput.max : MAX_DIFF); let errors = $derived({ - rangeError: parseInt(under_diff) > parseInt(over_diff), - isMinusUnderDiff: parseInt(under_diff) < 0, - isMinusOverDiff: parseInt(over_diff) < 0, + rangeError: !(currentInput = createValidRange(under_diff, over_diff)), + isMinusUnderDiff: under_diff < 0, + isMinusOverDiff: over_diff < 0, }); let result = $state(null); @@ -74,7 +81,7 @@
-