Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
| import { safeParse } from "$lib/utils/json.js"; | |
| import typia from "typia"; | |
| const key = "hf_token"; | |
| class Token { | |
| #value = $state(""); | |
| writeToLocalStorage = $state(true); | |
| showModal = $state(false); | |
| constructor() { | |
| const storedHfToken = localStorage.getItem(key); | |
| const parsed = safeParse(storedHfToken ?? ""); | |
| this.value = typia.is<string>(parsed) ? parsed : ""; | |
| } | |
| get value() { | |
| return this.#value; | |
| } | |
| set value(token: string) { | |
| if (this.writeToLocalStorage) { | |
| localStorage.setItem(key, JSON.stringify(token)); | |
| } | |
| this.#value = token; | |
| this.showModal = !token.length; | |
| } | |
| reset = () => { | |
| this.value = ""; | |
| localStorage.removeItem(key); | |
| }; | |
| } | |
| export const token = new Token(); | |