"use client"; import { use, useState, useEffect } from "react"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; import { toast } from "sonner"; import { cn } from "@/lib/utils"; import { Monitor, Globe, Settings, Smartphone, Mail, BookOpen, Lock, CheckCircle2, Loader2, ChevronRight, Pencil, } from "lucide-react"; import { SCAFFOLD_REGISTRY, THEME_REGISTRY, type ThemeColor } from "@/components/design-scaffolds"; // --------------------------------------------------------------------------- // Surface definitions // --------------------------------------------------------------------------- interface Surface { id: string; name: string; description: string; icon: React.ElementType; themes: Theme[]; } interface Theme { id: string; name: string; description: string; tags: string[]; url: string; preview: React.ReactNode; } // Mini UI mockups — each styled to feel like the library const ShadcnPreview = () => (
{activeTheme.description}
Which surfaces does your product need? Select all that apply — you can always add more later.
Select at least one surface to continue
)}Surfaces