import type { ScreenName } from "./types"; import { openDB, getProgress } from "./storage/db"; import { initWelcomeScreen } from "./ui/screens"; let db: IDBDatabase; export function showScreen(name: ScreenName): void { document.querySelectorAll(".screen").forEach((el) => { el.classList.remove("screen--active"); }); const target = document.getElementById(`screen-${name}`); if (target) { target.classList.add("screen--active"); } } export function getDB(): IDBDatabase { return db; } export async function initApp(): Promise { db = await openDB(); const progress = await getProgress(db); if (progress && progress.selectedCharacter) { // Returning user — skip welcome, go to forest showScreen("forest"); } else { // First time — show welcome initWelcomeScreen(db, showScreen); showScreen("welcome"); } }