LCOV - code coverage report
Current view: top level - dashql-app/src/ui/foundations - progress_bar.tsx Coverage Total Hit
Test: DashQL 915828b Lines: 100.0 % 14 14
Test Date: 2026-11-06 19:30:32

            Line data    Source code
       1              : import * as React from 'react';
       2              : import * as styles from './progress_bar.module.css';
       3              : 
       4              : import { classNames } from '../../utils/classnames.js';
       5              : 
       6              : interface ProgressBarProps extends React.HTMLAttributes<HTMLDivElement> {
       7              :     progress: number;
       8              :     className?: string;
       9              : }
      10              : 
      11            1 : export function ProgressBar(props: ProgressBarProps): React.ReactElement {
      12            1 :     const { className, progress, ...rest } = props;
      13            1 :     const clampedProgress = Math.max(0, Math.min(progress, 100));
      14            1 :     return (
      15            1 :         <div
      16            1 :             {...rest}
      17            1 :             className={classNames(styles.root, className)}
      18            1 :             role="progressbar"
      19            1 :             aria-valuemin={0}
      20            1 :             aria-valuemax={100}
      21            1 :             aria-valuenow={Math.round(clampedProgress)}
      22              :         >
      23            1 :             <div className={styles.fill} style={{ width: `${clampedProgress}%` }} />
      24            1 :         </div>
      25              :     );
      26            1 : }
        

Generated by: LCOV version 2.0-1