{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "innovations", "type": "registry:block", "dependencies": [ "lucide-react" ], "registryDependencies": [], "files": [ { "path": "registry/new-york/innovations/components/gallery.tsx", "content": "import svgPaths from \"./svg\";\nimport { ImageWithFallback } from '@/components/image-with-fallback';\n\ninterface InnovationCardProps {\n title: string;\n description: React.ReactNode;\n imageFilter: string;\n icon: React.ReactNode;\n}\n\nfunction IconLeft() {\n return (\n
\n \n \n \n
\n );\n}\n\nfunction EnhancedButton() {\n return (\n \n );\n}\n\nfunction TextHeading({ children }: { children: React.ReactNode }) {\n return (\n
\n

\n {children}\n {/* Subtle underline accent */}\n
\n

\n
\n );\n}\n\nfunction TextSubheading({ children }: { children: React.ReactNode }) {\n return (\n
\n
\n {children}\n
\n
\n );\n}\n\nfunction TextContentHeading({ title, description }: { title: string; description: React.ReactNode }) {\n return (\n
\n {title}\n {description}\n \n {/* Decorative gradient line */}\n
\n
\n
\n
\n );\n}\n\nfunction ContentBox({ title, description }: { title: string; description: React.ReactNode }) {\n return (\n
\n
\n \n \n
\n
\n );\n}\n\nexport function InnovationCard({ title, description, imageFilter, icon }: InnovationCardProps) {\n return (\n
\n {/* Main image area with gradient overlay */}\n
\n
\n \n {/* Blue gradient overlay */}\n
\n
\n
\n \n {/* White border with gradient glow */}\n
\n
\n
\n \n {/* Content overlay */}\n \n \n {/* Subject-relevant icon */}\n
\n {icon}\n
\n
\n );\n}\n", "type": "registry:component" }, { "path": "registry/new-york/innovations/components/hero.tsx", "content": "export function InnovationsHero() {\n return (\n
\n
\n
\n
\n
\n

\n INNOVATIONS\n

\n
\n
\n

\n Explore the center's latest innovations. And maybe a little extra\n added text for good measure.\n

\n
\n
\n
\n
\n
\n );\n}\n", "type": "registry:component" }, { "path": "registry/new-york/innovations/components/section.tsx", "content": "import { InnovationCard } from './gallery';\nimport { MessageSquareHeart, Camera } from 'lucide-react';\n\nexport function InnovationsSection() {\n return (\n
\n
\n
\n \n EQUIP is for trainers and supervisors\n to improve the quality of their teams's psychosocial and mental health helping skills.\n \n }\n imageFilter=\"from-blue-600/60 to-blue-800/80\"\n icon={}\n />\n \n Photography and digital storytelling\n to address stigma in the context of mental health.\n \n }\n imageFilter=\"from-blue-700/60 to-indigo-800/80\"\n icon={}\n />\n
\n
\n
\n );\n}\n", "type": "registry:component" }, { "path": "registry/new-york/innovations/components/svg.ts", "content": "export default {\npfe14800: \"M12.3333 8.33333H8.33333V12.3333H7V8.33333H3V7H7V3H8.33333V7H12.3333V8.33333Z\",\n}", "type": "registry:file" }, { "path": "registry/new-york/innovations/innovations.tsx", "content": "{/* import { InnovationsHero } from './gmh-innovations-hero'; */}\nimport { InnovationsSection } from './components/section';\n\nfunction PageLayout() {\n return (\n
\n {/* Background decorative elements */}\n
\n
\n
\n
\n \n {/* Side margins with subtle gradients */}\n
\n
\n
\n {/* */}\n \n
\n
\n
\n
\n );\n}\n\nexport function Innovations() {\n return (\n
\n \n
\n );\n}\n", "type": "registry:component" } ] }