import { BackwardCompatibleLoadingState } from '@interval/sdk/dist/internalRpcSchema' export function getPercentComplete({ itemsCompleted, itemsInQueue, }: BackwardCompatibleLoadingState) { if (itemsCompleted === undefined || itemsInQueue === undefined) return null return `${((itemsCompleted / itemsInQueue) * 100).toFixed(2)}%` } export default function DisplayProgress(props: BackwardCompatibleLoadingState) { const percentComplete = getPercentComplete(props) return (
{props.label ?? props.title}
)} {props.description && ({props.description}
)} {percentComplete !== null && ( <>Completed {props.itemsCompleted} of {props.itemsInQueue}
> )}