import { getHistory } from "./gameOver"; import {appVersion, icons, upgrades} from "./loadGameData"; import { t } from "./i18n/i18n"; import { asyncAlert } from "./asyncAlert"; import { getSettingValue, setSettingValue } from "./settings"; export function runHistoryViewerMenuEntry() { const history = getHistory(); return { icon: icons["icon:history"], text: t("history.title"), disabled: history.length < 10, help: history.length < 10 ? t("history.locked") : t("history.help", { count: history.length }), async value() { let sort = 0; let sortDir = -1; let columns = [ { label: t("history.columns.started"), field: (r) => r.started, render(v) { return new Date(v).toISOString().slice(0, 10); }, }, { label: t("history.columns.score"), field: (r) => r.score, }, ...upgrades.map((u) => ({ label: icons["icon:" + u.id], tooltip: u.name, field: (r) => r.perks?.[u.id] || 0, render(v) { if (!v) return "-"; return v; }, })), ]; while (true) { const hasCurrentVersion = history.find( (r) => r.appVersion === appVersion, ); const hasPastVersion = history.find((r) => r.appVersion !== appVersion); const header = columns .map( (c, ci) => `