Fix slug conflict and seed import for Docker deployment

- Rename [id] → [competitionId] under /admin/competitions/ to fix
  Next.js "different slug names for same dynamic path" error
- Update params.id → params.competitionId in competition detail page
- Fix seed import: use .js extension for tsx ESM module resolution

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Matt 2026-02-15 23:30:01 +01:00
parent 1233cdd22c
commit 0b4e56b287
2 changed files with 2 additions and 2 deletions

View File

@ -18,7 +18,7 @@ import {
AdvancementRuleType, AdvancementRuleType,
} from '@prisma/client' } from '@prisma/client'
import bcrypt from 'bcryptjs' import bcrypt from 'bcryptjs'
import { defaultRoundConfig } from '../src/types/competition-configs' import { defaultRoundConfig } from '../src/types/competition-configs.js'
import { readFileSync } from 'fs' import { readFileSync } from 'fs'
import { parse } from 'csv-parse/sync' import { parse } from 'csv-parse/sync'
import { join, dirname } from 'path' import { join, dirname } from 'path'

View File

@ -95,7 +95,7 @@ const roundTypeColors: Record<string, string> = {
export default function CompetitionDetailPage() { export default function CompetitionDetailPage() {
const params = useParams() const params = useParams()
const competitionId = params.id as string const competitionId = params.competitionId as string
const utils = trpc.useUtils() const utils = trpc.useUtils()
const [addRoundOpen, setAddRoundOpen] = useState(false) const [addRoundOpen, setAddRoundOpen] = useState(false)
const [roundForm, setRoundForm] = useState({ const [roundForm, setRoundForm] = useState({