{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "product-grid", "type": "registry:block", "title": "Product Grid", "description": "E-commerce product listing with search, filters, and product cards", "dependencies": [ "@heroicons/react" ], "registryDependencies": [ "https://wireframe-ui.vercel.app/r/card.json", "https://wireframe-ui.vercel.app/r/text.json", "https://wireframe-ui.vercel.app/r/badge.json", "https://wireframe-ui.vercel.app/r/button.json", "https://wireframe-ui.vercel.app/r/media.json", "https://wireframe-ui.vercel.app/r/heading.json", "https://wireframe-ui.vercel.app/r/select.json", "https://wireframe-ui.vercel.app/r/input.json" ], "files": [ { "path": "registry/new-york/blocks/product-grid.tsx", "content": "'use client'\r\n\r\nimport {\r\n Card,\r\n CardContent,\r\n CardDescription,\r\n CardHeader,\r\n CardTitle,\r\n} from '@/registry/new-york/ui/card'\r\nimport { Text } from '@/registry/new-york/ui/text'\r\nimport { Badge } from '@/registry/new-york/ui/badge'\r\nimport { Button } from '@/registry/new-york/ui/button'\r\nimport { Media } from '@/registry/new-york/ui/media'\r\nimport { Heading } from '@/registry/new-york/ui/heading'\r\nimport {\r\n Select,\r\n SelectContent,\r\n SelectItem,\r\n SelectTrigger,\r\n SelectValue,\r\n} from '@/registry/new-york/ui/select'\r\nimport { Input } from '@/registry/new-york/ui/input'\r\nimport {\r\n HeartIcon,\r\n MagnifyingGlassIcon,\r\n ShoppingCartIcon,\r\n SparklesIcon,\r\n} from '@heroicons/react/24/outline'\r\n\r\nexport function ProductGrid() {\r\n return (\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n }\r\n />\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n {[1, 2, 3, 4, 5, 6, 7, 8].map((i) => (\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n {i % 3 === 0 && (\r\n \r\n \r\n \r\n )}\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n {[1, 2, 3, 4, 5].map((star) => (\r\n \r\n ))}\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n ))}\r\n
\r\n
\r\n )\r\n}\r\n", "type": "registry:block", "target": "components/blocks/product-grid.tsx" } ] }