feat: add asset preferences, video research, and Remotion ad assets
- Add thumbs-down feedback modal and preference API endpoint - Add AI UGC video platforms research doc - Add ReflectAd Remotion composition with public flow assets - Add gemini-ad-designer and poster-ad-designer pipeline skills - Add research_reflect_v1.1 pipeline script Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -28,7 +28,7 @@ export function RepurposeModal({ assetId, onClose }: RepurposeModalProps) {
|
||||
const [available, setAvailable] = useState<string[]>([]);
|
||||
const [selected, setSelected] = useState<Set<string>>(new Set());
|
||||
const [loading, setLoading] = useState(false);
|
||||
const [result, setResult] = useState<{ created: number } | null>(null);
|
||||
const [result, setResult] = useState<{ formats?: string[] } | null>(null);
|
||||
|
||||
useEffect(() => {
|
||||
fetch(`/api/assets/${assetId}/repurpose`)
|
||||
@@ -73,8 +73,10 @@ export function RepurposeModal({ assetId, onClose }: RepurposeModalProps) {
|
||||
|
||||
{result ? (
|
||||
<div className="py-4 text-center">
|
||||
<p className="text-lg font-semibold">{result.created} asset{result.created !== 1 ? "s" : ""} created</p>
|
||||
<p className="text-sm text-muted-foreground mt-1">Check the Asset Library to review them.</p>
|
||||
<p className="text-lg font-semibold">Repurposing to {result.formats?.length || 0} format{(result.formats?.length || 0) !== 1 ? "s" : ""}</p>
|
||||
<p className="text-sm text-muted-foreground mt-1">
|
||||
Gemini is regenerating the ad at each new size. New assets will appear in the Asset Library when ready.
|
||||
</p>
|
||||
<DialogFooter>
|
||||
<Button onClick={onClose}>Done</Button>
|
||||
</DialogFooter>
|
||||
|
||||
Reference in New Issue
Block a user