Move required reviews field into evaluation settings and add live voting migration

Move the "Required Reviews per Project" field from the Basic Information
card into the Evaluation Settings section of RoundTypeSettings, where it
contextually belongs. Add missing database migration for live voting
enhancements (criteria voting, audience voting, AudienceVoter table).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-02-12 16:57:56 +01:00
parent 7b85fd9602
commit 52cdca1b85
4 changed files with 157 additions and 51 deletions

View File

@@ -35,6 +35,7 @@ interface RoundTypeSettingsProps {
onRoundTypeChange: (type: 'FILTERING' | 'EVALUATION' | 'LIVE_EVENT') => void
settings: Record<string, unknown>
onSettingsChange: (settings: Record<string, unknown>) => void
requiredReviewsField?: React.ReactNode
}
const roundTypeIcons = {
@@ -54,6 +55,7 @@ export function RoundTypeSettings({
onRoundTypeChange,
settings,
onSettingsChange,
requiredReviewsField,
}: RoundTypeSettingsProps) {
const Icon = roundTypeIcons[roundType]
@@ -145,6 +147,7 @@ export function RoundTypeSettings({
<EvaluationSettings
settings={getEvaluationSettings()}
onChange={(s) => onSettingsChange(s as unknown as Record<string, unknown>)}
requiredReviewsField={requiredReviewsField}
/>
)}
@@ -319,14 +322,19 @@ function FilteringSettings({
function EvaluationSettings({
settings,
onChange,
requiredReviewsField,
}: {
settings: EvaluationRoundSettings
onChange: (settings: EvaluationRoundSettings) => void
requiredReviewsField?: React.ReactNode
}) {
return (
<div className="space-y-6 border-t pt-4">
<h4 className="font-medium">Evaluation Settings</h4>
{/* Required Reviews (passed from parent form) */}
{requiredReviewsField}
{/* Target Finalists */}
<div className="space-y-2">
<Label htmlFor="targetFinalists">Target Finalists</Label>