Fix multiple UI/UX issues and invite token migration
Fixes: - Round edit: Add cache invalidation for voting dates - Criteria weights: Replace number input with visual slider - Member invite: Per-member expertise tags with suggestions - Tags now added per member, not globally - Comma key support for quick tag entry - Suggested tags based on ocean/business expertise - Accept-invite: Add Suspense boundary for useSearchParams - Add missing inviteToken columns migration The invite token columns were accidentally skipped in prototype1 migration. This adds them with IF NOT EXISTS checks. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -6,6 +6,7 @@ import { Input } from '@/components/ui/input'
|
||||
import { Label } from '@/components/ui/label'
|
||||
import { Textarea } from '@/components/ui/textarea'
|
||||
import { Switch } from '@/components/ui/switch'
|
||||
import { Slider } from '@/components/ui/slider'
|
||||
import { Badge } from '@/components/ui/badge'
|
||||
import { Card, CardContent, CardHeader, CardTitle, CardDescription } from '@/components/ui/card'
|
||||
import {
|
||||
@@ -236,24 +237,29 @@ export function EvaluationFormBuilder({
|
||||
|
||||
<div className="space-y-2">
|
||||
<Label htmlFor={`weight-${criterion.id}`}>
|
||||
Weight (optional)
|
||||
Weight: {editDraft.weight ?? 1}x
|
||||
</Label>
|
||||
<Input
|
||||
id={`weight-${criterion.id}`}
|
||||
type="number"
|
||||
min={0}
|
||||
step={0.1}
|
||||
value={editDraft.weight ?? ''}
|
||||
onChange={(e) =>
|
||||
updateDraft({
|
||||
weight: e.target.value
|
||||
? parseFloat(e.target.value)
|
||||
: undefined,
|
||||
})
|
||||
}
|
||||
placeholder="1"
|
||||
disabled={disabled}
|
||||
/>
|
||||
<div className="flex items-center gap-3">
|
||||
<span className="text-xs text-muted-foreground w-4">0.5</span>
|
||||
<Slider
|
||||
id={`weight-${criterion.id}`}
|
||||
min={0.5}
|
||||
max={3}
|
||||
step={0.5}
|
||||
value={[editDraft.weight ?? 1]}
|
||||
onValueChange={(v) => updateDraft({ weight: v[0] })}
|
||||
disabled={disabled}
|
||||
className="flex-1"
|
||||
/>
|
||||
<span className="text-xs text-muted-foreground w-4">3</span>
|
||||
</div>
|
||||
<p className="text-xs text-muted-foreground">
|
||||
{(editDraft.weight ?? 1) === 1
|
||||
? 'Normal importance'
|
||||
: (editDraft.weight ?? 1) < 1
|
||||
? 'Lower importance'
|
||||
: 'Higher importance'}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div className="space-y-2">
|
||||
|
||||
Reference in New Issue
Block a user