Class: Brightbox::ShowTable

Inherits:
Hirb::Helpers::Table
  • Object
show all
Defined in:
lib/brightbox-cli/tables.rb

Overview

Vertical table for “show” views

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.render(rows, options = {}) ⇒ Object



46
47
48
# File 'lib/brightbox-cli/tables.rb', line 46

def self.render(rows, options = {})
  new(rows, { :escape_special_chars => false, :resize => false }.merge(options)).render
end

Instance Method Details



56
# File 'lib/brightbox-cli/tables.rb', line 56

def render_footer; []; end

#render_headerObject



54
# File 'lib/brightbox-cli/tables.rb', line 54

def render_header; []; end

#render_rowsObject



58
59
60
61
62
63
64
65
66
67
# File 'lib/brightbox-cli/tables.rb', line 58

def render_rows
  longest_header = Hirb::String.size(@headers.values.max_by { |e| Hirb::String.size(e) })
  @rows.map do |row|
    fields = @fields.map do |f|
      "#{Hirb::String.rjust(@headers[f], longest_header)}: #{row[f]}"
    end
    fields << "" if @rows.size > 1
    fields.compact.join("\n")
  end
end

#setup_field_lengthsObject



50
51
52
# File 'lib/brightbox-cli/tables.rb', line 50

def setup_field_lengths
  @field_lengths = default_field_lengths
end