{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "progress",
  "title": "Progress",
  "description": "An accessible progress indicator with a luminous active range.",
  "dependencies": [
    "@radix-ui/react-progress"
  ],
  "registryDependencies": [
    "@rivelle/utils"
  ],
  "files": [
    {
      "path": "registry/nova/ui/progress.tsx",
      "content": "\"use client\"\n\nimport * as React from \"react\"\nimport * as ProgressPrimitive from \"@radix-ui/react-progress\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Progress({ className, value = 0, ...props }: React.ComponentProps<typeof ProgressPrimitive.Root>) {\n  const normalizedValue = Math.min(100, Math.max(0, value ?? 0))\n  return (\n    <ProgressPrimitive.Root\n      data-slot=\"progress\"\n      className={cn(\"relative h-2.5 w-full overflow-hidden rounded-full border border-foreground/8 bg-foreground/[.07] shadow-[inset_0_1px_2px_color-mix(in_oklch,var(--foreground)_8%,transparent)]\", className)}\n      {...props}\n    >\n      <ProgressPrimitive.Indicator\n        data-slot=\"progress-indicator\"\n        className=\"h-full w-full origin-left rounded-full bg-gradient-to-r from-primary via-primary to-[oklch(.7_.2_285)] shadow-[0_0_20px_-5px_var(--primary)] transition-transform duration-700 ease-[cubic-bezier(.16,1,.3,1)] motion-reduce:transition-none\"\n        style={{ transform: `translateX(-${100 - normalizedValue}%)` }}\n      />\n    </ProgressPrimitive.Root>\n  )\n}\n\nexport { Progress }\n",
      "type": "registry:ui"
    }
  ],
  "type": "registry:ui"
}