diff --git a/internal/ui/ui.go b/internal/ui/ui.go new file mode 100644 index 0000000..6d01ec0 --- /dev/null +++ b/internal/ui/ui.go @@ -0,0 +1,28 @@ +package ui + +import ( + "github.com/khulnasoft/go-pulsebus" +) + +type UI func(<-chan error, *pulsebus.Subscription) error + +// Select is responsible for determining the specific UI function given select user option, the current platform +// config values, and environment status (such as a TTY being present). +func Select() UI { + // verbose, quiet bool + var ui UI + + //isStdoutATty := terminal.IsTerminal(int(os.Stdout.Fd())) + //isStderrATty := terminal.IsTerminal(int(os.Stderr.Fd())) + //notATerminal := !isStderrATty && !isStdoutATty + + switch { + //case runtime.GOOS == "windows" || verbose || quiet || notATerminal || !isStderrATty: + // ui = logger + default: + ui = etui + //ui = nop + } + + return ui +}