Sha256: 735e95a248fa6a2e5df7989dcfde49cab80a289fae9328db4097e7e33b61de26

Contents?: true

Size: 906 Bytes

Versions: 3

Compression:

Stored size: 906 Bytes

Contents

module DtcRake
  module UI
    def error(msg)
      msg = Rainbow(msg).red if colorize?
      abort msg
    end
    module_function :error

    def announce(msg)
      msg = Rainbow(msg).aqua if colorize?
      puts msg
    end
    module_function :announce

    def success(msg)
      msg = Rainbow(msg).green if colorize?
      puts msg
    end
    module_function :success

    def warning(msg)
      msg = Rainbow(msg).yellow if colorize?
      puts msg
    end
    module_function :warning

    def info(msg)
      msg = Rainbow(msg).white if colorize?
      puts msg
    end
    module_function :info

    private

    def colorize?
      return @colorize if defined? @colorize

      colorize = Config.instance.colorize
      if colorize
        begin
          require "rainbow"
        rescue LoadError
          colorize = false
        end
      end
      @colorize = colorize
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
dtc_rake-0.2.0 lib/dtc_rake/ui.rb
dtc_rake-0.1.2 lib/dtc_rake/ui.rb
dtc_rake-0.1.0 lib/dtc_rake/ui.rb