Sha256: 6cbfdc7327042706309729e59878817cab01eb6da62e30e204801fecb8c82710

Contents?: true

Size: 666 Bytes

Versions: 32

Compression:

Stored size: 666 Bytes

Contents

require 'term/ansicolor'

module PactBroker
  module Client
    class ColorizeNotices
      def self.call(notices)
        notices.collect do | notice |
          colorized_message(notice)
        end
      end

      def self.colorized_message(notice)
        color = color_for_type(notice.type)
        if color
          ::Term::ANSIColor.color(color, notice.text || '')
        else
          notice.text
        end
      end

      def self.color_for_type(type)
        case type
        when "warning", "prompt" then "yellow"
        when "error", "danger" then :red
        when "success" then :green
        else nil
        end
      end
    end
  end
end

Version data entries

32 entries across 32 versions & 1 rubygems

Version Path
pact_broker-client-1.66.1 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.66.0 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.65.0 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.64.0 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.63.0 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.62.1 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.62.0 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.61.1 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.61.0 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.60.0 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.59.0 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.58.0 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.57.0 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.56.0 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.55.0 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.54.0 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.53.0 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.52.0 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.51.2 lib/pact_broker/client/colorize_notices.rb
pact_broker-client-1.51.1 lib/pact_broker/client/colorize_notices.rb