feat: implement infinite mode with character selection and scoring; refactor daily character storage logic

This commit is contained in:
2026-03-02 11:23:52 +01:00
parent cf25a96719
commit b245ee984a
5 changed files with 453 additions and 11 deletions

View File

@@ -0,0 +1,28 @@
import { db } from '$lib/server/db';
import { config } from '$lib/server/db/schema';
import { getAllCharacters } from '$lib/server/daily-character';
import { like } from 'drizzle-orm';
export async function load() {
const characters = await getAllCharacters();
// Load column visibility config
const columnConfig = await db
.select()
.from(config)
.where(like(config.key, 'characterHistory.column.%.visible'));
// Convert to object for easier access
const columnVisibility: Record<string, boolean> = {};
columnConfig.forEach(row => {
const match = row.key.match(/characterHistory\.column\.(.+)\.visible/);
if (match) {
columnVisibility[match[1]] = row.value === 'true';
}
});
return {
characters,
columnVisibility
};
}