/* eslint-disable react/require-default-props */ /* eslint-disable no-nested-ternary */ /* eslint-disable @typescript-eslint/ban-ts-comment */ /* eslint-disable import/no-cycle */ /* eslint-disable @typescript-eslint/no-explicit-any */ import classNames from 'classnames'; import PropTypes from 'prop-types'; import React, { useContext } from 'react'; import { Context } from './CProgress'; // component - CoreUI / CProgressBar const CProgressBar = (directProps: any) => { // @ts-ignore const { inheritedProps } = useContext(Context); const props = { ...inheritedProps, ...directProps }; const { children, className, // innerRef, color, striped, animated, precision, showPercentage, showValue, max, value, ...attributes } = props; // render const progressBarClasses = classNames( 'progress-bar', animated && 'progress-bar-animated', (striped || animated) && 'progress-bar-striped', color && `bg-${color}`, className ); const valLabel = Number(value).toFixed(precision); const percentLabel = `${Number((value / max) * 100).toFixed(precision)}%`; return ( <>