github.com/defang-io/defang/src@v0.0.0-20240505002154-bdf411911834/pkg/cmd/color.go (about)

     1  package cmd
     2  
     3  import "github.com/defang-io/defang/src/pkg/term"
     4  
     5  type Color string
     6  
     7  const (
     8  	ColorAuto   Color = "auto"
     9  	ColorAlways Color = "always"
    10  	ColorNever  Color = "never"
    11  	ColorRaw    Color = "raw"
    12  )
    13  
    14  func ParseColor(color string) Color {
    15  	switch color {
    16  	case "auto":
    17  		if term.CanColor {
    18  			return ColorAlways
    19  		}
    20  		fallthrough
    21  	case "always", "never", "raw":
    22  		return Color(color)
    23  	default:
    24  		term.Fatal("invalid color option: " + color)
    25  		panic("unreachable")
    26  	}
    27  }