{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "pricing-card", "type": "registry:component", "title": "Pricing Card", "description": "Blinkist Pricing Card Component", "dependencies": [ "lucide-react", "@radix-ui/react-slot", "class-variance-authority" ], "registryDependencies": [ "theme" ], "files": [ { "path": "components/pricing-card.tsx", "content": "import { Check } from \"lucide-react\"\nimport { Card, CardHeader, CardTitle, CardContent, CardFooter } from \"@/components/ui/card\";\nimport { Button } from \"@/components/ui/button\";\n\nexport function PricingCard() {\n return (\n \n \n 7-DAY FREE TRIAL — €0 TODAY\n \n \n
\n
\n
\n

PRO

\n - 12 Months\n
\n
\n
\n \n 0\n
\n .39\n a day\n
\n
\n

€139.98

\n
\n
\n \n
\n
\n

Reach your goals faster

\n
\n
\n
\n \n \n \n
\n
\n Blinkist AI:{\" \"}\n Summarize videos, podcasts, docs, articles & more.\n
\n
\n
\n \n

7,500+ book and podcast summaries.

\n
\n
\n \n

Read & listen in 15 min.

\n
\n
\n \n

Personal daily recommendations.

\n
\n
\n
\n
\n
\n )\n}\n", "type": "registry:component" }, { "path": "components/ui/card.tsx", "content": "import * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst Card = React.forwardRef>(({ className, ...props }, ref) => (\n
\n))\nCard.displayName = \"Card\"\n\nconst CardHeader = React.forwardRef>(\n ({ className, ...props }, ref) => (\n
\n ),\n)\nCardHeader.displayName = \"CardHeader\"\n\nconst CardTitle = React.forwardRef>(\n ({ className, ...props }, ref) => (\n

\n ),\n)\nCardTitle.displayName = \"CardTitle\"\n\nconst CardDescription = React.forwardRef>(\n ({ className, ...props }, ref) => (\n

\n ),\n)\nCardDescription.displayName = \"CardDescription\"\n\nconst CardContent = React.forwardRef>(\n ({ className, ...props }, ref) =>

,\n)\nCardContent.displayName = \"CardContent\"\n\nconst CardFooter = React.forwardRef>(\n ({ className, ...props }, ref) => (\n
\n ),\n)\nCardFooter.displayName = \"CardFooter\"\n\nexport { Card, CardHeader, CardFooter, CardTitle, CardDescription, CardContent }\n", "type": "registry:ui", "target": "" }, { "path": "components/ui/button.tsx", "content": "import * as React from \"react\"\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst buttonVariants = cva(\n \"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary/90\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive/90\",\n outline:\n \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default: \"h-10 px-4 py-2\",\n sm: \"h-9 rounded-md px-3\",\n lg: \"h-11 rounded-md px-8\",\n icon: \"h-10 w-10\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nexport interface ButtonProps\n extends React.ButtonHTMLAttributes,\n VariantProps {\n asChild?: boolean\n}\n\nconst Button = React.forwardRef(\n ({ className, variant, size, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : \"button\"\n return (\n \n )\n }\n)\nButton.displayName = \"Button\"\n\nexport { Button, buttonVariants }\n", "type": "registry:ui", "target": "" } ] }