{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "pricing-card",
  "title": "Pricing Card",
  "author": "Poyraz Avsever",
  "description": "Poyraz Soft Glass pricing-card with semantic states and composable variants.",
  "dependencies": [
    "lucide-react@^0.574.0"
  ],
  "registryDependencies": [
    "@poyraz/poyraz-utils",
    "@poyraz/poyraz-theme",
    "@poyraz/card",
    "@poyraz/badge"
  ],
  "files": [
    {
      "path": "registry/poyraz/ui/phase7/blocks/card-templates/pricing-card.tsx",
      "content": "import * as React from \"react\";\nimport { Check } from \"lucide-react\";\nimport { Badge } from \"@/components/ui/atoms/badge\";\nimport {\n  Card,\n  CardContent,\n  CardDescription,\n  CardFooter,\n  CardHeader,\n  CardHeading,\n  CardTitle,\n  type CardProps,\n} from \"@/components/ui/atoms/card\";\nimport { cn } from \"@/lib/utils\";\n\nexport interface PricingCardProps extends Omit<CardProps, \"title\"> {\n  name?: string;\n  title?: string;\n  price: string;\n  period?: string;\n  description?: string;\n  features: string[];\n  action?: React.ReactNode;\n  popular?: boolean;\n  highlighted?: boolean;\n}\nconst PricingCard = React.forwardRef<HTMLDivElement, PricingCardProps>(\n  (\n    {\n      action,\n      className,\n      description,\n      features,\n      highlighted,\n      name,\n      period,\n      popular,\n      price,\n      title,\n      ...props\n    },\n    ref,\n  ) => {\n    const featured = popular ?? highlighted ?? false;\n    return (\n      <Card\n        ref={ref}\n        variant={featured ? \"interactive\" : \"default\"}\n        className={cn(featured && \"border-primary/35 shadow-md\", className)}\n        {...props}\n      >\n        <CardHeader>\n          <CardHeading>\n            <div className=\"flex items-center gap-2\">\n              <CardTitle>{name ?? title ?? \"Plan\"}</CardTitle>\n              {featured && <Badge>Popular</Badge>}\n            </div>\n            <div className=\"mt-3 flex items-baseline gap-1\">\n              <span className=\"text-3xl font-bold\">{price}</span>\n              {period && <span className=\"text-xs text-muted-foreground\">/{period}</span>}\n            </div>\n            {description && <CardDescription>{description}</CardDescription>}\n          </CardHeading>\n        </CardHeader>\n        <CardContent>\n          <ul className=\"space-y-2.5\">\n            {features.map((feature) => (\n              <li key={feature} className=\"flex items-start gap-2 text-sm\">\n                <Check className=\"mt-0.5 size-4 shrink-0 text-success-icon\" />\n                {feature}\n              </li>\n            ))}\n          </ul>\n        </CardContent>\n        {action && <CardFooter>{action}</CardFooter>}\n      </Card>\n    );\n  },\n);\nPricingCard.displayName = \"PricingCard\";\nexport { PricingCard };\n",
      "type": "registry:block",
      "target": "@ui/blocks/card-templates/pricing-card.tsx"
    }
  ],
  "meta": {
    "category": "phase-7-card-block",
    "phase": "beta"
  },
  "type": "registry:block"
}