fix: tech debt batch 1 — TS errors, vulnerabilities, dead code
- Fixed 12 TypeScript errors across analytics.ts, observer-project-detail.tsx, bulk-upload/page.tsx, settings/profile/page.tsx - npm audit: 8 vulnerabilities resolved (1 critical, 4 high, 3 moderate) - Deleted 3 dead files: live-control.ts (618 lines), feature-flags.ts, file-type-categories.ts - Removed typescript.ignoreBuildErrors: true — TS errors now block builds Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -933,12 +933,14 @@ export function ObserverProjectDetail({ projectId }: { projectId: string }) {
|
||||
// Group files by round
|
||||
type FileItem = (typeof project.files)[number]
|
||||
const roundMap = new Map<string, { roundId: string | null; roundName: string; sortOrder: number; files: FileItem[] }>()
|
||||
// Build roundId→round lookup from competitionRounds
|
||||
const roundLookup = new Map(competitionRounds.map((r, idx) => [r.id, { name: r.name, sortOrder: idx }]))
|
||||
for (const f of project.files) {
|
||||
const key = (f as any).roundId ?? '__none__'
|
||||
const key = f.roundId ?? '__none__'
|
||||
if (!roundMap.has(key)) {
|
||||
const round = (f as any).round as { id: string; name: string; sortOrder: number } | null
|
||||
const round = f.roundId ? roundLookup.get(f.roundId) : null
|
||||
roundMap.set(key, {
|
||||
roundId: round?.id ?? null,
|
||||
roundId: f.roundId ?? null,
|
||||
roundName: round?.name ?? 'Other Files',
|
||||
sortOrder: round?.sortOrder ?? 999,
|
||||
files: [],
|
||||
|
||||
Reference in New Issue
Block a user