worktime/internal/util/writer.go
2025-11-07 13:40:22 +01:00

28 lines
450 B
Go

package util
import (
"fmt"
"io"
"os"
"git.zervo.org/zervo/worktime/internal/cli/color"
)
type ErrorWriter struct {
w io.Writer
color string
reset string
}
func NewErrorWriter() *ErrorWriter {
return &ErrorWriter{
w: os.Stderr,
color: color.Red,
reset: color.Reset,
}
}
func (ew *ErrorWriter) Write(p []byte) (n int, err error) {
colored := fmt.Appendf(nil, "%s%s%s", ew.color, p, ew.reset)
return ew.w.Write(colored)
}