'use client'; import { Button } from '@contractspec/lib.design-system'; import { Card, CardContent } from '@contractspec/lib.ui-kit-web/ui/card'; import { cn } from '@contractspec/lib.ui-kit-web/ui/utils'; import type { JourneyStepSpec } from '@contractspec/module.learning-journey/track-spec'; import { useState } from 'react'; interface FlashCardProps { step: JourneyStepSpec; isCompleted: boolean; isCurrent: boolean; onComplete?: () => void; } export function FlashCard({ step, isCompleted, isCurrent, onComplete, }: FlashCardProps) { const [isFlipped, setIsFlipped] = useState(false); return ( !isCompleted && setIsFlipped(!isFlipped)} > {/* Front of card */}

{step.title}

{step.description && (

{step.description}

)}
{step.xpReward && ( +{step.xpReward} XP )}
{isCompleted && (
Completed
)} {isCurrent && !isCompleted && (

Tap to reveal action

)}
{/* Back of card (action) */} {isFlipped && !isCompleted && (

{step.instructions ?? 'Complete this step to earn XP'}

)}
); }