analytica-frontend-lib
Version:
Repositório público dos componentes utilizados nas plataformas da Analytica Ensino
61 lines (58 loc) • 1.96 kB
text/typescript
import * as react_jsx_runtime from 'react/jsx-runtime';
import { ReactNode } from 'react';
/**
* Progress bar size variants
*/
type ProgressBarSize = 'small' | 'medium';
/**
* Progress bar color variants
*/
type ProgressBarVariant = 'blue' | 'green';
/**
* ProgressBar component props interface
*/
type ProgressBarProps = {
/** Progress value between 0 and 100 */
value: number;
/** Maximum value (defaults to 100) */
max?: number;
/** Size variant of the progress bar */
size?: ProgressBarSize;
/** Color variant of the progress bar */
variant?: ProgressBarVariant;
/** Optional label to display */
label?: ReactNode;
/** Show percentage text */
showPercentage?: boolean;
/** Additional CSS classes */
className?: string;
/** Label CSS classes */
labelClassName?: string;
/** Percentage text CSS classes */
percentageClassName?: string;
};
/**
* ProgressBar component for Analytica Ensino platforms
*
* A progress bar component with size and color variants designed for tracking
* activity progress (blue) and performance metrics (green).
* Uses the Analytica Ensino Design System colors from styles.css with automatic
* light/dark mode support. Includes Text component integration for consistent typography.
*
* @example
* ```tsx
* // Basic progress bar
* <ProgressBar value={65} />
*
* // Activity progress (blue)
* <ProgressBar variant="blue" value={45} label="Progress" showPercentage />
*
* // Performance metrics (green)
* <ProgressBar variant="green" size="medium" value={85} label="Performance" />
*
* // Small size with custom max value
* <ProgressBar size="small" value={3} max={5} showPercentage />
* ```
*/
declare const ProgressBar: ({ value, max, size, variant, label, showPercentage, className, labelClassName, percentageClassName, }: ProgressBarProps) => react_jsx_runtime.JSX.Element;
export { type ProgressBarProps, ProgressBar as default };