import React, { useState, useMemo } from 'react'; import type { ActionPlan, PlanCategory } from '../types'; import { DocumentIcon } from './icons/DocumentIcon'; import { MedicalIcon } from './icons/MedicalIcon'; import { WorkIcon } from './icons/WorkIcon'; import { CheckIcon } from './icons/CheckIcon'; interface ActionPlanProps { plan: ActionPlan; onToggleItem: (categoryIndex: number, itemIndex: number) => void; onReset: () => void; } const getCategoryIcon = (categoryName: string): React.ReactNode => { const lowerCaseName = categoryName.toLowerCase(); if (lowerCaseName.includes('medical')) return ; if (lowerCaseName.includes('work')) return ; return ; }; const CategoryCard: React.FC<{ category: PlanCategory, categoryIndex: number, onToggleItem: (catIdx: number, itemIdx: number) => void }> = ({ category, categoryIndex, onToggleItem }) => { const [isExpanded, setIsExpanded] = useState(true); const completedItems = useMemo(() => category.items.filter(item => item.status === 'Completed').length, [category.items]); const totalItems = category.items.length; const progress = totalItems > 0 ? (completedItems / totalItems) * 100 : 0; return (
{isExpanded && (
    {category.items.map((item, itemIndex) => (
  • {item.item}

    {item.description}

  • ))}
)}
); }; export const ActionPlanComponent: React.FC = ({ plan, onToggleItem, onReset }) => { return (

{plan.title}

{plan.summary}

{plan.categories.map((category, index) => ( ))}
); };