{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "progress",
  "title": "Progress",
  "description": "Shows how far a task has come, or that it is underway when its length is unknown.",
  "dependencies": [
    "@base-ui/react"
  ],
  "registryDependencies": [
    "https://www.prfct.dev/r/utils.json"
  ],
  "files": [
    {
      "path": "components/ui/progress.tsx",
      "content": "\"use client\"\n\nimport { Progress as ProgressPrimitive } from \"@base-ui/react/progress\"\nimport { cn } from \"@/lib/utils\"\n\nfunction Progress({\n  className,\n  children,\n  value,\n  size = \"default\",\n  ...props\n}: ProgressPrimitive.Root.Props & { size?: \"sm\" | \"default\" | \"lg\" }) {\n  return (\n    <ProgressPrimitive.Root\n      value={value}\n      data-slot=\"progress\"\n      data-size={size}\n      className={cn(\"group/progress flex flex-wrap gap-x-3 gap-y-2\", className)}\n      {...props}\n    >\n      {children}\n      <ProgressTrack>\n        <ProgressIndicator />\n      </ProgressTrack>\n    </ProgressPrimitive.Root>\n  )\n}\n\nfunction ProgressTrack({ className, ...props }: ProgressPrimitive.Track.Props) {\n  return (\n    <ProgressPrimitive.Track\n      className={cn(\n        \"relative flex h-1.5 w-full items-center overflow-hidden rounded-full bg-muted\",\n        \"group-data-[size=lg]/progress:h-2.5 group-data-[size=sm]/progress:h-1\",\n        className\n      )}\n      data-slot=\"progress-track\"\n      {...props}\n    />\n  )\n}\n\nfunction ProgressIndicator({\n  className,\n  ...props\n}: ProgressPrimitive.Indicator.Props) {\n  return (\n    <ProgressPrimitive.Indicator\n      data-slot=\"progress-indicator\"\n      className={cn(\n        \"h-full rounded-full bg-brand transition-[width] duration-slow ease-standard\",\n        // Indeterminate: a segment that sweeps across the track.\n        \"group-data-indeterminate/progress:w-1/3! group-data-indeterminate/progress:animate-[progress-indeterminate_1.4s_var(--ease-move)_infinite]\",\n        className\n      )}\n      {...props}\n    />\n  )\n}\n\nfunction ProgressLabel({ className, ...props }: ProgressPrimitive.Label.Props) {\n  return (\n    <ProgressPrimitive.Label\n      className={cn(\"text-sm font-medium text-foreground\", className)}\n      data-slot=\"progress-label\"\n      {...props}\n    />\n  )\n}\n\nfunction ProgressValue({ className, ...props }: ProgressPrimitive.Value.Props) {\n  return (\n    <ProgressPrimitive.Value\n      className={cn(\n        \"ml-auto text-sm text-muted-foreground tabular-nums\",\n        className\n      )}\n      data-slot=\"progress-value\"\n      {...props}\n    />\n  )\n}\n\nexport {\n  Progress,\n  ProgressTrack,\n  ProgressIndicator,\n  ProgressLabel,\n  ProgressValue,\n}\n",
      "type": "registry:ui"
    }
  ],
  "type": "registry:ui"
}