File size: 463 Bytes
cd8bd0a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import React from "react";
import { Box, Text } from "ink";

export function ProgressBar({ value = 0, max = 100, width = 20, color = "green" }) {
  const pct = Math.min(1, Math.max(0, value / max));
  const filled = Math.round(pct * width);
  const empty = width - filled;
  return (
    <Box>
      <Text color={color}>{"█".repeat(filled)}</Text>
      <Text dimColor>{"░".repeat(empty)}</Text>
      <Text> {Math.round(pct * 100)}%</Text>
    </Box>
  );
}