{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "progress",
  "title": "Progress",
  "description": "Horizontal progress bar built on Base UI Progress.",
  "dependencies": [
    "@base-ui/react@^1.8.0"
  ],
  "files": [
    {
      "path": "registry/rapid/ui/progress/progress.tsx",
      "content": "'use client'\n\nimport { Progress as ProgressPrimitive } from '@base-ui/react/progress'\nimport { cn } from '@/lib/utils'\n\nfunction Progress({\n\tclassName,\n\tchildren,\n\tvalue = null,\n\t...props\n}: Omit<ProgressPrimitive.Root.Props, 'value'> & {\n\t/** The current value (0–`max`). Leave it out or pass `null` for an indeterminate progress bar. */\n\tvalue?: number | null\n}) {\n\treturn (\n\t\t<ProgressPrimitive.Root\n\t\t\tvalue={value}\n\t\t\tdata-slot=\"progress\"\n\t\t\tclassName={cn('flex flex-wrap gap-3', className)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t\t<ProgressTrack>\n\t\t\t\t<ProgressIndicator />\n\t\t\t</ProgressTrack>\n\t\t</ProgressPrimitive.Root>\n\t)\n}\n\nfunction ProgressTrack({ className, ...props }: ProgressPrimitive.Track.Props) {\n\treturn (\n\t\t<ProgressPrimitive.Track\n\t\t\tclassName={cn('relative flex h-1 w-full items-center overflow-x-hidden rounded-full bg-secondary', className)}\n\t\t\tdata-slot=\"progress-track\"\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction ProgressIndicator({ className, ...props }: ProgressPrimitive.Indicator.Props) {\n\treturn (\n\t\t<ProgressPrimitive.Indicator\n\t\t\tdata-slot=\"progress-indicator\"\n\t\t\tclassName={cn('h-full bg-primary transition-all', className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction ProgressLabel({ className, ...props }: ProgressPrimitive.Label.Props) {\n\treturn (\n\t\t<ProgressPrimitive.Label className={cn('text-sm font-medium', className)} data-slot=\"progress-label\" {...props} />\n\t)\n}\n\nfunction ProgressValue({ className, ...props }: ProgressPrimitive.Value.Props) {\n\treturn (\n\t\t<ProgressPrimitive.Value\n\t\t\tclassName={cn('ml-auto text-sm text-muted-foreground tabular-nums', className)}\n\t\t\tdata-slot=\"progress-value\"\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nexport { Progress, ProgressTrack, ProgressIndicator, ProgressLabel, ProgressValue }\n",
      "type": "registry:ui",
      "target": "components/ui/progress.tsx"
    }
  ],
  "type": "registry:ui"
}