Progress
adn-ui/progressFreeComponent
Displays the status of a task that takes a long time.
Live preview
live · rendered by the registry
Rendered by adn-ui on their own page — this is the component running, not a screenshot of it.Install it
npx shadcn@latest add https://ui.awaiden.com/r/progress.jsonSource
1"use client";23import "./progress.css";4import { Progress as BaseProgress } from "@base-ui/react/progress";5import type React from "react";6import { cn } from "tailwind-variants";78import { ProgressContext, useProgressContext } from "./progress.context";9import { progressVariants, type ProgressVariants } from "./progress.variants";1011export type ProgressProps = ProgressVariants & React.ComponentProps<typeof BaseProgress.Root>;1213export const ProgressRoot = ({ children, className, size, ...props }: ProgressProps) => {14 const slots = progressVariants({ size });1516 return (17 <ProgressContext.Provider value={{ slots }}>18 <BaseProgress.Root className={cn(slots.root(), className)} {...props}>19 {children}20 </BaseProgress.Root>21 </ProgressContext.Provider>22 );23};2425export type ProgressTrackProps = React.ComponentProps<typeof BaseProgress.Track>;2627export const ProgressTrack = ({ className, ...props }: ProgressTrackProps) => {28 const { slots } = useProgressContext();29 return <BaseProgress.Track className={cn(slots.track(), className)} {...props} />;30};3132export type ProgressIndicatorProps = React.ComponentProps<typeof BaseProgress.Indicator>;3334export const ProgressIndicator = ({ className, ...props }: ProgressIndicatorProps) => {35 const { slots } = useProgressContext();36 return <BaseProgress.Indicator className={cn(slots.indicator(), className)} {...props} />;37};3839export type ProgressLabelProps = React.ComponentProps<typeof BaseProgress.Label>;4041export const ProgressLabel = ({ className, ...props }: ProgressLabelProps) => {42 const { slots } = useProgressContext();43 return <BaseProgress.Label className={cn(slots.label(), className)} {...props} />;44};4546export type ProgressValueProps = React.ComponentProps<typeof BaseProgress.Value>;4748export const ProgressValue = ({ className, ...props }: ProgressValueProps) => {49 const { slots } = useProgressContext();50 return <BaseProgress.Value className={cn(slots.value(), className)} {...props} />;51};
What it pulls in
npm packages
Files it writes
More from adn-ui
All 46 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| Accordionaccordion | adn-ui | Components | Free | 2 deps · 5 files | |
| Alert Dialogalert-dialog | adn-ui | Components | Free | 2 deps · 5 files | |
| Aspect Ratioaspect-ratio | adn-ui | Components | Free | 1 dep · 5 files | |
| Autocompleteautocomplete | adn-ui | Components | Free | 2 deps · 5 files | |
| Avataravatar | adn-ui | Components | Free | 2 deps · 5 files | |
| Badgebadge | adn-ui | Components | Free | 1 dep · 5 files | |
| Breadcrumbbreadcrumb | adn-ui | Components | Free | 1 dep · 5 files | |
| Buttonbutton | adn-ui | Components | Free | 1 dep · 4 files |
