{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "stats-card",
  "title": "Stats Card",
  "author": "Poyraz Avsever",
  "description": "Poyraz Soft Glass stats-card with semantic states and composable variants.",
  "dependencies": [
    "lucide-react@^0.574.0"
  ],
  "registryDependencies": [
    "@poyraz/poyraz-utils",
    "@poyraz/poyraz-theme",
    "@poyraz/card"
  ],
  "files": [
    {
      "path": "registry/poyraz/ui/phase7/blocks/card-templates/stats-card.tsx",
      "content": "import * as React from \"react\";\nimport { ArrowDownRight, ArrowUpRight, Minus } from \"lucide-react\";\nimport { Card, CardContent, type CardProps } from \"@/components/ui/atoms/card\";\nimport { cn } from \"@/lib/utils\";\n\nexport interface StatsCardProps extends CardProps {\n  icon?: React.ReactNode;\n  label: string;\n  value: string | number;\n  trend?: \"up\" | \"down\" | \"neutral\";\n  trendValue?: string;\n  chart?: React.ReactNode;\n}\nconst StatsCard = React.forwardRef<HTMLDivElement, StatsCardProps>(\n  ({ chart, className, icon, label, trend = \"neutral\", trendValue, value, ...props }, ref) => {\n    const TrendIcon = trend === \"up\" ? ArrowUpRight : trend === \"down\" ? ArrowDownRight : Minus;\n    return (\n      <Card ref={ref} className={cn(\"group\", className)} {...props}>\n        <CardContent className=\"p-5\">\n          <div className=\"flex items-start justify-between\">\n            <span className=\"text-xs font-medium text-muted-foreground\">{label}</span>\n            {icon && (\n              <span className=\"flex size-9 items-center justify-center rounded-lg bg-surface-subtle text-primary transition-transform group-hover:scale-105\">\n                {icon}\n              </span>\n            )}\n          </div>\n          <div className=\"mt-3 text-3xl font-bold tracking-tight\">{value}</div>\n          {trendValue && (\n            <div\n              className={cn(\n                \"mt-1.5 flex items-center gap-1 text-xs font-medium\",\n                trend === \"up\" && \"text-success-icon\",\n                trend === \"down\" && \"text-destructive\",\n                trend === \"neutral\" && \"text-muted-foreground\",\n              )}\n            >\n              <TrendIcon className=\"size-3.5\" />\n              {trendValue}\n            </div>\n          )}\n          {chart && <div className=\"mt-4 h-14 text-primary\">{chart}</div>}\n        </CardContent>\n      </Card>\n    );\n  },\n);\nStatsCard.displayName = \"StatsCard\";\nexport { StatsCard };\n",
      "type": "registry:block",
      "target": "@ui/blocks/card-templates/stats-card.tsx"
    }
  ],
  "meta": {
    "category": "phase-7-card-block",
    "phase": "beta"
  },
  "type": "registry:block"
}