import { ListTodo, Globe, ChevronRight, Check } from 'lucide-react'; import { motion } from 'framer-motion'; import { GlassCard } from '../shared/GlassCard'; import { CardIcon } from '../shared/CardIcon'; import { useRecommendations } from '../../hooks/useRecommendations'; import type { RecommendationItem } from '../../lib/api'; interface RecommendedActionsCardProps { className?: string; delay?: number; } function ActionRow({ item, index, delay }: { item: RecommendationItem; index: number; delay: number }) { const rowClass = `flex w-full items-center gap-4 rounded-lg border px-4 py-3.5 text-left transition-colors ${ item.done ? 'border-[rgba(104,243,73,0.2)] bg-[rgba(104,243,73,0.03)] cursor-default' : 'border-white/[0.1] bg-white/[0.03] cursor-pointer hover:bg-white/[0.06]' }`; const inner = ( <>
{item.done ? : null}

{item.label}

{item.description}

); const motionProps = { initial: { opacity: 0, y: 10 }, animate: { opacity: 1, y: 0 }, transition: { duration: 0.3, delay: delay + 0.4 + index * 0.05 }, className: rowClass, }; if (item.done) { return ( {inner} ); } return ( {inner} ); } export function RecommendedActionsCard({ className = '', delay = 0 }: RecommendedActionsCardProps) { const { items, completed, total, loading } = useRecommendations(); const progress = total > 0 ? (completed / total) * 100 : 0; return (

What should you do next?

Based on your current performance, here are recommended actions

{loading ? '...' : `${completed} /${total} Completed`}
{loading ? (
) : (
{items.map((item, i) => ( ))}
)} ); }