class Troo::Presenters::Resource

Attributes

klass[R]

Public Class Methods

list_view(klass, options = {}) click to toggle source

@param [] @param [Hash] @return []

# File lib/troo/presenters/resource.rb, line 10
def list_view(klass, options = {})
  new(klass, options).list_view
end
new(klass, options = {}) click to toggle source

@param [] @param [Hash] @return []

# File lib/troo/presenters/resource.rb, line 18
def initialize(klass, options = {})
  @klass, @options = klass, options
end

Public Instance Methods

list_view() click to toggle source

@return []

# File lib/troo/presenters/resource.rb, line 23
def list_view
  [id, name, default].compact.join(' ') + "\n"
end

Private Instance Methods

card?() click to toggle source
# File lib/troo/presenters/resource.rb, line 66
def card?
  klass.type == :card
end
colour() click to toggle source
# File lib/troo/presenters/resource.rb, line 86
def colour
  {
    board:    Esc.blue,
    card:     Esc.magenta,
    list:     Esc.green,
    comments: Esc.cyan,
    member:   Esc.white
  }
end
default() click to toggle source
# File lib/troo/presenters/resource.rb, line 49
def default
  return '*' if resource_default?
end
defaults() click to toggle source
# File lib/troo/presenters/resource.rb, line 78
def defaults
  {
    ansicolor: true,
    colour:    colour.fetch(klass.type, nil),
    underline: true
  }
end
formatted_id() click to toggle source
# File lib/troo/presenters/resource.rb, line 35
def formatted_id
  return highlight(resource_id) if card?
  resource_id
end
formatted_name() click to toggle source
# File lib/troo/presenters/resource.rb, line 45
def formatted_name
  Troo::Wordwrap.this(resource_name, prune: true)
end
highlight(value) click to toggle source
# File lib/troo/presenters/resource.rb, line 70
def highlight(value)
  Troo::Formatter.highlight(value, options)
end
id() click to toggle source
# File lib/troo/presenters/resource.rb, line 31
def id
  brackets(formatted_id)
end
name() click to toggle source
# File lib/troo/presenters/resource.rb, line 40
def name
  return formatted_name if card?
  highlight(formatted_name)
end
options() click to toggle source
# File lib/troo/presenters/resource.rb, line 74
def options
  defaults.merge!(@options)
end
resource_default?() click to toggle source
# File lib/troo/presenters/resource.rb, line 62
def resource_default?
  klass.default?
end
resource_id() click to toggle source
# File lib/troo/presenters/resource.rb, line 53
def resource_id
  return klass.short_id if card?
  klass.id
end
resource_name() click to toggle source
# File lib/troo/presenters/resource.rb, line 58
def resource_name
  (klass.name && klass.name.chomp) || 'N/A'
end